Precipitation interception by Seasonal Variation of Storage Capacity method. 更多...

class  clsPI_SVSC
 Class for Precipitation Interception module by Seasonal Variation of Storage Capacity method. 更多...
 

详细描述

Precipitation interception by Seasonal Variation of Storage Capacity method.

Algorithm adapted from WetSpa, refers to WetSpa Manual p.24-26. This module is STORM_MODE and LONGTERM_MODE compatibility.

作者
Alex Storey, Junzhi Liu, Liangjun Zhu
日期
Apr 2017

Module for Precipitation Interception module by Seasonal Variation of Storage Capacity method.


类说明

◆ clsPI_SVSC

class clsPI_SVSC

Class for Precipitation Interception module by Seasonal Variation of Storage Capacity method.

  1. Lookup for max. and min. interception storage capacity corresponding to summer and winter extremes for different vegetation types.
  2. A simple sine-shaped variation curve is used to interpolate for continuous storage capacity.
  3. Hourly interception storage capacity is assumed to be constant.
  4. Evaporation is only accounted for LONGTERM_MODE
类 clsPI_SVSC 继承关系图:
SimulationModule ccgl::Interface

Public 成员函数

 clsPI_SVSC (void)
 Constructor
 
 ~clsPI_SVSC (void)
 Destructor
 
virtual void Set1DData (const char *key, int nRows, float *data)
 Set 1D data, by default, DT_Raster1D, float
 
virtual void SetValue (const char *key, float data)
 Set data, DT_Single, float point number (float or double)
 
virtual void Get1DData (const char *key, int *nRows, float **data)
 Get 1D data, by default, DT_Raster1D, float
 
virtual int Execute (void)
 Execute the simulation. Return 0 for success.
 
- Public 成员函数 继承自 SimulationModule
 SimulationModule ()
 Constructor
 
virtual void SetDate (time_t t, int year_idx)
 Set date time, as well as the sequence number of the entire simulation. Added by LJ for statistics convenient.
 
virtual void SetTheadNumber (const int thread_num)
 Set thread number for OpenMP
 
virtual void SetClimateDataType (int data_type)
 Set climate data type, P, M, PET etc.
 
virtual void SetValue (const char *key, int value)
 Set data, DT_Single, integer
 
virtual void SetValueByIndex (const char *key, int index, int value)
 Set single value to array1D by index, used in MPI version for passing values of subbasins, integer
 
virtual void SetValueByIndex (const char *key, int index, FLTPT value)
 Set single value to array1D by index, used in MPI version for passing values of subbasins, float
 
virtual void Set1DData (const char *key, int n, int *data)
 Set 1D data, by default, DT_Raster1D, integer
 
virtual void Set2DData (const char *key, int nrows, int ncols, int **data)
 Set 2D data, by default, DT_Raster2D, integer
 
virtual void Set2DData (const char *key, int nrows, int ncols, FLTPT **data)
 Set 2D data, by default, DT_Raster2D, float
 
virtual void GetValue (const char *key, int *value)
 Get value, DT_Single, integer
 
virtual void GetValue (const char *key, FLTPT *value)
 Get value, DT_Single, float
 
virtual void Get1DData (const char *key, int *n, int **data)
 Get 1D data, by default, DT_Raster1D, integer
 
virtual void Get2DData (const char *key, int *nrows, int *ncols, int ***data)
 Get 2D data, by default, DT_Raster2D, integer
 
virtual void Get2DData (const char *key, int *nrows, int *ncols, FLTPT ***data)
 Get 2D data, by default, DT_Raster2D, float
 
virtual void SetScenario (Scenario *sce)
 Set pointer of Scenario class which contains all BMP information. Added by LJ, 2016-6-14
 
virtual void SetReaches (clsReaches *rches)
 Set pointer of clsReaches class which contains all reaches information. Added by LJ, 2016-7-2
 
virtual void SetSubbasins (clsSubbasins *subbsns)
 Set pointer of clsSubbasins class which contains all subbasins information. Added by LJ, 2016-7-28
 
virtual bool CheckInputSize (const char *module_id, const char *key, int nrows, int &m_nrows)
 Check data length of the first dimension (i.e., nRows) of the input array-based data 更多...
 
virtual bool CheckInputSize2D (const char *module_id, const char *key, int nrows, int ncols, int &m_nrows, int &m_ncols)
 Check data length of the two dimensions (i.e., nRows and nCols) of the input array-based data 更多...
 
virtual void InitialIntermediates ()
 Initialize intermediate parameters for reducing computing amount. 更多...
 
virtual TimeStepType GetTimeStepType ()
 Get time step type, default is hillslope process. 更多...
 
virtual void ResetSubTimeStep ()
 Reset subtime step
 
bool IsInputsSetDone ()
 Whether the inputs (i.e., inputs derived from other modules) have been set.
 
void SetInputsDone (const bool set_done)
 Change the status of setting inputs parameters
 
void SetReCalIntermediates (const bool recal)
 set whether intermediate parameters need to recalculated
 

额外继承的成员函数

- Protected 属性 继承自 SimulationModule
time_t m_date
 date time
 
int m_yearIdx
 index of current year of simulation, e.g., the simulation period from 2010 to 2015, m_yearIdx is 2 when simulate 2012.
 
int m_year
 year
 
int m_month
 month since January - [1,12]
 
int m_day
 day of the month - [1,31]
 
int m_dayOfYear
 day of year - [1, 366]
 
int m_tsCounter
 sub-timestep counter
 
bool m_inputsSetDone
 Whether the inputs parameters (i.e., parameters derived from other modules) have been set.
 
bool m_reCalIntermediates
 need to recalculate intermediate parameters?