rethink and update param_gn, param_gnBoundaryTypes, and param_gnBoundaryProperties
param_gn, param_gnBoundaryTypes, and param_gnBoundaryProperties need rethinking and update.
Some problems:
- Different activation logic -> upwardLimit, downwardLimit, maxSpill do not require separate activation, but boundXX require separate activation
- BoundaryTypes are split between p_gn and param_gnBoundaryTypes, e.g. boundStart is declared in p_gn, but upwardLimit in param_gnBoundaryTypes
- reference is boundaryType instead of BoundryProperty. Currently it is impossible to use two different reference values
- 3d_setVariableLimits uses ts_node or ts_node_ depending on the case. Proper fix would likely require different aggregation methods
Some ideas:
- Should param_gnBoundaryTypes be instead a dimension gnBoundaryType? And param_gnBoundaryProperties -> param_gnBoundaryType. Then ts_node would be ts_node(grid, node, gnBoundaryType, param_gnBoundaryType)
- Different aggregation methods could be under param_gnBoundaryType, either switches or aggregationMethod = [1-4] style with 1 (average) as default.
- param_gn could include constant influx? Or influx could be one of the params in general and then have constant or ts values?
- is storageValueUseTimeSeries necessary? Could it be active if data exists and storage value model property is activated?