[hiopy] refactor variable handling and distribution
This MR refactors how variables are handled in the worker.
- instead of monkey patching the
zarr.Arraythe group of a variable is generated from the store and the name of the variable - hiopy components are not split up by variables any more. If not enough chunks are available a warning is emitted and the group is distributed on fewer processes
- variables can be split up into different components manually by setting the
hiopy::var_groupattribute - for each spatial chunk size a separate coyote instance is used to ensure that the domain decomposition is correct
- minor improvements
hiopy::parent must now be given as the "absolute path" of the group within the same dataset (store).
Edited by Nils-Arne Dreier