At the moment, the hdf5 file is agnostic to what it is storing, it simply receives rows.
This is nice for separation of concern.
However, the reader then needs to know the dimensionality of the untransformed points and the transformed points. One can guess (if no added parameters, it is (ncol - 3) / 2), but it is ambiguous whether parameters were added.
To balance these two, it might be good to add to the header
the number of untransformed parameters (x_dim)
the number of transformed parameters (num_params)
Then read_file can make the dimensionality argument optional.
At the moment, the hdf5 file is agnostic to what it is storing, it simply receives rows.
This is nice for separation of concern.
However, the reader then needs to know the dimensionality of the untransformed points and the transformed points. One can guess (if no added parameters, it is (ncol - 3) / 2), but it is ambiguous whether parameters were added.
To balance these two, it might be good to add to the header
Then read_file can make the dimensionality argument optional.