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.