scrtdd
Double-Difference location module for real-time and event catalogs.
Configuration
etc/defaults/global.cfg
etc/defaults/scrtdd.cfg
etc/global.cfg
etc/scrtdd.cfg
~/.seiscomp/global.cfg
~/.seiscomp/scrtdd.cfg
scrtdd inherits global options.
- onlyPreferredOrigins
Type: boolean
Relocate only preferred origins. When disabled scrtdd listens to LOCATION group and tries to relocate any origin. When enabled scrtdd listens to EVENT group and tries to relocate the preferred origin of an event. Default is
true
.
- automaticOrigins
Type: boolean
Allow relocation of automatic origins Default is
true
.
- manualOrigins
Type: boolean
Allow relocation of manual origins Default is
true
.
- workingDirectory
Type: path
Defines the directory used for storing processing files (waveforms cache and debugging files). Default is
@ROOTDIR@/var/lib/rtdd
.
- saveProcessingFiles
Type: boolean
Store logs and processing files in the working directory (useful for debugging/troubleshooting or further analysis). Default is
false
.
- activeProfiles
Type: list:string
Defines a list of active profiles for real-time/single-event processing.
- performance.profileTimeAlive
Type: int
Unit: sec
Defines how long the real-time profile data should be kept in memory (in seconds). This is useful to release memory (catalog waveform data) after a period of inactivity, at the cost of having to reload the catalog (load and process waveforms) when a new origin arrives. A negative value force the profiles to stay always in memory. Default is
3600
.
- performance.cacheWaveforms
Type: boolean
Save catalog waveforms to local disk after they have been loaded the first time. This avoids re-reading them from the configured recordStream in the future since this operation is dramatically slow (unless the recordStream points to a local disk source, in which case there is no advantage over caching the waveforms). Note: It is safe to delete the cache folder, in which case the waveforms will be loaded and saved again on disk the next time the profile is loaded (they will be read again from the configured recordStream). Default is
true
.
- performance.cachedWaveformLength
Type: double
Unit: sec
The waveform length to store in the disk cache (centered around pick time). Although the minimum required waveform length is inferred from the cross-correlation settings (the max between cross-correlation and SNR windows), this option allows to cache to disk a longer window, which become useful to skip the data re-downloading if the cross-correlation settings are changed in the future. Default is
10
.
- cron.delayTimes
Type: list:int
Unit: sec
Specifies a delay time in seconds, relative to origin time, to trigger the processing. This can be a single value or a list of delay times. The list case can be useful when a quick solution is wanted but more waveforms data becomes available at a later time. In this scenario multiple times are configured, so that a first solution is attempted early and a more refined one is computed later. Example: "60, 120, 300, 3600" Default is
10
.
- cron.logging
Type: boolean
Enables/disables updating of a cron log file. This file will be created at ~/.seiscomp3/log/[appname].sched and contains information about the scheduled events and the processing queue. Default is
true
.
Note
profile.* Each profile is a configuration set for a specific region. To enable a profile for real-time processing the profile name must be added to ‘activeProfile’ option. Origins within a profile region are relocated using that profile configuration. If an origin falls in multiple profile regions, the profile defined first in activeProfile option will be used. This allows for hierarchical regions, where special regions are defined first and a broader region is defined last.
Note
profile.$name.*
$name is a placeholder for the name to be used and needs to be added to rtdd.activeProfiles
to become active.
rtdd.activeProfiles = a,b
profile.a.value1 = ...
profile.b.value1 = ...
# c is not active because it has not been added
# to the list of rtdd.activeProfiles
profile.c.value1 = ...
- profile.$name.regionType
Type: string
Type of region: RECTANGULAR or CIRCULAR Default is
CIRCULAR
.
- profile.$name.region
Type: list:double
If regionType is RECTANGULAR then 4 comma separated values are expected: min_lat, min_lon, max_lat, max_lon. If regionType is CIRCULAR then 3 comma separated values are expected: lat, lon, radius in km. If left empty it represents a limitless region.
- profile.$name.earthModelID
Type: string
This is the earthModelID label that is stored in the created origin e.g. the velocity model name of the profile
- profile.$name.methodID
Type: string
This is the methodID label that is stored in the created origin. Default is
RTDD
.
Note
profile.$name.catalog.* Define a catalog for this profile. This is used in real-time (single-event mode) as the reference catalog to relocate new origins. There are two ways to define a catalog file: one is providing a single eventFile containing origin ids; the second way consists in providing three csv files eventFile, phaFile and stationFile.
- profile.$name.catalog.eventFile
Type: path
Path to event file to be used for this profile. If this file contains just one column called "origin", then each line must be an existing origin id. In this case neither phase.csv nor station.csv files are required. Alternatively the event file must be in the format generated by --dump-catalog and phase.csv and station.csv files should be configured too
- profile.$name.catalog.phaFile
Type: path
Path to catalog picks file to be used for this profile
- profile.$name.catalog.stationFile
Type: path
Path to the stations file to be used for this profile
- profile.$name.catalog.P-Phases
Type: list:string
Defines a priority list of accepted P phases. Phases not in the list will be discarded. If multiple phases exist for the same event/station pair, the first one in the list will be used. Default is
Pg,P
.
- profile.$name.catalog.S-Phases
Type: list:string
Defines a priority list of accepted S phases. Phases not in this list will be discarded. If multiple phases exist for the same event/station pair, the first one in the list will be used. Default is
Sg,S
.
Note
profile.$name.doubleDifferenceSystem.* These options control the creation of the double-difference equation system, that is which events and phases are used in the system. Among the selected events all possible event pairs are considered and for each pair, when a phase exists for both paired events at a common station, an equation is added to the system.
Note
profile.$name.doubleDifferenceSystem.eventFiltering.* Exclude poorly connected events from the DD system: not enough phases and/or neighbours
- profile.$name.doubleDifferenceSystem.eventFiltering.minNumPhases
Type: int
Minimum number of phases at common stations required by event pairs. Event pairs not satisfying this condition will not be used. Default is
4
.
- profile.$name.doubleDifferenceSystem.eventFiltering.minNumNeighbours
Type: int
Minimum number of neighbours required by an event. Events not satisfying this condition will not be used. Default is
4
.
Note
profile.$name.doubleDifferenceSystem.phaseFiltering.* Exclude not optimal phases from the DD system.
- profile.$name.doubleDifferenceSystem.phaseFiltering.minStationToEventPairDistRatio
Type: double
Minimum ratio between event-station to inter-event distance allowed. Phases belonging to stations not satisfying this condition will not be used. Default is
5
.
- profile.$name.doubleDifferenceSystem.phaseFiltering.minStationDistance
Type: double
Unit: km
Minimum distance (km) between event and station required for a phase to be used. Phases belonging to stations not satisfying this condition will not be used.
- profile.$name.doubleDifferenceSystem.phaseFiltering.maxStationDistance
Type: double
Unit: km
Max distance (km) between event and station allowed for a phase to be used. Phases belonging to stations not satisfying this condition will not be used. A value of 0 or less disables this limit.
- profile.$name.doubleDifferenceSystem.phaseFiltering.maxNumPhases
Type: int
Maximum number of phases per event pair. If this value is set, closer stations will have higher precedence over further ones. A value of 0 disables this limit.
Note
profile.$name.doubleDifferenceSystem.eventPairSelection.* This option controls how neighbouring events are selected. In the simpliest form ‘numEllipsoids’ is set to 0 and the neighbours are selected on the nearest neighbour basis within a search distance of ‘maxEllipsoidSize’. This is the preferred choice for multi-event mode. When ‘numEllipsoids’ is not 0, the ellipsoid selection algorithm is used. From Waldhauser 2009: “to assure a spatially homogeneous subsampling, reference events are selected within each of five concentric, vertically elongated ellipsoidal layers of increasing thickness. The dimension of the ellipsoid is based on the assumed error in the routine locations and the maximum interevent distance over which model errors can still be effectively minimized (see Waldhauser, 2001). The layers are twice as thick at the poles than they are at the equator to accommodate the generally larger error in the depth of the routine location of a new event. Each layer is split up into its eight quadrants (or cells), and the neighboring events are selected from each of the 40 cells.” Neighbours are selected for each ellipsoid/quadrant combination in a round robin fashion until ‘maxNumNeigh’ is reached.
Note
profile.$name.doubleDifferenceSystem.eventPairSelection.singleEvent.* Configuration for single-event relocation
- profile.$name.doubleDifferenceSystem.eventPairSelection.singleEvent.maxNumNeighbours
Type: int
Maximum number of neighbors per event. Useful to reduce computation time when relocating a large number events. A value of 0 disables this limit Default is
80
.
- profile.$name.doubleDifferenceSystem.eventPairSelection.singleEvent.numEllipsoids
Type: int
Number of concentric ellipsoidal layers to use in neighboring events selection. If ‘maxNumNeigh’ is not set this parameter does not have effects. If ‘maxNumNeigh’ is set and ‘numEllipsoids’ is not 0, the optimal ‘maxNumNeigh’ value is ‘numEllipsoids’ * 8. Default is
5
.
- profile.$name.doubleDifferenceSystem.eventPairSelection.singleEvent.maxEllipsoidSize
Type: double
Unit: km
Horizontal axis length (km) of the outermost boundary. Each inner concentric layer axis will be of size/2 of the previous one. Please, note that the horizontal axis size is half of the vertical one. Default is
5
.
Note
profile.$name.doubleDifferenceSystem.eventPairSelection.multiEvent.* Configuration for multi-event relocation
- profile.$name.doubleDifferenceSystem.eventPairSelection.multiEvent.maxNumNeighbours
Type: int
Maximum number of neighbors per event. Useful to reduce computation time when relocating a large number events. A value of 0 or less disables this limit Default is
30
.
- profile.$name.doubleDifferenceSystem.eventPairSelection.multiEvent.numEllipsoids
Type: int
Number of concentric ellipsoidal layers to use in neighboring events selection. If ‘maxNumNeigh’ is not set this parameter does not have effects. If ‘maxNumNeigh’ is set and ‘numEllipsoids’ is not 0, the optimal ‘maxNumNeigh’ value is ‘numEllipsoids’ * 8. Default is
0
.
- profile.$name.doubleDifferenceSystem.eventPairSelection.multiEvent.maxEllipsoidSize
Type: double
Unit: km
Horizontal axis length (km) of the outermost boundary. Each inner concentric layer axis will be of size/2 of the previous one. Please, note that the horizontal axis size is half of the vertical one. Default is
5
.
Note
profile.$name.crossCorrelation.* cross-correlation is used to improve the differential travel times used in the double-difference system. The differential travel times are computed as difference between the phase absolute travel time of two events’ phases and consequently rely on the accuracy and consistency across pick times. The cross-correlation is used to improve those differential times by cross-correlating the phases waveforms and using the detected lag as differential time for every phase pair whose correlation coefficient exceeds the configured threshold. This lag then replaces the absolute travel time difference value in the double-difference system. The phase pairs with low correlation coefficient maintain the differential time derived from the absolute travel time difference. The cross-correlation step is not mandatory and can be disabled using either ‘maxStationDistance’ or ‘maxInterEventDistance’
- profile.$name.crossCorrelation.maxStationDistance
Type: double
Unit: km
By default all phase pairs in the double-difference system are cross-correlated. However this parameter allows to set the maximum allowed distance (km) between event and station for a cross-correlation to happen. Phases belonging to further stations will not be used in cross-correlation. Setting it to -1 removes the limits. Settings it to 0 disables the cross-correlations. Default is
0
.
- profile.$name.crossCorrelation.maxInterEventDistance
Type: double
Unit: km
By default all phase pairs in the double-difference system are cross-correlated. However this parameter allows to set the maximum allowed distance (km) between events for a cross-correlation to happen. Phases of event pairs whose inter-event distance if further than this value will not be used in cross-correlation. Setting it to -1 removes the limits. Settings it to 0 disables the cross-correlations. Default is
-1
.
- profile.$name.crossCorrelation.detectMissingPhasesAutoOrigin
Type: boolean
Whether cross-correlation is used to detect phases at stations with no associated picks. This option applies to automatic origins. If the background catalog contains events with high quality picks, those can serve as template for detecting picks on real-time events. In multi-event mode this option is not used. Default is
true
.
- profile.$name.crossCorrelation.detectMissingPhasesManualOrigin
Type: boolean
Whether cross-correlation is used to detect phases at stations with no associated picks. This option applies to manual origins. If the background catalog contains events with high quality picks, those can serve as template for detecting picks on real-time events. This option also affects the multi-event mode. Default is
false
.
- profile.$name.crossCorrelation.compatibleChannels
Type: string
Cross-correlation is computed on phases with the same channel code (e.g. HH. EH, HG, etc), however here it is possible to force the cross-correlation between different channel codes. The value is a list separated by ‘;’ and each element is a list (again) of compatible channels separated by ‘,’ for example: "HH,EH;HG,HN"
- profile.$name.crossCorrelation.p-phase.minCCCoef
Type: double
Min cross-correlation coefficient accepted to use a differential travel time. Default is
0.50
.
- profile.$name.crossCorrelation.p-phase.start
Type: double
Unit: sec
Start of data window to cross-correlate with respect to pick time (+/- secs). Default is
-0.50
.
- profile.$name.crossCorrelation.p-phase.end
Type: double
Unit: sec
End of data window to cross-correlate with respect to pick time (+/- secs). Default is
0.50
.
- profile.$name.crossCorrelation.p-phase.maxDelay
Type: double
Unit: sec
Maximum data windows lag accepted (secs).. Default is
0.50
.
- profile.$name.crossCorrelation.p-phase.components
Type: list:string
Priority list of components to be used in cross-correlation (e.g. Z, N, E, 1, 2, 3). If the component exists for a pair of phases it is used for the cross-correlation, otherwise the next component in the list is tried. Special values are ‘H’, which computes the L2 norm of the 2 horizontal components and ‘T’ (and ‘R’), which computes the transversal (and radial) component with respect with the event location to which the phase belongs to. If empty the component where the phase was picked is used. Default is
Z
.
- profile.$name.crossCorrelation.s-phase.minCCCoef
Type: double
Min cross-correlation coefficient accepted to use a differential travel time. Default is
0.50
.
- profile.$name.crossCorrelation.s-phase.start
Type: double
Unit: sec
Start of data window to cross-correlate with respect to pick time (+/- secs). Default is
-0.50
.
- profile.$name.crossCorrelation.s-phase.end
Type: double
Unit: sec
End of data window to cross-correlate with respect to pick time (+/- secs). Default is
0.75
.
- profile.$name.crossCorrelation.s-phase.maxDelay
Type: double
Unit: sec
Maximum data windows lag accepted (secs). Default is
0.50
.
- profile.$name.crossCorrelation.s-phase.components
Type: list:string
Priority list of components to be used in cross-correlation (e.g. Z, N, E, 1, 2, 3). If the component exists for a pair of phases it is used for the cross-correlation, otherwise the next component in the list is tried. Special values are ‘H’, which computes the L2 norm of the 2 horizontal components and ‘T’ (and ‘R’), which computes the transversal (and radial) component with respect with the event location to which the phase belongs to. If empty the component where the phase was picked is used. Default is
H
.
Note
profile.$name.crossCorrelation.waveformFiltering.* Filter waveforms before performing the cross-correlation
- profile.$name.crossCorrelation.waveformFiltering.filterString
Type: string
SeisComP string based filter definition. Set to "" to disable filtering. Default is
"ITAPER(1)>>BW_HLP(2,1,20)"
.
- profile.$name.crossCorrelation.waveformFiltering.margin
Type: double
Unit: sec
Extra seconds to add to the waveform ends before applying the filter. Useful to initialize the filter and to discard potential filter artifacts at the beginning and end of trace Default is
1
.
- profile.$name.crossCorrelation.waveformFiltering.resampling
Type: double
Unit: Hz
Resample all traces at this samplig interval (hz) Set it to 0 disable resampling. If the event phases are picked on different channels for the same station(s), this option has to be used to allow a common sampling rate. Default is
0
.
Note
profile.$name.crossCorrelation.snr.* Exclude phases from cross-correlation when the Signal to Noise Ratio (SNR) is below a configured threshold. Useful to avoid that low quality phases (e.g. automatic) generate low quality cross-correlation differential travel times. Set ‘minSnr’ to 0 to disable this feature.
- profile.$name.crossCorrelation.snr.minSnr
Type: double
Minimum SNR value required for a P or S pick to be used in cross-correlation. Default is
2
.
- profile.$name.crossCorrelation.snr.noiseStart
Type: double
Unit: sec
Start of noise window with respect to pick time (+/- secs). Default is
-3
.
- profile.$name.crossCorrelation.snr.noiseEnd
Type: double
Unit: sec
End of noise window with respect to pick time (+/- secs). Default is
-0.350
.
- profile.$name.crossCorrelation.snr.signalStart
Type: double
Unit: sec
Start of signal window with respect to pick time (+/- secs). Default is
-0.350
.
- profile.$name.crossCorrelation.snr.signalEnd
Type: double
Unit: sec
End of signal window with respect to pick time (+/- secs). Default is
1
.
Note
profile.$name.solver.* These options control the double-difference system solver. The solution to the double-difference system is found through an iterative process: a double-difference system is built from the origin initial locations and solved. Then the hypocenters are updated based on these initial solutions and a new system is built and solved again multiple times until ‘algoIterations’ iterations is reached.
- profile.$name.solver.solverType
Type: string
Solver algorithm to use: either LSMR or LSQR Default is
LSMR
.
- profile.$name.solver.algoIterations
Type: int
This parameter control how many iterations the solver performs Default is
20
.
Note
profile.$name.solver.downWeightingByResidual.* At each iteration the solver down-weighs the system equations accordingly to their residuals of the previous iteration, which scales differential time accordingly to their quality. This option value expresses the standard deviations of the double-difference residuals beyond which the observations are dropped. For residuals below this value, the weighing scheme follows the Waldhauser/Ellsworth paper. A value of 0 disables downweighting.
- profile.$name.solver.downWeightingByResidual.startingValue
Type: double
Value for the first iteration of the solver. Default is
10
.
- profile.$name.solver.downWeightingByResidual.finalValue
Type: double
Value for the last iteration of the solver. Default is
3
.
Note
profile.$name.solver.dampingFactor.* Setting a value different than 0 enables the solver to use a damped (regularized) least squares system. A too high value prevents the solver from changing the events locations, while a too low value allows the event cluster(s) to shift away from their initial absolute location, which might result in a larger events RMS.
- profile.$name.solver.dampingFactor.startingValue
Type: double
Value for the first iteration of the solver. Default is
0.3
.
- profile.$name.solver.dampingFactor.finalValue
Type: double
Value for the last iteration of the solver. Default is
0.3
.
Note
profile.$name.solver.absoluteLocationConstraint.* When a value greater than 0 is used, the double-difference system is modified to solve for both absolute and relative locations. Additional equations are added, which constrain the absolute travel time residuals. Here you can set the weight to be given to these equations. When using this feature the dampingFactor should be decreased. A good starting point for testing the optimal values, is absoluteLocationConstraint=0.3 and dampingFactor=0.01
- profile.$name.solver.absoluteLocationConstraint.startingValue
Type: double
Value for the first iteration of the solver. Default is
0.0
.
- profile.$name.solver.absoluteLocationConstraint.finalValue
Type: double
Value for the last iteration of the solver. Default is
0.0
.
Note
profile.$name.solver.aPrioriWeights.* Those options allow the double-difference equations to have different starting weights. By default they are equally weighted and the residual itselfs drive the re-weighting (see downWeightingByResidual option). So these settings shouldn’t be strictly necessary but it could be interesting to experiment with them
- profile.$name.solver.aPrioriWeights.usePickUncertainties
Type: boolean
Observation weights are scaled based on pick uncertainties. This should be enabled only if uncertainties are used for manual picks otherwise there is no way to properly access pick quality and consequently the observation weight. Default is
false
.
- profile.$name.solver.aPrioriWeights.absoluteTTObsWeight
Type: double
Starting weight for observations coming from difference in absolute travel times. Useful to give more weight to xcorr observations than absolute travel time ones. Default is
1.0
.
- profile.$name.solver.aPrioriWeights.xcorrObsWeight
Type: double
Starting weight for observations coming from lag measured via cross-correlation. Useful to give more weight to cross-correlation observations than absolute travel time ones. Default is
1.0
.
Note
profile.$name.solver.travelTimeTable.* Travel time table used by the solver. ‘tableType’ specifies the format and it can be any format available in SeisComP (e.g. ‘LOCSAT’, ‘libtau’) or ‘ConstVel’ or ‘NonLinLoc’. ‘ConstVel’ is a simple constant velocity model while ‘NonLinLoc’ allows to use NonLinLoc grid files. When ‘ConstVel’ is selected, then ‘tableModel’ specifies P;S velocity in Km/s e.g. “5.8;3.6” for P=5.8[Km/s] and S=3.6[Km/s]. When ‘NonLinLoc’ is selected, then ‘tableModel’ is the path to velocity, time and angle grid files. The path format is “path_to_velocity_grids;path_to_time_grids;path_to_angle_grids;” E.g. “/path/name.PHASE.mod;/path/name.PHASE.STATION.time;/path/name.PHASE.STATION.angle”. PHASE and STATION are placeholders and they will be replaced with actual values when looking for the grid file of a specific phase and station. Valid placeholders are NETWORK,STATION,LOCATION,PHASE
- profile.$name.solver.travelTimeTable.tableType
Type: string
Travel time table format type (e.g. LOCSAT, libtau, ConstVel, NonLinLoc). Default is
libtau
.
- profile.$name.solver.travelTimeTable.tableModel
Type: string
The model to be used. The format depends on tableType. Default is
iasp91
.
Note
profile.$name.solver.airQuakes.* Air-quakes are origins whose depth shift above the range of the velocity model (typically 0) during the inversion. These options define how the air-quakes are handled. `elevationThreshold` defines the elevation above which an origin is considered an air-quake. `action` control how the air-quakes are handled; “NONE”: no special action is performed. “RESET”: reset air-quake location and time to the previous solver iteration, before it became an air-quake. “RESET_DEPTH” similar to RESET but only the depth is restored”
- profile.$name.solver.airQuakes.elevationThreshold
Type: double
Unit: meter
Elevation above which origins are considered air-quakes Default is
0
.
- profile.$name.solver.airQuakes.action
Type: string
Possible values are NONE, RESET, RESET_DEPTH. Default is
NONE
.
Command Line
Generic
Verbosity
Messaging
Database
Records
Mode
- --reloc-catalog profile
Relocate the catalog passed as argument in multi-event mode. The input can be a single file (containing seiscomp origin ids) or a file triplet (station.csv,event.csv,phase.csv). For events stored in a XML file add the --ep option.
- -O, --origin-id origin-id
Relocate the origin (or multiple comma-separated origins) and send a message. Each origin will be processed according tothe matching profile region unless the --profile option is used.
- --ep scxml-file
Event parameters XML file for offline processing of contained origins (implies --test option). Each contained origin will be processed in signle-event mode unless --reloc-catalog is provided, which enable multi-evet mode.
- --eval-xcorr profile
Evaluate cross-correlation settings for the given profile.
- --dump-clusters profile
Find clusters in the catalog passed as argument and save them in the working directory. The catalog can be a single file (containing seiscomp origin ids) or a file triplet (station.csv,event.csv,phase.csv). Use in combination with --profile.
- --dump-wf profile
Dump processed waveforms of the catalog passed as argument in the current working directory. The catalog can be a single file (containing seiscomp origin ids) or a file triplet (station.csv,event.csv,phase.csv). Use in combination with --profile.
- --load-profile-wf profile
Load catalog waveforms from the configured recordstream and save them into the profile working directory.
- --send-reload-profile-msg
Send a message to any running scrtdd module requesting to reload a specific profile passed as argument.
Catalog
- --dump-catalog catalog-file
Dump the seiscomp event/origin id file passed as argument into a catalog file triplet (station.csv,event.csv,phase.csv).
- --dump-catalog-options type,evalmode,includeCreator,excludeCreator,region
Allows the --dump-catalog option to accept event ids besides origin ids. For each event id an origin will be selected following the provided options whose format is: ‘type,evalmode,include Creator,excludeCreator,region’, where type=preferred|last|first evalmode=any|onlyManual|onlyAutomatic includeCreator=any|author|methodID excludeCreator=none|author|methodID region=any|profileName e.g. to select preferred origins of the input event ids that lie within the region defined for ‘myProfile’ use ‘preferred,any,any,none ,myProfile’
- --merge-catalogs catalog-files
Merge in a single catalog all the catalog file triplets (station1.csv,event1.csv,phase1.csv,sta tion2.csv,event2.csv,phase2.csv,…) passed as arguments.
- --merge-catalogs-keepid catalog-files
Similar to the --merge-catalogs option but events keep their ids. If multiple events share the same id, subsequent events will be discarded.
ModeOptions
- --profile profile
To be used in combination with other options: select the profile configuration to use.
- --xmlout
Enable XML output when combined with --reloc-catalog or --oring-id options.
- --xcorr-cache
Specify a file containing precomputed cross-correlation values.
- --test
Test mode, no messages are sent
- --cache-wf-all
All waveforms will be saved to disk cache, even temporarily ones. Normally only catalog phase waveforms are cached to disk. This is useful to speed up debugging/testing when the same origins are repeatedly processed.
- -x, --expiry hours
Defines the time span in hours after which objects expire.