A seismology toolkit for Python https://pyrocko.org/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
All notable changes to Pyrocko are documented in this file.
The format is based on Keep a Changelog.
- Improved RMS and STA/LTA Snufflings (keep responsive while processing, abort button, more options).
- Reading of GNSS location information from datacube files.
- Jackseis: added possibility to restitute data to displacement, velocity, or acceleration.
- Fix problems with Station-XML files containing 1900-01-01 dummy dates (macOS).
- Correct 'pyrocko-python' symlink on Linux which was broken in v2021.06.29 (affects grondown scripts).
- Windows support (experimental).
- Jackseis: can now use 3-digit Julian day in output filename templates.
- Snuffler: improved fidelity when working with many markers. It should now be
possible to smoothly handle 100.000 markers. The option
--disable-marker-sortingcan be supplied to disable sorting in the marker side-panel for an additional speedup.
- Improved high precision (HP) time handling. Pyrocko now has two distinct
modes for time handling. Timestamps are now handled either as 64-bit floats
or as 96/128-bit floats. The mode can be selected by environment variable,
config setting or by a call to
util.use_high_precicion_timeat program startup. HP time mode is only available on platforms where NumPy's HP floats are available. HP time mode is necessary when handling data with sampling rates above 100 kHz.
- Dropping support for Python 2 binary distribution packages (Anaconda and PIP).
- Python 2 support will be removed from Pyrocko in the near future in order to reduce our maintenance and testing workload. Sorry.
- Fixed an error in Double-DC source which caused incorrect placement of the sub-sources.
- RectangularSource: added opening_fraction to model tensile dislocations
- New command line option for jackseis:
- Timing definition offsets can now take
%as suffix to scale phase traveltimes relatively.
- New plot function to show radiation pattern / azimuthal distribution of directivity effects for synthetics.
- Snuffler: load StationXML via menu.
io.mseed: Adding option for STEIM2 compression.
- Jackseis: Adding
--output-steimoption to control compression. Default compression changed to STEIM2.
- YAML files can now include other YAML files, when loaded through guts.
- Moment tensor objects can now also be initialized from east-north-up coordinates.
- Fix plotting issues in cake.
- Update Geofon catalog to handle MTs correctly after Geofon web page update.
- Fix typos in STA/LTA documentation.
- Fomosto PSGRN/PSCMP backend: improved control of modelling parameters, fixes some accuracy issues, regarding the spacial sampling interval.
- Fomosto PSGRN/PSCMP backend: fixed scaling of isotropic GF components
- Improved handling of differing sampling rates and interpolation settings
when modelling multiple targets in
- PyQt compat issues with MacOS Big Sur.
- Fix of
- GmtPy now forces PDF version 1.5 when producing PDFs (newer PDFs caused problems when included in XeLaTeX).
- QuakeML: Not strictly requiring preferred origin to be set anymore when extracting Pyrocko event objects.
- Snuffler now asks for confirmation when the user attempts to close the window.
- Fix errors with corrupt WADL returned by GEONET FDSN web service.
- Fix cake crashes related to the
--distancesargument on newer NumPy/Python3.8.
- Changed default of
True, to be consistent with the behaviour before the introduction of that flag.
- Support for rotational seismograms in GF stores and Fomosto QSSP2017 backend.
- Trace objects now support serialization to YAML and inclusion into Guts based objects.
- Fix incorrect conversion from displacement to velocity and acceleration in
seismogram synthesis in
pyrocko.gf. The problem occured when
quantity='velocity'was selected in a
pyrocko.gf.Targetwith a GF store with
stored_quantity='displacement'. The returned amplitudes were incorrect except for the case of 1 Hz GFs.
- Installation of prerequisites is now possible with a separate script
install_prerequisites.pyrather than through
- Respect sensor azimuth and dip when converting RESP to StationXML.
- Scenario-generator (Colosseo) now supports user-specified lists of stations.
- FDSN client now checks arguments against service description (WADL) by default.
- Improved FDSN client and documentation.
- Fix Py2/Py3 related crashes of
- Fix installation dependency issues.
- Fix error in EPS export of GmtPy (GMT5).
- Fix broken CSV export in CrustDB.
- Fix broken help panel in some snufflings.
- Fix buggy marker removal in Snuffler
- Various small bug fixes and documentation improvements.
- Fix Python 2 issue affecting
- Event objects now have an
extrasdict to hold user defined attributes.
- Removed dependency on 'future' package.
- On installation with pip we now allow automatic dependency resolution.
- We now additionally provide binary 'manylinux1' pip wheels for Python 2.7, 3.5, 3.6, 3.7, and 3.8.
- Improved testing, CI, deployment.
- Fix a bug in static modelling time handling.
- Support QSSP 2017
- Support QSSP PPEG variant
- Add subcommand
tttlsdto fill holes in travel time tables. Uses eikonal solver to fill the holes.
- Allow setting receiver depth for
accelerationas stored GF quantities.
- Support squared half-sinusoid source time function.
- Allow specifying record length when saving MiniSEED files.
- New command line options to save cake plots.
trace.transfer, bypass FFTs for flat responses.
- Fix problems with corrupt channel info text tables from FDSN.
- Correct reading of SEGY files with IEEE floating point values.
- Correct query parameters for ISC catalog, previous versions where querying for HH:HH:SS instead of HH:MM:SS.
- Fix scenario generator crashes.
- Fix incorrect error handling in GF waveform synthesis
- Fix failing maps snuffling when running multiple Snuffler instances.
- Support querying all stations with
- Support event queries in
- Catalog snuffling: support FDSN event queries.
trace_scalesetting in Snuffler configuration file.
- Support 1-2-3 as a valid channel triplet.
elastic2component scheme in Fomosto QSEIS backend (pure explosion sources).
- Support Burger's elasticity parameters in
- Include updated old GmtPy tutorial it documentation.
- Snuffler: can now use
<shift>-<tab>to iterate through phase markers of active event.
- New dataset: Pleistocene and Holocene volcano database from Smithsonian Institution.
- All location-based objects like events and stations should now fully support Cartesian offset coordinates.
- Scenario: interface, behaviour and defaults improved.
- Snuffler: trace to station lookup now supports both:
(net, sta, loc). The latter more specific one has precedence.
- Automap: changed appearance of GNSS velocities.
- Fix a bug affecting origin time and STF of
- Fix conversion of QuakeML phase lacking phase hint to Pyrocko marker.
- Fix ignored
- Fix error in polygon-on-sphere cutting (
- Fix errors in point in polygon-on-sphere checks.
- Fix various errors in GSHHG data dry/wet area masking.
- Fix crashes with bad StationXML files, improve robustness.
- Fix problems with crazy GPS infos in Datacube recordings. Time interpolation is now much more robust.
- Fix crashes in recursive STA/LTA.
- Fix a numerical bug in recursive STA/LTA.
- Improved SeedLink acquisition.
- Shortcut to get Kite
- Improve documentation of
pyrocko.gfwith a special topic chapter.
- Combined volume change plus CLVD parameterized source:
- Method to perturb
- Support cross-section views in beachball plotting.
- Automap now defaults to not show any scale.
- Improved compatibility with Anaconda.
- CombiSource, which can handle a set of different sources as a single source object
- resonator stf
- Function to get Guts attributes.
ypathfunctions to set Guts attributes via pattern.
clip_tracesconfigurable in configuration file.
- New client: ISC catalog interface.
- Add a function to create phase markers from QuakeML.
- Can now use Gutenberg Richter magnitude distribution when creating synthetic scenario events.
- Support for handling of sparse gnss components.
- Now the discretised point sources have their true time set, time shifting is done only before and after c function calls.
- Source times are handled in double precision.
- Static store requests fallback to zero time to handle absolute source times.
- Store ext gives individual index for out of bounds error for targets.
- Geofon catalog web format changed, now parsing GeoJSON instead of HTML.
- Instrument response deconvolution gives more explicit warnings about inconsistencies.
- Changed default of
model.gnsscorrelation factor to 0.0.
- Add flag to dump progressbar instead of showing the progressbar.
- Can now handle and plot GNSS stations lacking complete set of component orientations.
- Event depth is now optional (model).
- low level errors in time handling
- ExplosionSource for non-volume sources
- Problem with numpy scalars in source and target objects
- Conversion of quakeml piks to pyrocko phasepiks use phase polarities strings
- snuffling broken load dialogs (QT5)
- trace: deltat rounding error function
- segy functions
- model.gnss covar
- scenario: perfomance improvement
- geofon catalog: problem with multiple solutions for some events
- setup: UnicodeDecodeError
- fuzzy beachball plotting bugs
- Anaconda builds for python 3.6 and 3.7
- Green's Mill
- gf: rectangular source check for point source discretisation
- stationxml: using a flat response function is enabled
- guts: support for time stamps in local time
- datasets/geonames: get city by name
- gf: Eikonal solver
- plot: fuzzy beachballs
- trace: has a function to fix rounding errord
- gf: improved summation of static gf components
- FDSN: configurable time out for requests
- rdseed get_station fix
- gf: quantity velocity from displacement through
- Snuffler map added
- Bing aerial images
- Distance and area measure
- Toggle lines and cities
- GF: Server added JSON API
- Snuffler: and Jackseis now accept YAML event files
- Snuffler: polarity picking in
- fomosto: ttt now checks for holes in travel-time tables
- can now specify output yaml style for strings
- improved XML namespace support
- add utility module to help with guts structure updaters
- model: GNSS displacement components can have covariances
- improved handling of derived magnitude sources
- slip-driven rectangular source, explosion
- Fixed Bug in
ExplosionSource(incorrect moment conversion)
- Fixed bug in polygon coordinates
- Fixed SSL issues
- Fixed SRTM tile download
fomosto tttextract --output
- Various minor bugfixes
- Various compatibility fixes
- Updated web service URLs and online catalog parsers
pyrocko.obspy_compatcompatibility with basic ObsPy classes (see https://pyrocko.org/docs/)
- Added examples for ObsPy compatability, StationXML and QuakeML
geofonupdated page parser
- various bugfixes
- improvements to
yamlbased event files
- changes on geofon event web pages require an update in
- better handling of defaults in
guts, guts-derived default objects are now automatically cloned
- follow changed SRTM url
- error in string/time conversion (affecting date formats with more than one '.')
- py2/3 related bugs in
- incorrect handling of moment/magnitude in
- New module
pyrocko.scenario: Create earthquake data scenarios on the fly, outputs are
- Waveforms model
- InSAR deformation model (with
- GNSS data
colosseoCLI tool to initialize and calculate your earthquake scenarios.
snuffler: improved OpenStreetmap visual appearance and logging
snuffler: marker table print menu
snuffler.maps: upgrade to OpenLayers4
- QuakeML - Include moment tensor to
- deployment polishing to
- automap SRTM download authentication
- Python 2/3 support
- Community support chat
- new deployment for Anaconda and
- Installation through python pip and Anaconda
- Built-in Snufflings added: Maps, Seismosizer and Cake
- Version naming has changed to rolling release style (e.g. v2017.11.16)
- Reorganized module hierarchy (backwards-compatible)
- documentation and examples