Bugfix and simplification for netcdf output #111
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix for wrong Array dimensions for variable with Space=PB.CellSpace in a scalar Domain (with no grid).
This is represented by FieldArray and in netcdf output as 2 dimensional: (cell x tmodel) size (1, nrecs) (previous code got this wrong, netcdf output dropped the cell dimension, and FieldArray reported a cell dimension but returned wrong type for the stored values)
NB: there are three ways of representing a single scalar value per record or timestep:
A scalar variable Space=PB.ScalarSpace:
A CellSpace variable Space=PB.CellSpace in a scalar Domain (with no grid)
A CellSpace variable Space=PB.CellSpace in a Domain with a grid with one cell:
eg [[42.0], [43.0]] (ie one value per record index or timestep, each value as a Vector{Float64} of length 1)
NB: the dimensions and representation used by FieldArray.values and the netcdf file are considered well defined for analyzing output, the internal storage in FieldArray.records is an implementation detail (chosen to optimise storage of long timeseries of scalar variables):