Project

General

Profile

Crocus-Resort: first version by P. Spandre

The understanding and implementation of snow management in detailed snowpack models is a major step towards a more realistic assessment of the evolution of snow conditions in ski resorts concerning past, present and future climate conditions. In this context, a new module accounting for snow management processes (grooming, snowmaking), named Crocus-Resort, has been integrated into the snowpack model Crocus. As for grooming, the effect of the tiller is explicitly taken into account and its effects on snow properties (density, snow microstructure) are simulated in addition to the compaction induced by the weight of the grooming machine. As for snowmaking, the production of machine-made snow is carried out with respect to specific rules and current meteorological conditions. Crocus-Resort has been proven to provide realistic simulations of snow conditions on ski slopes (for more details on the scientific intent of this development, please refer to the paper 2016_Spandre_CRST_Crocus_Resort.pdf available here below).
Technical note: in Crocus, the decisions to produce machine-made snow are defined in the routine snow_making.F90, while the impact of snowmaking and grooming on snow properties is coded in the routine snowcro.F90 (sub-routines SNOWNLFALL_UPGRID, SNOWCROCOMPACTN and SNOWGROOMING).

Developer name

Pierre Spandre.

Date of start of development

2013.

Commit number before the development

Commit number (spandre_V8 branch, before merging into cen_dev) = d41b8dd2b20ffcf55b60171ee50a71c02f1de26a.

Current status (in progress, or commit number in cen_dev or cen_release) and expected schedule

Commit number (merging into cen_dev) = 4bdd99222e5a0f05ca00cbc367996d2665c5d839.

Evaluated against SURFEX test database ?

Work in progress, by M. Fructus.

New test added in the database (if yes, describe)

Work in progress, by M. Fructus.

Changes in namelist

In order for Crocus-Resort to be run, a new set of options have been added to the namelist:

 
&NAM_ISBA_SNOWn
CSNOWMETAMO = 'C13'
LSNOWCOMPACT_BOOL = T
LSNOWTILLER = T
LSNOWMAK_BOOL = T
LSNOWMAK_PROP = T
LSELF_PROD = T
/
&NAM_SURF_SNOW_CSTS
XPSR_SNOWMAK = 0.002
XRHO_SNOWMAK = 600
XPTA_SEUIL = 268.15
XPROD_SCHEME = 0,0,0,0,0
XSM_END = 4,30,4,30
XFREQ_GRO = 1
/
&NAM_WRITE_DIAG_SURFn
CSELECT='AVG_PCOUNT' ===> In the cen_release branch  CSELECT='PCOUNT'
  • CSNOWMETAMO = 'C13'
    Please note that the Crocus-Resort model cannot be run with the 'B92' snow metamorphism formulation.
    The only available options are 'C13', 'T07' and 'F06', which describe the snow microstructure using SSA and sphericity as prognostic variables (Carmagnola et al., 2013).
    Using B92, the OFFLINE will fail with an "erroneous arithmetic operation" error.
  • LSNOWCOMPACT_BOOL = T of F
    Grooming main switch (F = no grooming).
    By default, grooming only applies if SWE > 20 kg/m2 and between 20h and 21h (and also 6h-9h if there is some snowfall during the night).
  • LSNOWTILLER = T of F
    Switch for the activation of the tiller effect, which applies down to 35 kg/m2 below the surface (F = no tiller effect, only compaction).
  • LSNOWMAK_BOOL = T of F
    Snowmaking main switch (F = no snowmaking).
    By default, snowmaking only applies if the wind speed is < 10 km/h, during all the day during the period 01/11-15/12 and between 18h-8h during the period 15/12-31/03.
    During the first period (base-layer generation), the production is allowed until reaching a water consumption of 150 kg/m2, according to an average water availability of = 1500 m3/ha.
    During the second period (snowpack reinforcement), the production is allowed if the total (natural+machine-made) snow height is < 60 cm.
    Finally, a loss of 30% in the snow production process is applied in every condition.
  • LSNOWMAK_PROP = T of F
    Switch for the activation of machine-made snow properties (F = same as natural snow).
    The machine-made snow properties are set as follows: SSA = 23 m2/kg, Sphericity = 0.9.
  • LSELF_PROD = T of F
    Switch for the control of snow production.
    If T, the production follows the pre-defined rules defined above (threshold of 150 kg/m2 during the base-layer generation period, threshold of 60 cm during the snowpack reinforcement period).
    If F, the production is forced to match the pre-set production scheme defined by XPROD_SCHEME.
  • XPSR_SNOWMAK = 0.0012 kg/m2/s
    Machine-made snow precipitation rate.
  • XRHO_SNOWMAK = 600 kg/m3
    Machine-made snow density.
  • XPTA_SEUIL = 268.15 K
    Wet but temperature threshold for machine-made snow production.
  • XPROD_SCHEME = 2500,5000,4000,2500,1000 s of production per day
    This monthly production target (from November to March) is used when LSELF_PROD = F.
    Every day at 18:00, a production counter is compared to the target. If it's lower, the production is allowed.
  • XSM_END = 4,30,4,30
    Month and day to stop grooming (for LSNOWMAK_BOOL = F and for LSNOWMAK_BOOL = T, respectively).
  • XFREQ_GRO = 1
    Grooming frequency (usually 1/day).
  • CSELECT='AVG_PCOUNT'
    This new variable corresponds to the machine-made snow cumulative time of production (s) and can further be found in the PRO.nc output as the "Snow production counter (s)".
    Please note that this is not a prognostic variable and it is not written in the PREP.nc file. Therefore, at every new simulation this counter is re-set to 0.

The Boolean options for grooming and snowmaking are presented below.
It is possible to activate grooming without activating snowmaking, and the other way around.
This latter case, however, is not meaningful, since in practice the machine-made snow has always to be groomed once produced.
More details can be found in the document Wiki_Crocus_resort_Developers_20170626.pdf.

Other required changes (forcing files, snowtools code or options, VORTEX, ....)

The computation of the viability index (also called snow reliability index) can be realized based on the example of the python script 20170922_Traitement_viab.py (see below) and the data describing resort locations (20180820_Fichier_poids_France.csv). A manual describing the method has also been added to this page (20170922_Calcul_viabilite_s2m.pdf).


Crocus-Resort: updated version by C. Carmagnola

The Crocus-Resort module has been modified in order to be used to run the PROSNOW modeling chain (www.prosnow.org).
The main changes compared to the previous version and their scientific interest are briefly presented here.
Technical note: the main changes have been made in the routine snow_making.F90.

  • The wet bulb temperature is now computed even if LSNOWMAK_BOOL=F and is turned into a diagnostic variable that can be shown by selecting CSELECT='WBT' in the namelist.
  • The water consumption threshold during the base-layer generation period, previously set 150 kg/m2, is now adjustable in the namelist (XPT), along with several other variables (see below).
  • The snow production rate, whose value was constant and had to be set in the namelist in the previous version (XPSR_SNOWMAK), is now wet bulb temperature-dependent.
    The linear dependency of the rate on the temperature has been implemented according to Hanzer et al., 2014 (more info in the paper Hanzer_2014.pdf here below).
    In the namelist, XPSR_SNOWMAK has been then replaced by the 2 adjustable coefficients XPR_A and XPR_B, that can be adapted depending on the snow-gun type (lances or fences, for instance).
    Assuming a machine-made snow density of 400 kg/m3, the production rate is computed as XPR_A*WBT+XPR_B and expressed in m²/h.
  • When LSELF_PROD=F, XPROD_SCHEME is now used as the water consumption target (in kg/m2) and does not depend on atmospheric or timing conditions.
    This means that in this case, regardless of the hour, the date and the atmospheric conditions, the model will produce machine-made snow until reaching the value of XPROD_SCHEME.
    In addition, this variable depends now on the location; therefore, it is possible to prescribe different values for different points.
  • The machine-made snow cumulative time of production (AVG_PCOUNT) has been replaced by a new prognostic variable, called MMP (for Machine-Made snow Production).
    This new variable corresponds to cumulative water consumption and is expressed in km/m2.
    During the base-layer generation period, the production is then allowed as long as MMP < XPT (if LSELF_PROD=T) or MMP < XPROD_SCHEME(1) (if LSELF_PROD=F).
    The value of MMP is written in the PREP.nc file and therefore it can be carried over between different simulation runs.
    The value of MMP can be displayed by selecting CSELECT='MMP_VEG' in the namelist.

Developer name

Carlo Carmagnola.

Date of start of development

November 2018.

Commit number before the development

Commit number before merging into cen_dev = addee2b007013731224d1da71b25c95903121c20.

Current status (in progress, or commit number in cen_dev or cen_release) and expected schedule

Commit number of the latest version = 87d0598cbeec518a561254dd28247c755cc82489.

Evaluated against SURFEX test database ? yes or no

Work in progress, by M. Fructus.

New test added in the database (if yes, describe)

Work in progress, by M. Fructus.

Changes in namelist

 
&NAM_ISBA_SNOWn
  CSNOWMETAMO='C13'
  LSNOWCOMPACT_BOOL=.TRUE.
  LSNOWTILLER=.TRUE.
  LSNOWMAK_BOOL = .TRUE.
  LSNOWMAK_PROP = .TRUE.
  LSELF_PROD = .TRUE.
/
&NAM_SURF_SNOW_CSTS
  XPP_D1 = 342.
  XPP_D2 = 387.
  XPP_D3 = 124.
  XPP_H1 = 0.
  XPP_H2 = 86400.
  XPP_H3 = 64800.
  XPP_H4 =  28800.
  XPR_A = -3.94
  XPR_B = -4.23
  XPTA_SEUIL = 267.15
  XWT = 4.2
  XPT = 150.
  XPTR = 0.60
  XRHO_SNOWMAK = 600
  XPROD_SCHEME = 300,450
  XSM_END = 4,30,4,30
  XFREQ_GRO = 1
/
&NAM_WRITE_DIAG_SURFn
  LPROVAR_TO_DIAG = .TRUE.
  LSNOWDIMNC = .TRUE.
  LSELECT= .TRUE.
  CSELECT='time','WBT','DSN_T_ISBA','WSN_T_ISBA','MMP_VEG'
  • XPP_D1, XPP_D2, XPP_D3
    Beginning of the base-layer generation production period (by default, 1st of November [11*31+1=342]).
    End of the base-layer generation production period (by default, 15th of December [12*31+1=387]).
    End of the reinforcement production period (by default, 31st of March [3*31+31=124]).
  • XPP_H1, XPP_H2
    Seconds of beginning and end of the base-layer generation production period.
    By default, the production during this period is allowed all the day (0s to 86400s).
  • XPP_H3, XPP_H4
    Seconds of beginning and end of the reinforcement production period.
    By default, the production during this period is allowed from 6pm (64800s) to 8am (28800s).
  • XPR_A, XPR_B
    Adjustable coefficients that can be adapted depending on the snow-gun type (Hanzer et al., 2014).
  • XWT
    Wind speed threshold for snowmaking (in m/s).
  • XPT
    Water consumption threshold during the base-layer generation production period (in kg/m2).
  • XPTR
    Total (natural+machine-made) snow height threshold during the reinforcement production period (in m).
  • XPROD_SCHEME
    If LSELF_PROD=F, XPROD_SCHEME is the target water consumption (in kg/m2).
    XPROD_SCHEME is an array whose values correspond to different points (the first value is attributed to the first point, and so on).
  • CSELECT='WBT','MMP_VEG'
    Wet bulb temperature (°C) and cumulative water consumption for snowmaking (kg/m2).

Other required changes (forcing files, snowtools code or options, VORTEX, ....)

Nothing special, for now...