values.shape == (grid.gridpoints.shape[0],) in order to assign the values passed to the grid descriptor class instance as a self.values attribute.
This could be made more general/useful in cases where multiple descriptor types will be specified at a gridpoint by allowing the values.shape[0] to be checked instead. This ought to mean that the values must be specified for every gridpoint, but that there can be a > 1D array of values passed.
An alternative is to require users to pass each grid descriptor type as its own GridDescriptor class instance, but provide some code which makes retrieval and handling of multiple instances efficient.
Currently, the GridDescriptor class requires:
values.shape == (grid.gridpoints.shape[0],) in order to assign the values passed to the grid descriptor class instance as a self.values attribute.
This could be made more general/useful in cases where multiple descriptor types will be specified at a gridpoint by allowing the values.shape[0] to be checked instead. This ought to mean that the values must be specified for every gridpoint, but that there can be a > 1D array of values passed.
An alternative is to require users to pass each grid descriptor type as its own GridDescriptor class instance, but provide some code which makes retrieval and handling of multiple instances efficient.