Changes:
- obspy.core:
- Minimum supported Python version is now 3.8 (see #3081, #3087)
- Minimum supported dependency versions are now numpy 1.20, scipy 1.7 and
matplotlib 3.3 (see #3081, #3087) - response: avoid reporting all unkown units (e.g. "RAD/S") to evalresp as
displacement ("DIS") which with default value for "output" ("VEL") leads
to evalresp adding a differentiation during response calculation. Instead
report undefined unit, which makes evalresp use response as is and
essentially ignoring "output" parameter (see #2945) - Improved expanded channel information in string representation of Station,
e.g. when displaying station in IPython shell (see #3024) - limit length of list which records processing info (see #2882)
- map plots: fix initial map setup, properly pass through user specified
options, like "projection" etc (see #3191)
- obspy.clients.fdsn:
- update URL for NCEDC to https (see #3203)
- add all valid parameters to get_stations_bulk, e.g. geographical
constraints (see #3140) - do not use autodiscovery of file format in get_stations, unless "format"
is set to something we do not recognize (see #3138) - fix a bug in routing client that made any request made error out when
"debug=True" was set (see #3214) - fix raising FDSNTooManyRequestsException when server rejects request due
to rate limiting, due to a bug instead a TypeError was raised (see #3219)
- obspy.clients.seishub:
- submodule removed completely, since it is outdated and not even test
servers have been running for years (see #2994)
- submodule removed completely, since it is outdated and not even test
- obspy.db:
- submodule removed completely, since mostly being used in discontinued
seishub server (see #2994)
- submodule removed completely, since mostly being used in discontinued
- obspy.imaging:
- spectrogram: change the computation for default window length if not
specified to give useful values for sampling rates much higher or lower
than 100 Hz (see #3093) - spectrogram: better exception type and messages when input signal is too
short (see #3093) - map plots: fix initial map setup, properly pass through user specified
options, like "projection" etc (see #3191)
- spectrogram: change the computation for default window length if not
- obspy.io.alsep:
- new module for reading data from the Apollo missions stored in ALSEP
format (see #3156)
- new module for reading data from the Apollo missions stored in ALSEP
- obspy.io.nlloc:
- avoid mangling channel/component code when writing nonlinloc phase file,
just write full channel code unchanged into nonlinloc's "component" field
(see #3223) - fix reading nonlinloc hypocenter files written by newer nonlinloc
versions, data parsed into Arrivals was wrong (see #3223) - read geometrical station azimuth instead of ray takeoff azimuth from
hypocenter. This is more robust (ray takeoff values sometimes not accurate
at all) and also follows more the QuakeML documentation that states
"Azimuth of station as seen from the epicenter" which implies a simple
geometrical calculation (see #3224) - ignore ray takeoff dip if the stated quality for it is "0 - unreliable".
our example data show that values can be blatantly wrong when quality is
reported as "0" (see #3224) - write timing error as "0.0" if it is not set on a pick, as recommended by
nonlinloc's author (see #2371, #3224)
- avoid mangling channel/component code when writing nonlinloc phase file,
- obspy.io.nordic:
- add support for writing multiple amplitudes for one pick (only new format)
and writes some amplitude lines more compact (see #3075, also #2814) - add full support for reading and writing apparent velocity and backazimuth
with new nordic format (see #3075) - fix comments on angle of incidence vs. takeoff angle (What is called
angle of incidence in Seisan is the same as what is usually referred to as
takeoff angle, see #3075) - add function to check whether phase is valid IASPEI phase in Seisan (#3075)
- full support for writing high-accuracy origin line (see #3075)
- add support for writing multiple amplitudes for one pick (only new format)
- obspy.io.sac:
- obspy.io.seiscomp:
- update SeisComP 0.11 and 0.12 schema to potentially speed up sc3ml to qml
event catalog conversions (see #3216 and SeisComP/common#74)
- update SeisComP 0.11 and 0.12 schema to potentially speed up sc3ml to qml
- obspy.signal:
- obspy.taup:
- add option "indicate_wave_type" to distinguish S waves in ray paths
plot by using wiggly lines for shear waves (see #3047) - improved accuracy of ray paths by change of root-finding algorithm
in SeismicPhase.refine_arrival (see #3064, #3096) - improved accuracy of travel time estimates by using theta function
(see #3068) - add support for models without a core or inner core
(see #1200, #1423, #2086, #2192, #2390, #3070) - add support for a wider range of diffracted phases, like SedPdiffKP
(see #3085) and PKdiffP (see #3095) - allow rapid travel time plotting in plot_travel_times by using
precalculated travel times (see #3092) - return pierce points for any depth (see #1742, #3072)
- bug fix for rays which cannot turn due to low velocity at bottom
of layer (see #3080) - add some checks for bad phases, so "ScScS" is not allowed
(see #2774, #3082) - bug fix for sources within high slowness regions (see #2976, #3100)
- add option "indicate_wave_type" to distinguish S waves in ray paths