Proposals
Design proposals for fiery.xtensor — the larger, cross-cutting decisions,
written up for discussion before (and as) they land. Each one states the
motivation, the API, how it relates to xarray, and the
open questions.
- 0001 — Coordinates (values, spacing, units) — numeric
coordinates: a physical position per element, compact
spacing/originor an explicit tensor, with position units. - 0002 — Structured coordinates — richer coordinate labels (a label as a dict of fields) and querying by field.
- 0003 — Data units — physical units on a tensor's values, with dimensional algebra and per-axis units.
- 0004 — Numeric coordinate selection — selecting
by coordinate value with
.sel, and computing off-grid values with.interp. - 0005 — Multiple coordinates per axis — non-dimension coordinates riding along a dim, and compact affine coordinates spanning several dims at once.
- 0006 — A
pint.Quantity-shaped API — dimensionality and compatibility queries, short forms (.m/.u/.m_as), and in-place and backend-computed conversion variants (.to_units_,.to()/.to_(), theto_base_units/to_compact/to_preferredfamily) that round out data units into feeling like apint.Quantity.