pyrocko.io.stationxml

exception NoResponseInformation[source]
exception MultipleResponseInformation[source]
exception InconsistentResponseInformation[source]
class DummyAwareOptionalTimestamp(dummy) → time_float[source]

Undocumented.

class Nominal(dummy) → None[source]

Any str out of ['NOMINAL', 'CALCULATED'].

class Email(dummy) → None[source]

Any unicode matching pattern '[\\w\\.\\-_]+@[\\w\\.\\-_]+'.

class RestrictedStatus(dummy) → None[source]

Any str out of ['open', 'closed', 'partial'].

class Type(dummy) → None[source]

Any str out of ['TRIGGERED', 'CONTINUOUS', 'HEALTH', 'GEOPHYSICAL', 'WEATHER', 'FLAG', 'SYNTHESIZED', 'INPUT', 'EXPERIMENTAL', 'MAINTENANCE', 'BEAM'].

class PzTransferFunction(dummy) → None[source]

Any str out of ['LAPLACE (RADIANS/SECOND)', 'LAPLACE (HERTZ)', 'DIGITAL (Z-TRANSFORM)'].

class Symmetry(dummy) → None[source]

Any str out of ['NONE', 'EVEN', 'ODD'].

class CfTransferFunction(dummy) → None[source]

Any str out of ['ANALOG (RADIANS/SECOND)', 'ANALOG (HERTZ)', 'DIGITAL'].

class Approximation(dummy) → None[source]

Any str out of ['MACLAURIN'].

class Site(**kwargs)[source]

Description of a site location using name and optional geopolitical boundaries (country, city, etc.).

name

str

description

str, optional

town

str, optional

county

str, optional

region

str, optional

country

str, optional

class ExternalReference(**kwargs)[source]

This type contains a URI and description for external data that users may want to reference in StationXML.

uri

str

description

str

class Units(name=None, **kwargs)[source]

A type to document units. Corresponds to SEED blockette 34.

name

str

description

str, optional

class Counter(dummy) → None[source]

Undocumented.

class SampleRateRatio(**kwargs)[source]

Sample rate expressed as number of samples in a number of seconds.

number_samples

int

number_seconds

int

class Gain(value=None, **kwargs)[source]

Complex type for sensitivity and frequency ranges. This complex type can be used to represent both overall sensitivities and individual stage gains. The FrequencyRangeGroup is an optional construct that defines a pass band in Hertz ( FrequencyStart and FrequencyEnd) in which the SensitivityValue is valid within the number of decibels specified in FrequencyDBVariation.

value

float, optional

frequency

float, optional

class NumeratorCoefficient(**kwargs)[source]

Undocumented.

i

int, optional

value

float

class FloatNoUnit(value=None, **kwargs)[source]

Undocumented.

plus_error

float, optional

minus_error

float, optional

value

float

class FloatWithUnit(value=None, **kwargs)[source]

Undocumented.

unit

str, optional

class Equipment(**kwargs)[source]

Undocumented.

resource_id

str, optional

type

str, optional

description

str, optional

manufacturer

str, optional

vendor

str, optional

model

str, optional

serial_number

str, optional

installation_date

time_float, optional

removal_date

time_float, optional

calibration_date_list

list of time_float objects, default: []

class PhoneNumber(**kwargs)[source]

Undocumented.

description

str, optional

country_code

int, optional

area_code

int

phone_number

pyrocko.guts.doublequoted (PhoneNumber)

class BaseFilter(**kwargs)[source]

The BaseFilter is derived by all filters.

resource_id

str, optional

name

str, optional

description

str, optional

input_units

pyrocko.guts.doublequoted, optional

output_units

pyrocko.guts.doublequoted, optional

class Sensitivity(value=None, **kwargs)[source]

Sensitivity and frequency ranges. The FrequencyRangeGroup is an optional construct that defines a pass band in Hertz (FrequencyStart and FrequencyEnd) in which the SensitivityValue is valid within the number of decibels specified in FrequencyDBVariation.

input_units

pyrocko.guts.doublequoted, optional

output_units

pyrocko.guts.doublequoted, optional

frequency_start

float, optional

frequency_end

float, optional

frequency_db_variation

float, optional

class Coefficient(value=None, **kwargs)[source]

Undocumented.

number

pyrocko.guts.doublequoted (Counter), optional

class PoleZero(**kwargs)[source]

Complex numbers used as poles or zeros in channel response.

number

int, optional

real

pyrocko.guts.doublequoted

imaginary

pyrocko.guts.doublequoted

class ClockDrift(value=None, **kwargs)[source]

Undocumented.

unit

str, optional, default: 'SECONDS/SAMPLE'

class Second(value=None, **kwargs)[source]

A time value in seconds.

unit

str, optional, default: 'SECONDS'

class Voltage(value=None, **kwargs)[source]

Undocumented.

unit

str, optional, default: 'VOLTS'

class Angle(value=None, **kwargs)[source]

Undocumented.

unit

str, optional, default: 'DEGREES'

class Azimuth(value=None, **kwargs)[source]

Instrument azimuth, degrees clockwise from North.

unit

str, optional, default: 'DEGREES'

class Dip(value=None, **kwargs)[source]

Instrument dip in degrees down from horizontal. Together azimuth and dip describe the direction of the sensitive axis of the instrument.

unit

str, optional, default: 'DEGREES'

class Distance(value=None, **kwargs)[source]

Extension of FloatWithUnit for distances, elevations, and depths.

unit

str, optional, default: 'METERS'

class Frequency(value=None, **kwargs)[source]

Undocumented.

unit

str, optional, default: 'HERTZ'

class SampleRate(value=None, **kwargs)[source]

Sample rate in samples per second.

unit

str, optional, default: 'SAMPLES/S'

class Person(**kwargs)[source]

Representation of a person’s contact information. A person can belong to multiple agencies and have multiple email addresses and phone numbers.

name_list

list of str objects, default: []

agency_list

list of str objects, default: []

email_list

list of pyrocko.guts.doublequoted (Email) objects, default: []

phone_list

list of pyrocko.guts.doublequoted objects, default: []

class FIR(**kwargs)[source]

Response: FIR filter. Corresponds to SEED blockette 61. FIR filters are also commonly documented using the Coefficients element.

symmetry

pyrocko.guts.doublequoted (Symmetry)

numerator_coefficient_list

list of pyrocko.guts.doublequoted objects, default: []

class Coefficients(**kwargs)[source]

Response: coefficients for FIR filter. Laplace transforms or IIR filters can be expressed using type as well but the PolesAndZeros should be used instead. Corresponds to SEED blockette 54.

cf_transfer_function_type

pyrocko.guts.doublequoted (CfTransferFunction)

numerator_list

list of pyrocko.guts.doublequoted objects, default: []

denominator_list

list of pyrocko.guts.doublequoted objects, default: []

class Latitude(value=None, **kwargs)[source]

Type for latitude coordinate.

unit

str, optional, default: 'DEGREES'

datum

str, optional, default: 'WGS84'

class Longitude(value=None, **kwargs)[source]

Type for longitude coordinate.

unit

str, optional, default: 'DEGREES'

datum

str, optional, default: 'WGS84'

class PolesZeros(**kwargs)[source]

Response: complex poles and zeros. Corresponds to SEED blockette 53.

pz_transfer_function_type

pyrocko.guts.doublequoted (PzTransferFunction)

normalization_factor

float, default: 1.0

normalization_frequency

pyrocko.guts.doublequoted

zero_list

list of pyrocko.guts.doublequoted objects, default: []

pole_list

list of pyrocko.guts.doublequoted objects, default: []

class ResponseListElement(**kwargs)[source]

Undocumented.

frequency

pyrocko.guts.doublequoted

amplitude

pyrocko.guts.doublequoted

phase

pyrocko.guts.doublequoted

class Polynomial(**kwargs)[source]

Response: expressed as a polynomial (allows non-linear sensors to be described). Corresponds to SEED blockette 62. Can be used to describe a stage of acquisition or a complete system.

approximation_type

pyrocko.guts.doublequoted (Approximation), default: 'MACLAURIN'

frequency_lower_bound

pyrocko.guts.doublequoted

frequency_upper_bound

pyrocko.guts.doublequoted

approximation_lower_bound

float

approximation_upper_bound

float

maximum_error

float

coefficient_list

list of pyrocko.guts.doublequoted objects, default: []

class Decimation(**kwargs)[source]

Corresponds to SEED blockette 57.

input_sample_rate

pyrocko.guts.doublequoted

factor

int

offset

int

delay

pyrocko.guts.doublequoted

correction

pyrocko.guts.doublequoted

class Operator(**kwargs)[source]

Undocumented.

agency_list

list of str objects, default: []

contact_list

list of pyrocko.guts.doublequoted objects, default: []

web_site

str, optional

class Comment(**kwargs)[source]

Container for a comment or log entry. Corresponds to SEED blockettes 31, 51 and 59.

id

pyrocko.guts.doublequoted (Counter), optional

value

str

begin_effective_time

time_float, optional

end_effective_time

time_float, optional

author_list

list of pyrocko.guts.doublequoted objects, default: []

class ResponseList(**kwargs)[source]

Response: list of frequency, amplitude and phase values. Corresponds to SEED blockette 55.

response_list_element_list

list of pyrocko.guts.doublequoted objects, default: []

class Log(**kwargs)[source]

Container for log entries.

entry_list

list of pyrocko.guts.doublequoted objects, default: []

class ResponseStage(**kwargs)[source]

This complex type represents channel response and covers SEED blockettes 53 to 56.

number

pyrocko.guts.doublequoted (Counter)

resource_id

str, optional

poles_zeros_list

list of pyrocko.guts.doublequoted objects, default: []

coefficients_list

list of pyrocko.guts.doublequoted objects, default: []

response_list

pyrocko.guts.doublequoted, optional

fir

pyrocko.guts.doublequoted, optional

polynomial

pyrocko.guts.doublequoted, optional

decimation

pyrocko.guts.doublequoted, optional

stage_gain

pyrocko.guts.doublequoted, optional

class Response(**kwargs)[source]

Undocumented.

resource_id

str, optional

instrument_sensitivity

pyrocko.guts.doublequoted, optional

instrument_polynomial

pyrocko.guts.doublequoted, optional

stage_list

list of pyrocko.guts.doublequoted objects, default: []

classmethod from_pyrocko_pz_response(presponse, input_unit, output_unit, normalization_frequency=1.0)[source]

Convert Pyrocko pole-zero response to StationXML response.

Parameters:
  • presponse (PoleZeroResponse) – Pyrocko pole-zero response
  • input_unit (str) – Input unit to be reported in the StationXML response.
  • output_unit (str) – Output unit to be reported in the StationXML response.
  • normalization_frequency (float) – Frequency where the normalization factor for the StationXML response should be computed.
class BaseNode(**kwargs)[source]

A base node type for derivation from: Network, Station and Channel types.

code

str

start_date

time_float, optional

end_date

time_float, optional

restricted_status

pyrocko.guts.doublequoted (RestrictedStatus), optional

alternate_code

str, optional

historical_code

str, optional

description

str, optional

comment_list

list of pyrocko.guts.doublequoted objects, default: []

class Channel(**kwargs)[source]

Equivalent to SEED blockette 52 and parent element for the related the response blockettes.

location_code

str

external_reference_list

list of pyrocko.guts.doublequoted objects, default: []

latitude

pyrocko.guts.doublequoted

longitude

pyrocko.guts.doublequoted

elevation

pyrocko.guts.doublequoted

depth

pyrocko.guts.doublequoted

azimuth

pyrocko.guts.doublequoted, optional

dip

pyrocko.guts.doublequoted, optional

type_list

list of pyrocko.guts.doublequoted (Type) objects, default: []

sample_rate

pyrocko.guts.doublequoted, optional

sample_rate_ratio

pyrocko.guts.doublequoted, optional

storage_format

str, optional

clock_drift

pyrocko.guts.doublequoted, optional

calibration_units

pyrocko.guts.doublequoted, optional

sensor

pyrocko.guts.doublequoted, optional

pre_amplifier

pyrocko.guts.doublequoted, optional

data_logger

pyrocko.guts.doublequoted, optional

equipment

pyrocko.guts.doublequoted, optional

response

pyrocko.guts.doublequoted, optional

class Station(**kwargs)[source]

This type represents a Station epoch. It is common to only have a single station epoch with the station’s creation and termination dates as the epoch start and end dates.

latitude

pyrocko.guts.doublequoted

longitude

pyrocko.guts.doublequoted

elevation

pyrocko.guts.doublequoted

site

pyrocko.guts.doublequoted, optional

vault

str, optional

geology

str, optional

equipment_list

list of pyrocko.guts.doublequoted objects, default: []

operator_list

list of pyrocko.guts.doublequoted objects, default: []

creation_date

time_float, optional

termination_date

time_float, optional

total_number_channels

pyrocko.guts.doublequoted (Counter), optional

selected_number_channels

pyrocko.guts.doublequoted (Counter), optional

external_reference_list

list of pyrocko.guts.doublequoted objects, default: []

channel_list

list of pyrocko.guts.doublequoted objects, default: []

class Network(**kwargs)[source]

This type represents the Network layer, all station metadata is contained within this element. The official name of the network or other descriptive information can be included in the Description element. The Network can contain 0 or more Stations.

total_number_stations

pyrocko.guts.doublequoted (Counter), optional

selected_number_stations

pyrocko.guts.doublequoted (Counter), optional

station_list

list of pyrocko.guts.doublequoted objects, default: []

class FDSNStationXML(**kwargs)[source]

Top-level type for Station XML. Required field are Source (network ID of the institution sending the message) and one or more Network containers or one or more Station containers.

schema_version

float, default: 1.0

source

str

sender

str, optional

module

str, optional

module_uri

str, optional

created

time_float

network_list

list of pyrocko.guts.doublequoted objects, default: []

classmethod from_pyrocko_stations(pyrocko_stations, add_flat_responses_from=None)[source]

Generate FDSNStationXML from list of :py:class;`pyrocko.model.Station` instances.

Parameters:
  • pyrocko_stations – list of :py:class;`pyrocko.model.Station` instances.
  • add_flat_responses_from – unit, ‘M’, ‘M/S’ or ‘M/S**2’
exception InconsistentChannelLocations[source]
exception InvalidRecord(line)[source]