reorganising examples
parent
6f894a5091
commit
8911ad4e93
@ -1,46 +0,0 @@
|
||||
Grond Project Layout
|
||||
====================
|
||||
|
||||
For detailed instructions see the documentation https://pyrocko.org/grond/current.
|
||||
|
||||
Folder Layout
|
||||
-------------
|
||||
|
||||
```
|
||||
├── config
|
||||
│ ├── laquila2009_joint.gronf
|
||||
│ ├── ...
|
||||
│ :
|
||||
│
|
||||
├── data
|
||||
│ └── events # several events could be set up here
|
||||
│ ├── laquila2009
|
||||
│ │ ├── event.txt
|
||||
│ │ ├── insar
|
||||
│ │ │ ├── dsc_insar.npz
|
||||
│ │ │ ├── dsc_insar.yml
|
||||
│ │ │ :
|
||||
│ │ │
|
||||
│ │ ├── waveforms
|
||||
│ │ │ ├── raw # contains Mini-SEED files
|
||||
│ │ │ │ ├── trace_BK-CMB--BHE_2009-04-06_00-38-31.mseed
|
||||
│ │ │ │ ├── trace_BK-CMB--BHN_2009-04-06_00-38-31.mseed
|
||||
│ │ │ │ :
|
||||
│ │ │ └── stations.xml
|
||||
│ │ │
|
||||
│ │ └── gnss
|
||||
│ │ └── gnss.yml
|
||||
│ :
|
||||
│
|
||||
├── gf_stores # contains Green's functions
|
||||
│ ├── Abruzzo_Ameri_nearfield # static near-field GF store
|
||||
│ │ └── ...
|
||||
│ ├── global_2s_25km # dynamic far-field GF store
|
||||
│ │ └── ...
|
||||
│ :
|
||||
│
|
||||
├── runs # created at runtime, contains individual optimisation results
|
||||
│ └── ...
|
||||
└── reports
|
||||
└── ...
|
||||
```
|
@ -1,199 +0,0 @@
|
||||
%YAML 1.1
|
||||
# Example: Inversion of planar RectangularSource from local InSAR Observations.
|
||||
--- !grond.Config
|
||||
|
||||
# All file paths referenced below are treated relative to the location of this
|
||||
# configuration file, here we may give a common prefix. E.g. setting it to '..'
|
||||
# if the configuration file is in the sub-directory '${project_root}/config'
|
||||
# allows us to give the paths below relative to '${project_root}'.
|
||||
path_prefix: '..'
|
||||
|
||||
# Path, where to store output (run directories). The placeholder
|
||||
# '${problem_name}' will be expanded to a name configured below in
|
||||
# problem_config.name_template and will typically include a config identifier
|
||||
# and the event name.
|
||||
rundir_template: runs/${problem_name}.grun
|
||||
|
||||
# If given, restrict to processing of listed events
|
||||
#event_names:
|
||||
#- 'gfz2018pmjk'
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration section for dataset (input data)
|
||||
#
|
||||
# The placeholder '${event_name}' will be expanded to the current event. This
|
||||
# enables us to use the same configuration for multiple events. The available
|
||||
# events are detected by looking into possible expansions of
|
||||
# dataset_config.events_path
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
dataset_config: !grond.DatasetConfig
|
||||
|
||||
# File with hypocenter information and possibly reference solution
|
||||
events_path: 'data/events/${event_name}/event.txt'
|
||||
|
||||
# List of directories for the InSAR scenes
|
||||
kite_scene_paths: ['data/events/${event_name}/insar']
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration section for the observational data fitting
|
||||
#
|
||||
# This defines the objective function to be minimized in the optimisation. It
|
||||
# can be composed of one or more contributions, each represented by a
|
||||
# !grond.*TargetGroup section.
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
target_groups:
|
||||
- !grond.SatelliteTargetGroup
|
||||
|
||||
# Normalisation family (see the Grond documentation for how it works).
|
||||
# Use distinct normalisation families when mixing misfit contributors with
|
||||
# different magnitude scaling, like e.g. cross-correlation based misfit and
|
||||
# time-domain Lx norm.
|
||||
normalisation_family: 'static'
|
||||
|
||||
# Just a name used to identify targets from this group. Use dot-separated path
|
||||
# notation to group related contributors
|
||||
path: 'insar'
|
||||
|
||||
# How to weight contributions from this group in the global misfit
|
||||
weight: 1.0
|
||||
|
||||
# Selector for kite scene ids, '*all' is a wildcard and load all scenes present
|
||||
kite_scenes: ['*all']
|
||||
|
||||
# Subsection on how to fit the traces
|
||||
misfit_config: !grond.SatelliteMisfitConfig
|
||||
|
||||
# Optimise a planar orbital ramp
|
||||
optimise_orbital_ramp: false
|
||||
|
||||
# Parameters for the orbital ramp
|
||||
ranges:
|
||||
|
||||
# Vertical offset in [m]
|
||||
offset: -0.5 .. 0.5
|
||||
|
||||
# Ranges for the East-West and North-South inclination of the ramp
|
||||
ramp_east: -1e-4 .. 1e-4
|
||||
ramp_north: -1e-4 .. 1e-4
|
||||
|
||||
# How to interpolate the Green's functions (available choices:
|
||||
# 'nearest_neighbor', 'multilinear'). Choices other than 'nearest_neighbor'
|
||||
# may require dense GF stores to avoid aliasing artifacts in the forward
|
||||
# modelling.
|
||||
interpolation: multilinear
|
||||
|
||||
# Name of the GF Store to use
|
||||
store_id: crust2_ib_static
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Definition of the problem to be solved
|
||||
#
|
||||
# In this section the source model to be fitted is chosen, the parameter space
|
||||
# defined, and how to combine the misfit contributions defined in the
|
||||
# target_groups section above.
|
||||
#
|
||||
# The marker !grond.RectangularProblemConfig selects a finite rectancular
|
||||
# source model.
|
||||
# -----------------------------------------------------------------------------
|
||||
problem_config: !grond.RectangularProblemConfig
|
||||
|
||||
# Name used to identify the output
|
||||
name_template: rect_2009LaAquila
|
||||
|
||||
# How to combine the target misfits. For L1 norm: 1, L2 norm: 2, etc.
|
||||
norm_exponent: 2
|
||||
|
||||
# Definition of model parameter space to be searched in the optimisation
|
||||
ranges:
|
||||
|
||||
# Scaling ranges in [m]
|
||||
depth: 2500 .. 7000
|
||||
east_shift: 0 .. 20000
|
||||
north_shift: 0 .. 20000
|
||||
length: 5000 .. 10000
|
||||
width: 2000 .. 10000
|
||||
slip: .2 .. 2
|
||||
|
||||
# Orientation ranges in [deg]
|
||||
dip: 10 .. 50
|
||||
rake: 120 .. 360
|
||||
strike: 220 .. 360
|
||||
|
||||
# We are using a dense GF store and will reduce the number of discrete
|
||||
# subsources by this factor. Decrease the decimation for a finer sub-source
|
||||
# resolution, and increased computational time
|
||||
decimation_factor: 12
|
||||
|
||||
# Clearance distance around stations (no models with origin closer than this
|
||||
# distance to any station are produced by the sampler)
|
||||
distance_min: 0.0
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration of pre-optimisation analysis phases.
|
||||
# determined during this phase.
|
||||
# -----------------------------------------------------------------------------
|
||||
#
|
||||
analyser_configs:
|
||||
|
||||
# DOES NOT APPLY FOR INSAR! Balancing weights are determined with this analyser
|
||||
- !grond.TargetBalancingAnalyserConfig
|
||||
niterations: 1000
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration of the optimisation procedure
|
||||
# -----------------------------------------------------------------------------
|
||||
optimiser_config: !grond.HighScoreOptimiserConfig
|
||||
# Number of bootstrap realisations to be tracked simultaneously in the
|
||||
# optimisation
|
||||
nbootstrap: 25
|
||||
|
||||
# Stages of the sampler then narrow down to the interesting regions
|
||||
# (!grond.DirectedSamplerPhase).
|
||||
sampler_phases:
|
||||
|
||||
# Start with uniform sampling of the model space
|
||||
- !grond.UniformSamplerPhase
|
||||
# Number of iterations
|
||||
niterations: 10000
|
||||
|
||||
# How often we shall try to find a valid sample
|
||||
ntries_preconstrain_limit: 1000
|
||||
|
||||
# Narrow down to the interesting regions
|
||||
- !grond.DirectedSamplerPhase
|
||||
# Number of iterations
|
||||
niterations: 40000
|
||||
|
||||
# How often we shall try to find a valid sample
|
||||
ntries_preconstrain_limit: 1000
|
||||
|
||||
# Multiplicator for width of sampler distribution at start of this phase
|
||||
scatter_scale_begin: 2.0
|
||||
|
||||
# Multiplicator for width of sampler distribution at end of this phase
|
||||
scatter_scale_end: 0.5
|
||||
|
||||
starting_point: excentricity_compensated
|
||||
sampler_distribution: normal
|
||||
standard_deviation_estimator: median_density_single_chain
|
||||
ntries_sample_limit: 2000
|
||||
|
||||
# This parameter determines the length of the chains
|
||||
chain_length_factor: 8.0
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration section for synthetic seismogram engine
|
||||
#
|
||||
# Configures where to look for GF stores.
|
||||
# -----------------------------------------------------------------------------
|
||||
engine_config: !grond.EngineConfig
|
||||
|
||||
# Whether to use GF store directories listed in ~/.pyrocko/config.pf
|
||||
gf_stores_from_pyrocko_config: true
|
||||
|
||||
# List of directories with GF stores
|
||||
gf_store_superdirs: ['gf_stores']
|
@ -1,296 +0,0 @@
|
||||
%YAML 1.1
|
||||
# Example: Inversion of centroid moment tensor from regional waveform observations.
|
||||
--- !grond.Config
|
||||
|
||||
# All file paths referenced below are treated relative to the location of this
|
||||
# configuration file, here we may give a common prefix. E.g. setting it to '..'
|
||||
# if the configuration file is in the sub-directory '${project_root}/config'
|
||||
# allows us to give the paths below relative to '${project_root}'.
|
||||
path_prefix: '..'
|
||||
|
||||
# Path, where to store output (run directories). The placeholder
|
||||
# '${problem_name}' will be expanded to a name configured below in
|
||||
# problem_config.name_template and will typically include a config identifier
|
||||
# and the event name.
|
||||
rundir_template: 'runs/${problem_name}.grun'
|
||||
|
||||
# If given, restrict to processing of listed events
|
||||
#event_names:
|
||||
#- 'gfz2018pmjk'
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration section for dataset (input data)
|
||||
#
|
||||
# The placeholder '${event_name}' will be expanded to the current event. This
|
||||
# enables us to use the same configuration for multiple events. The available
|
||||
# events are detected by looking into possible expansions of
|
||||
# dataset_config.events_path
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
dataset_config: !grond.DatasetConfig
|
||||
|
||||
# List of files with station coordinates.
|
||||
stations_stationxml_paths:
|
||||
- 'data/events/${event_name}/waveforms/stations.geofon.xml'
|
||||
- 'data/events/${event_name}/waveforms/stations.iris.xml'
|
||||
|
||||
# File with hypocenter information and possibly reference solution
|
||||
events_path: 'data/events/${event_name}/event.txt'
|
||||
|
||||
# List of directories with raw waveform data
|
||||
waveform_paths: ['data/events/${event_name}/waveforms/raw']
|
||||
|
||||
# List of stations/components to be excluded according to their STA, NET.STA,
|
||||
# NET.STA.LOC, or NET.STA.LOC.CHA codes
|
||||
blacklist: ['GE.UGM', 'GE.PLAI']
|
||||
|
||||
# List of files with additional exclusion lists (one entry per line, same
|
||||
# format as above)
|
||||
blacklist_paths:
|
||||
- 'data/events/${event_name}/waveforms/blacklist.txt'
|
||||
|
||||
# List of files with instrument response information (can be the same as in
|
||||
# stations_stationxml_paths above)
|
||||
responses_stationxml_paths:
|
||||
- 'data/events/${event_name}/waveforms/stations.geofon.xml'
|
||||
- 'data/events/${event_name}/waveforms/stations.iris.xml'
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration section for the observational data fitting
|
||||
#
|
||||
# This defines the objective function to be minimized in the optimisation. It
|
||||
# can be composed of one or more contributions, each represented by a
|
||||
# !grond.*TargetGroup section.
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
target_groups:
|
||||
- !grond.WaveformTargetGroup
|
||||
|
||||
# Normalisation family (see the Grond documentation for how it works).
|
||||
# Use distinct normalisation families when mixing misfit contributors with
|
||||
# different magnitude scaling, like e.g. cross-correlation based misfit and
|
||||
# time-domain Lx norm.
|
||||
normalisation_family: 'td'
|
||||
|
||||
# Just a name used to identify targets from this group. Use dot-separated path
|
||||
# notation to group related contributors
|
||||
path: 'td.love'
|
||||
|
||||
# Epicentral distance range of stations to be considered in meter
|
||||
distance_min: 1e3
|
||||
distance_max: 900e3
|
||||
|
||||
# Names of components to be included. Available: N=north, E=east, Z=vertical
|
||||
# (up), R=radial (away), T=transverse (right)
|
||||
channels: ['T']
|
||||
|
||||
# How to weight contributions from this group in the global misfit
|
||||
weight: 1.0
|
||||
|
||||
# subsection on how to fit the traces
|
||||
misfit_config: !grond.WaveformMisfitConfig
|
||||
|
||||
# Frequency band [Hz] of acausal filter (flat part of frequency taper)
|
||||
fmin: 0.01
|
||||
fmax: 0.05
|
||||
|
||||
# Factor defining fall-off of frequency taper (zero at fmin/ffactor and
|
||||
# fmax*ffactor)
|
||||
ffactor: 1.5
|
||||
|
||||
# Time window to include in the data fitting. Times can be defined offset
|
||||
# to given phase arrivals. E.g. '{stored:P}-600' would mean 600 s
|
||||
# before arrival of the phase named 'P'. The phase must be defined in the
|
||||
# travel time tables in the GF store.
|
||||
tmin: '{stored:any_P}'
|
||||
tmax: '{vel_surface:2.5}'
|
||||
# tfade: 120.0
|
||||
|
||||
# How to fit the data (available: 'time_domain', 'frequency_domain',
|
||||
# 'log_frequency_domain', 'absolute', 'envelope', 'cc_max_norm')
|
||||
domain: 'time_domain'
|
||||
tautoshift_max: 4.0
|
||||
autoshift_penalty_max: 0.05
|
||||
|
||||
# For L1 norm: 1, L2 norm: 2, etc.
|
||||
norm_exponent: 1
|
||||
|
||||
# How to interpolate the Green's functions (available choices:
|
||||
# 'nearest_neighbor', 'multilinear'). Choices other than 'nearest_neighbor'
|
||||
# may require dense GF stores to avoid aliasing artifacts in the forward
|
||||
# modelling.
|
||||
interpolation: 'nearest_neighbor'
|
||||
|
||||
# Name of the GF Store to use
|
||||
store_id: 'crust2_j3'
|
||||
|
||||
|
||||
- !grond.WaveformTargetGroup
|
||||
|
||||
# Normalisation family (see the Grond documentation for how it works).
|
||||
# Use distinct normalisation families when mixing misfit contributors with
|
||||
# different magnitude scaling, like e.g. cross-correlation based misfit and
|
||||
# time-domain Lx norm.
|
||||
normalisation_family: 'td'
|
||||
|
||||
# Just a name used to identfy targets from this group. Use dot-separated path
|
||||
# notation to group related contributors
|
||||
path: 'td.rayleigh'
|
||||
|
||||
# Epicentral distance range of stations to be considered in meter
|
||||
distance_min: 1e3
|
||||
distance_max: 900e3
|
||||
|
||||
# Names of components to be included. Available: N=north, E=east, Z=vertical
|
||||
# (up), R=radial (away), T=transverse (right)
|
||||
channels: ['R', 'Z']
|
||||
|
||||
# How to weight contributions from this group in the global misfit
|
||||
weight: 1.0
|
||||
|
||||
# subsection on how to fit the traces
|
||||
misfit_config: !grond.WaveformMisfitConfig
|
||||
|
||||
# Frequency band [Hz] of acausal filter (flat part of frequency taper)
|
||||
fmin: 0.01
|
||||
fmax: 0.05
|
||||
|
||||
# Factor defining fall-off of frequency taper (zero at fmin/ffactor and
|
||||
# fmax*ffactor)
|
||||
ffactor: 1.5
|
||||
|
||||
# Time window to include in the data fitting. Times can be defined offset
|
||||
# to given phase arrivals. E.g. '{stored:P}-600' would mean 600 s
|
||||
# before arrival of the phase named 'P'. The phase must be defined in the
|
||||
# travel time tables in the GF store.
|
||||
tmin: '{stored:any_P}'
|
||||
tmax: '{vel_surface:2.5}'
|
||||
# tfade: 120.0
|
||||
|
||||
# How to fit the data (available: 'time_domain', 'frequency_domain',
|
||||
# 'log_frequency_domain', 'absolute', 'envelope', 'cc_max_norm')
|
||||
domain: 'time_domain'
|
||||
tautoshift_max: 4.0
|
||||
autoshift_penalty_max: 0.05
|
||||
|
||||
# For L1 norm: 1, L2 norm: 2, etc.
|
||||
norm_exponent: 1
|
||||
|
||||
# How to interpolate the Green's functions (available choices:
|
||||
# 'nearest_neighbor', 'multilinear'). Choices other than 'nearest_neighbor'
|
||||
# may require dense GF stores to avoid aliasing artifacts in the forward
|
||||
# modelling.
|
||||
interpolation: 'nearest_neighbor'
|
||||
|
||||
# Name of the GF Store to use
|
||||
store_id: 'crust2_j3'
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Definition of the problem to be solved
|
||||
#
|
||||
# In this section the source model to be fitted is chosen, the parameter space
|
||||
# defined, and how to combine the misfit contributions defined in the
|
||||
# target_groups section above.
|
||||
#
|
||||
# The marker !grond.CMTProblemConfig selects a centroid moment tensor source
|
||||
# model.
|
||||
# -----------------------------------------------------------------------------
|
||||
problem_config: !grond.CMTProblemConfig
|
||||
|
||||
# Name used to identify the output
|
||||
name_template: 'cmt_${event_name}'
|
||||
|
||||
# Definition of model parameter space to be searched in the optimisation
|
||||
ranges:
|
||||
# Time relative to hypocenter origin time [s]
|
||||
time: '-10 .. 10 | add'
|
||||
|
||||
# Centroid location with respect to hypocenter origin [m]
|
||||
north_shift: '-15e3 .. 15e3'
|
||||
east_shift: '-15e3 .. 15e3'
|
||||
depth: '5e3 .. 30e3'
|
||||
|
||||
# Range of magnitudes to allow
|
||||
magnitude: '5.7 .. 6.2'
|
||||
|
||||
# Relative moment tensor component ranges (don't touch)
|
||||
rmnn: '-1.41421 .. 1.41421'
|
||||
rmee: '-1.41421 .. 1.41421'
|
||||
rmdd: '-1.41421 .. 1.41421'
|
||||
rmne: '-1 .. 1'
|
||||
rmnd: '-1 .. 1'
|
||||
rmed: '-1 .. 1'
|
||||
|
||||
# Source duration range [s]
|
||||
duration: '1. .. 5.'
|
||||
|
||||
# Clearance distance around stations (no models with origin closer than this
|
||||
# distance to any station are produced by the sampler)
|
||||
distance_min: 1e3
|
||||
|
||||
# Type of moment tensor to restrict to (choices: 'full', 'deviatoric', 'dc')
|
||||
mt_type: 'deviatoric'
|
||||
|
||||
# How to combine the target misfits. For L1 norm: 1, L2 norm: 2, etc.
|
||||
norm_exponent: 1
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration of pre-optimisation analysis phases.
|
||||
# determined during this phase.
|
||||
# -----------------------------------------------------------------------------
|
||||
#
|
||||
analyser_configs:
|
||||
|
||||
# Balancing weights are determined with this analyser
|
||||
- !grond.TargetBalancingAnalyserConfig
|
||||
|
||||
# Number of models to forward model in the analysis, larger number -> better
|
||||
# statistics)
|
||||
niterations: 1000
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration of the optimisation procedure
|
||||
# -----------------------------------------------------------------------------
|
||||
optimiser_config: !grond.HighScoreOptimiserConfig
|
||||
|
||||
# Number of bootstrap realisations to be tracked simultaneously in the
|
||||
# optimisation
|
||||
nbootstrap: 100
|
||||
|
||||
# stages of the sampler. Start with uniform sampling of the model space
|
||||
# (!grond.UniformSamplerPhase), then narrow down to the interesting regions
|
||||
# (!grond.DirectedSamplerPhase).
|
||||
sampler_phases:
|
||||
|
||||
- !grond.UniformSamplerPhase
|
||||
# Number of iterations
|
||||
niterations: 1000
|
||||
|
||||
- !grond.DirectedSamplerPhase
|
||||
# Number of iterations
|
||||
niterations: 20000
|
||||
|
||||
# Multiplicator for width of sampler distribution at start of this phase
|
||||
scatter_scale_begin: 2.0
|
||||
|
||||
# Multiplicator for width of sampler distribution at end of this phase
|
||||
scatter_scale_end: 0.5
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration section for synthetic seismogram engine
|
||||
#
|
||||
# Configures where to look for GF stores.
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
engine_config: !grond.EngineConfig
|
||||
|
||||
# Whether to use GF store directories listed in ~/.pyrocko/config.pf
|
||||
gf_stores_from_pyrocko_config: false
|
||||
|
||||
# List of directories with GF stores
|
||||
gf_store_superdirs: ['gf_stores']
|
@ -1,240 +0,0 @@
|
||||
%YAML 1.1
|
||||
# Example: Inversion of W-Phase from teleseismic observations.
|
||||
--- !grond.Config
|
||||
|
||||
# All file paths referenced below are treated relative to the location of this
|
||||
# configuration file, here we may give a common prefix. E.g. setting it to '..'
|
||||
# if the configuration file is in the sub-directory '${project_root}/config'
|
||||
# allows us to give the paths below relative to '${project_root}'.
|
||||
path_prefix: '..'
|
||||
|
||||
# Path, where to store output (run directories). The placeholder
|
||||
# '${problem_name}' will be expanded to a name configured below in
|
||||
# problem_config.name_template and will typically include a config identifier
|
||||
# and the event name.
|
||||
rundir_template: 'runs/${problem_name}.grun'
|
||||
|
||||
# If given, restrict to processing of listed events
|
||||
#event_names:
|
||||
#- 'gfz2015sfdd'
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration section for dataset (input data)
|
||||
#
|
||||
# The placeholder '${event_name}' will be expanded to the current event. This
|
||||
# enables us to use the same configuration for multiple events. The available
|
||||
# events are detected by looking into possible expansions of
|
||||
# dataset_config.events_path
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
dataset_config: !grond.DatasetConfig
|
||||
|
||||
# List of files with station coordinates.
|
||||
stations_stationxml_paths:
|
||||
- 'data/events/${event_name}/waveforms/stations.geofon.xml'
|
||||
- 'data/events/${event_name}/waveforms/stations.iris.xml'
|
||||
- 'data/events/${event_name}/waveforms/stations.orfeus.xml'
|
||||
|
||||
# File with hypocenter information and possibly reference solution
|
||||
events_path: 'data/events/${event_name}/event.txt'
|
||||
|
||||
# List of directories with raw waveform data
|
||||
waveform_paths: ['data/events/${event_name}/waveforms/raw']
|
||||
|
||||
# List of stations/components to be excluded according to their STA, NET.STA,
|
||||
# NET.STA.LOC, or NET.STA.LOC.CHA codes
|
||||
blacklist: []
|
||||
|
||||
# List of files with additional exclusion lists (one entry per line, same
|
||||
# format as above)
|
||||
blacklist_paths:
|
||||
- 'data/events/${event_name}/waveforms/blacklist.txt'
|
||||
|
||||
# List of files with instrument response information (can be the same as in
|
||||
# stations_stationxml_paths above)
|
||||
responses_stationxml_paths:
|
||||
- 'data/events/${event_name}/waveforms/stations.geofon.xml'
|
||||
- 'data/events/${event_name}/waveforms/stations.iris.xml'
|
||||
- 'data/events/${event_name}/waveforms/stations.orfeus.xml'
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration section for the observational data fitting
|
||||
#
|
||||
# This defines the objective function to be minimized in the optimisation. It
|
||||
# can be composed of one or more contributions, each represented by a
|
||||
# !grond.*TargetGroup section.
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
target_groups:
|
||||
|
||||
- !grond.WaveformTargetGroup
|
||||
|
||||
# Normalisation family (see the Grond documentation for how it works).
|
||||
# Use distinct normalisation families when mixing misfit contributors with
|
||||
# different magnitude scaling, like e.g. cross-correlation based misfit and
|
||||
# time-domain Lx norm.
|
||||
normalisation_family: 'td'
|
||||
|
||||
# Just a name used to identfy targets from this group. Use dot-separated path
|
||||
# notation to group related contributors
|
||||
path: 'td.wphase'
|
||||
|
||||
# Epicentral distance range of stations to be considered
|
||||
distance_min: 3000e3
|
||||
distance_max: 10000e3
|
||||
|
||||
# Names of components to be included. Available: N=north, E=east, Z=vertical
|
||||
# (up), R=radial (away), T=transverse (right)
|
||||
channels: ['Z','R']
|
||||
|
||||
# How to weight contributions from this group in the global misfit
|
||||
weight: 1.0
|
||||
|
||||
# subsection on how to fit the traces
|
||||
misfit_config: !grond.WaveformMisfitConfig
|
||||
|
||||
# Frequency band [Hz] of acausal filter (flat part of frequency taper)
|
||||
fmin: 0.001
|
||||
fmax: 0.005
|
||||
|
||||
# Factor defining fall-off of frequency taper (zero at fmin/ffactor and
|
||||
# fmax*ffactor)
|
||||
ffactor: 1.5
|
||||
|
||||
# Time window to include in the data fitting. Times can be defined offset
|
||||
# to given phase arrivals. E.g. '{stored:P}-600' would mean 600 s
|
||||
# before arrival of the phase named 'P'. The phase must be defined in the
|
||||
# travel time tables in the GF store.
|
||||
tmin: '{stored:P}-600'
|
||||
tmax: '{stored:S}-60'
|
||||
# tfade: 120.0
|
||||
|
||||
# How to fit the data (available: 'time_domain', 'frequency_domain',
|
||||
# 'log_frequency_domain', 'absolute', 'envelope', 'cc_max_norm')
|
||||
domain: 'time_domain'
|
||||
|
||||
# For L1 norm: 1, L2 norm: 2, etc.
|
||||
norm_exponent: 1
|
||||
|
||||
# How to interpolate the Green's functions (available choices:
|
||||
# 'nearest_neighbor', 'multilinear'). Choices other than 'nearest_neighbor'
|
||||
# may require dense GF stores to avoid aliasing artifacts in the forward
|
||||
# modelling.
|
||||
interpolation: 'nearest_neighbor'
|
||||
|
||||
# Name of the GF Store to use
|
||||
store_id: 'global_20s_shallow'
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Definition of the problem to be solved
|
||||
#
|
||||
# In this section the source model to be fitted is chosen, the parameter space
|
||||
# defined, and how to combine the misfit contributions defined in the
|
||||
# target_groups section above.
|
||||
#
|
||||
# The marker !grond.CMTProblemConfig selects a centroid moment tensor source
|
||||
# model.
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
problem_config: !grond.CMTProblemConfig
|
||||
|
||||
# Name used to identify the output
|
||||
name_template: 'wphase_cmt_${event_name}'
|
||||
|
||||
# Definition of model parameter space to be searched in the optimisation
|
||||
ranges:
|
||||
# Time relative to hypocenter origin time [s]
|
||||
time: '-100 .. 100 | add'
|
||||
|
||||
# Centroid location with respect to hypocenter origin [m]
|
||||
north_shift: '-200e3 .. 200e3'
|
||||
east_shift: '-200e3 .. 200e3'
|
||||
depth: '5e3 .. 40e3'
|
||||
|
||||
# Range of magnitudes to allow
|
||||
magnitude: '7.5 .. 8.5'
|
||||
|
||||
# Relative moment tensor component ranges (don't touch)
|
||||
rmnn: '-1.41421 .. 1.41421'
|
||||
rmee: '-1.41421 .. 1.41421'
|
||||
rmdd: '-1.41421 .. 1.41421'
|
||||
rmne: '-1 .. 1'
|
||||
rmnd: '-1 .. 1'
|
||||
rmed: '-1 .. 1'
|
||||
|
||||
# Source duration range [s]
|
||||
duration: '50. .. 200.'
|
||||
|
||||
# Clearance distance around stations (no models with origin closer than this
|
||||
# distance to any station are produced by the sampler)
|
||||
distance_min: 0.
|
||||
|
||||
# Type of moment tensor to restrict to (choices: 'full', 'deviatoric', 'dc')
|
||||
mt_type: 'deviatoric'
|
||||
|
||||
# How to combine the target misfits. For L1 norm: 1, L2 norm: 2, etc.
|
||||
norm_exponent: 1
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration of pre-optimisation analysis phases.
|
||||
# determined during this phase.
|
||||
# -----------------------------------------------------------------------------
|
||||
#
|
||||
analyser_configs:
|
||||
|
||||
# Balancing weights are determined with this analyser
|
||||
- !grond.TargetBalancingAnalyserConfig
|
||||
|
||||
# Number of models to forward model in the analysis, larger number -> better
|
||||
# statistics)
|
||||
niterations: 1000
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration of the optimisation procedure
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
optimiser_config: !grond.HighScoreOptimiserConfig
|
||||
|
||||
# Number of bootstrap realisations to be tracked simultaneously in the
|
||||
# optimisation
|
||||
nbootstrap: 100
|
||||
|
||||
# stages of the sampler. Start with uniform sampling of the model space
|
||||
# (!grond.UniformSamplerPhase), then narrow down to the interesting regions
|
||||
# (!grond.DirectedSamplerPhase).
|
||||
sampler_phases:
|
||||
|
||||
- !grond.UniformSamplerPhase
|
||||
|
||||
# Number of iterations
|
||||
niterations: 1000
|
||||
|
||||
- !grond.DirectedSamplerPhase
|
||||
|
||||
# Number of iterations
|
||||
niterations: 20000
|
||||
|
||||
# Multiplicator for width of sampler distribution at start of this phase
|
||||
scatter_scale_begin: 2.0
|
||||
|
||||
# Multiplicator for width of sampler distribution at end of this phase
|
||||
scatter_scale_end: 0.5
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration section for synthetic seismogram engine
|
||||
#
|
||||
# Configures where to look for GF stores.
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
engine_config: !grond.EngineConfig
|
||||
|
||||
# Whether to use GF store directories listed in ~/.pyrocko/config.pf
|
||||
gf_stores_from_pyrocko_config: false
|
||||
|
||||
# List of directories with GF stores
|
||||
gf_store_superdirs: ['gf_stores']
|
Loading…
Reference in New Issue