obspy.io.xseed - (X)SEED and RESP support for ObsPy

XML-SEED was introduced by Tsuboi, Tromp and Komatitsch (2004), it is a XML representation of Dataless SEED. This module contains converters from Dataless SEED to XML-SEED and vice versa as well as a converter from Dataless SEED to RESP files. The xseed module is tested against the complete ORFEUS Dataless SEED archive, the IRIS (US) Dataless SEED archive and against ArcLink response requests.

All files can be converted to ObsPy’s internal inventory objects at which point they can be written out to any format ObsPy supports. In the case of RESP files these are potentially incomplete as RESP files lack vital information like geographical coordinates.

copyright:

The ObsPy Development Team (devs@obspy.org)

license:

GNU Lesser General Public License, Version 3 (https://www.gnu.org/copyleft/lesser.html)

Allocate a Parser object and read/write

>>> from obspy.io.xseed import Parser
>>> sp = Parser("/path/to/dataless.seed.BW_FURT")
>>> sp.write_xseed("dataless.seed.BW_RJOB.xml") 

The lines above will convert Dataless SEED, e.g.:

000001V 010009402.3121970,001,00:00:00.0000~2038,001,00:00:00.0000~
2009,037,04:32:41.0000~BayernNetz~~0110032002RJOB 000003RJOB 000008
...

to the XML-SEED representation, e.g.:

<?xml version='1.0' encoding='utf-8'?>
<xseed version="1.0">
  <volume_index_control_header>
    <volume_identifier blockette="010">
      <version_of_format>2.4</version_of_format>
      <logical_record_length>12</logical_record_length>
      <beginning_time>1970-01-01T00:00:00</beginning_time>
      <end_time>2038-01-01T00:00:00</end_time>
      <volume_time>2009-02-06T04:32:41</volume_time>
      <originating_organization>BayernNetz</originating_organization>
...

A response file can be written in a similar manner, just replace write_xseed() by write_resp():

>>> sp.write_resp(folder="BW_FURT", zipped=False) 

The Parser Object

SEED files as well as its derived format XML-SEED will be parsed in a Parser structure.

SEED volumes have four different volume types:

  • Volume Index Control Headers

  • Abbreviation Dictionary Control Headers

  • Station Control Headers

  • Time Span Control Headers (currently not supported by ObsPy. Some dummy headers will be written in case they are needed by SEED/XSEED conventions.)

After parsing a SEED or XML-SEED file the Blockette objects for each volume will be stored in the attributes Parser.volume, Parser.abbreviations and Parser.stations. Each item is a list of all related Blockettes and Parser.stations is a list of stations which contains all related Blockettes.

Classes & Functions

parser.Parser

Class parsing dataless and full SEED, X-SEED, and RESP files.

Modules

core

Integration with ObsPy's core classes.

fields

Helper module containing xseed fields.

parser

Main module containing XML-SEED, dataless SEED and RESP parser.

utils

Various additional utilities for ObsPy xseed.

Scripts

scripts.dataless2resp

A command-line program that converts Dataless SEED into RESP files.

scripts.dataless2xseed

A command-line program that converts Dataless SEED into XML-SEED files.

scripts.xseed2dataless

A command-line program that converts XML-SEED into Dataless SEED files.