This file sets the snow options and parameters. It contains one namelist called JULES_SNOW.
HCTN30 refers to Hadley Centre technical note 30, available from the Met Office Library.
Type: | integer |
---|---|
Permitted: | >= 0 |
Default: | 0 |
Maximum possible number of snow layers.
Type: | logical |
---|---|
Default: | F |
Type: | integer |
---|---|
Permitted: | 0 or 1 |
Default: | 0 |
Switch for use of snow-cover fraction in the calculation of sublimation and melting.
Type: | integer |
---|---|
Permitted: | 0 or 1 or 2 |
Default: | 0 |
Switch for treatment of graupel in the snow scheme
Always “Include graupel as snowfall” (option 0) in standalone JULES because separate snow and graupel driving data are not available. If graupel is included in the UM surface snowfall diagnostic then JULES can either include this graupel as snow in the surface scheme (option 0), ignore this graupel completely, thereby breaking conservation of water and energy in the coupled land-atmosphere model (option 1) or treat graupel seperately (currently this only means allowing graupel to fall straight through the canopy)
Type: | real(nsmax) |
---|---|
Default: | None |
Prescribed thickness of each snow layer (m).
Only used if nsmax > 0.
The interpretation of dzsnow is slightly complicated and an example of the evolution of the snow layers is given below.
dzsnow gives the thickness of each layer when it is not the bottom layer.
For the top layer, the minimum thickness is dzsnow(1) and the maximum thickness is 2 * dzsnow(1). For all other layers iz, the minimum thickness is dzsnow(iz - 1), i.e. the given thickness of the previous layer, and the maximum thickness is 2 * dzsnow(iz), i.e. twice the layer dzsnow value, except for the last possible layer (nsmax) which has no upper limit.
As a snowpack deepens, the bottom layer (closest to the soil; label this as layer b) thickens until it reaches its maximum allowed thickness, at which point it will split into a layer of depth dzsnow(b) and a new bottom layer b + 1 is added to hold the remaining snow. If a layer becomes thinner than its value in dzsnow it is removed and the snow partitioned between the remaining layers. Whenever a layer splits or is removed, the properties of the layer (e.g. temperature) are allocated to the remaining layers.
Note that dzsnow(nsmax), the final thickness, is not used but a value must be input.
Type: | logical(npft) |
---|---|
Default: | F |
Flag indicating whether snow can be held under the canopy of each PFT.
Only used if can_model = 4.
The model of snow under the canopy is currently only suitable for coniferous trees.
Radiation parameters
Type: | real |
---|---|
Default: | 50.0 |
Grain size for fresh snow (μm).
Only used if l_snow_albedo = TRUE. See HCTN30 Eq.15.
Type: | real |
---|---|
Default: | 2000.0 |
Maximum snow grain size (μm).
Only used if l_snow_albedo = TRUE. See HCTN30 p4.
Type: | real(3) |
---|---|
Default: | 0.6, 0.06, 0.23e6 |
Snow grain area growth rates (μm^{2} s^{-1}).
Only used if l_snow_albedo = TRUE. See HCTN30 Eq.16.
The 3 values are for melting snow, cold fresh snow and cold aged snow respectively.
Type: | real(2) |
---|---|
Default: | 0.98, 0.7 |
Maximum albedo for fresh snow.
Only used if l_snow_albedo or l_elev_land_ice are true
Values 1 and 2 are for VIS and NIR wavebands respectively.
Type: | real(2) |
---|---|
Default: | 0.78, 0.36 |
Maximum albedo for bare ice
Only used if l_elev_land_ice = TRUE. See also rho_firn_albedo
Values 1 and 2 are for VIS and NIR wavebands respectively.
Type: | real |
---|---|
Default: | 50.0 |
Used in exponent of equation weighting snow-covered and snow-free albedo.
Type: | real |
---|---|
Default: | 2.0 |
Degrees Celsius below zero at which snow albedo equals cold deep snow albedo.
Only used if l_snow_albedo = FALSE. This is 2.0 in HCTN30 Eq4.
Type: | real |
---|---|
Default: | 0.3 |
Used in snow-ageing effect on albedo.
Only used if l_snow_albedo = FALSE.
Must not be zero.
kland is computed by dividing this value by dtland - see HCTN30 Eq4.
Type: | real(npft) |
---|---|
Default: | MDI |
Clumping parameter for snow on the canopy in calculation of albedo.
Only used if can_model = 4, cansnowpft = TRUE on that tile and l_embedded_snow = TRUE.
Type: | real(npft) |
---|---|
Default: | MDI |
LAI distribution parameter for calculation of snow albedo.
Only used if l_embedded_snow = TRUE.
Type: | real(npft) |
---|---|
Default: | MDI |
Minimum LAI in calculation of albedo in the presence of snow.
Other snow parameters
Type: | real |
---|---|
Default: | 250.0 |
Constant density of lying snow (kg m^{-3}).
This value is used if nsmax = 0, in which case all snow is modelled as a single layer of constant density.
Type: | real |
---|---|
Default: | 100.0 |
Density of fresh snow (kg m^{-3}).
This value is only used if nsmax > 0.
Type: | real |
---|---|
Default: | 550.0 |
If l_elev_land_ice = TRUE, this is the threshold density (as measured over the ~top 10cm, depending on how the dzsnow layers are specified) at which the grain-size calculation of prognostic snow albedo will switch to one dependent on the surface density of the snowpack. Albedo is linearly scaled between amax for rho_snow_const and aicemax for rho_ice=917 kg/m^3.
Type: | real |
---|---|
Default: | 0.265 |
Thermal conductivity of lying snow (W m^{-1} K^{-1}).
See HCTN30 Eq.42.
Type: | real |
---|---|
Default: | 0.63e6 |
Thermal capacity of lying snow (J K^{-1} m^{-3}).
Type: | real |
---|---|
Default: | 0.05 |
Liquid water holding capacity of lying snow, as a fraction of snow mass.
Only used if nsmax > 0.
Type: | real |
---|---|
Default: | 0.7 |
Constant in relationship between mass of intercepted snow and snowfall rate.
Only used if can_model = 4.
Type: | real |
---|---|
Default: | 4.4 |
Ratio of maximum canopy snow load to leaf area index (kg m^{-2}).
Only used if can_model = 4.
Type: | real |
---|---|
Default: | 0.4 |
Constant in relationship between canopy snow unloading and canopy snow melt rate.
Only used if can_model = 4.
Type: | real(npft) |
---|---|
Default: | MDI |
Constant term in the background unloading rate for snow on the canopy.
Only used if can_model = 4 and cansnowpft = TRUE on that tile.
Type: | real(npft) |
---|---|
Default: | MDI |
Term proportional to wind speed in unloading rate for snow on the canopy.
Only used if can_model = 4 and cansnowpft = TRUE on that tile.
Type: | integer |
---|---|
Permitted: | 0 or 1 |
Default: | MDI |
Scheme used to calculate the conductivity of snow
Only used if nsmax > 0.
Type: | logical |
---|---|
Default: | F |
Type: | logical |
---|---|
Default: | F |
Type: | logical |
---|---|
Default: | F |
Type: | real |
---|---|
Default: | MDI |
Constant in parametrization of thermal metamorphism.
Only used if l_et_metamorph = TRUE.
Type: | real |
---|---|
Default: | MDI |
Constant in parametrization of thermal metamorphism.
Only used if l_et_metamorph = TRUE.
Type: | real |
---|---|
Default: | MDI |
Constant in parametrization of thermal metamorphism.
Only used if l_et_metamorph = TRUE.
Type: | real |
---|---|
Default: | MDI |
Critical density in parametrization of thermal metamorphism.
Only used if l_et_metamorph = TRUE.
Type: | integer |
---|---|
Permitted: | 0 or 1 |
Default: | 0 |
Scheme used to calculate the rate of growth of snow grains.
Setting this to 0 invokes the original scheme based on Marshall (1989), with no dependence of the rate of growth of small grains on the temperature.
Setting it to 1 invokes the scheme for growth of snow grains proposed by Taillandier et al. (2007) for equitemperature metamorphism. This is significantly slower than the default scheme at low temperatures.
Type: | integer |
---|---|
Permitted: | 0 or 1 |
Default: | 0 |
Scheme used to relayer the snowpack. Setting the option to 0 invokes the original scheme with relayering of the grain size involving the grain size itself, while setting it to 1 causes the relayering to be done using the inverse of the grain size. This is more consistent with conserving the SSA, though full conservation would require mass weighting to be invoked during regridding.
Only used if nsmax > 0.
The table below gives an example of how the number and thickness of snow layers varies with total snow depth for the case of nsmax = 3 and dzsnow = (0.1, 0.15, 0.2). Note that if the values given by the user for dzsnow are a decreasing series with dzsnow(i) <= 2 * dzsnow(i - 1), the algorithm will result in layers i and i + 1 being added at the same time. Don’t panic - this should not be a problem for the simulation.
Snow depth (m) | Number of layers | Layer thickness, uppermost layer first (m) | Comments |
---|---|---|---|
d < 0.1 | 0 | While the depth of snow is less than dzsnow(1), the layer model is not active and snow and soil are combined in a composite layer. | |
0.1 <= d < 0.2 | 1 | Total snow depth | The single layer grows until it is twice as thick as dzsnow(1). |
0.2 <= d < 0.4 | 2 | 0.1, remainder | Above 0.2m, the single layer splits into a top layer of 0.1m and the remaining snow in the bottom layer. |
>= 0.4 | 3 | 0.1, 0.15, remainder | At 0.4m depth, layer 2 (which has grown to 0.3m thick, i.e. 2 * dzsnow(2)), splits into a layer of 0.15m and a new bottom layer holding the the remaining 0.15m. As all layers are now in use, any subsequent deepening of the pack is dealt with by increasing the thickness in this bottom layer. |