SnowStorm Configuration¶
When producing SnowStorm simulations as described in the Snowstorm Simulation chain (step 3), the parametrizations to use can be easily configured by a configuration file.
Supported filetypes are json
and yaml
.
Examples of configuration files (yaml
) can be found in the SnowSuite script collection.
An overview and details of ice models can be found on this wikipage. It also lists recommendations on which ice model to use and parameter(ranges) to cover as systematic variations.
Baseline IceModel¶
Before configuring the perturber, the baseline ice model (e.g. for Absorption and DOMEfficiency scaling) must be set by:
- IceModelLocation
Location of the baseline ice model to use.
and
- HoleIceParametrization
Baseline HoleIce to be used. In case a HoleIce parametrization is added, it will overwrite the model specified here. However, a parametrization must be specified for the first initialization.
Adding Parametrizations¶
An overview of all currently implemented parametrizations can be found here.
All parametrizations that should be used/applied by the perturber in the simulation can be simply added as subitems to the Perturbations
section of the configuration file.
The name must therefore match the parametrization’s identifier listed in SnowStorm Parametrizations.
For example, adding the parametrization for scaling the DOMEfficiency looks like this:
# DOM efficiency scaling
DOMEfficiency:
type: uniform
uniform:
limits: "[[0.9, 1.1]]"
The sampling distribution can be individually specified for each parametrization by the type
argument followed by the distribution’s name.
In the example above, a uniform sampling distribution between 0.9 and 1.1 is specified.
The parameters of the sampling distributions, e.g. the limits of the uniform distribution, are defined as subitems of the distribution’s name.
Sampling Distributions¶
The following list contains all valid type
identifiers for the sampling distributions along with their parameter keywords:
- Delta distribution
type: delta delta: x0: "[*value*]"
- Gaussian/Normal distribution
type: gauss gauss: mu: "[*mu*]" sigma: "[*sigma*]"
- Uniform distribution
type: uniform uniform: limits: "[[*lower_bound*, *upper_bound*]]"
Note
limits
must be a list of tuples (or lists with two items).
In case of a parametrization depending on more than one parameter, e.g. HoleIce, multiple values for x0
(delta), mu, sigma
(gauss) or limits
(uniform) must be given:
HoleIce_Unified
type: gauss
gauss:
mu: "[*mu0*, *mu1*]"
sigma: "[*sigma0*, *sigma1*]"
Note
There is currently no option for sampling parameters for one parametrization according to two different distributions.
The above distributions can be used for all parametrizations listed in SnowStorm Parametrizations except for the IceWavePlusModes which need different identifiers:
IceWavePlusModes
apply: true
type: default
Note
There is currently only a default
type for the IceWavePlusModes. Applying them can be controlled with the apply
keyword.