Functional (with multiple values)

List 50 Example of a functional (with multiple values) type condition definition
1<Item name="discharge_and_elev" caption="Discharge and Water Elevation time series">
2  <Definition valueType="functional" >
3    <Parameter name="time" valueType="real" caption="Time" />
4    <Value name="discharge" valueType="real" caption="Discharge" />
5    <Value name="elevation" valueType="real" caption="Water Elevation" />
6  </Definition>
7</Item>
../_images/widget_example_func_multi.png

Figure 57 Widget example of a functional (with multiple values) type condition

List 51 Code example to load a functional (with multiple values) type condition (for calculation conditions and grid generating conditions)
 1integer:: ier, discharge_size
 2double precision, dimension(:), allocatable:: time_value
 3double precision, dimension(:), allocatable:: discharge_value, elevation_value
 4
 5! Read size
 6call cg_iric_read_functionalsize(fid, "discharge", discharge_size, ier)
 7! Allocate memory
 8allocate(time_value(discharge_size))
 9allocate(discharge_value(discharge_size), elevation_value(discharge_size))
10! Load values into allocated memory
11call cg_iric_read_functionalwithname(fid, "discharge", "time", time_value)
12call cg_iric_read_functionalwithname(fid, "discharge", "discharge", discharge_value)
13call cg_iric_read_functionalwithname(fid, "discharge", "elevation", elevation_value)
List 52 Code example to load a functional (with multiple values) type condition (for boundary condition)
 1integer:: ier, discharge_size
 2double precision, dimension(:), allocatable:: time_value
 3double precision, dimension(:), allocatable:: discharge_value, elevation_value
 4
 5! Read size
 6call cg_iric_read_bc_functionalsize(fid, "discharge", discharge_size, ier)
 7! Allocate memory
 8allocate(time_value(discharge_size))
 9allocate(discharge_value(discharge_size), elevation_value(discharge_size))
10! Load values into allocated memory
11call cg_iric_read_bc_functionalwithname(fid, "discharge", "time", time_value)
12call cg_iric_read_bc_functionalwithname(fid, "discharge", "discharge", discharge_value)
13call cg_iric_read_bc_functionalwithname(fid, "discharge", "elevation", elevation_value)