This class is a wrapper for CatchmentSurface and CatchmentKinematicWaveSurfaceRouting. The CatchmentSurface class is responsible for loss processes (infiltration, etc.) and CatchmentKinematicWaveSurfaceRouting is responsible for having surface routing specific data.
public class SubCatchmentKinematicWave : ICatchmentKinematicWaveSurfaceData,
ICatchmentSurfaceData, ICatchmentKinematicWaveSurfaceRoutingData, ICatchmentSurface| SubCatchmentKinematicWave | Initializes a new instance of the SubCatchmentKinematicWave class |
| ApplyEvaporationOnRain |
When raining, if true the evaporation is applied at the beginning of the time step,
correcting the net rain and limited by the rain.
If false, evaporation is applied on non-empty storages in the catchment and can exceed the rain.
In dry periods, this is not used, evaporation is always applied on storages. |
| ApplyInitialLossRecoveryRateWhenRaining | Flag specifying to apply InitialLossRecoveryRate also when it is raining. |
| AreaFraction | Area fraction of the surface Unit: [-]. |
| Depth | Depth of water on sub-catchment. State variable. Unit: [m] |
| DepthOld | Depth of water at the previous time step. Computational variable. Unit: [m] |
| EffectiveAreaFraction | Effective area fraction, subtracting area covered by LID's. Default: Same as AreaFraction when no LID's Unit: [-] |
| EvaporationActual | Actual evaporation. Reporting variable. Unit: [m/s] |
| EvaporationActualOld | Evaporation of last time step. Reporting variable. Unit: [m/s] |
| EvaporationFromTimeSeries |
True if evaporation is enabled, and an evaporation boundary has been defined.
If set to false the initial recover rate is used during dry periods. Default: False |
| EvaporationPotential | Potential evaporation. Reporting variable. Unit: [m/s] |
| GlobalDepthDryLimit | Dry depth used for switching Horton's mode between dry and wet in Kinematic Wave model when InfiltrationAfterRain == true. In this case the switching to regeneration of infiltration capacity is controlled by a low limit of the water depth on the surface. Unit: [m] Default: 1e-6 |
| Horton |
Horton, defined only for pervious surfaces.
Returns null if Infiltration is not Horton. |
| ID | The ID of the surface |
| Infiltration |
Infiltration calculator. This defines whether the surface is pervious.
If null, the surface is impervious. |
| InfiltrationActual | Actual infiltration. Reporting variable. Unit: [m/s] |
| InfiltrationActualOld | Infiltration of last time step Reporting variable. Unit: [m/s] |
| InfiltrationAfterRain |
True if infiltration shall occur also after rain has ended.
Default is true . |
| InfiltrationPotential | Potential infiltration. Reporting variable. Unit: [m/s] |
| InfiltrationPotentialOld | Potential infiltration of last time step Reporting variable. Unit: [m/s] |
| InitialLossRecoveryRate |
Recovery rate for initial loss capacity.
The initial loss capacity is regenerated in dry periods by a linear recovery rate.
Used as constant evaporation, when evaporation is not defined explicitly. If evaporation is defined explicitly (see EvaporationFromTimeSeries), this is neglected. Unit: [m/s] Default: 0.00005 [m/hour] = 1.2 [mm/day] |
| KinematicFactor | Kinematic factor. Computational variable. Unit: [m^(4/3)/s] |
| Length |
The length of the subcatchment/channel.
The model assumes a prismatic flow channel with rectangular cross section. The channel bottom width is computed from catchment area and length. If not defined, the average length of the base catchment is used. Default: undefined Unit: [m] |
| Loss |
Loss, other than infiltration which goes into InfiltrationActual.
Additionally, the wetting loss and storage loss is not included in this loss, and these are considered a part of catchment water volume, which cannot be routed. Unit: [m/s] |
| LossOld | Loss of last time step |
| ManningM |
Manning M number.
Default: depending on the surface type. Unit: [m^(2/3)/s]. |
| RainRate |
Rain rate, which can be modified by some processes.
For example, rain rate can be modified by snow module. Unit: [m/s] |
| RainRateOld | Rain rate of last time step. Unit: [m/s] |
| Runoff | Runoff from the sub-catchment. State variable. Unit: [m3/s] |
| RunoffOld | Runoff from the sub-catchment at previous time step Computational variable. Unit: [m3/s] |
| Slope |
The slope of the catchment/channel.
If not defined, the average slope of the base catchment is used. Default: undefined Unit: [m] |
| SnowModule |
Snow module handling snow storage.
If null, the snow module is not applied. |
| SnowStorage | Snow storage at time N+1. Unit: [m] |
| StorageCapacity | Storage capacity. Unit: [m]. Not applicable to ImperviousSteep. |
| StorageLoss | Storage loss depth. State variable. Unit: [m] |
| StorageLossOld | Storage loss depth at the previous time step. Computational variable. Unit: [m] |
| Surface |
Catchment surface class, handling wetting loss, storage loss, infiltration and evaporation
If Infiltration is not defined, the surface is assumed to be impervious, and no infiltration is applied. |
| SurfaceRouting | Data interface that covers data in a kinematic wave catchment model which varies with the surface type. Note that not all properties are applicable for all surface types. |
| SurfaceType | Surface types of the sub-catchments |
| Type | Impervious or pervious surface type. |
| UseReverseDraining |
Revert to old draining order. Set to true to
drain in same order as in MOUSE engine.
Reverse draining drains in order: wetting, storage, depth. Hence, when storages are full, wetting and storage will be drained and not depth, depth will be higher and give more runoff. This is visible in low-flow conditions. |
| WettingCapacity | Wetting capacity. Unit: [m]. |
| WettingLoss | Wetting loss depth. State variable. Unit: [m] |
| WettingLossOld | Wetting loss depth at the previous time step. Computational variable. Unit: [m] |
| Width | Width of the sub-catchment. Computational variable. Unit: [m] |
| Create | Creates an instance of SubCatchmentKinematicWave |
| Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) |
| Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object) |
| FinalizeTimeStep | Finalizes catchment surface time step. |
| GetHashCode | Serves as the default hash function. (Inherited from Object) |
| GetType | Gets the Type of the current instance. (Inherited from Object) |
| Initialize | Initialize catchment surface. |
| MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object) |
| PerformTimeStep |
Perform catchment surface time step.
The catchment surface has several processes: * Snow module * Filling of storages * Evaporation * Infiltration |
| Prepare | Prepare catchment surface for simulation. |
| PrepareForTimeStep | Prepare for catchment surface time step. |
| SetSurfaceType | Set surface type for subcatchment |
| ToString | Returns a string that represents the current object. (Inherited from Object) |