USBPRBridge Class

USBPRBridge structures, supporting the following type of tables:
  • Q = f(Hups, Hdws)
The arguments (RowHeader) and (ColumnHeader) will always contain water levels, while the output (Table) will be discharge values.

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 class USBPRBridge : BridgeBase, 
	IBridgeStructure, IStructure, IDoubleProxy, IQuantityProxy, ILinearZeroVariation
Inheritance
Object    Structure    AbstractHeadLossStructure    BridgeTabulated    BridgeBase    USBPRBridge
Implements
IDoubleProxy, IQuantityProxy, IBridgeStructure, ILinearZeroVariation, IStructure

Constructors

USBPRBridge Constructor method for the Bridge structure
USBPRBridge(String) Constructor method for the Bridge structure

Properties

Alpha Alpha tables
(Inherited from BridgeBase)
BackRat Back water ratio table
(Inherited from BridgeBase)
BaseCoef BaseCoefficient tables
(Inherited from BridgeBase)
Beta Beta tables
(Inherited from BridgeBase)
Bottomlevel
(Inherited from BridgeBase)
BridgeGeometry BridgeGeometry
(Inherited from BridgeBase)
BridgeOverflow Overflow
(Inherited from BridgeBase)
BridgeSubmergence Submergence
(Inherited from BridgeBase)
BridgeTableFilePath Holds the filename and path of the bridge table file
(Inherited from BridgeTabulated)
ColumnHeader Holds the header for the columns, the upstream water levels. Type : Water level Unit: [meter] Default: 0.0
(Inherited from BridgeTabulated)
ConvectionTermReductionCoefficient Reduction coefficient for convection terms (kinetic energy terms) in energy equation. This coefficient is applied when the difference between inflow kinetic energy and outflow kinetic energy (or more precisely, velocity head difference measured in meters) becomes larger than the total head loss. 0 corresponds to no reduction (default) whereas 1 corresponds to removing the upstream and downstream convective terms.
(Inherited from AbstractHeadLossStructure)
ConvTubeNumber Number of tubes for conveyance tube analyses.
(Inherited from BridgeBase)
CriticalFlow Flag indicating of flow is critical through the structure, and the head loss/energy loss equation is not active.
(Inherited from AbstractHeadLossStructure)
CriticalFlowConditions Critical flow conditions depending on flow direction.
(Inherited from AbstractHeadLossStructure)
CriticalFlowConditionsCalculation Flag specifying that calculations are performed when generating critical flow condition tables.
(Inherited from AbstractHeadLossStructure)
CriticalFlowConditionsNegative Critical flow conditions for negative flow.
(Inherited from AbstractHeadLossStructure)
CriticalFlowConditionsPositive Critical flow conditions for positive flow.
(Inherited from AbstractHeadLossStructure)
CulvertID
(Inherited from BridgeBase)
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)
Delhs Linear flow variation. For water level differences less than delhs use a linear Q variation between h1-h2=delhs and h1-h2=0. This is to avoid stability problems for small water level differences where dQdh goes to infinity. Unit: [m] Default: 0.01
(Inherited from BridgeTabulated)
dHeadLossDischarge Head loss derivative with respect to discharge
(Inherited from AbstractHeadLossStructure)
Discharge Calculated Discharge. The value is calculated by SetWaterLevels. Unit: [m^3/s]
(Inherited from Structure)
DischargeCriticalForTableCalculation Critical discharge when performing table calculations.
(Inherited from AbstractHeadLossStructure)
DischargeEnergyEquation Discharge calculated after solving energy equation
(Inherited from AbstractHeadLossStructure)
DisCoefType
(Inherited from BridgeBase)
DownstreamCrossSection Downstream cross section data. The cross section data is the processed level, with, area.
(Inherited from AbstractHeadLossStructure)
DownstreamExternalEnergyLevel Flag indicating to use downstream external energy level.

For false the downstream energy level is calculated as part of the internal solution. It is more stable to set DownstreamExternalEnergyLevel to true.


(Inherited from AbstractHeadLossStructure)
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)
Dykes1 Dykes1 tables
(Inherited from BridgeBase)
Dykes2 Dykes2 tables
(Inherited from BridgeBase)
Eccentricity Eccentricity tables
(Inherited from BridgeBase)
EnableCheckFlowDirectionOscillations Flag indicating whether to use special check and damping for structure discharge oscillating around zero.
(Inherited from Structure)
EnchroachmentRegenerate Boolean telling if Enchroachment regenerate
(Inherited from BridgeBase)
Entrance Entrance tables
(Inherited from BridgeBase)
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)
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)
Froude Froude tables
(Inherited from BridgeBase)
GenerateCriticalFlowConditions Flag specifying to generate critical flow condition tables when the whole composite structure is taken into account.
(Inherited from AbstractHeadLossStructure)
GridSizeDownStream Slotsize of table downstream
(Inherited from BridgeBase)
GridSizeUpStream Slotsize of table upstream
(Inherited from BridgeBase)
HeadLoss Calculated Head loss for the current flow conditions. Unit: [m]
(Inherited from AbstractHeadLossStructure)
HeadLossCoefficient Calculated Head loss coefficient for the current flow conditions. Unit: [1/m^4]
(Inherited from AbstractHeadLossStructure)
HeadLossMode Flag indicating whether to use head loss calculations.
(Inherited from AbstractHeadLossStructure)
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)
invert
(Inherited from BridgeBase)
InvertLevelDownstream Invert level down stream
(Inherited from BridgeBase)
InvertLevelUpstream Invert level up stream
(Inherited from BridgeBase)
IsAsymmetric Boolean telling whether to use IsAsymmetric
(Inherited from BridgeBase)
IsCriticalForTableCalculation Flag specifying that structure is critical when performing composite structure critical flow conditions calculations.
(Inherited from AbstractHeadLossStructure)
IsMultiWayOpen Boolean telling whether to use IsMultiWayOpen
(Inherited from BridgeBase)
Length Length of the structure. Unit: [m] Default value: 0m
(Inherited from Structure)
Location Location property.
(Inherited from Structure)
MaximumWaterDepthAboveXSFactor Maximum water depth above cross-section factor
(Inherited from BridgeBase)
Method Enum BridgeType defining the Bridge method used
(Inherited from BridgeBase)
ModifyWaterLevels Flag specifying to modify water levels by friction loss.
(Inherited from AbstractHeadLossStructure)
NumberOfCols Number of columns in the table
(Inherited from BridgeTabulated)
NumberOfRows Number of rows in the table
(Inherited from BridgeTabulated)
PartOfCompositeFlow Part of the flow in a parallel structure that passes through this structure.
(Inherited from AbstractHeadLossStructure)
PartOfCompositeFlowMinimal Limit for part of composite flow below which it is assumed that structure has no flow.
(Inherited from AbstractHeadLossStructure)
Piers Piers tables
(Inherited from BridgeBase)
Residual Residual after solving the energy equation.

Relevant only for Levenberg-Marquardt type of solvers.


(Inherited from AbstractHeadLossStructure)
Road1 Road1 tables
(Inherited from BridgeBase)
Road2 Road2 tables
(Inherited from BridgeBase)
RowHeader Holds the header for the rows, the downstream water levels. Type : Water level Unit: [meter] Default: 0.0
(Inherited from BridgeTabulated)
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)
Skew Skew tables
(Inherited from BridgeBase)
SkipInitialGuess Flag specifying to skip initial guess in the energy equation solver.
(Inherited from AbstractHeadLossStructure)
SkipPartOfCompositeFlow Flag specifying to use part of composite flow equal to one for all structures in the composite structure.
(Inherited from AbstractHeadLossStructure)
SmoothBridgeSurface
(Inherited from BridgeBase)
SmoothBridgeSurfaceIterations
(Inherited from BridgeBase)
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)
SolverMethod Solution method for solving the energy equations.
(Inherited from AbstractHeadLossStructure)
StationaryStateCalculation Flag specifying that stationary state calculations are performed.
(Inherited from AbstractHeadLossStructure)
StructureType Type of structure
(Inherited from Structure)
SubFac SubFac tables
(Inherited from BridgeBase)
Submerged Submerged tables
(Inherited from BridgeBase)
Table Holds the discharge table Type : Discharge Unit: [m3/s]
(Inherited from BridgeTabulated)
TableIteration Variable defining maximum number of iterations for precalculating tables.
(Inherited from BridgeBase)
TablesGenerated Boolean telling if the tables are generated
(Inherited from BridgeBase)
TableSmooth Holds the smoothed table Type : Water level or discharge depending on the chosen calculation mode Unit: [m3/s] or [meter] Default: 0.0
(Inherited from BridgeBase)
TableType Table input filetype 0 - DFS2 1 - ASCII Default: 0
(Inherited from BridgeTabulated)
Theta Theta tables
(Inherited from BridgeBase)
Toplevel
(Inherited from BridgeBase)
TopoID String used to identified cross sections
(Inherited from Structure)
Type Structure type, unique for each type structure.
(Overrides BridgeTabulatedType)
UpstreamCrossSection Upstream cross section data. The cross section data is the processed level, with, area.
(Inherited from AbstractHeadLossStructure)
UpstreamExternalEnergyLevel Flag indicating to use upstream external energy level.

For false the upstream energy level is calculated as part of the internal solution. It is more stable to set UpstreamExternalEnergyLevel to true.


(Inherited from AbstractHeadLossStructure)
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)
UseAlpha The velocity distribution coefficient for bridge calculations is set to unity per default. The coefficient may be calculated based on conveyance distribution. Default value: false
(Inherited from BridgeBase)
UseEccentricity Boolean telling whether to use Eccentricity
(Inherited from BridgeBase)
UseFHWAReachLength The reach length for the FHWA method is determined based on an equal conveyance tube analysis. if the reach length should only be based on the physical distance from the adjacent cross section to the bridge the variable 'USE_FHWA_REACH_LENGTH' may be used.
(Inherited from BridgeBase)
UseFrictionFromHD Use friction in energy equation from HD module.
(Inherited from AbstractHeadLossStructure)
UseOverflow Boolean telling whether to use overflow
(Inherited from BridgeBase)
UsePiers Boolean telling whether to use Piers
(Inherited from BridgeBase)
UsePiersPiles Boolean telling wheter to use Piers Piles
(Inherited from BridgeBase)
UsePreProcessedBridgeTable Online or offline bridge equations. (calculate on the fly or read from table) Default: true
(Inherited from BridgeBase)
UseSkewness Boolean telling whether to use Skewness
(Inherited from BridgeBase)
UseSpurDykes Boolean telling whether to use SpurDykes
(Inherited from BridgeBase)
UseSubmergence Boolean telling whether to use submergence
(Inherited from BridgeBase)
WaterLevelDatum Datum to be applied to all water levels specified in the table. Type: water level Unit: [meter] Default: 0.0
(Inherited from BridgeTabulated)
WaterLevelDifferenceMinimal Water level difference below which it is assumed that structure has no flow.
(Inherited from Structure)
WeirID
(Inherited from BridgeBase)
ZeroFlow Flag indicating no flow through structure (upstream water level below invert level).
(Inherited from AbstractHeadLossStructure)

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)
AllocateTable Allocate table of certain sizes
(Inherited from BridgeBase)
ApplyFlowFactor Applies flow factor to discharge and it's derivatives
(Inherited from Structure)
CheckBridgeCombinations Check bridge combinations
(Inherited from BridgeBase)
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)
DetermineBridgeFlow Determines the bridge flow for given upstream and downstream water level indices col and row.
(Inherited from BridgeBase)
DetermineCriticalPartOfCompositeFlow Determines part of composite flow for structure, which was marked as having critical flow with initial estimate of part of composite flow.
(Inherited from AbstractHeadLossStructure)
Dispose Frees the licenses held.
(Inherited from Structure)
EqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Evaluate(StructureParametersFromHD) Sets up- and down-stream water level and discharge and calculates the headloss and its derivatives.
(Inherited from AbstractHeadLossStructure)
Evaluate(Double, Double, Double) Sets up- and down-stream water level and discharge and calculates the headloss and its derivatives.
(Inherited from BridgeTabulated)
ExplicitStructureSupport DEBUG: This method is called from Validate() if _implitcit == false to check if the structure supports being Explicit. Once all structures support explicit operation this method can be deleted.
(Inherited from Structure)
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
GenerateBridgeTable Generates 2D table representing discharge dependence on upstream/downstream water levels.
(Inherited from BridgeBase)
GetActionInfos List of control action infos
(Inherited from Structure)
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 Structure)
GetCurrentValue Get the current value of the control for the specified id.

Base implementation for IControllable


(Inherited from Structure)
GetHashCodeServes as the default hash function.
(Inherited from Object)
GetPartOfCompositeFlowEstimateFactor Provides an estimate factor for part of composite flow. Presently it is upstream structure cross-section to upstream cross-section flow area ratio.
(Inherited from BridgeTabulated)
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
(Inherited from BridgeBase)
MemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Offers A list of quantities available from this structure
(Inherited from Structure)
OnDeserializedMethod When deserialized, the BridgeBase class needs to be re-established as it was before serialization.
(Inherited from BridgeBase)
Prepare(HDParameterData, IDiagnostics) Set up structure and set runtime diagnostics object
(Inherited from BridgeBase)
Prepare(DateTime, HDParameterData, IDiagnostics) Set up structure and set runtime diagnostics object
(Inherited from Structure)
ReadBridgeTable Read bridge table from file
(Inherited from BridgeTabulated)
ReadBridgeTableASCII Read bridge table from file
(Inherited from BridgeTabulated)
ReadBridgeTableDFS2 Read bridge table from file
(Inherited from BridgeTabulated)
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


(Inherited from Structure)
SetControlStrategyId Set control strategy ID manually.

Base implementation for IControllable


(Inherited from Structure)
SetInputWaterLevels Set the _upstreamWaterLevel, _downstreamWaterLevel and _flowDir
(Inherited from Structure)
SetInvertLevel Set up invert level
(Inherited from BridgeBase)
Setup(IStructureCollection, IDiagnostics) Set structure collection information to structure
(Inherited from BridgeBase)
Setup(IStructureCollection, CrossSectionData, IDiagnostics) Set structure collection information to structure including cross sections.
(Inherited from BridgeBase)
SetWaterLevels(StructureParametersFromHD) Sets up- and down-stream water level and forces the calculation of the discharge and its derivatives.
(Inherited from AbstractHeadLossStructure)
SetWaterLevels(Double, Double) Sets up- and down- stream water level and forces the calculation of the discharge and its derivatives.

Override in extending classes to do something useful.


(Inherited from AbstractHeadLossStructure)
SetWaterLevels(Double, Double, Double, Double) Sets up- and down-stream water level and forces the calculation of the discharge and its derivatives.
(Inherited from AbstractHeadLossStructure)
SetZeroFlow Sets the conditions for zero flow
(Inherited from AbstractHeadLossStructure)
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 Validation of data for a BridgeBase structure.
(Inherited from BridgeBase)
ValueGetter Get value setter for the specified data quantity
(Inherited from BridgeBase)
ValueSetter Get value setter for the specified data type
(Inherited from Structure)

Fields

_accepts List of quantities that are accepted
(Inherited from Structure)
_columnHeaderColumnHeader
(Inherited from BridgeTabulated)
_controlStategyId If the structure is being controlled, then _controlStategyId contains the ID of the active control strategy
(Inherited from Structure)
_crossSection1 Help variable for the upstream cross section relative to the actual flow.
(Inherited from AbstractHeadLossStructure)
_crossSection2 Help variable for the downstream cross section relative to the actual flow.
(Inherited from AbstractHeadLossStructure)
_downstreamCrossSection Downstream cross section data. The cross section data is the processed level, with, area.
(Inherited from AbstractHeadLossStructure)
_downstreamWaterLevel Downstream water level, as set by SetWaterLevels(Double, Double) Unit: [m]
(Inherited from Structure)
_dqdhDownstream The derivative of flow through the structure with downstream water level. The flow is calculated in the derived classes when the SetWaterLevels method is called. Unit: [m2/sec]
(Inherited from Structure)
_dqdhUpstream The derivative of flow through the structure with upstream water level. The flow is calculated in the derived classes when the SetWaterLevels method is called. Unit: [m2/sec]
(Inherited from Structure)
_flowArea Flow area through structure. Used by most (but not all) structures.
(Inherited from Structure)
_flowDir FlowDir is used to determine which parameters to use for the flow calculations. Derived by the SetWaterLevels(Double, Double).
(Inherited from Structure)
_flowRegime Flow regime for discharge mode.
(Inherited from AbstractHeadLossStructure)
_flowRegimeHeadLoss Flow regime for head loss mode.
(Inherited from AbstractHeadLossStructure)
_h1 Water level at cross section upstream (relative to actual flow direction)
(Inherited from AbstractHeadLossStructure)
_h2 Water level at cross section downstream (relative to actual flow direction)
(Inherited from AbstractHeadLossStructure)
_id Identification name of the structure
(Inherited from Structure)
_implicit If _implicit == false, then the derivatives are always zero. Default value: true.
(Inherited from Structure)
_location Location in the network
(Inherited from Structure)
_offers List of quantities that are offered
(Inherited from Structure)
_parameters A class which contains parameters passed from HD module to Structure module during the run of the simulation.
(Inherited from AbstractHeadLossStructure)
_partOfCompositeFlow Part of the flow in a parallel structure that passes through this structure.
(Inherited from AbstractHeadLossStructure)
_q Flow through the structure. The flow is calculated in the derived classes when the SetWaterLevels method is called. Unit: [m3/sec]
(Inherited from Structure)
_qEnergyEquation Discharge calculated after solving energy equation
(Inherited from AbstractHeadLossStructure)
_qSaintVenant Discharge leading to a head loss (used when HeadLossMode=true)
(Inherited from AbstractHeadLossStructure)
_qSaintVenantFull Discharge leading to a head loss without part of composite flow (used when HeadLossMode=true)
(Inherited from AbstractHeadLossStructure)
_rowHeaderRowHeader
(Inherited from BridgeTabulated)
_runTimeDiagnostics Diagnostics are written into this Diagnostics during calculations. Set during Initialize(IDiagnostics)
(Inherited from Structure)
_tableTable
(Inherited from BridgeTabulated)
_topoID Identification used to find referenced cross sections
(Inherited from Structure)
_upstreamCrossSection Upstream cross section data. The cross section data is the processed level, with, area.
(Inherited from AbstractHeadLossStructure)
_upstreamWaterLevel Upstream water level, as set by SetWaterLevels(Double, Double) Unit: [m]
(Inherited from Structure)
_v1 Velocity estimate upstream relative to actual flow direction of the structure.
(Inherited from AbstractHeadLossStructure)
_v2 Velocity estimate at cross section downstream (relative to actual flow direction).
(Inherited from AbstractHeadLossStructure)
_waterLevelDatumWaterLevelDatum
(Inherited from BridgeTabulated)
_zeroFlow Flag indicating no flow through structure (upstream water level below invert level).
(Inherited from AbstractHeadLossStructure)

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