DamBreak Class

Dambreak class.

Definition

Namespace: DHI.Mike1D.StructureModule
Assembly: DHI.Mike1D.StructureModule (in DHI.Mike1D.StructureModule.dll) Version: 24.0.0.0 (11.1.1.1111)
C#
public sealed class DamBreak : DamBreakBase, 
	IDamBreak, IDamBreakBase, IStructure, IDoubleProxy, IQuantityProxy, 
	IHeadLossStructure, IStructureCrossSectionSetup, IStructureBoundarySetup, IIteratingStructure
Inheritance
Object    Structure    DamBreakBase    DamBreak
Implements
IDoubleProxy, IQuantityProxy, IDamBreak, IDamBreakBase, IHeadLossStructure, IIteratingStructure, IStructure, IStructureBoundarySetup, IStructureCrossSectionSetup

Constructors

DamBreak Constructor

Properties

CrestLevel Level of dam (before breach)
(Inherited from DamBreakBase)
CrestWidth Width of dam (before breach)
(Inherited from DamBreakBase)
dDischargedDownStreamWaterLevel Calculated Discharge derivative with DownStreamWaterLevel. Downstream is relative to the direction of chainage. The value is calculated by SetWaterLevels. Unit: [m^2/s]
(Inherited from Structure)
dDischargedUpStreamWaterLevel Calculated Discharge derivative with UpStreamWaterLevel. Upstream is relative to the direction of chainage. The value is calculated by SetWaterLevels. Unit: [m^2/s]
(Inherited from Structure)
Discharge Calculated Discharge. The value is calculated by SetWaterLevels. Unit: [m^3/s]
(Inherited from Structure)
DownstreamWaterLevel Downstream water level.Downstream refers to the direction of chainage. The water level is set by use of SetWaterLevels Unit: [m]
(Inherited from Structure)
EnableCheckFlowDirectionOscillations Flag indicating whether to use special check and damping for structure discharge oscillating around zero.
(Inherited from Structure)
Erosion Erosion parameters
ExtensionData Property used by (de)serializer, when it can not find proper target for a data field. Support of forward compatible data contracts.
(Inherited from Structure)
FailOnDateTime Date of failure
(Inherited from DamBreakBase)
FailOnHoursAfterStart Hours of simulation start of failure
(Inherited from DamBreakBase)
FailOnWaterLevel Upstream water level of failure
(Inherited from DamBreakBase)
FailureMode Specifies how the dam break failure evolves
(Inherited from DamBreakBase)
FailureTrigger Type of failure trigger
(Inherited from DamBreakBase)
FlowArea Flow area through structure. Used by most (but not all) structures.
(Inherited from Structure)
FlowFactor The discharge (and discharge derivatives) are scaled by the flow factor.
(Inherited from Structure)
HeadLossFreeOverflowNegativeFlow Free overflow factor for negative flow. Default value = 1.
HeadLossFreeOverflowPositiveFlow Free overflow factor for positive flow. Default value = 1.
HeadLossInflowNegativeFlow Inflow head loss factor for positive flow. Default value = 0.5.
HeadLossInflowPositiveFlow Inflow head loss factor for positive flow. Default value = 0.5.
HeadLossOutflowNegativeFlow Free overflow factor for negative flow. Default value = 1.
HeadLossOutflowPositiveFlow Outflow head loss factor for positive flow. Default value = 1.
ID Structure ID
(Inherited from Structure)
IDInUserUnit Used to get a consistent description of the structure. The ID comes in user units. Used e.g. when reporting errors, warnings and hints.
(Inherited from Structure)
Implicit Flag to control if the structure is implicit or explicit. If the structure is explicit (Implicit == false) then the derivatives of the dicharge are always zero. Default value: true
(Inherited from Structure)
InvertLevelDownstream Invert level down stream
(Inherited from DamBreakBase)
InvertLevelUpstream Invert level up stream
(Inherited from DamBreakBase)
Length Length of the structure. Unit: [m] Default value: 0m
(Inherited from Structure)
LimitCrossSectionBreachCenter Position of center of breach relative to the limit cross section
LimitCrossSectionLocation Location of limiting cross section. The limiting cross section limits the size of the breach in the downwar direction. If LimitCrossSectionLocation is set, then the cross section at that location is used to limit the breach (used when the area of the breach is calculated)
LimitCrossSectionTopoID Topo ID of limiting cross section
Location Location property.
(Inherited from Structure)
MaximumIterations Maximum number of iterations in a structure to obtain convergence of the discharge. Default: 100

Currently this is set for all structures from the MaximumIterationsInStructure, but it is prepared for individual structure values.

ReportPath The directory of the text output file is taken from this file path. It is set from the boundary data connection during Initialize().
(Inherited from DamBreakBase)
RunTimeDiagnostics The getter is used to get a list of errors.
(Inherited from Structure)
SideStructureBank Bank side that side-structure is located on

If side structure contains reservoir, and has the Coordinate set, this is not used (and should be set to Undefined).


(Inherited from Structure)
SideStructureReservoir Reservoir at end of side structure. Null if not side structure, or no reservoir is defined
(Inherited from Structure)
SimulationStartTime Simulation start time.

Used in case FailureTrigger is HoursAfterStart.

Also used to write information to the DamBreak state text output file.


(Inherited from DamBreakBase)
SmoothingFactor Exponential smoothing factor for structure discharge. The smoothing factor is the weight of the previous discharge on the new discharge: q = (1 - SmoothingFactor) * qStructure + SmoothingFactor * qPrevious
(Inherited from Structure)
StructureIterationCentering Used when making relaxation when iterating to find the subcritical solution for structures solved using the energy equation. When it equals 1 no relaxation is made.
StructureType Type of structure
(Inherited from Structure)
TopoID String used to identified cross sections
(Inherited from Structure)
Type Structure type, unique for each structure.
(Overrides StructureType)
UpstreamWaterLevel Upstream water level. Upstream refers to the direction of chainage. The water level is set by use of SetWaterLevels Unit: [m]
(Inherited from Structure)
WaterLevelDifferenceMinimal Water level difference below which it is assumed that structure has no flow.
(Inherited from Structure)

Methods

Accepts List of data types that is accepted, i.e., that you can get a ValueSetter for.
(Inherited from Structure)
AddToOffers Add additional offers to structure
(Inherited from Structure)
ControlSetFlowFactor Set flow factor to specified value
(Inherited from Structure)
Description Return a string that describes this structure. Includes structure type and ID
(Inherited from Structure)
Dispose Frees the licenses held.
(Inherited from Structure)
EqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Finish Finish use of dambreak structure.
(Overrides DamBreakBaseFinish)
GetActionInfos List of control action infos
(Inherited from DamBreakBase)
GetControlAction Get control action for the specified id. It always returns one of the ActionControl delegates. It will return null if controlActionId is not valid.

Base implementation for IControllable


(Inherited from DamBreakBase)
GetCurrentValue Get the current value of the control for the specified id.

Base implementation for IControllable


(Inherited from DamBreakBase)
GetHashCodeServes as the default hash function.
(Inherited from Object)
GetTypeGets the Type of the current instance.
(Inherited from Object)
Initialize(IDiagnostics) Set up structure and set runtime diagnostics object
(Inherited from Structure)
Initialize(ICrossSection, ICrossSection, Boolean, IDiagnostics) Set up structure and set runtime diagnostics object
(Overrides DamBreakBaseInitialize(ICrossSection, ICrossSection, Boolean, IDiagnostics))
Offers A list of quantities available from this structure
(Inherited from Structure)
Prepare(HDParameterData, IDiagnostics) Set up structure and set runtime diagnostics object
(Overrides DamBreakBasePrepare(HDParameterData, IDiagnostics))
Prepare(DateTime, HDParameterData, IDiagnostics) Set up structure and set runtime diagnostics object
(Inherited from DamBreakBase)
PrepareTimeStep Prepare structure for time step
(Overrides DamBreakBasePrepareTimeStep(DateTime, DateTime))
ResetControlledState Reset internal state (if any) used by controlling class. Called after a controlling class has performed a control sequence, and simulation is restarted.

Base implementation for IControllable


(Overrides DamBreakBaseResetControlledState)
SetControlStrategyId Set control strategy ID manually.

Base implementation for IControllable


(Inherited from Structure)
Setup(BoundaryData, IDiagnostics) 
Setup(CrossSectionData, IDiagnostics) Set cross section information to structure
SetWaterLevels Sets up- and down- stream water level and forces the calculation of the discharge and its derivatives.
(Overrides StructureSetWaterLevels(Double, Double))
StartBreach Start the breach now (matching time Np1). This can be called to manually start the breach at a certain time. It must be called in between time steps, and not in the middle of a time step
(Inherited from DamBreakBase)
StartBreach(Int32) Start the breach now (matching time Np1). This can be called to manually start the breach at a certain time. It must be called in between time steps, and not in the middle of a time step
(Inherited from DamBreakBase)
ToStringReturns a string that represents the current object.
(Inherited from Object)
UpdatedWaterLevels After a time step (or iteration) has finished, update the discharge to the actual value, based on the final water levels and the discharge derivatives.
(Inherited from Structure)
Validate Generates errors, warnings.
(Overrides StructureValidate)
ValueGetter Get value setter for the specified data quantity
(Overrides DamBreakBaseValueGetter(Int32))
ValueSetter Get value setter for the specified data type
(Inherited from Structure)

Extension Methods

Getter

From the proxy, return an FuncTResult for the specified quantity.

It returns the first quantity of that type that is offered, and null if the quantity is not offered.


(Defined by ProxyExtensions)
Getters Returns a set of FuncTResult for the quantity. We can return several quantities with the same id (usually they will differ in their description). If the quantity is not offerent, an empty list is returned.
(Defined by ProxyExtensions)
GettersFraction Returns a set of FuncT, TResult for the quantity. We can return several quantities with the same id (usually they will differ in their description). If the quantity is not offerent, an empty list is returned.
(Defined by ProxyExtensions)
GetterUnboxed

From the proxy, return an FuncTResult for the specified quantity.

It returns the first quantity of that type that is offered, and null if the quantity is not offered.


(Defined by ProxyExtensions)
Initialize Helper function for some unit tests. Do not use.
(Defined by StructureExtensions)
Initialize Helper function for some unit tests. Do not use.
(Defined by StructureExtensions)
IsSideStructure Returns true if the structure is a side structure
(Defined by StructureExtensions)
Setter

From the proxy, return an IDoubleGetSet for the specified quantity.

It returns the first quantity of that type that is accepted, and null if the quantity is not accepted.


(Defined by ProxyExtensions)

See Also