Click or drag to resize

DHI.Mike1D.BoundaryModule Namespace

The boundary model contains boundary setup parameters. The boundary module handles as well open boundary conditions as forcings, for as well HD, AD, ST as RR simulations.
Classes
  ClassDescription
Public classAbstractBoundaryItem
Many common tasks for an IBoundaryItem are handled by the AbstractBoundaryItem. It handles: It is up to the class that extends the AbstractBoundaryItem to make sure to utilize above functionality in the GetValue call as described below. There are some helper functions in this class for example to get the soft start factor for a given date/time.
Public classAbstractLocationSourceBoundary
Class containing common code for locations for a source, which can contain as well a point locations as a node locations. It also handles the individual scalefactor that each location can have.
Public classAbstractSourceBoundary
Many common tasks for an IBoundarySource are handled by the AbstractSourceBoundary. All MIKE 1D boundary sources extent from this. Current subclasses include

The AbstractSourceBoundary has a list of boundary items, Items

Public classBoundaryAdaptiveProbeWrapper
A helper class for implementing the IBoundaryAdaptive interface for a IBoundarySource by probing the values.

Probing will not find all extreme values, and hence it is more accurate to implement the IBoundaryAdaptive directly and use knowledge of the boundary data, instead of being based on probing.

Public classBoundaryAdaptiveTimeEvaluator
Helper class to calculate preferred time step based on a list of times and a list of values. This class holds the time data only, and can be reused if more value series share the same time axis.
Public classBoundaryAdaptiveTimeSeriesEvaluator
Helper class to calculate preferred time step based on a list of times and a list of values.

This class is intended for cases where only one value serie use this time axis.

Public classBoundaryAdaptiveTimeValueSeriesEvaluator
Helper class to calculate preferred time step based on a list of times and a list of values.

This class is intended for cases where more than one value series share the same time axis.

Public classBoundaryData
The BoundaryData class is the main entrance to boundary data access. It handles boundary conditions and sources.
Public classBoundaryDataXmlBridge
Bridge for saving and reading boundary data to/from xml.

This will only store the boundary data component.

Public classBoundaryExtensions
Utility class, containing extension methods for classes in the BoundaryModule namespace
Public classBoundaryItemConstant
Constant boundary item implementation.
Public classBoundaryItemDDoubleGetter
A boundary item that retrieves its value through a delegate of the type DDoubleTimeGetter. Inherits AbstractBoundaryItem supporting scalefactor, application interval and soft start.
Public classBoundaryItemHDADMultiply
A boundary item consisting of two boundary items that are multiplied together

This boundary item is used by MIKE 11 load, setup as HD inflow + AD concentration, where the HD inflow is ignored, but the AD is included, effectively modelling a load type of AD boundary.

Public classBoundaryItemPeriodicMonthly
A boundary item with constant values in each month
Public classBoundaryItemQH
Q(h) boundary item. Access to a Q(h) table. Gets the water level via a DDoubleGetter
Public classBoundaryItemRRResult
Rainfall runoff boundary item.
Public classBoundaryItemSWQ
SWQ boundary item implementation, placeholder for the SWQId and not a "real" IBoundaryItem.

Only applicable for component items of a CatchmentComponentSourceBoundary. Requires that the SWQId is present in the

RainfallRunoffData.Pollutants
.

Public classBoundaryItemTableConcentration
Table concentration item implementation.
Public classBoundaryItemTimeSeries
Time series boundary item. Generel access to time series items, defined by a full path name, and an item number.
Public classBoundaryItemTimeSeriesBase
Time series boundary item. Generel access to one time series item.

This is a base class for other time series classes, handling the time and values of a time series, time interpolation etc.

Public classBoundarySourceComponent
Boundary source for a component, containing either a concentration type source, a load type source, or a specific quantity.

The component sources are used by other than inflow boundaries, as e.g. a wind having a direction and a velocity component. These special types of component sources may require the components in a special order. They are identified by their Quantity value.

The connection to the AD components is defined by the ComponentId value. If that is null or empty, it is not an AD component.

Public classBoundarySourceComponentUnitConverter
Class for unit conversion of component boundary values
Public classCatchmentComponentResultFile
Component result file, for adding AD and sediment component loads from result file to network.

It will only add component load if the HD result file does also contain that catchment. I.e. if component result file contains data from more catchments than the HD result file, the additional catchments will be ignored.

Public classCatchmentComponentSourceBoundary
A special kind of boundary, only used when AD module is enabled, which provides component concentrations for catchment inflows.
Public classCatchmentGriddedWeights
For a catchment, specifying which cells of a grid that is inside this catchment, and for each cell specifying the weight for calculating the average cell contribution.

If the Weights is null, the weights will be calculated automatically. To have a catchment use this grid, and have the weights calculated automatically, then only specify the CatchmentId.

Public classCatchmentResultFile
Catchment result file, containing rainfall runoff and/or catchment discharge.
Public classCatchmentSourceBoundaries
Class implementing a list of ICatchmentSourceBoundary's Required for generic list COM interop
Public classCatchmentSourceBoundary
Catchment source boundary. All catchments are identified by a catchment ID, string.
Public classDistributedSourceBoundaries
Class implementing a list of IDistributedSourceBoundary's Required for generic list COM interop
Public classDistributedSourceBoundary
A distributed source is a source that is applied on a part of the network. It can be a combination of LocationSpans and Links. TODO: Check whether the links are necessary or whether they are just a simpel version of a LocationSpan.
Public classGlobalGeoLocatedSource
A global source that has a geographical position associated with it.

A global source can have several geo-located sources, and the closest geo-located source can be used.

Public classGlobalSourceBoundaries
Class implementing a list of IGlobalSourceBoundary's Required for generic list COM interop
Public classGlobalSourceBoundary
A global source that contributes to the entire network A GeoPoint can be provided, and more than one source of the same type is then valid. The closest source should then be used.
Public classGriddedSource
A gridded source is specifying a 2D grid of source values.

Use the UseGlobally to apply this boundary to all catchments overlapping the grid.

Specify explicitly the catchments that should use this grid in the CatchmentGriddedWeights. It is optional to provide the Weights, if not specified, weights are calculated automatically.

Public classGriddedValueBoundarySource
Helper class, implementing an IBoundarySource for a boundary extracting weighted values directly from a grid.

Using the GriddedValueBuffer as value provider.

Public classGriddedValueBuffer
Class for buffering grid (dfs2) values, loading only a few values at a time, and calculate a time series value based on the weights.
Public classGriddedWeight
Cell weight, indices and weight value
Public classGridDfs2Data
Class for accessing dfs2 data in the GridToTsProcessor.
Public classGridToTsProcessor
Class that calculates time series from a grid series file and a set of catchment weights.
Public classListIBoundaryItems
Class implementing a list of IBoundaryItem's Required for generic list COM interop
Public classOpenSourceBoundaries
Class implementing a list of IOpenSourceBoundary's Required for generic list COM interop
Public classOpenSourceBoundary
An open source boundary is at the boundary of the network, (compared to a point source boundary which can be situated anywhere in the network)
Public classPointSourceBoundaries
Class implementing a list of IPointSourceBoundary's Required for generic list COM interop
Public classPointSourceBoundary
A source located at a specific point in the network. A PointSourceBoundary is always an inflow (a forcing).
Public classQhRelation
QH relation
Public classStructureSourceBoundary
Structure source boundary. All catchments are identified by a structure ID which is a string. If StructureSourceBoundaryType is StructureSourceBoundaryTypes.DamBreak, then the boundary contains three components: 1) Breach level, 2) Breach width, and 3) Breach slope
Interfaces
  InterfaceDescription
Public interfaceIAbstractLocationSourceBoundary
Interface for an AbstractLocationSourceBoundary. Adding interfaces for point and node locations. To be extended.
Public interfaceIAdvancedBoundaryItem
An advanced boundary item adds functionality for scale factor, soft start (gradual start-up) and application interval to the standard IBoundaryItem
Public interfaceIBoundaryAdaptive
Interface handling adaptive time step evaluation. Implemented by as well boundary items as boundary sources
Public interfaceIBoundaryData
This is the interface for the BoundaryData class Note: Needed for COM interop only - do not use from .Net
Public interfaceIBoundaryItem
A general BoundaryItem interface. AbstractBoundaryItem provides a general implementation of IBoundaryItem.
Public interfaceIBoundaryItemConstant
Interface for a constant boundary item
Public interfaceIBoundarySource
Base interface for all BoundarySources
Public interfaceIBoundaryValueModifier
Generic interface for modifying boundary values on the fly.
Public interfaceIBoundaryWithComponents
Interface for boundaries with components
Public interfaceICatchmentSourceBoundaries
Interface for a list of ICatchmentSourceBoundary's Required for generic list COM interop
Public interfaceICatchmentSourceBoundary
Interface for a CatchmentSourceBoundary. Interfaces for Cathcment ID and scalefactors.
Public interfaceIDistributedSourceBoundaries
Interface for a list of IDistributedSourceBoundary's Required for generic list COM interop
Public interfaceIDistributedSourceBoundary
Interface for a DistributedSourceBoundary
Public interfaceIGlobalSourceBoundaries
Interface for a list of IGlobalSourceBoundary's Required for generic list COM interop
Public interfaceIGlobalSourceBoundary
Interface for a GlobalSourceBoundary.

A global source boundary consist of a number of items that are geographically located, stored in the GeoLocatedSources list. If there is only one global item, it must be the first one, and then the GeoLocatedSources needs not have a geo-point, GeoPoint, and UseGeoLocatedSources must return false. If UseGeoLocatedSources returns false, the first item in the GeoLocatedSources is used.

To get the value at a given location, it is up to the user/engine whether to take the closest geo-located item, to interpolate in them or do something else.

You can define a number of items that overrides the global value at certain areas in the network, these are stored in the DistributedOverrides list, that each are an IDistributedSourceBoundary.

Public interfaceIGridData
Interface for a generic type of grid, used by the GridToTsProcessor
Public interfaceIListIBoundaryItems
Interface for a list of IBoundaryItem's Required for generic list COM interop
Public interfaceIOpenSourceBoundaries
Interface for a list of IOpenSourceBoundary's Required for generic list COM interop
Public interfaceIOpenSourceBoundary
Interface to a OpenSourceBoundary Note: Needed for COM interop only - do not use from .Net
Public interfaceIPointSourceBoundaries
Interface for a list of IPointSourceBoundary's Required for generic list COM interop
Public interfaceIPointSourceBoundary
Interface to a PointSourceBoundary
Public interfaceIStructureSourceBoundary
Interface for a StructureSourceBoundary. Interfaces for Strucure location.
Enumerations
  EnumerationDescription
Public enumerationAbstractSourceBoundaryDataMissing
Public enumerationBoundaryItemTypes
Currently supported boundary item types. Each has its own class implementing its functionality.
Public enumerationBoundarySourceComponentType
For Component sources, specifies which type of source it is
Public enumerationBoundarySourceTypes
Types of Boundary sources
Public enumerationCatchmentSourceBoundaryTypes
Type of Catchmentsource boundary
Public enumerationComponentScope
Enumeration specifying where component belongs
Public enumerationDistributedSourceBoundaryTypes
Type of distributed source inflow
Public enumerationGlobalSourceApplicationTypes
Enumeration specifying where a global source is applied
Public enumerationGlobalSourceBoundaryTypes
Type of global source boundaries.
Public enumerationGriddedSourceWeightCalculationType
Public enumerationOpenSourceBoundaryTypes
Types of opensource boundaries
Public enumerationPointSourceBoundaryInflowTypes
Type of inflow. Used to limit the total inflow of a specific type.
Public enumerationPointSourceBoundaryTypes
Type of inflow. Used to limit the total inflow of a specific type.
Public enumerationSoftstartTypes
Types of softstart
Public enumerationStructureSourceBoundaryTypes
Type of Catchmentsource boundary
Public enumerationTypeOfDistribution
Defines how a distributed source distributes its source value.