pyrocko.io.ims¶
Module to read and write GSE2.0, GSE2.1, and IMS1.0 files.
-
exception
DeserializeError(*args, **kwargs)[source]¶ Raised when deserialization of an IMS/GSE2 object fails.
-
class
Section(**kwargs)[source]¶ Base class for top level sections in IMS/GSE2 files.
Sections as understood by this implementation typically correspond to a DATA_TYPE section in IMS/GSE2 but for some types a finer granularity has been chosen.
-
class
Block(**kwargs)[source]¶ Base class for IMS/GSE2 data blocks / lines.
Blocks as understood by this implementation usually correspond to individual logical lines in the IMS/GSE2 file.
-
class
DataType(**kwargs)[source]¶ Representation of a DATA_TYPE line.
-
♦
type¶ str
-
♦
subtype¶ str, optional
-
♦
format¶ str
-
♦
subformat¶ str, optional
-
♦
-
class
FTPFile(**kwargs)[source]¶ Representation of an FTP_FILE line.
-
♦
net_address¶ str
-
♦
login_mode¶ builtins.str(pyrocko.guts.StringChoice)
-
♦
directory¶ str
-
♦
file¶ str
-
♦
-
class
WID2(**kwargs)[source]¶ Representation of a WID2 line.
-
♦
time¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
station¶ strstation code (5 characters)
-
♦
channel¶ strchannel code (3 characters)
-
♦
location¶ str, optional, default:''location code (aux_id, 4 characters)
-
♦
sub_format¶ builtins.str(WaveformSubformat), default:'CM6'
-
♦
nsamples¶ int, default:0
-
♦
sample_rate¶ float, default:1.0
-
♦
calibration_factor¶ float, optionalsystem sensitivity (m/count) at reference period (calibration_period)
-
♦
calibration_period¶ float, optionalcalibration reference period [s]
-
♦
instrument_type¶ str, optional, default:''instrument type (6 characters)
-
♦
horizontal_angle¶ float, optionalhorizontal orientation of sensor, clockwise from north [deg]
-
♦
vertical_angle¶ float, optionalvertical orientation of sensor from vertical [deg]
-
♦
-
class
OUT2(**kwargs)[source]¶ Representation of an OUT2 line.
-
♦
time¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
station¶ strstation code (5 characters)
-
♦
channel¶ strchannel code (3 characters)
-
♦
location¶ str, optional, default:''location code (aux_id, 4 characters)
-
♦
duration¶ float
-
♦
-
class
DLY2(**kwargs)[source]¶ Representation of a DLY2 line.
-
♦
time¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
station¶ strstation code (5 characters)
-
♦
channel¶ strchannel code (3 characters)
-
♦
location¶ str, optional, default:''location code (aux_id, 4 characters)
-
♦
queue_duration¶ floatduration of queue [s]
-
♦
-
class
DAT2(**kwargs)[source]¶ Representation of a DAT2 line.
-
♦
raw_data¶ listofstrobjects, default:[]
-
♦
-
class
STA2(**kwargs)[source]¶ Representation of a STA2 line.
-
♦
network¶ strnetwork code (9 characters)
-
♦
lat¶ float, optional
-
♦
lon¶ float, optional
-
♦
coordinate_system¶ str, default:'WGS-84'
-
♦
elevation¶ float, optionalelevation [m]
-
♦
depth¶ float, optionalemplacement depth [m]
-
♦
-
class
EID2(**kwargs)[source]¶ Representation of an EID2 line.
-
♦
event_id¶ strevent ID (8 characters)
-
♦
bulletin_type¶ strbulletin type (9 characters)
-
♦
-
class
BEA2(**kwargs)[source]¶ Representation of a BEA2 line.
-
♦
beam_id¶ strbeam ID (12 characters)
-
♦
azimuth¶ float
-
♦
slowness¶ float
-
♦
-
class
Network(**kwargs)[source]¶ Representation of an entry in a NETWORK section.
-
♦
network¶ strnetwork code (9 characters)
-
♦
description¶ strdescription
-
♦
-
class
Station(**kwargs)[source]¶ Representation of an entry in a STATION section.
-
♦
network¶ strnetwork code (9 characters)
-
♦
station¶ strstation code (5 characters)
-
♦
type¶ strstation type (4 characters) (1C: single component, 3C: three-component, hfa: high frequency array, lpa: long period array)
-
♦
lat¶ float
-
♦
lon¶ float
-
♦
coordinate_system¶ str, default:'WGS-84'
-
♦
elevation¶ floatelevation [m]
-
♦
tmin¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
tmax¶ builtins.float(pyrocko.guts.Timestamp), optional
-
♦
-
class
Channel(**kwargs)[source]¶ Representation of an entry in a CHANNEL section.
-
♦
network¶ strnetwork code (9 characters)
-
♦
station¶ strstation code (5 characters)
-
♦
channel¶ strchannel code (3 characters)
-
♦
location¶ str, optional, default:''location code (aux_id, 4 characters)
-
♦
lat¶ float, optional
-
♦
lon¶ float, optional
-
♦
coordinate_system¶ str, default:'WGS-84'
-
♦
elevation¶ float, optionalelevation [m]
-
♦
depth¶ float, optionalemplacement depth [m]
-
♦
horizontal_angle¶ float, optionalhorizontal orientation of sensor, clockwise from north [deg]
-
♦
vertical_angle¶ float, optionalvertical orientation of sensor from vertical [deg]
-
♦
sample_rate¶ float
-
♦
instrument_type¶ str, optional, default:''instrument type (6 characters)
-
♦
tmin¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
tmax¶ builtins.float(pyrocko.guts.Timestamp), optional
-
♦
-
class
BeamGroup(**kwargs)[source]¶ Representation of an entry in a BEAM group table.
-
♦
beam_group¶ strbeam group (8 characters)
-
♦
station¶ strstation code (5 characters)
-
♦
channel¶ strchannel code (3 characters)
-
♦
location¶ str, optional, default:''location code (aux_id, 4 characters)
-
♦
weight¶ int, optionalweight used for this component when the beam was formed
-
♦
delay¶ float, optionalbeam delay for this component [s] (used for meabs formed by non-plane waves)
-
♦
-
class
BeamParameters(**kwargs)[source]¶ Representation of an entry in a BEAM parameters table.
-
♦
beam_id¶ str
-
♦
beam_group¶ str
-
♦
is_rotated¶ boolrotation flag
-
♦
azimuth¶ floatazimuth used to steer the beam [deg] (clockwise from North)
-
♦
slowness¶ floatslowness used to steer the beam [s/deg]
-
♦
phase¶ strphase used to set the beam slowness for origin-based beams (8 characters)
-
♦
filter_fmin¶ floatlow frequency cut-off for the beam filter [Hz]
-
♦
filter_fmax¶ floathigh frequency cut-off for the beam filter [Hz]
-
♦
filter_order¶ intorder of the beam filter
-
♦
filter_is_zero_phase¶ boolflag to indicate zero-phase filtering
-
♦
filter_type¶ builtins.str(FilterType)type of filtering
-
♦
tmin¶ builtins.float(pyrocko.guts.Timestamp)start date of beam use
-
♦
tmax¶ builtins.float(pyrocko.guts.Timestamp), optionalend date of beam use
-
♦
-
class
OutageReportPeriod(**kwargs)[source]¶ Representation of a the report period of an OUTAGE section.
-
♦
tmin¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
tmax¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
-
class
Outage(**kwargs)[source]¶ Representation of an entry in the OUTAGE section table.
-
♦
network¶ strnetwork code (9 characters)
-
♦
station¶ strstation code (5 characters)
-
♦
channel¶ strchannel code (3 characters)
-
♦
location¶ str, optional, default:''location code (aux_id, 4 characters)
-
♦
tmin¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
tmax¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
duration¶ float
-
♦
comment¶ str
-
♦
-
class
CAL2(**kwargs)[source]¶ Representation of a CAL2 line.
-
♦
station¶ strstation code (5 characters)
-
♦
channel¶ strchannel code (3 characters)
-
♦
location¶ str, optional, default:''location code (aux_id, 4 characters)
-
♦
instrument_type¶ str, optional, default:''instrument type (6 characters)
-
♦
calibration_factor¶ floatsystem sensitivity (m/count) at reference period (calibration_period)
-
♦
calibration_period¶ floatcalibration reference period [s]
-
♦
sample_rate¶ floatsystem output sample rate [Hz]
-
♦
tmin¶ builtins.float(pyrocko.guts.Timestamp)effective start date and time
-
♦
tmax¶ builtins.float(pyrocko.guts.Timestamp), optionaleffective end date and time
-
♦
comments¶ listofstrobjects, default:[]
-
♦
-
class
Stage(**kwargs)[source]¶ Base class for IMS/GSE2 response stages.
Available response stages are
PAZ2,FAP2,GEN2,DIG2, andFIR2.-
♦
stage_number¶ intstage sequence number
-
♦
-
class
PAZ2Data(**kwargs)[source]¶ Representation of the complex numbers in PAZ2 sections.
-
♦
real¶ float
-
♦
imag¶ float
-
♦
-
class
PAZ2(**kwargs)[source]¶ Representation of a PAZ2 line.
-
♦
scale_factor¶ floatscale factor [ouput units/input units]
-
♦
decimation¶ int, optionaldecimation
-
♦
correction¶ float, optionalgroup correction applied [s]
-
♦
npoles¶ intnumber of poles
-
♦
nzeros¶ intnumber of zeros
-
♦
description¶ str, optional, default:''description
-
♦
poles¶ listofcomplexobjects, default:[]
-
♦
zeros¶ listofcomplexobjects, default:[]
-
♦
comments¶ listofstrobjects, default:[]
-
♦
-
class
FAP2Data(**kwargs)[source]¶ Representation of the data tuples in FAP2 section.
-
♦
frequency¶ float
-
♦
amplitude¶ float
-
♦
phase¶ float
-
♦
-
class
FAP2(**kwargs)[source]¶ Representation of a FAP2 line.
-
♦
decimation¶ int, optionaldecimation
-
♦
correction¶ floatgroup correction applied [s]
-
♦
ntrip¶ intnumber of frequency, amplitude, phase triplets
-
♦
description¶ str, optional, default:''description
-
♦
frequencies¶ listoffloatobjects, default:[]frequency [Hz]
-
♦
amplitudes¶ listoffloatobjects, default:[]amplitude [input untits/output units]
-
♦
phases¶ listoffloatobjects, default:[]phase delay [degrees]
-
♦
comments¶ listofstrobjects, default:[]
-
♦
-
class
GEN2Data(**kwargs)[source]¶ Representation of a data tuple in GEN2 section.
-
♦
corner¶ floatcorner frequency [Hz]
-
♦
slope¶ floatslope above corner [dB/decate]
-
♦
-
class
GEN2(**kwargs)[source]¶ Representation of a GEN2 line.
-
♦
calibration_factor¶ floatsystem sensitivity (m/count) at reference period (calibration_period)
-
♦
calibration_period¶ floatcalibration reference period [s]
-
♦
decimation¶ int, optionaldecimation
-
♦
correction¶ floatgroup correction applied [s]
-
♦
ncorners¶ intnumber of corners
-
♦
description¶ str, optional, default:''description
-
♦
corners¶ listoffloatobjects, default:[]corner frequencies [Hz]
-
♦
slopes¶ listoffloatobjects, default:[]slopes above corners [dB/decade]
-
♦
comments¶ listofstrobjects, default:[]
-
♦
-
class
DIG2(**kwargs)[source]¶ Representation of a DIG2 line.
-
♦
sensitivity¶ floatsensitivity [counts/input units]
-
♦
sample_rate¶ floatdigitizer sample rate [Hz]
-
♦
description¶ str, optional, default:''description
-
♦
comments¶ listofstrobjects, default:[]
-
♦
-
class
FIR2Data(**kwargs)[source]¶ Representation of a line of coefficients in a FIR2 section.
-
♦
factors¶ listoffloatobjects, default:[]
-
♦
-
class
FIR2(**kwargs)[source]¶ Representation of a FIR2 line.
-
♦
gain¶ floatfilter gain (relative factor, not in dB)
-
♦
decimation¶ int, optionaldecimation
-
♦
correction¶ floatgroup correction applied [s]
-
♦
symmetry¶ builtins.str(SymmetryFlag)symmetry flag (A=asymmetric, B=symmetric (odd), C=symmetric (even))
-
♦
nfactors¶ intnumber of factors
-
♦
description¶ str, optional, default:''description
-
♦
comments¶ listofstrobjects, default:[]
-
♦
factors¶ listoffloatobjects, default:[]
-
♦
-
class
MsgType(**kwargs)[source]¶ Undocumented.
-
♦
type¶ builtins.str(MessageType)
-
♦
-
class
MsgID(**kwargs)[source]¶ Representation of a MSG_ID line.
-
♦
msg_id_string¶ str
-
♦
msg_id_source¶ str, optional
-
♦
-
class
RefID(**kwargs)[source]¶ Representation of a REF_ID line.
-
♦
msg_id_string¶ str
-
♦
msg_id_source¶ str, optional
-
♦
sequence_number¶ int, optional
-
♦
total_number¶ int, optional
-
♦
-
class
LogSection(**kwargs)[source]¶ Representation of a DATA_TYPE LOG section.
-
♦
lines¶ listofstrobjects, default:[]
-
♦
-
class
WaveformSection(**kwargs)[source]¶ Representation of a DATA_TYPE WAVEFORM line.
Any subsequent WID2/OUT2/DLY2 groups are handled as indepenent sections, so this type just serves as a dummy to read/write the DATA_TYPE WAVEFORM header.
-
class
BeamSection(**kwargs)[source]¶ Representation of a DATA_TYPE BEAM section.
-
♦
parameters¶ listofBeamParametersobjects, default:[]
-
♦
-
class
ResponseSection(**kwargs)[source]¶ Representation of a DATA_TYPE RESPONSE line.
Any subsequent CAL2+stages groups are handled as indepenent sections, so this type just serves as a dummy to read/write the DATA_TYPE RESPONSE header.
-
class
OutageSection(**kwargs)[source]¶ Representation of a DATA_TYPE OUTAGE section.
-
♦
report_period¶
-
♦
-
class
Origin(**kwargs)[source]¶ Undocumented.
-
♦
time¶ builtins.float(pyrocko.guts.Timestamp)epicenter date and time
-
♦
time_fixed¶ builtins.str(pyrocko.guts.StringChoice), optionalfixed flag,
"f"if fixed origin time solution,Noneif not
-
♦
time_error¶ float, optionalorigin time error [seconds],
Noneif fixed origin time
-
♦
residual¶ float, optionalroot mean square of time residuals [seconds]
-
♦
lat¶ floatlatitude
-
♦
lon¶ floatlongitude
-
♦
lat_lon_fixed¶ builtins.str(pyrocko.guts.StringChoice), optionalfixed flag,
"f"if fixed epicenter solution,Noneif not
-
♦
ellipse_semi_major_axis¶ float, optionalsemi-major axis of 90% c. i. ellipse or its estimate [m],
Noneif fixed
-
♦
ellipse_semi_minor_axis¶ float, optionalsemi-minor axis of 90% c. i. ellipse or its estimate [m],
Noneif fixed
-
♦
ellipse_strike¶ float, optionalstrike of 90% c. i. ellipse [0-360],
Noneif fixed
-
♦
depth¶ floatdepth [m]
-
♦
depth_fixed¶ builtins.str(pyrocko.guts.StringChoice), optionalfixed flag,
"f"fixed depth station, “d” depth phases,Noneif not fixed depth
-
♦
depth_error¶ float, optionaldepth error [m], 90% c. i.,
Noneif fixed depth
-
♦
nphases¶ int, optionalnumber of defining phases
-
♦
nstations¶ int, optionalnumber of defining stations
-
♦
azimuthal_gap¶ float, optionalgap in azimuth coverage [deg]
-
♦
distance_min¶ float, optionaldistance to closest station [deg]
-
♦
distance_max¶ float, optionaldistance to furthest station [deg]
-
♦
analysis_type¶ builtins.str(pyrocko.guts.StringChoice), optionalanalysis type,
"a"automatic,"m"manual,"g"guess
-
♦
location_method¶ builtins.str(pyrocko.guts.StringChoice), optionallocation method,
"i"inversion,"p"pattern,"g"ground truth,"o"other
-
♦
event_type¶ builtins.str(pyrocko.guts.StringChoice), optionalevent type,
"de"??,"fe"??,"ke"known earthquake,"ki"known induced event,"km"known mine explosion,"kn"known nuclear explosion,"kr"known rockburst,"kx"known experimental explosion,"ls"landslide,"se"suspected earthquake,"si"suspected induced event,"sm"suspected mine explosion,"sn"suspected nuclear explosion,"sr"suspected rockburst,"sx"suspected experimental explosion,"uk"unknown
strauthor of the origin
-
♦
origin_id¶ strorigin identification
-
♦
-
class
EventsSection(**kwargs)[source]¶ Representation of a DATA_TYPE EVENT section.
-
♦
bulletin_title¶
-
♦
event_sections¶ listofEventSectionobjects, default:[]
-
♦
-
class
MessageHeader(**kwargs)[source]¶ Representation of a BEGIN/MSG_TYPE/MSG_ID/REF_ID group.
-
♦
version¶ str
-
♦
type¶ str
-
♦
-
class
TimeStamp(**kwargs)[source]¶ Representation of a TIME_STAMP line.
-
♦
value¶ builtins.float(pyrocko.guts.Timestamp)
-
♦
-
class
XW01(**kwargs)[source]¶ Representation of a XW01 line (which is a relict from GSE1).
-
♦
dummy¶ str, optional
-
♦
-
iload_filename(filename, **kwargs)¶ Read IMS/GSE2 information from named file.
-
iload_dirname(dirname, **kwargs)¶ Read IMS/GSE2 information from directory of IMS/GSE2 files.
-
iload_glob(pattern, **kwargs)¶ Read IMS/GSE2 information from files matching a glob pattern.
-
iload(source, **kwargs)¶ Load IMS/GSE2 information from given source(s)
The
sourcecan be specified as the name of a IMS/GSE2 file, the name of a directory containing IMS/GSE2 files, a glob pattern of IMS/GSE2 files, an open filehandle or an iterator yielding any of the forementioned sources.This function behaves as a generator yielding
Sectionobjects.