LandscapeDNDC
1.36.0
|
Watercycle model EcosystemHydrology - EcHy. More...
Inherits ldndc::MBE_LegacyModel.
Public Member Functions | |
lerr_t | solve () |
Private Member Functions | |
lerr_t | EcHyIrrigation () |
Irrigation. | |
lerr_t | EcHyFlood () |
sets hydrologic conditions during flooding events, e.g., More... | |
lerr_t | EcHyPercolation (size_t, size_t) |
Calculates water percolation within the soil profile. | |
lerr_t | EcHyBypassFlow (double, double &) |
Calculates water percolation within the soil profile. | |
lerr_t | EcHyEvapotranspiration () |
Calculates evapotranspiration within the soil profile. | |
lerr_t | EcHySubsl2 (double const &, double const &, int const &, double const &, double &) |
... More... | |
lerr_t | EcHyBalanceCheck (double &) |
... More... | |
void | EcHyreset () |
... | |
lerr_t | EcHyGroundwater () |
... More... | |
lerr_t | EcHyIntegration () |
... More... | |
lerr_t | EcHyStepInit () |
... | |
lerr_t | EcHyStepExit () |
... | |
double | EcHyGetInterceptionCapacity () |
... | |
lerr_t | EcHyCalculateLeafWaterDistribution (lvector_t< double > &) |
... | |
lerr_t | EcHyPotentialEvapotranspiration () |
Calculates potential evapotranspiration. Specific concept can be given as model option. | |
lerr_t | EcHySnowIce () |
Calls SnowDNDC for the calculation of snowpack and soil ice formation. | |
double | EcHyGetMinimumWater (size_t) |
... | |
double | EcHyGetWiltingPoint (size_t) |
... | |
double | EcHyGetAvailableWaterTranspiration (size_t) |
... | |
double | EcHyGetAvailableWaterEvaporation (size_t) |
... | |
double | EcHyGetRootLimitation (double) |
... | |
double | EcHyGetWaterLimitationTranspiration (double, size_t) |
... | |
double | EcHySoilWaterChange (size_t) |
Private Attributes | |
double | kst_bottom |
double | gw_depth_static |
double | accumulated_potentialtranspiration_old |
double | accumulated_irrigation_old |
lvector_t< double > | trwl_sl |
lvector_t< double > | wlfl_sl |
lvector_t< double > | cr_fill_sl |
lvector_t< double > | gw_fill_sl |
lvector_t< double > | bypass_fill_sl |
lvector_t< double > | wc_max_sl |
lvector_t< double > | wc_min_sl |
lvector_t< double > | evsws_sl |
lvector_t< double > | kst_sl |
lvector_t< double > | wl_sl |
lvector_t< double > | wlfc_sl |
lvector_t< double > | wlwp_sl |
lvector_t< double > | wlst_sl |
double | ev_leaf |
double | gw_fill_surface |
double | cr_fill_groundwater |
double | runoff |
double | snowfall |
double | throughfall |
double | interception_water |
double | thornthwaite_heat_index |
double | daily_potential_evapotranspiration |
double | daily_potential_leaf_evaporation |
double | daily_potential_soil_evaporation |
double | daily_potential_transpiration |
WaterCycleSnowDNDC::IceContentStateIn | m_icecontent_in |
cbm::string_t | evapotranspiration_method |
cbm::string_t | runoff_method |
Watercycle model EcosystemHydrology - EcHy.
|
private |
...
Checks balance between all incoming and outgoing water fluxes.
References cr_fill_groundwater, ev_leaf, evsws_sl, gw_fill_sl, gw_fill_surface, interception_water, runoff, snowfall, throughfall, trwl_sl, wl_sl, and wlfl_sl.
Referenced by solve().
|
private |
sets hydrologic conditions during flooding events, e.g.,
Flooding.
References kst_bottom, and kst_sl.
Referenced by solve().
|
private |
...
Negative groundwater table represents water on the soil surface
Negative groundwater table represents water on the soil surface
References cr_fill_groundwater, cr_fill_sl, EcHySoilWaterChange(), gw_depth_static, gw_fill_sl, gw_fill_surface, kst_sl, wc_max_sl, wc_min_sl, wl_sl, and wlst_sl.
Referenced by solve().
|
private |
...
Integrates all water state variables.
References bypass_fill_sl, EcHySoilWaterChange(), gw_fill_surface, runoff, throughfall, wc_max_sl, wc_min_sl, wl_sl, and wlfl_sl.
Referenced by solve().
|
private |
Integrates all water state variables.
References cr_fill_sl, evsws_sl, gw_fill_sl, trwl_sl, and wlfl_sl.
Referenced by EcHyGroundwater(), EcHyIntegration(), and EcHyIrrigation().
|
private |
...
This routine calculates the rate of capillary flow or percolation between groundwater table and root zone. The stationary flow is found by integration of dZL = K.d(MH)/(K + FLW), where Z= height above groundwater, MH= matric head, K= conductivity and FLW= chosen flow. In an iteration loop the correct flow is found. The integration goes at most over four intervals: [0,45], [45,170], [170,330] and [330,MH-rootzone] (last one on logarithmic scale).
Chapter 15 in documentation WOFOST Version 4.1 (1988)
References kst_sl.
lerr_t ldndc::EcHy::solve | ( | ) |
Kicks off computation for one time step.
References EcHyBalanceCheck(), EcHyBypassFlow(), EcHyEvapotranspiration(), EcHyFlood(), EcHyGroundwater(), EcHyIntegration(), EcHyIrrigation(), EcHyPercolation(), EcHyreset(), EcHySnowIce(), EcHyStepExit(), EcHyStepInit(), kst_bottom, kst_sl, runoff, runoff_method, throughfall, and wlfl_sl.
|
private |
Accumulated irrigation of last time step [m]
Referenced by EcHyIrrigation().
|
private |
Accumulated potential transpiration of last time step [m]
Referenced by EcHyPotentialEvapotranspiration().
|
private |
Soillayer water input due to bypass flow
Referenced by EcHyIntegration(), and EcHyreset().
|
private |
Water addition to last soil layer from groundwater water by cappillary rise (only used for water balance calculation)
Referenced by EcHyBalanceCheck(), EcHyGroundwater(), and EcHyreset().
|
private |
Soillayer water input due to capillary rise
Referenced by EcHyGroundwater(), EcHyreset(), and EcHySoilWaterChange().
|
private |
...
Referenced by EcHyPotentialEvapotranspiration(), and EcHyStepExit().
|
private |
...
Referenced by EcHyPotentialEvapotranspiration().
|
private |
...
Referenced by EcHyPotentialEvapotranspiration().
|
private |
...
Referenced by EcHyPotentialEvapotranspiration().
|
private |
Evaporation from plant surface
Referenced by EcHyBalanceCheck(), EcHyPotentialEvapotranspiration(), and EcHyStepExit().
|
private |
...
Referenced by EcHyPotentialEvapotranspiration().
|
private |
Evaporation from soil layer
Referenced by EcHyBalanceCheck(), EcHyPotentialEvapotranspiration(), EcHyreset(), EcHySoilWaterChange(), and EcHyStepExit().
|
private |
Depth of groundwater table [m]
Referenced by EcHyGroundwater(), and EcHyStepInit().
|
private |
Soillayer water input due to groundwater flow
Referenced by EcHyBalanceCheck(), EcHyGroundwater(), EcHyreset(), and EcHySoilWaterChange().
|
private |
Water addition to surface water from groundwater water boundary condition
Referenced by EcHyBalanceCheck(), EcHyGroundwater(), EcHyIntegration(), and EcHyreset().
|
private |
Amount of canopy intercepted water
Referenced by EcHyBalanceCheck(), EcHyCalculateLeafWaterDistribution(), EcHyPotentialEvapotranspiration(), and EcHyStepInit().
|
private |
Saturated hydraulic conductivity below last soil layer [cm:min-1]
Referenced by EcHyFlood(), EcHyStepInit(), and solve().
|
private |
Saturated hydraulic conductivity
Referenced by EcHyFlood(), EcHyGroundwater(), EcHyStepInit(), EcHySubsl2(), and solve().
|
private |
...
|
private |
Lateral surface runoff
Referenced by EcHyBalanceCheck(), EcHyIntegration(), EcHyreset(), EcHyStepExit(), and solve().
|
private |
...
Referenced by solve().
|
private |
Snowfall
Referenced by EcHyBalanceCheck(), and EcHyreset().
|
private |
...
Referenced by EcHyPotentialEvapotranspiration().
|
private |
Throughfall to soil
Referenced by EcHyBalanceCheck(), EcHyIntegration(), EcHyStepExit(), EcHyStepInit(), and solve().
|
private |
Water withdrawl by transpiration [m d−1]
Referenced by EcHyBalanceCheck(), EcHyPotentialEvapotranspiration(), EcHyreset(), EcHySoilWaterChange(), and EcHyStepExit().
|
private |
Maximum water content
Referenced by EcHyGroundwater(), and EcHyIntegration().
|
private |
Minimum water content
Referenced by EcHyGetMinimumWater(), EcHyGroundwater(), and EcHyIntegration().
|
private |
Amount of water in soil layer
Referenced by EcHyBalanceCheck(), EcHyGetAvailableWaterEvaporation(), EcHyGetAvailableWaterTranspiration(), EcHyGroundwater(), EcHyIntegration(), EcHyIrrigation(), EcHyStepExit(), and EcHyStepInit().
|
private |
Amount of water in soil layer at field capacity
Referenced by EcHyGetAvailableWaterTranspiration(), EcHyGetWaterLimitationTranspiration(), and EcHyIrrigation().
|
private |
Water flux at boundaries of soil layer [m d-1] the flux of water between soil layer is tracked by wlfl (mm d−1). in total, there are nl+1 flow rates, where nl is the number of soil layers, wlfl[1] is the flow rate between the ponded water layer and the soil surface, wlfl[2] is the flow rate between soil layer 1 and soil layer 2, etc.
Referenced by EcHyBalanceCheck(), EcHyIntegration(), EcHyreset(), EcHySoilWaterChange(), EcHyStepExit(), and solve().
|
private |
Amount of water in soil layer at saturation
Referenced by EcHyGroundwater(), and EcHyIrrigation().
|
private |
Amount of water in soil layer at wilting point
Referenced by EcHyGetWiltingPoint().