SNOWPACK 20251207.15ac3588
Physically based, energy balance snow cover model
Loading...
Searching...
No Matches
VapourTransport Class Reference

Detailed Description

This module contains water vapour transport routines for the 1d snowpack model.

Version
1.0

#include <VapourTransport.h>

Public Member Functions

 VapourTransport (const SnowpackConfig &cfg)
 
void compTransportMass (const CurrentMeteo &Mdata, double &ql, SnowStation &Xdata, SurfaceFluxes &Sdata)
 The mass transport procedure, which serves as the primary function, is invoked from Snowpack::runSnowpackModel.
NOTES:
 
- Public Member Functions inherited from WaterTransport
 WaterTransport (const SnowpackConfig &cfg)
 
virtual ~WaterTransport ()
 
void compTransportMass (const CurrentMeteo &Mdata, SnowStation &Xdata, SurfaceFluxes &Sdata, double &ql)
 Compute the mass of water that is transported through the layers.
 

Additional Inherited Members

- Protected Types inherited from WaterTransport
enum  watertransportmodels { UNDEFINED , BUCKET , NIED , RICHARDSEQUATION }
 
- Protected Member Functions inherited from WaterTransport
void mergingElements (SnowStation &Xdata, SurfaceFluxes &Sdata, const bool &VapourTransport=false)
 Merging snow elements.
 
void adjustDensity (SnowStation &Xdata)
 Surface sublimation and melt artificially create surface elements that have a much too low density and this needs to be corrected.
TODO Check description!
 

Constructor & Destructor Documentation

◆ VapourTransport()

VapourTransport::VapourTransport ( const SnowpackConfig cfg)

No surface hoar will form for rH above threshold (1)

  • Original calibration with the 98/99 data set: 0.9
  • r141: HOAR_THRESH_RH set to 0.9
  • r719: HOAR_THRESH_RH set to 0.97

No surface hoar will form at wind speeds above threshold (m s-1)

  • Original calibration with the 98/99 data set: 3.5
  • r141: HOAR_THRESH_VW set to 3.0
  • r242: HOAR_THRESH_VW set to 3.5

No surface hoar will form at air temperatures above threshold (m s-1)

  • Originaly, using THRESH_RAIN
  • r787: HOAR_THRESH_TA set to 1.2

Member Function Documentation

◆ compTransportMass()

void VapourTransport::compTransportMass ( const CurrentMeteo Mdata,
double &  ql,
SnowStation Xdata,
SurfaceFluxes Sdata 
)

The mass transport procedure, which serves as the primary function, is invoked from Snowpack::runSnowpackModel.
NOTES:

  1. It is worth noting that the solver is highly stable with default parameters. Specifically, VAPOUR_TRANSPORT_TIMESTEP is set to 60 seconds, while the SNOWPACK simulation time step is 15 minutes, and VAPOUR_TRANSPORT_IMPLICIT_FACTOR is set to 1. The latter factor determines whether the equation is discretized in full implicit, full explicit, or a combination of the two, with a value of 1 indicating full implicit, and a value of 0.5 indicating Crank-Nicolson. In the case of convergence issues, reducing the height of the new-snow element controlled by HEIGHT_NEW_ELEM (in the .ini config file) is recommended. For sea-ice simulations, choosing BUCKET for the water transport scheme is advised if convergence issues arise.
  2. If there is no soil or snow present, vapor transport will be bypassed.
  3. If vapor transport enabled, ql is only used in vaportransport for mass tranport on top. See WaterTransport::compTransportMass.
    Author
    Mahdi Jafari
    Parameters
    Xdata
    qlLatent heat flux (W m-2)
    Sdata
    Mdata

The documentation for this class was generated from the following files: