An Observation node is used to attach time series of observed or reference data to a node in the network. These are not used in the simulation core, but are available for visualization, validation, or post-processing.
Observation nodes can be linked to Basins and connector nodes. This is done with an observation link, whose direction is always from the Observation node to the observed node. An Observation node connects to at most one other node, but may carry multiple variables for that node.
1 Tables
1.1 Time
Code
include("../../../utils/gen_docs_table.jl")table_from_schema( Ribasim.Schema.Observation.Time; restrictions =Dict(:variable =>"name of the Ribasim variable being observed (e.g. \"level\", \"flow_rate\")",:value =>"unit equal to that of the Ribasim variable", ),)
column
type
unit
optional
restriction
node_id
Int32
-
x
-
variable
String
-
x
name of the Ribasim variable being observed (e.g. “level”, “flow_rate”)
time
DateTime
-
x
-
value
Float64
various
x
unit equal to that of the Ribasim variable
See Results for the variables that can be observed.
2 Examples
This example shows two Observation nodes (#1 and #2) observing a Basin and a TabulatedRatingCurve. The table below shows the time series for both nodes:
node_id
variable
time
value
1
level
2020-01-01 00:00:00
0.5
1
level
2020-02-01 00:00:00
0.3
1
level
2020-03-01 00:00:00
0.4
2
flow_rate
2020-01-01 00:00:00
0.0
2
flow_rate
2020-02-01 00:00:00
0.05
2
flow_rate
2020-03-01 00:00:00
0.1
3 Notes
Observation nodes are not included in the simulation graph and do not affect results.
They are intended for reference, validation, or visualization purposes only.
Flow links cannot be observed directly; link to the connector node with variable flow_rate instead.
Non-conservative nodes don’t have flow_rate; specify either inflow_rate or outflow_rate for e.g. Basin or UserDemand.