Concepts Overview
CubeDynamics is organized into three conceptual layers that compose to produce climate lexcubes:
- Sources – streaming adapters for Sentinel-2, PRISM, gridMET, and other
gridded datasets. Each returns
xarray.Datasetobjects with shared(time, y, x)axes. - Cube math primitives – functions inside
cubedynamics.stats,cubedynamics.indices, andcubedynamics.vizthat compute anomalies, correlations, and derived indicators. - Pipelines & exports – recipes that connect cubes to dashboards or models (NetCDF/Zarr writers, QA plots, and asynchronous workflows).
The sections below summarize how these layers interact.
Source adapters
Every loader enforces consistent naming (time, y, x, band) and metadata (CRS, units, history). Streaming-first behavior is preferred: data arrive chunked via HTTP range requests, STAC assets, or cloud object storage signed URLs. Offline fallbacks download only the required slices.
Lexcube builders
Lexcubes are multi-dimensional cubes that store derived metrics such as
variance, synchrony, or NDVI anomalies along the same axes as the source data.
They can be nested (e.g., a dataset containing multiple diagnostics) and are
ready for export.
Analysis & visualization
Downstream helpers provide rolling correlation, tail dependence, QA plots, and hooks for interactive dashboards. See Climate cubes and Correlation cubes for example notebooks and API usage.