You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

To maintain compatibility with current workflows while adding additional functionality to the workflow, we intend to change the way perturbed source parameters are passed to the components of the slurm ground motion workflow.

Changes to implement

To present the parameters to slurm workflow in a way that they can be used by the appropriate part of the workflow, we have decided that changes should be made to Pre Processing such that the user must specify which part of the workflow each parameter belongs to during srf creation.

These changes will then flow on to simulation installation and subsequently submission to the workflow.

User input

All parameters to be perturbed are to be included in the source_uncertainty.yaml file. Any additional parameters must also have nominal values provided.

The nominal values and perturbation settings for each of these parameters will have to be given in the source uncertainties yaml (as passed to gcmt2srf).

Each parameter that is given in the CMT solutions csv file will be at the top level, while each additional parameter will be nested inside the relevant process.

Each parameter will have at least two associated pieces of information, being the nominal value (mean) of the parameter, and the distribution. If the distribution requires any random variables, these must also be given.

An example is available below:

source_uncertainty.yaml
mw:
    distribution: uniform
    halfrange: 0.05
hf:
    sdrop: 
        mean: 50
        halfrange: 5
        distribution: uniform
    rvfac: 
        mean: 0.8
        std_dev: 0.01
        distribution: normal
    rvfac_shallow:
        mean: 0.7
        distribution: none
bb:
    fmin: 
        mean: 0.2
        distribution: uniform_relative
        scalefactor: 0.05
emod3d:
    fmin:
        mean: 0.01
        std_dev: 0.001
        distribution: normal

Currently available distributions

Distribution nameDistribution variableNotes
noneN/AUses the value as given.
uniformhalf_rangemean is the median (middle) value, and half_range half the difference between the highest and lowest value.
normalstd_devRegular normal distribution.
uniform_relativescale_factorA normal distribution where the highest and lowest possible value are mean* (1+scale_factor) and mean* (1-scale_factor) respectively. Scale factor to be given as a decimal.
log_normal

std_dev

Regular log_nromal distribution.
weibullk, scale_factor

Does not take a mean value. Equivalent to scale_factor*(-ln((U))1/a where U is the uniform distribution over [0, 1).

truncated_normalstd_dev, limitSimilar to normal distribution, except all values fall within [limit] standard deviations of the mean.

A note on emod3d

Any variable found in the e3d.par file may be placed in the emod3d section of source_uncertainty.yaml, and will be carried over. Any non numeric entries must have the distribution 'none'.

Internal changes

In order to simplify the implementation of this, we have chosen to have every parameter added to the slurm script and passed as an argument to the simulation script, which will then discard any parameters it does not recognize.

Parameters for each component

The parameters for each component are as follows:


hfbb
flo
fmin
fmidbot
lfvsref
sim_bin
t-sec
sdrop
rayset
seed
duration
dt
fmax
kappa
qfexp
rvfac
rvfac_shallow
rvfac_deep
czero
calpha
mom
rupv
velocity-model
site-vm-dir
vs-moho
fa_sig1
fa_sig2
rv_sig1
hf_path_dur
  • No labels