Change Log¶
All notable changes to scanloc and add-ons will be documented in this file.
2024.319¶
Changed¶
Output unformatted XML in playbacks with
--ep
in order to reduce file size.Add command-line option
--formatted
in order to output formatted XML which may be better readable for humans.
2024.269¶
Changed¶
Setting cluster time to earliest arrival instead of average.
For preliminary origins set the epicenter to the sensor location of the earliest arrival but the depth to what is configured in
defaultDepth
.
Added¶
Add pick delay as the difference of pick creation time and actual pick time to listed picks when using playback_picks with
--list
.
2024.268¶
Added¶
The new command-line option
--list
in the auxiliary script playback_picks prints details of all picks contained in the processed XML file.
Changed¶
Print all output from
--print
to stdout instead of stderr.
2024.262¶
Added¶
New configuration parameter
streamCheckLevel
allowing the specification of the level of the stream ID [NET.STA.LOC.CHA] used for comparing picks. The default is loc for checking stream IDs of PICKS on the level of sensor location (LOC).
2024.218¶
Added¶
Allow computing distances by considering 3D coordinates of sensor locations including elevation and/origin depths. Otherwise, only latitudes and longitudes are considered. The 3D distance computation applies to clustering, phase association and event association. The feature is activated by configuring
use3D = true
.
2024.184¶
Changed¶
Origin creation information are now set whenever an origin is created by the cluster search or after associating phases. In previous versions, these information were not updated in rare situations resulting in empty values or values inherited from external origins. As a results, the creation time is now exact and may be slightly earlier as compared to previous versions.
2024.143¶
Added¶
Add default weights to scoring allowing to run scanloc without explicit configuration of
score.weights.p
andscore.weights.s
when using the option--config-file
.Provide documentation of the score contribution by RMS and depth as well as picks with slowness and back azimuth.
2024.120¶
Added¶
If picks which do not only have a time value but also a masurment of slowness and/or a back azimuth and if those measurements are used by the locator, the arrivals referencing these picks will make a great impact on the origin. Therefore, the score contribution from these picks can be increased by the score parameters
score.weights.p
andscore.weights.s
where triplets assign separate weights to pick time, slowness and back azimuth. The usage of slowness and back azimuth depends on locator.
2024.110¶
Changed¶
Update documentation and command-line help of the parameters controlling the publication of origins.
2024.106¶
Added¶
New configuration parameter
clusterSearch.maxSize
controlling the maximum number of picks in a cluster after selecting core points and before adding more picks. Since core points are first collected, clusters may have a higher number of picks. The goal of this option is to speed up scanloc. The option may help to increase the performance of scanloc in case of dense large-N networks where very many cluster can be formed due to the proximity of stations or generous configuration.New configuration parameter
association.arrivalCountMinRes
controlling the association of picks to origins. For origins with a larger number of arrivals than configured, the association of P and S picks is controlled by the minimum of (association.maxPResidual
,association.maxResidual
) and (association.maxSResidual
,association.maxResidual
), respectively. The goal of this option is to speed up scanloc by only associating picks to already stable origins defined by many arrivals where new picks later on are unlikely to be removed again from origins by residual checks. The option may help to increase the performance of scanloc in case of dense large-N networks where very stations provide phase picks.
2024.092¶
Added¶
playback_picks can be used for playbacks of origins in addition to picks and amplitudes.
2024.073¶
Fixed¶
Remove ‘Is’-type picks from buffer when
buffer.pickKeep
is exceeded.Report in configuration summary of debug output whether cluster search is performed.
2024.047¶
Added¶
playback_picks with
--print
prints a NSLC list, author and stream information of picks and amplitudes. The information can be used for filtering waveforms (scart) or inventory (invextr), for creating global bindings or for applying author filtering, e.g., in dump_picks.
2024.044¶
Changed¶
Update documentation and command-line help of the auxiliary scripts dump_picks and playback_picks.
2024.040¶
Added¶
The configuration parameter
locator.forceFixDepth
enforces to fix the depth of the origin to what is configured bydefaultDepth
, no free-depth solutions are made. Enablelocator.forceFixDepth
in case of knowledge of ground-truth depth or in case of sparse networks. Support for fixing depth by the locator is required.
2024.038¶
Important¶
The scanloc configuration parameters
clusterSearch.ignorePicks
andclusterSearch.ignorePickTimeDifference
have been deprecated and must be renamed tobuffer.ignorePickTimeDifference
since the parameter is actually applied to the buffering of picks and not only to the cluster search algorithm.
Changed¶
In addition to P-type picks
buffer.ignorePickTimeDifference
is also applied to infrasound Is-type picks.
2024.036¶
Changed¶
playback_picks continues to print statistics with –print even when picks have no creationInfo().creationTime().
2024.025¶
Added¶
playback_picks with the new option –print allows printing some statistics of the read XML file instead of sending picks and amplitudes.
2024.024¶
Fixed¶
High memory usage.
2023.325¶
Changed¶
Remove support for SeisComP3 C++ API since no packages will be provided for SeisComP3 anymore.
2023.317¶
Changed¶
Remove support for SeisComP3 Python API since no packages will be provided for SeisComP3 anymore.
2023.305¶
Changed¶
Update documentation of internal events.
2023.300¶
Fixed¶
Consider configuration parameter
eventAssociation.maxTimeSpan
with double precision.Report more configuration parameters in summary debug output.
2023.218¶
Added¶
The command-line option
--drop-reference-check
and the configuration parameterassociation.dropReferenceCheck
allow to associate S-type picks which do not have a reference pick. Reference picks are typically added to S picks by scautopick but picks from other modules may not have this feature.
2023.214¶
Changed¶
Update documentation of phase association.
2023.139¶
Added¶
In dump_picks the new option
--maximum-delay
allows to only dump picks and amplitdues which were created with delays no longer than the given value. Apply to ignore objects from non-real-time playbacks.
2023.116¶
Changed¶
Extend travel-time tables
iasp91_scanloc.*
to 120 deg distance.Add travel-time tables for SKKP, SKS, SS, ScS phases.
2023.115¶
Added¶
dump_picks has received the new command-line option
--end
to be consistent with other modules.
2023.087¶
Changed¶
Add
association.maxPResidual
andassociation.maxSResidual
to maximum time window for associating picks at maximum distance defined byassociation.maxDist
. This may increase the amount of picks available for association.Add more information to debug output especially during phase association.
2023.011¶
Added¶
Provide more precise estimate of
clusterSearch.maxPickDelay
for tuning when using--cluster-search-log-file
.Add new configuration parameter
buffer.ignorePickByStream
and command- line option--ignore-picks-stream
for ignoring picks by stream ID.
Changed¶
Equally apply pick filtering to processing in real time and in XML playbacks.
Rename the configuration parameter
clusterSearch.ignorePicks
toclusterSearch.ignoreTimeDifference
.clusterSearch.ignorePicks
is deprecated.Apply
clusterSearch.ignoreTimeDifference
also to picks with phase type ‘Is’.Update cluster reference time based on configuration of
clusterSearch.minSize
andassociation.minPhase
ifclusterSearch.referenceTimeMode
= ‘MaxPickDelay’. Before, onlyclusterSearch.minSize
was considered.
2023.004¶
Added¶
Allow configuring the type of phase picks considered for clustering by new configuration parameter
clusterSearch.phaseType
.
2022-08-23¶
Added¶
The new configuration parameter
buffer.originStatusIgnore
allows ignoring external origins based on origin evaluation status.
Changed¶
Increase fallback slowness for P and S waves to 25 and 40 s/deg, respectively, defining time windows for searching for picks to be associated. The values only apply when the travel-time interface does not provide travel times at the maximum epicentral distance configured by
association.maxDist
seen from latitude=longitude=depth = 0.
2022-07-22¶
Important¶
The configuration parameter
ignoreOrigins
has been renamed tobuffer.ignoreOrigins
for better consistency with other buffer parameters.ignoreOrigins
is still considered but a warning is issued when found.buffer.ignoreOrigins
overridesignoreOrigins
.
Added¶
The new configuration parameter
buffer.originAuthorWhiteList
allows filtering of external origins by a list of author names. When set, other origins are ignored. The parameter simplifies configuring systems with other locator module like screloc in the loop. It allows to exclude origins from these modules to be treated by scanloc. In a redundant system, processing of origins received from a secondary system can be avoided.More examples in documentation with more explanations of the timing in playbacks.
2022-05-31¶
Changed¶
Use station elevation for travel time computation. If the station elevation is not available, a value of zero is assumed. Note, neither LOCSAT nor libtau currently consider station elevations for providing travel times via the travel-time interface.
2022-03-29¶
Added¶
Do not accept picks when inventory misses sensorLocation coordinates.
Apply rigorous RMS checks.
2022-03-18¶
Changed¶
Update documentation of S-phase picker and debugger.
2022-03-14¶
Changed¶
Optimize cluster search.
2022-03-11¶
Changed¶
Update documentation.
Update command-line help (
-h
).Minor optimizations.
2022-03-09¶
Fixed¶
Process picks and origins without evaluation mode like automatic ones and do not shut down.
2022-02-14¶
Changed¶
Improve origin relocation.
Improve origins quality checks.
Update documentation.
Update auxiliary scripts: playback_picks, dump_picks.
2022-01-02¶
Fixed¶
Correct typos in documentation.
Initialize variables in dump_picks script.
2021-12-15¶
Added¶
dump_picks:
The new command-line option
--net-sta
allows filtering by network or by network and station codeThe command-line option
--author
is also applied to filter amplitudes.
2021-11-23¶
Added¶
playback_picks: The new command-line option
--mode
allows adding a constant number of seconds to pick, creation and amplitude reference times when sending to the messaging for mimicking real-time playbacks at current time.
2021-11-10¶
Added¶
The command-line option
--filter-pick-author
provides filtering of picks by author. Then only picks created by the given author are considered. The options allows specific tuning of scanloc based on picks from different picker modules where only picks from one picker should be used e.g. in a pipeline.
Changed¶
New layout for documentation
2021-10-27¶
Added¶
Picks with evaluation status ‘rejected’ are ignored. For considering rejected picks use the command-line option
--allow-rejected-picks
.
2021-10-25¶
Changed¶
Clean up source code.
2021-09-22¶
Added¶
Log pick author name in pick processing in debug output.
2021-09-17¶
Fixed¶
With the configuration parameter
locator.fixDepth
the depth is only fixed todefaultDepth
if previous attempts to locate fail. The depth is not fixed in general.Improved debug logging of locator actions.
2021-09-14¶
Fixed¶
Origin relocation after arrival removal due to max residual check
The dump_picks script writes picks to XML file with option
-o
.
2021-09-06¶
Added¶
Before associating a new manual S-pick to an origin, an S pick with the same station-location is removed from the origin avoiding multiple S picks from the same station-location.
2021-09-03¶
Changed¶
Update the documentation of cluster reference time.
Arrange configuration parameters in scconfig in more logical order.
2021-09-01¶
Added¶
The timing section of the documentation now explains the cluster reference time
The new configuration parameter
clusterSearch.reference
allows to delay updating the cluster reference time until sufficiently new picks are available for forming new cluster. The option is relevant if only very few stations with significantly different data delay provide the picks.The command-line help provides the synopsis and examples.
2021-08-21¶
Added¶
Send a journal entry if the origin status is set to track the history.
2021-08-21¶
Added¶
Add option
buffer.ignoreManualOrigins
to ignore manual origins in real time and XML playbacks. Default: true, manual origins will be ignored. The option prevents scanloc from relocating origins with mode manual, typically by generated by an operator with scolv.Consider option
ignoreOrigins
also in XML playbacks.Describe the status of origins in documentation.
2021-06-28¶
Changed¶
Add compatibility of script
playback_picks
for Python3.Adjust debug output of origin residual check.
2021-06-23¶
Added¶
New command line option
--timing
. The option sets the timing reference in offline processing mode. Available options are: pickTime or creationTime. Default is pickTime. The following example sets the reference time to creationTime.--timing creationTime
2021-06-16¶
Added¶
New command line option
--final-only
which can be used in offline processing mode to limit the result set to final origins only.
2021-04-22¶
Fixed¶
Ignore picks without phase hint, do not crash.
2021-01-22¶
Added¶
In ep playbacks the list of origins in command line output also shows corresponding event index.
A warning is issued if the number of buffered origins reaches the configured maximum
Changed¶
Update documentation.
2020-09-16¶
Added¶
In ep playbacks the list of origins in command line output also shows the RMS of the origin.
2020-09-14¶
Added¶
When creating and relocating a new origin the depth type is written to the origin. While normally relocated origins receive the depth type “from location”, origins with fixed depth receive “operator assigned”.
Fix Python3 compatibility of dump_picks and playback_picks. On SeisComP3 systems with release jakarta-2018.327.p23 and older generate a link to the Python interpreter must be created. The exact version depends on your SeisComP3 installation. Example:
cd $SEISCOMP_ROOT/bin/ version=`ldd $SEISCOMP_ROOT/lib/python/seiscomp3/_Core.so |\ sgrep libpython | cut -c 11` ln -s /usr/bin/python$version seiscomp-python
2020-09-11¶
Added¶
scanloc provides the densely sampled travel-time tables
iasp91_scanloc.*
based on the iasp91 model. The considered velocity model has been added iniasp91_scanloc.tvel
.
2020-08-14¶
Added¶
The dump_picks script only dumped picks for which the corresponding stream was found in the inventory. The restriction has been removed and all picks are dumped. Use the new option –check-inventory to get the old behaviour.
The new options
--hours
and--start
in dump_picks set the start time to search for picks in alternative ways overriding--time-window
:--hours
: search the given hours back in time from now.--start
: search with an explicit start time.
2020-05-18¶
Fixed¶
Make sure that the preferred origin has been sent before the origin will be removed from cache.
Changed¶
Make parameter
publication.wakeUpInterval
configurable in scconfigSet the default back value
publication.intervalTimeSlope
= 0.5 as the missing of last origins has been resolved. Compare with changes on 2020-03-26.
2020-05-08¶
Changed¶
Make code compatible with Ubuntu 20.04.
2020-05-05¶
Fixed¶
Fixes a problem that was introduced with the last release. If the parameter
score.weights.increaseManual
is enabled and the pick evaluation mode is not set scanloc crashes.
2020-03-27¶
Added¶
Add configuration parameter
score.weights.increaseManual
to increase the score weight of manual picks by a factor of 1.0001. This gives higher priority to manual picks than to automatic ones. In case manual and automatic picks co-exist for the same event and could be associated manual ones may be preferred if the solution score is otherwise the same.
2020-03-26¶
Added¶
Show the associator and locator configuration in debug output.
Changed¶
Set the default value
publication.intervalTimeSlope = 0
in order not to miss any origin.
2020-03-06¶
Changed¶
Provide Python3 support for dump_picks and playback_picks.
2020-02-26¶
Changed¶
Improved documentation.
2020-02-03¶
Fixed¶
scanloc stops processing after an exception of type
TimeSpan::operator=(): double doesn't fit into int
. The exception occurred when a travel time table was not available for a specific phase type.
2019-12-02¶
Changed¶
Adjusted the documentation of the the S-phase picker.
2019-11-26¶
Changed¶
Improved association of P phases.
2019-10-17¶
Fixed¶
Corrected control of S-phase association by association.maxSResidual. The parameter was not completely considered before.
2019-09-16¶
Fixed¶
Corrected phase association of P phases which was unreliable and mostly supported by clustering requiring larger values for
maxPickDelay
andmaxSearchDist
. Both parameters can now be better optimized resulting in significant speed up of the clustering.Optimized check of
minScore
before publishing origins. Now, more origins are kept in the internal buffer for associating. As are result more previously unassociated phases are now associated.
Changed¶
Replaced the parameter
association.minScore
byassociation.minPhase
. Now, the number of phases is used instead of the score to trigger phase association. Preliminary origins with low score can become regular origins when improved by phase association.Adjusted the documentation, increased the readability of configuration parameters: adjust order and tool tips.
Added¶
When a cluster is found it is relocated and additional phases are added. Unstable locations from relocation based on few phases may prevent association. Therefore, a second step is added where additional phases are added before relocation. The solutions are compared based on the score. The best solution is considered.
Added
association.maxPResidual
andassociation.maxSResidual
to control association of picks from P and S phases.association.maxResidual
serves as a final check of all station residuals.association.minPhase
replacingassociation.minScore
. See above.
2019-09-04¶
Fixed¶
Fixed the options
-a
and-m
in the dump_picks script.
2019-08-29¶
Added¶
We have set timesUsed = true for arrivals in preliminary origins. When sending preliminary origins the pick times can therefore now be used for relocating the preliminary origins from scanloc without modification in scolv or screloc.
2019-08-21¶
Added¶
The default travel time table of SeisComP for LocSAT provide the times in intervals of 1 degree epicentral distance. Thus the curvature of the travel-time curve at closer distance is not well imaged potentially resulting in wrong locations or missing event solutions. Therefore, the LocSAT tables, iasp91_scanloc.*, based on the IASP91 model with higher spacial sampling are added. Configuration example for associating and locating:
association.table = iasp91_scanloc locator.profile = iasp91_scanloc
2019-05-15¶
Added¶
Do not try to associate picks to origins which were pick times are before origin time or after first arrival P and S times at
association.maxDist
. Theassociation.maxResidual
parameter is considered. This implementation potentially speeds up the pick association.
Fixed¶
Include the split cluster in the check for the maximum number of cluster. Otherwise the total number of origins may be higher than
maxOrigins
Event association check. It could happen that origins were ignored by the preferred origin score check causing more load.
2019-04-17¶
Fixed¶
Segfault caused by missing null pointer check.
2019-04-10¶
Changed¶
Code cleanup.
2019-03-06¶
Changed¶
Adjust output when using the parameter
--cluster-search-log-file
. Consider also invalid clusters.
2019-03-06¶
Added¶
Out the lower limit of the recommended
maxPickDelay
parameter when running scanloc with--cluster-search-log-file
. The value can be considered for tuning the cluster search.
2019-02-28¶
Changed¶
Do not trigger cluster search if the new pick will not be used.
2019-02-27¶
Added¶
new command line option
author
to dump_picks script. With that option it is possible to filter the result pick set additionally by author.
2019-02-01¶
Added¶
New command line option
--cluster-search-log-file
. Location of the cluster search log file used to store additional information e.g. the found clusters and split clusters.
2019-01-21¶
Added¶
New config option
clusterSearch.regionFilter
. With this option enabled scanloc takes only picks for the cluster search into account those sensor locations are inside the defined region. The region is defined by latitude, longitude and a radius in km. By default the region filter is disabled.
2019-01-15¶
Fixed¶
scanloc locator bug. In case of the initial relocation attempt fails the algorithm tries to relocate the origin by selecting the first pick. This stage of the relocation process always failed.
2018-09-10¶
Added¶
Add the documentation of the parameters
association.maxDist
andassociation.stationConfig
. Both parameters control the epicentral distances within which stations can be considered for providing picks to association.
2018-07-09¶
Changed¶
When reading a station configuration file trailing spaces and line breaks are removed.
2018-06-11¶
Changed¶
When associating P picks scanloc checks if the corresponding station location already contributes a P pick on the same location and does not accept more picks on the same location. Before the change, the test was restricted to the streamID. However, other picker modules or operators may pick on other streams. Therefore, the locationID instead of the streamID is tested.
2018-04-17¶
Added¶
New config option
locator.fixDepth
. Scanloc relocates origins in several stages. With this option enabled the relocation process forces the depth to default value in case of all previous relocation attempts fail.
2018-04-05¶
Added¶
In playback mode (
--ep
option), the timing of scanloc origins is obscured since usually many more origins than in real time are available within short time intervals. Therefore the publication parameters are now automatically set to zero and the available origins are published immediately as soon as they are available. Otherwise origins may be lost.
2018-04-03¶
Fixed¶
Optimized distance calculation in cluster search. Re-tuning of the cluster search may significantly increase the performance.
2018-03-15¶
Fixed¶
The parameter
association.maxDist
is given in units of km but it was compared with epicentral distance in degree. The conflict is fixed and the parameter is now used consistently in units of km.
2018-02-01¶
Added¶
Mark core points in cluster results.
2018-01-31¶
Added¶
New config parameter
clusterSearch.checkOrigins
. In case of a cluster contains picks with the same stream ID the cluster is split into combinations. For each combination scanloc creates an origin which might not fulfill the cluster search criteria anymore. Enable this config option to skip these origins. This feature is disabled by default.
2018-01-19¶
Changed¶
The S-AIC picker outputs more debug information with respect to processing. This only affects the saic plugin. The plugin version was increased to 0.5. In particular, the log prefix
[S-AIC]
was removed and the log component was changed fromSAICPicker
toS-AIC
. If component logging is enabled in any SC3 application, then this component will be used as log prefix.
2018-01-15¶
Added¶
More unit tests used for internal package build only.
2017-11-15¶
Added¶
Added
--db-disable
flag to disable database usage.
2017-09-25¶
Fixed¶
Bug in station configuration file reading when configured in
association.stationConfig
.
2017-09-06¶
Fixed¶
Cluster search.
2017-09-04¶
Fixed¶
Bug in close pick detection.
2017-08-28¶
Changed¶
Improve cluster search performance.
2017-08-08¶
Fixed¶
ignorePicks
configuration parameter. Floating point numbers were not handled properly.
2017-07-03¶
Fixed¶
Enhance debug output.
2017-06-28¶
Fixed¶
Avoid duplicates in cluster search.
2017-06-20¶
Fixed¶
Flush origin outbox on shutdown.
2017-06-15¶
Fixed¶
Cluster search reference time calculation. Instead of using the pick with the latest pick time the algorithm used always the first pick as cluster reference time.
2017-06-09¶
Fixed¶
Cluster search
2017-05-15¶
Added¶
station configuration support by configuration of
association.stationConfig
like in scautoloc.
2017-03-22¶
Added¶
Added object flow to soh log
2017-03-20¶
Fixed¶
Fixed station epoch cache lookup.
2017-03-12¶
Added¶
Association of phases with zero weight (extended feature requiring specific license).
2017-03-09¶
Fixed¶
Message group handling.
2017-02-27¶
Added¶
Default values for options in dump_picks
Add amplitudes to dump_picks and playback_picks
2017-02-24¶
Added¶
The script playback_picks supports different pipelines.
2017-02-20¶
Removed¶
Region check and rect filter.
2017-02-16¶
Added¶
Configurable locator interface and traveltime table.
2017-02-16¶
Fixed¶
New command line option
--locator-list
2017-02-09¶
Added¶
Support to list registered locators.
2017-01-12¶
Removed¶
Removed region and rect filter from XML description and documentation. This filter will be removed in the near future.
2016-12-16¶
Fixed¶
Region filter test.
2016-06-31¶
Added¶
New configuration parameter
clusterSearch.regions
which can be used to specify non-rectangular region filters.
2016-06-08¶
Fixed¶
Sending of origins in offline mode.
2016-03-10¶
Fixed¶
Support association of manual S picks with no reference P pick.
2016-03-10¶
Fixed¶
Use database even for
--ep
to read inventory unless--inventory-db
.
2016-03-09¶
Added¶
New configuration parameter
clusterSearch.maxPickDelay
which can be used to specify the maximum difference between pick times and first pick time taken into account by the clustersearch. By default all picks are taken into account.
2016-01-07¶
Added¶
Remove sorted picks with too large residual, starting with picks with largest residual, relocate and evaluate residuals after each removal.
2015-12-22¶
Fixes¶
Use correct distance calculation on sphere.
2015-12-18¶
Fixed¶
Dump_picks uses correct column names if a prefix is configured e.g. with PostgreSQL.
2015-12-01¶
Fixed¶
Reject origins with depths greater than ignore depth.
Added¶
Check for outlier arrivals one by one and relocated after every removal.
Repeat outlier arrival check until remainders are kept.
Check depth and score after outlier removal.
2015-08-25¶
Added¶
Offline and online processing examples to documentation.
2015-07-10¶
Added¶
Fixed cluster search origin check. Limits the number of origins to the configured threshold.
2015-05-26¶
Added¶
Offline processing of events.
2015-04-23¶
Fixed¶
Fixed crash when pick could not been loaded from database.
2015-03-30¶
Fixed¶
Incoming origins will be checked for double assigned picks.
2015-02-24¶
Added¶
New configuration parameter
clusterSearch.maxOrigins
.