Class MS_wind

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

Class Documentation

class MS_wind : public module_base

Calculates windspeeds using the Mason Sykes wind speed from Essery, et al (1999), using 8 lookup map from DBSM. Optionally uses Ryan, et al. for wind direction correction.

Depends from met:

  • Wind at reference height “U_R” [ \( m \cdot s^{-1}\) ]

  • Direction at reference height “vw_dir” [degrees]

Provides:

  • Wind speed at reference height “U_R” [ \( m \cdot s^{-1}\) ]

  • Wind direction ‘vw_dir’ at reference height [degrees]

  • Speedup magnitude “W_speedup” [-]

  • Zonal u speed component at 2m “2m_zonal_u” [ \( m \cdot s^{-1}\) ]

  • Zonal v speed component at 2m “2m_zonal_v” [ \( m \cdot s^{-1}\) ]

  • Original interpolated wind direction “vw_dir_orig” [degrees]

Parameters:

Requires speedup, u, and v parameters named “MS%i_U” and “MS%i_V” and “MS%i” for each of the 8 directions. These need to be generated using DBSM in tools/MSwind.

Configuration:

{
   "speedup_height": 2.0,
   "use_ryan_dir", false
}
speedup_height

The height at which the MS Wind tool was run for. The default is 2 m and shouldn’t be changed.

use_ryan_dir

Instead of using the _u and _v components to compute direction perturbation, use the algorithm of Ryan as per Liston and Elder (2006)

Reference:

Essery, R., Li, L., Pomeroy, J. (1999). A distributed model of blowing snow over complex terrain Hydrological Processes 13(), 2423-2438.

Type:

double

Default:

2.0

Type:

boolean

Default:

false

Public Functions

MS_wind(config_file cfg)
~MS_wind()
virtual void run(mesh &domain)
virtual void init(mesh &domain)

Public Members

double ys
double yc
double distance
bool use_ryan_dir
double speedup_height
class data : public face_info

Public Members

double curvature
interpolation interp
double corrected_theta
double W
double temp_u
interpolation interp_smoothing