Change Log

All notable changes to sceval and the evsceval plugin 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.310

Fixed

  • Correctly compute hypocentral distances for configured stations.

2024.218

Added

  • Support considering hypocentral distance for the station-distance evaluation by configuring mismatchScore.useHypocentral = false. Otherwise, epicentral distance is used.

2024.200

Changed

  • sceval-tune: Code linting supporting Python 3.

  • sceval: When checking if time, slowness or backazimuth parameters of a arrival is used an arrival is considered used, even if the used flag is not set for any of the parameters. This is special case may be relevant for arrivals from older SeisComP systems or arrivals from external applications.

2024.193

Fixed

  • Do not crash when event parameters without journal entries are read from file.

2023.325

Changed

  • Remove support for SeisComP3 C++ API since no packages will be provided for SeisComP3 anymore.

2023.244

Added

  • Documentation:

    • Section on filtering of origins and phase picks.

    • Section on fast setup.

Changed

  • Corrected typos in changelog.

2022-07-25

Added

  • The configuration parameter origin.agencyWhiteList allows filtering of origins by agency ID, e.g., for confining evaluation to origins from own system.

  • The documentation section ‘Pipelines, Redundancy/Import’ describes the application of sceval in systems with pipelines or external origins.

2022-06-24

Added

  • Add tolerance for origins without ‘usedPhaseCount’. Instead count the number of actually used arrivals considering arrivals if any pick parameter of time, slowness or backazimuth is used.

  • Do not consider the weight of an arrival but test if time, slowness or backazimuth have been used. The weight is typically read from locator output and if beyond control by scautoloc or scanloc.

2022-03-28

Changed

  • Update command-line help for sceval-tune.

2022-03-11

Added

  • evsceval plugin

    • Allow configuration of object cache size.

    • Print configuration summary in debug output during startup.

2022-01-12

Added

  • Add tuning option --use-defaults to consider some default parameters of sceval. Otherwise the actual configuration is used allowing a more precise tuning. Before, defaults were considered.

Changed

  • Improved tuning mode and sceval-tune.

  • Remove tuning option --min-phase.

2021-11-22

Added

  • Support using “global” as a synonym for “default” in setupName.

Changed

2021-11-17

Changed

  • Allow using multiple module names for setupName, e.g. supporting evaluation of origins for which the picks where provided by multiple picker modules.

2021-11-05

Added

  • evsceval plugin for scevent:

    • Do not set the eventTypeCertainty if it has been set before unless sceval.overwriteManual = true. The feature requires SeisComP in version >= 5.0.0.

2021-08-21

Added

  • Send a journal entry if the origin status is set to track the history.

2021-04-20

Added

  • evsceval plugin for scevent:

    • Do not ignore the plugin if the multiple-agency check has an invalid configuration. Just skip this check.

    • The new configuration parameters sceval.overwriteEventType and sceval.overwriteManual in scevent.cfg add control for overwriting event types and manual solutions by scevent.

    • Do not process events where the preferred origin is automatic but the event type was set by journaling unless sceval.overwriteManual = true in scevent.cfg. The feature requires SeisComP in version >= 5.0.0.

2021-02-14

Added

  • The new configuration parameter minPhaseConfirm allows confirmation of origins reaching or exceeding a number of arrivals

  • The new command-line option --force forces evaluation of origins without testing the original status, mode or author. Use the option for testing the configuration and for forcing evaluation.

2021-01-19

Added

  • The new command-line option -O allows filtering of origins by their ID in XML playbacks.

  • Added more details and examples to command-line help.

2020-09-02

Important

  • The new configuration parameter origin.ignoreStatus defines origin evaluation states for which origins are not evaluated. By default no origin which has already an evaluation status is evaluated. This parameter potentially changes the behavior of sceval if processed origins have a non-empty evaluation status. To restore the previous behavior, set origin.ignoreStatus = "".

2020-07-27

Added

  • The configuration parameter maxRMS allows to reject origins with large RMS residual. The parameter may be important if locator modules do not check the origin RMS or if the check is very tolerant.

  • Re-design documentation.

Fixed

  • In line with documentation reject origins with depth < minDepth and depth > maxDepth instead of <= minDepth and >= minDepth, respectively.

2020-03-06

Changed

  • Provide Python3 support for sceval-tune

2020-02-26

Changed

  • Improved documentation.

2020-02-21

Changed

  • So far only origins which belong to events were evaluated in XML playback mode. Now we evaluate all origins of the event parameter set.

  • Before we checked at start if a station has a valid epoch in the inventory for the current time. Some customers noticed that historical data could not be processed when the inventory did not contain such an epoch. Now we just check if the station is part of the inventory.

Fixed

  • Use the configuration parameter distanceProfilesMinPhase correctly.

  • Do not apply minPhase if the number of used phases >= distanceProfilesMinPhase However, when distanceProfilesMinPhase = 0, minPhase is considered.

2019-11-09

Changed

  • Return the origin status and stop evaluations or origins whenever modified.

  • Use -1 as default for gapMinPhase which disables extended Gap criterion.

  • Every method adds the comment “scevalMethod” to identify the method which set the status

  • Executing extended GAP evaluation after station-distance evaluation allows to confirm origins rejected before by station-distance evaluation.

  • Do not set the maxGap comment by default if GAP = 360. The change will not comment single-stations observations, e.g. from arrays. Events may be located by single arrays with beam picks (arrival times, backazimuth, slowness). Solutions from single arrays have GAP = 360 degree. With this change, the sceval plugin will not set the event type, e.g. to “not locatable” even if the event was observed only at a single array unless specifically configured by maxGap = 360.

2019-11-01

Changed

  • Changed the name of configuration parameters playback/--playback to sloppy/--sloppy.

Added

  • New option --noQC for running sceval without waveform QC parameters, e.g. in playbacks.

  • New configuration parameter mismatchScore.use to disable calculating the mismatch score without setting the origin status. Useful for testing and tuning.

2019-10-29

Fixed

  • When stations are unavailable during startup, the scqc does not deliver values. Therefore, all stations are inactive for evaluation during startup of sceval and are only activated by incoming waveform QC parameters which must be in range. This may delay the full functioning of sceval by some seconds.

Added

  • Added the configuration parameter qc.useDatabase allowing to read waveform QC parameters from the database. Doing so may slow down sceval during startup.

  • Added availability to the default waveform QC parameters, qc.parameters, to be tested.

  • Added parameter --playback to facilitate sceval working on data even if QC parameters are missing due to short waveform time windows during playback.

  • If a station is inactive due to out-of-range QC parameters, is immediately activated when it provides an arrival to the evaluated origin.

2019-09-25

Fixed

  • Update origins and comments creation/modification time if the evaluation status or text was updated

2019-06-11

Added

  • The evsceval plugin for scevent does not set the event type if the event has manual origins or if the configuration parameter sceval.rejected < 0.

2019-04-05

Added

  • sceval now fully supports XML playbacks using the --ep option. Before, only the preferred origin of an event was evaluated. Now, all origins are evaluated. This allows to use sceval in XML-based offline playback on origins before involving scevent.

2019-01-09

Changed

  • Plugin evsceval: setting the event type may overwrite the event type set by other modules. Therefore, the operation is disabled by default configuration.

2018-11-12

Added

  • sceval-tune script checks the existence of the profile input file, provides more descriptive error output and considers events in a default time window if unset.

2018-09-18

Added

  • Check the depth of an origin and reject events shallower than minDepth or deeper than maxDepth.

2018-07-19

Fixed

  • Removed connection.username and connection.server from default configuration allowing for sceval alias modules to be executed in parallel with default configuration

2018-05-07

Fixed

  • Segmentation fault in offline mode

2018-04-27

Added

  • evsceval plugin for with multi-agency test for scevent: The contribution of several agencies to an event may be used as a criterion to set the status of origins contributed by one or more agencies. Setting the status is only available if the original origin status is neither final, confirmed or rejected. The description XML files have been uniquely renamed. To avoid duplicates, remove from $SEISCOP_ROOT/etc/description/ the files evalcomment.xml and evsceval.xml. Only keep scevent_evsceval.xml.

2018-03-02

Fixed

  • Correct unit in description of minGapPhase configuration parameter.

2018-02-14

Fixed

  • Accept status from previous methods if station-distance test yields undefined

2017-11-30

Added

  • distanceProfilesMinPhase requiring a minimum number of phases for station-distance statistics, over-rules the minPhase parameter

  • Descriptive output for tuning mode

2017-11-30

Fixed

  • setupName considers the module for which a station has a binding profile

  • Fix database query

2017-09-18

Changed

  • Set origin comment: scevalMethod

  • Calculate mismatchScore even if origin was rejected or confirmed before by other method, but do not use the mismatchScore

2017-08-21

Fixed

  • Rounding error in distance comparison

2017-06-26

Added

  • Added support of alias module names in sceval-tune

2017-06-05

Changed

  • Consider used phases for minimum phase test

2017-03-24

Changed

  • evsceval plugin change default value of reject to 50%

2017-03-09

Fixed

  • Message group handling

2017-03-03

Fixed

  • evsceval plugin for scevent setting event type and certainty

2017-03-02

Added

  • evsceval plugin for scevent setting event type and certainty

2017-02-17

Fixed

  • Gap criterion: add maxGap comment but do not reject origin

Added

  • Event IDs to plots in tuning mode

2016-09-12

Added

  • sceval-tuning mode: add support for distance profiles

2016-08-03

Added

  • Add sceval-tuning mode with python script and documentation

2016-06-16

Added

  • Add minimum station criterion

  • Add extended gap criterion

2016-04-20

Changed

  • Remove minDist

2016-03-15

Added

  • Fixed streamMask in description

2016-03-11

Added

  • Add GAP criterion

  • Support empty distance profiles

  • Ignore already rejected origins

  • Add documentation for QC

2016-02-11

Changed

  • The evaluation status of already rejected origins will no longer be changed

2015-10-22

Fixed

  • High CPU usage in case of manual origins

2016-02-25

Added

  • Add gap criterion to check the largest azimuthal gap of an origin

2016-03-11

Added

  • Allow empty distance profiles

  • Reject origins that are rejected once even when confirmed by another evaluation method