obspy.clients.syngine.client.Client.get_waveforms_bulk

Client.get_waveforms_bulk(model, bulk, eventid=None, sourcelatitude=None, sourcelongitude=None, sourcedepthinmeters=None, sourcemomenttensor=None, sourcedoublecouple=None, sourceforce=None, origintime=None, starttime=None, endtime=None, label=None, components=None, units=None, scale=None, dt=None, kernelwidth=None, format='miniseed', filename=None, data=None)[source]

Request waveforms for multiple receivers simultaneously.

This method is strongly tied to the actual implementation on the server side. The default values and all the exception handling are deferred to the service. Please see the Syngine documentation for more details and the default values of all parameters.

This method uses the POST functionalities of the Syngine service.

Example

The bulk parameter is a list of either other lists/tuples or dictionaries. Each item specifies one receiver. Items can be specified in a number of different ways:

>>> from obspy.clients.syngine import Client
>>> c = Client()
>>> bulk = [
...     {"network": "IU", "station": "ANMO"},  # net/sta codes
...     {"latitude": 47.0, "longitude": 12.1}, # coordinates
...     {"latitude": 47.0, "longitude": 12.1,
...      "networkcode": "AA", "stationcode": "BB",
...      "locationcode": "CC"},   # optional net/sta/loc
...     ["IU", "ANTO"],           # net/sta as list
...     [33.2, -123.5]            # lat/lon as list/tuple
... ]

Just pass that on to the bulk waveform method and retrieve the data.

>>> st = c.get_waveforms_bulk(
...     model="ak135f_5s", bulk=bulk, sourcelatitude=12.3,
...     sourcelongitude=75.3, sourcedepthinmeters=54321,
...     sourcemomenttensor=[1E19, 1E19, 1E19, 0, 0, 0],
...     components="Z")
>>> print(st.sort())  
5 Trace(s) in Stream:
AA.BB.CC.MXZ    | 1900-01-01T00:00:00... - ... | 4.0 Hz, 15520 samples
IU.ANMO.SE.MXZ  | 1900-01-01T00:00:00... - ... | 4.0 Hz, 15520 samples
IU.ANTO.SE.MXZ  | 1900-01-01T00:00:00... - ... | 4.0 Hz, 15520 samples
XX.S0001.SE.MXZ | 1900-01-01T00:00:00... - ... | 4.0 Hz, 15520 samples
XX.S0002.SE.MXZ | 1900-01-01T00:00:00... - ... | 4.0 Hz, 15520 samples
Parameters:
  • model (str) – Specify the model.

  • bulk (list[list], list[tuple], or list[dict]) – Specify the receivers to download in bulk.

  • eventid (str) – Specify an event identifier in the form [catalog]:[eventid]. The centroid time and location and moment tensor of the solution will be used as the source.

  • sourcelatitude (float) – Specify the source latitude.

  • sourcelongitude (float) – Specify the source longitude.

  • sourcedepthinmeters (float) – Specify the source depth in meters.

  • sourcemomenttensor (list[float]) – Specify a source in moment tensor components as a list: Mrr, Mtt, Mpp, Mrt, Mrp, Mtp with values in Newton meters (Nm).

  • sourcedoublecouple (list[float]) – Specify a source as a double couple. The list of values are strike, dip, rake [, M0 ], where strike, dip and rake are in degrees and M0 is the scalar seismic moment in Newton meters (Nm). If not specified, a value of 1e19 will be used as the scalar moment.

  • sourceforce (list[float]) – Specify a force source as a list of Fr, Ft, Fp in units of Newtons (N).

  • origintime (UTCDateTime) – Specify the source origin time. This must be specified as an absolute date and time.

  • starttime (UTCDateTime, str, or float) –

    Specifies the desired start time for the synthetic trace(s). This may be specified as either:

    • an absolute date and time

    • a phase-relative offset

    • an offset from origin time in seconds

    If the value is recognized as a date and time, it is interpreted as an absolute time. If the value is in the form phase[+-]offset it is interpreted as a phase-relative time, for example P-10 (meaning P wave arrival time minus 10 seconds). If the value is a numerical value it is interpreted as an offset, in seconds, from the origintime.

  • endtime (UTCDateTime, str, or float) –

    Specifies the desired end time for the synthetic trace(s). This may be specified as either:

    • an absolute date and time

    • a phase-relative offset

    • an offset from start time in seconds

    If the value is recognized as a date and time, it is interpreted as an absolute time. If the value is in the form phase[+-]offset it is interpreted as a phase-relative time, for example P+10 (meaning P wave arrival time plus 10 seconds). If the value is a numerical value it is interpreted as an offset, in seconds, from the starttime.

  • label (str) – Specify a label to be included in file names and HTTP file name suggestions.

  • components (str or list[str].) – Specify the orientation of the synthetic seismograms as a list of any combination of Z (vertical), N (north), E (east), R (radial), T (transverse)

  • units (str) – Specify either displacement, velocity or acceleration for the synthetics. The length unit is meters.

  • scale (float) – Specify an amplitude scaling factor. The default amplitude length unit is meters.

  • dt (float) – Specify the sampling interval in seconds. Only upsampling is allowed so this value must be larger than the intrinsic interval of the model database.

  • kernelwidth (int) – Specify the width of the sinc kernel used for resampling to requested sample interval (dt), relative to the original sampling rate.

  • format (str) – Specify output file to be either miniSEED or a ZIP archive of SAC files, either miniseed or saczip.

  • filename (str or file-like object) – Will download directly to the specified file. If given, this method will return nothing.

  • data (dict, bytes, or file-like object) – If specified this will be sent directly sent to the Syngine service as a POST payload. All other parameters except the filename parameter will be silently ignored. Likely not that useful for most people.