CatchmentKinematicWave Class |
In Kinematic Wave model the runoff is computed as flow in an open channel, taking the gravitational and frition forces only. The runoff amount is controlled by the various hydrological losses and the size of the actually contributing area.
Namespace: DHI.Mike1D.RainfallRunoffModule
The CatchmentKinematicWave type exposes the following members.
Name | Description | |
---|---|---|
CatchmentKinematicWave |
Constructor for CatchmentKinematicWave class
|
Name | Description | |
---|---|---|
AdditionalFlow |
Additional constant flow added to the total runoff
Unit: [m3/s]
Default: 0
(Inherited from Catchment.) | |
ApplyEvaporationOnRain |
When raining,
if true the evaporation is applied at the beginning of the time step,
correcting the net rain (in wet periods).
If false, evaporation is applied at the end of the time step on non-empty storages in the catchment. In dry periods, this is not used. if EvaporationFromTimeSeries is disabled, this is also not used (since the InitialLossRecoveryRate is only applied in dry periods). Historically MIKE has set this to true and MIKE URBAN to false. | |
Area |
Total area of catchment
Type: Catchment area
Unit: [m2]
Default: 1e8 (100 km2)
(Inherited from Catchment.) | |
AreaInSquareKm |
Full area of catchment
Type: Catchment area
Unit: [km2]
Default: 100
(Inherited from Catchment.) | |
BoundarySourceEvaporation |
Evaporation boundary
(Inherited from CatchmentAbstractUrban.) | |
BoundarySourceRainfall |
Rainfall boundary source
(Inherited from Catchment.) | |
CatchmentGeometry |
Get and set the list of coordinates of the catchment
(Inherited from Catchment.) | |
CatchmentName |
A overall data interface for cathcment data, containing
data properties that are common for all catchments.
(Inherited from Catchment.)This interface contains data and parameters for setting up a catchment model, and represents as such only setup data. Computational variables and methods are not included in this interface. It can be used to explore data and parameters required when setting up the catchment model. | |
CenterPoint |
Get and set the central point of the catchment
(Inherited from Catchment.) | |
CheckPoints |
A set of check points in time that must be hit by the catchments.
(Inherited from Catchment.) | |
ClientName | (Inherited from Catchment.) | |
CurrentTime |
Current time of catchment
(Inherited from Catchment.) | |
EffectiveArea |
Effective area. The effective area is the area that collects water.
Can be smaller than total area, eg for Linear Reservoir or when LIDs are present.
(Inherited from Catchment.) | |
EffectiveTimeStep |
Time step used in the simulation, it may change. It is set initially in Prepare
to TimeStep, and can be updated by individual catchment models when required,
i.e. it may differ from TimeStep.
(Inherited from Catchment.) | |
EndTime |
Return the end time of the catchment simulation.
This is set during prepare, and the catchment must
make sure not to run beyond this time.
(Inherited from Catchment.) | |
EvaporationFromTimeSeries |
True if evaporation is enabled, and an evaporation boundary has been defined.
(Inherited from CatchmentAbstractUrban.)If set to false the initial recover rate is used during dry periods. Default: False | |
FixedLengthWidthRatio |
Flag indicating if the length-width ratio should be fixed.
When fixed, the length and width for each sub-catchment are calculated so that the length/width ratio for each sub-area is kept equal to the length/width ratio of the entire catchment. When not set, the length of each subcatchment equals the length of the entire catchment, and width of each subcatchment is calculated as the area fraction of the width of the entire catchment. This is only applicable when the catchment does not specify their length explicitly, see Length. Default: true | |
GlobalDryDepthLimit |
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
(Inherited from CatchmentAbstractUrban.) | |
InfiltrationAfterRain |
True if infiltration shall occur also after rain
Default: True
(Inherited from CatchmentAbstractUrban.) | |
InitialLossMax |
Maximum value of InitialLossStorageDepth
Unit: [m]
(Inherited from CatchmentAbstractUrban.) | |
InitialLossRecoveryRate |
Recovery rate for initial loss capacity.
The initial loss capacity is regenerated in dry periods by a linear recovery rate.
(Inherited from CatchmentAbstractUrban.)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] | |
InitialLossStorageDepth |
Initial loss storage depth.
(Inherited from CatchmentAbstractUrban.)State variable (not for all derived catchment models) Unit: [m] | |
IntegratedHorton |
True if the Integrated Horton method is used in the calculation
for infiltration.
Default: False
| |
Item |
Getter returning data that vary with each surface type.
| |
Length |
The length of the channel.
The model assumes a prismatic flow channel with rectangular cross section. The channel bottom width is computed from catchment area and length. This is only applicable when the catchment does not specify their length explicitly, see Length. Default: 10 m Unit: [m] | |
LoadPerInhabitant |
Load per inhabitant.
Unit: [-]
(Inherited from CatchmentAbstractUrban.) | |
LowFlow |
Low flow limit for switching to dry period time step.
The dry period time step will only be applied when
the runoff from the rainfall is below the limit.
Unit: [m3/s]
Default: 0.0001
| |
MaximumFlow | Maximum runoff flow (Inherited from Catchment.) | |
MinimumFlow | Minimum runoff flow (Inherited from Catchment.) | |
MinTime | Obsolete.
Minimum time the catchment should be able to provide values. The catchment will cache
or recalculate values from MinTime to EndTime. MinTime must be updated ("dragged behind"
time of calculation) from the caller to allow the catchment to discard cached values.
(Inherited from Catchment.) | |
ModelId |
A overall data interface for cathcment data, containing
data properties that are common for all catchments.
(Inherited from Catchment.)This interface contains data and parameters for setting up a catchment model, and represents as such only setup data. Computational variables and methods are not included in this interface. It can be used to explore data and parameters required when setting up the catchment model. | |
Name | Obsolete. (Inherited from Catchment.) | |
ObservedData |
Observed data. Used for creating calibration plots and for auto-calibration reference data.
(Inherited from Catchment.) | |
Persons |
Number of person equivalent in the catchment,
used with catchment discharge source boundary
(Inherited from Catchment.) | |
ReductionFactor |
Hydrological reduction coeeficient. The runoff reduction factor,
accounts for water losses caused by e.g evapo-transpiration,
imperfect imperviousness, etc. on the contributing area.
Unit: [-]
(Inherited from CatchmentAbstractUrban.) | |
Runoff |
Total runoff from catchment at present time step.
Unit: [m^3/s]
(Inherited from Catchment.) | |
RuntimeDiagnostics |
Get the Diagnostics instance for a Catchment. Used during runtime.
(Inherited from Catchment.) | |
Slope |
Average slope of the catchment
Default: 1
Unit: [-]
| |
SnowMeltCoefficient |
Snow melt coefficient.
Note: the snow melt coefficient is not in SI unit,
because the temperature is assumed to be in degres Celcius.
Unit: [m/degCelcius/s]
(Inherited from CatchmentAbstractUrban.) | |
SnowStorage | (Inherited from CatchmentAbstractUrban.) | |
StartTime | Obsolete.
Start time of catchment data - the earliest time for which the catchment can return data
(Inherited from Catchment.) | |
StormWaterLIDs |
List of Lids
(Inherited from Catchment.) | |
Surfaces |
List of surfaces
| |
TimeOfMaximumFlow | Time of minimum runoff flow (Inherited from Catchment.) | |
TimeOfMinimumFlow | Time of maximum runoff flow (Inherited from Catchment.) | |
TimeStep |
Time step used by the catchment model
(Inherited from Catchment.) | |
TimeStepDry |
Time step used during dry period
Default: 12 hours
| |
TimeStepDryPeriod | Obsolete.
Time step used during dry period
Unit: [s]
Default: 12 hours
| |
TotalAdditionalInflowVolume | Total volume of additional inflow (Inherited from Catchment.) | |
TotalLossVolume | Total infiltration into this catchment (integrated over time) (Inherited from Catchment.) | |
TotalRainfallVolume | Total rainfall on this catchment (integrated over time) (Inherited from Catchment.) | |
TotalRunoffVolume | Total runoff from this catchment (integrated over time) (Inherited from Catchment.) | |
TSBuffer |
Set the TSBuffer to use in this catchment
(Inherited from Catchment.) | |
UseHotStartFile |
Flag telling if initial conditions is taken from a hotstart file
Default: false
(Inherited from Catchment.) | |
UseSnowModule |
True if the snow module is activated.
If True, a temperature time series has to be provided for the catchment.
(Inherited from CatchmentAbstractUrban.) | |
VolumeOnGroundAdded |
Volume of water added to catchment after a time step.
This water will be eventually routed.
(Inherited from Catchment.) | |
YearlyRunoff |
Return dictionary of runoff as a function of year
(Inherited from Catchment.) | |
YearlyStatistics | Dictionary of statistics as a function of year (Inherited from Catchment.) |
Name | Description | |
---|---|---|
Accepts | (Inherited from Catchment.) | |
AddToOffers | (Inherited from Catchment.) | |
ApplyBoundary(ICatchmentSourceBoundary) |
Apply a boundary to this catchment
(Inherited from Catchment.) | |
ApplyBoundary(CatchmentSourceBoundaryTypes, IBoundarySource) |
Apply a boundary to this catchment
(Inherited from CatchmentAbstractUrban.) | |
ApplyBoundary(GlobalSourceBoundaryTypes, GlobalGeoLocatedSource) |
Apply a boundary to this catchment
(Inherited from CatchmentAbstractUrban.) | |
ApplyBoundaryLIDs(GlobalGeoLocatedSource) |
Apply boundary to LID's in catchment
(Inherited from Catchment.) | |
ApplyBoundaryLIDs(ICatchmentSourceBoundary) |
Apply boundary to LID's in catchment
(Inherited from Catchment.) | |
ApplyBoundaryLIDs(CatchmentSourceBoundaryTypes, IBoundarySource) |
Apply boundary to LID's in catchment
(Inherited from Catchment.) | |
ApplyBoundaryLIDs(GlobalSourceBoundaryTypes, GlobalGeoLocatedSource) |
Apply boundary to LID's in catchment
(Inherited from Catchment.) | |
ApplySnowModule |
Apply snow module if activated, and update _actRainDepth.
(Inherited from CatchmentAbstractUrban.) | |
BoundaryTypeIsAdditive |
Return true if boundaries of the specified type are additive; the contributions of
two discharge boundaries add up, while two temperature boundaries do not.
(Inherited from Catchment.) | |
CalculateStatistics |
Calculate statistics on catchment.
(Overrides CatchmentAbstractUrbanCalculateStatistics.) | |
CreateOffersBase |
Create offers, populating _offers and [!:_offerDelegates] (Inherited from CatchmentAbstractUrban.) | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize |
Destructor
(Inherited from Catchment.) | |
FinalizeTimeStep | Finalizes the time step for the catchment. (Overrides CatchmentFinalizeTimeStep.) | |
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetRequiredTypes |
Get the type of boundary required by this catchment
(Inherited from CatchmentAbstractUrban.) | |
GetSurfaceData |
Getter returning data that vary with each surface type.
| |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetYearlyStat |
Get or create a RRYearlyStat object for the specified year.
(Inherited from Catchment.) | |
Initialize |
Initialize Rainfall Runoff model. Sets up static data.
(Overrides CatchmentInitialize(IDiagnostics).) | |
InitializePlugins |
Initializes the cathcment plugins.
(Inherited from Catchment.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
Offers |
List of data types that is offered and can be used in GetValue
(Inherited from Catchment.) | |
PerformTimeStep |
This procedure forwards the calculation with one time step.
(Inherited from Catchment.) | |
Prepare |
Prepare Rainfall Runoff model. Sets up dynamic data so that the model is ready for first time step.
(Overrides CatchmentAbstractUrbanPrepare(DateTime, DateTime, RRParameters, IDiagnostics).) | |
PrepareForTimeStep | Prepares the catchment for the time step. (Overrides CatchmentPrepareForTimeStep.) | |
PreparePlugins |
Prepares the cathcment plugins.
(Inherited from Catchment.) | |
PrepareSource |
Prepare boundary source.
(Inherited from Catchment.) | |
PrepareState |
Prepare state, especially time
(Inherited from Catchment.) | |
ReadPluginStates |
Write current state of plugins
(Inherited from Catchment.) | |
ReadState |
Read state and apply to module.
Returns true if state was successfully read.
| |
Reset |
Reset the catchment and set the current time.
(Inherited from Catchment.) | |
ResetBoundaries |
Remove boundaries applied in previous runs
(Inherited from Catchment.) | |
StateUpdated |
When state has been updated, this method can be called to update derived/computational variables
(Overrides CatchmentStateUpdated.)The only update in the subcatchment that requires this to be called, is when the [!:CatchmentSurface.Runoff] is updated. | |
TakeTimeStep |
This procedure is the one actually calculating the new time step.
(Inherited from Catchment.) | |
TimeOffers |
List of data types that is offered and can be used in GetValue
(Inherited from Catchment.) | |
TimeOfNextUpdate | Obsolete.
Return the time of next update. Used for PostTimeStepEvent event in Catchments.
If a catchment uses variable timesteps, then this function must be overridden!!
(Inherited from Catchment.) | |
TimeValueGetter |
Get value getter for the specified data quantity
(Inherited from Catchment.) | |
ToString | Returns a string that represents the current object. (Inherited from Catchment.) | |
TransferStateToOldBase |
Transfer current state to state N. First thing to do when starting a timestep.
(Inherited from CatchmentAbstractUrban.) | |
TriggerPostTimeStepEvent |
Trigger the PostTimeStepEvent, called at end of a time step.
(Inherited from Catchment.) | |
Type |
The type of catchment: NAM, Urban A etc
(Overrides CatchmentType.) | |
Update |
Update internal state of catchment to time Time()
(Inherited from Catchment.) | |
UpdateCheckPointTime |
Updates check point time.
(Inherited from Catchment.) | |
UpdateRouting | Updates the routing for the catchment. (Overrides CatchmentUpdateRouting.) | |
UpdateStorage | Updates the storage for the catchment. (Overrides CatchmentUpdateStorage.) | |
UpdateTime |
Update time, setting _timeNew to _timeOld + _effectiveTimeStep.
This method will assue that _timeNew does not go beyond _endTime, by
modifying _effectiveTimeStep.
Before calling UpdateTime, be sure that _effectiveTimeStep is set.
(Inherited from Catchment.) | |
UpdateTimeStepUsingCheckPoint |
Updates the present time if it is greater than the check point time.
(Inherited from Catchment.) | |
Validate |
Validate that the catchment is set up correctly
(Overrides CatchmentValidate.) | |
ValidateLIDs |
Validate all LIDs in catchment
(Inherited from Catchment.) | |
ValueGetter |
Get value setter for the specified data quantity
(Inherited from Catchment.) | |
ValueSetter | (Inherited from Catchment.) | |
VolumeInCatchment |
Volume of water stored in catchment after previous time step.
(Overrides CatchmentVolumeInCatchment.) | |
VolumeInCatchmentAtStart |
Volume of water stored in catchment after previous time step.
(Inherited from Catchment.) | |
WritePluginStates |
Write current state of plugins
(Inherited from Catchment.) | |
WriteState |
Write current state of module
|
Name | Description | |
---|---|---|
PostTimeStepEvent |
Event that is triggered every time the catchment has finished
a new time step
(Inherited from Catchment.) |
Name | Description | |
---|---|---|
_actEvaporation |
Actual evaporation
Unit: [m/s]
(Inherited from CatchmentAbstractUrban.) | |
_actEvaporationOld | Actual evaporation at time N, Unit: [m/s]
(Inherited from CatchmentAbstractUrban.) | |
_actInfiltration |
Actual infiltration, loss.
Unit: [m/s]
(Inherited from CatchmentAbstractUrban.) | |
_actInfiltrationOld | Infiltration at time N. Unit: [m/s] (Inherited from CatchmentAbstractUrban.) | |
_actRainDepth |
Actual rain depth.
Unit: [m]
(Inherited from CatchmentAbstractUrban.) | |
_actRainIntensity |
Actual rain intensity.
Unit: [m/s]
(Inherited from CatchmentAbstractUrban.) | |
_additionalFlow |
Additional constant flow added to the total runoff
Unit: [m3/s]
Default: 0
(Inherited from Catchment.) | |
_additionalFlowOld |
Additional constant flow at start of time step
(Inherited from Catchment.) | |
_applyEvaporationOnRain |
When raining,
if true the evaporation is applied at the beginning of the time step,
correcting the net rain (in wet periods).
If false, evaporation is applied at the end of the time step on non-empty storages in the catchment. In dry periods, this is not used. if EvaporationFromTimeSeries is disabled, this is also not used (since the InitialLossRecoveryRate is only applied in dry periods). Historically MIKE has set this to true and MIKE URBAN to false. | |
_area |
Total area of catchment.
Type: Catchment area.
Unit: [m2].
Default: 1e8 (100 km2).
(Inherited from Catchment.) | |
_bInfiltrationAfterRain |
True if infiltration shall occur also after rain,
used in Horton infiltration depth calculation from INI file
Default: True
(Inherited from CatchmentAbstractUrban.) | |
_boundarySourceEvaporation |
Evaporation boundary source
(Inherited from Catchment.) | |
_boundarySourceRainfall |
Rainfall boundary source
(Inherited from Catchment.) | |
_boundarySourceTemperature |
Temperature boundary source
(Inherited from Catchment.) | |
_bSnowModule |
True if the snow module is activated.
(Inherited from CatchmentAbstractUrban.) | |
_checkPointTime |
The most recent check point time.
(Inherited from Catchment.) | |
_effectiveTimeStep |
Time step used in the simulation, it may change. It is set in Prepare
to _timeStep, and can be updated by individual catchment models when required,
i.e. it may differ from _timeStep.
(Inherited from Catchment.) | |
_endTime |
Return the end time of the catchment simulation.
This is set during prepare, and the catchment must
make sure not to run beyond this time.
(Inherited from Catchment.) | |
_evaporationFromForcing |
Evaporation that must be applied during the calculation time step.
unit: [m/s]
(Inherited from CatchmentAbstractUrban.) | |
_evaporationFromTS |
True if evaporation is enabled, and an evaporation boundary has been defined.
(Inherited from CatchmentAbstractUrban.)If set to false the initial recover rate is used during dry periods. Default: False | |
_globalDepthDryLimit |
Global dry depth limit
from INI file
in Kinematic wave: used when InfiltrationAfterRain == true
Default: 1e-6
Unit: [m]
(Inherited from CatchmentAbstractUrban.) | |
_initialLossMax |
Maximum value of InitialLossStorageDepth
Unit: [m]
Default:
(Inherited from CatchmentAbstractUrban.) | |
_initialLossRecoverRate |
Initial loss recover rate
Unit: [m/s]
Default: 5e-5 m/h = 1.2 mm/day
(Inherited from CatchmentAbstractUrban.) | |
_initialLossStorageDepth |
Initial loss storage depth.
Unit: [m]
(Inherited from CatchmentAbstractUrban.) | |
_initialLossStorageDepthOld | Initial loss storage depth at time N. Unit: [m] (Inherited from CatchmentAbstractUrban.) | |
_loss |
Loss, other than infiltration which goes into _actInfiltration (in another unit).
Unit [m3/s]
(Inherited from CatchmentAbstractUrban.) | |
_lossOld | Loss at time N. Unit: [m3/s] (Inherited from CatchmentAbstractUrban.) | |
_maximumFlow | Maximum flow (Inherited from Catchment.) | |
_minimumFlow | Minimum flow (Inherited from Catchment.) | |
_minTime |
Proteced MinTime
(Inherited from Catchment.) | |
_offerDelegates | List of delegates, matching list of _offers (Inherited from Catchment.) | |
_offers | List of datatypes offered in GetValue (Inherited from Catchment.) | |
_potentialEvaporation |
Potential evaporation
Unit: [m/s]
(Inherited from CatchmentAbstractUrban.) | |
_rainfallFromForcing |
Rainfall that must be applied during the calculation time step measured in m/s.
unit: [m/s]
(Inherited from CatchmentAbstractUrban.) | |
_rainfallFromForcingOld | Rainfall that must be applied during the calculation time step measured in m/s, at time N. unit: [m/s] (Inherited from CatchmentAbstractUrban.) | |
_redCoeff |
Hydrological reduction is the runoff reduction factor,
accounts for water losses caused by e.g evapo-transpiration,
imperfect imperviousness, etc. on the contributing area.
Unit: [-]
Default: 0.90
(Inherited from CatchmentAbstractUrban.) | |
_runoff | Total runoff from catchment at present time step. Unit: [m^3/s] (Inherited from Catchment.) | |
_runoffOld | Runoff at time N. Unit: [m3/s] (Inherited from CatchmentAbstractUrban.) | |
_runtimeDiagnostics |
Diagnostics instance for a Catchment. Used during runtime.
(Inherited from Catchment.) | |
_snowStorage |
Snow storage
Unit: [m]
(Inherited from CatchmentAbstractUrban.) | |
_snowStorageOld | Snow storage at time N. Unit: [m] (Inherited from CatchmentAbstractUrban.) | |
_startTime |
Protected start time of catchment data - the earliest time for which the catchment can return data
(Inherited from Catchment.) | |
_stormwaterLIDs |
List of Lids
(Inherited from Catchment.) | |
_temperatureFromForcing |
Temperature that must be applied during the calculation time step.
Note: the temperature is given in degrees Celsius, which is not SI unit!
unit: [degCelcius]
(Inherited from CatchmentAbstractUrban.) | |
_timeNew |
Variable holding information on the latest calculated time
(Inherited from Catchment.) | |
_timeOfLastUpdate |
Last time the state of this catchment was updated (Update(DateTime) was called)
(Inherited from Catchment.) | |
_timeOfMaximumFlow | Time of maximum flow (Inherited from Catchment.) | |
_timeOfMinimumFlow | Time of minimum flow (Inherited from Catchment.) | |
_timeOld |
Variable holding information on the latest calculated time
(Inherited from Catchment.) | |
_timeStep |
Time step used in the simulation, or initial time step if the time step can change.
(Inherited from Catchment.) | |
_totalAdditionalInflowVolume | Total volume of additional inflow (Inherited from Catchment.) | |
_totalLossVolume | Total volume of loss (Inherited from Catchment.) | |
_totalRainfallVolume | Total volume of rain (Inherited from Catchment.) | |
_totalRunoffVolume | Total volume of runoff (Inherited from Catchment.) | |
_tsBuffer |
TSBuffer to use when accessing time series objects
Set in Catchments.Add(). If not set, then the inheritors must
create a TSBuffer before using it.
(Inherited from Catchment.) | |
_useHotStartFile |
Flag telling if initial conditions is taken from a hotstart file
Default: false
(Inherited from Catchment.) | |
_volumeOnGroundAdded | Volume on ground added after UpdateStorage (Inherited from Catchment.) | |
_volumeOnGroundAfterRouting | Volume on ground after routing (Inherited from Catchment.) | |
_volumeOnGroundBeforeRouting | Volume on ground before routing (Inherited from Catchment.) | |
_yearlyStatistics | Dictionary of statistics as a function of year (Inherited from Catchment.) | |
CatchmentPlugins |
List of catchment plugins
(Inherited from Catchment.) | |
Use2016DryTimeStepAlgorithm |
Revert to dry-timestep algorithm from Release 2016
| |
UseReverseDraining | Obsolete.
Revert to old draining order (Release 2016 and earlier). 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. | |
ValueBuffer | (Inherited from Catchment.) |