nvalchemi.data.datapipes.ZarrWriteConfig#

class nvalchemi.data.datapipes.ZarrWriteConfig(*, meta=<factory>, core=<factory>, custom=<factory>, field_overrides=<factory>)[source]#

Top-level write configuration for AtomicDataZarrWriter.

Provides per-group defaults and optional per-field overrides.

Parameters:
  • meta (ZarrArrayConfig) – Config for metadata arrays (pointers, masks). Usually no compression.

  • core (ZarrArrayConfig) – Config for core data arrays (positions, energy, etc.).

  • custom (ZarrArrayConfig) – Config for user-added custom arrays.

  • field_overrides (dict[str, ZarrArrayConfig]) – Per-field overrides. Keys are field names (e.g. "positions"). Takes precedence over group-level config.

Examples

>>> from zarr.codecs import ZstdCodec, BloscCodec
>>> config = ZarrWriteConfig(
...     core=ZarrArrayConfig(compressors=(ZstdCodec(level=3),), chunk_size=1024),
...     field_overrides={
...         "positions": ZarrArrayConfig(compressors=(BloscCodec(cname="lz4"),))
...     },
... )
model_config = {'arbitrary_types_allowed': True}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].