GeoStack library designs
Design docs for the new libraries that the GeoStack layer map adds. Each library has a design page, high level first (the problem, the objects, modules and boundaries, the code in use, integration across the stack, decisions and the roadmap), and a details page for core types, algorithms, JAX notes and the code survey.
| Library | Owns | Layer, tier |
|---|---|---|
| functax (details) | function approximation: one representation, five operations, and the quadrature rules integrix sums with | Core, tier 0 |
| integrix (details) | integration of every kind: a rule, a scan or a march, with shared adaptivity and adjoints | Core, tier 1 |
| argminax (details) | optimisation with uncertainty: the minimum, the curvature there, and the adjoints of a minimiser | Core, tier 1 |
| geophysix (details) | the physical Earth: constants, the ellipsoid, rotation, the air’s thermodynamics, sea water and column units | GeoNumerics, tier 0 |
| gridax (details) | analysis grids: lon/lat, curvilinear and swath geometry, metrics, vertical coordinates, differences for analysis (model and spectral grids stay in finitevolX and spectraldiffx) | GeoNumerics, tier 1 |
| radiomax (details) | observation geometry and radiometry: angles, counts to reflectance, Planck, air-mass factors, empirical retrievals | GeoNumerics, tier 1 |
| diagnostix (details) | diagnostics of fields: kinematics, columns, budgets, climatologies, spectra, EOFs, skill scores | GeoNumerics, tier 2 |
| tracerax (details) | Lagrangian particles: advection, binning, footprints, FTLE, residence and connectivity | GeoNumerics, tier 2 |
| xrcf (details) | the xarray side’s conventions: the CF variable registry, coordinates, the CRS, validation, requests | GeoStack (xrtoolz), tier 0 |
functax, integrix and argminax meet at two seams. A quadrature rule is data, and functax’s; what sums, adapts or marches with it is integrix’s. A backward sweep through time is integrix’s; a derivative through an optimiser’s iterations, or at its minimum, is argminax’s.