Open-source tools for reading, tracing, and diagnosing climate data. No installs, no servers. Everything runs client-side. Build observation graphs from real instruments. Trace energy, moisture, and heat transport. Find where observations are insufficient — and why.
The graph is the measurement.
The residual is the teacher.
Numerical weather prediction and climate modeling work theory-first: write equations that approximate the atmosphere, solve them forward, compare to observations. The equations contain empirical constants fitted to past data. When they're wrong, the theory must be revised.
These tools work observation-first. We construct a directed graph where nodes are measurement locations and edges are observed fluxes between them. A random walk on this graph simulates transport without solving transport equations. The graph resolution is not a modeling choice — it is the density of the observation network itself.
When a traced event doesn't match reality, the residual maps back onto the graph. Diagnostic analysis traces it to specific nodes and edges — identifying which instruments, which gaps, and which structural weaknesses produced the error.
Over repeated events, the graph accumulates empirical knowledge of the actual transfer function — not a theoretical approximation, but what was observed. Each event sharpens the error signature. Each residual narrows the gap map. The system learns the specific behavior of the atmosphere at specific locations for specific event types, without writing down an equation for any of them.
The output is not a forecast. It is a structural assessment: where observations are insufficient to close a budget, which instruments are responsible, and what the accumulated error history predicts about forecast reliability for the current conditions.
Single-Input Single-Output.
Events in, events out.
Gates are pure. Composition is free.
Every tool is built on a shared core: typed events flow through pure gate functions. Gates transform one event into one event. Streams route events by type. Composition requires no framework — connect an output signature to an input signature and the pipeline extends.
Instrument gates transform raw observations into graph topology. A CERES gate reads TOA flux arrays and emits a graph fragment. An ERA5 gate reads wind fields and emits atmosphere transport edges. Each gate is pure: same input, same output, no state, full provenance.
The walker traces flow through the assembled graph. The diagnostic finds where it accumulates. The traceback explains why. Every node in the explanation is a real sensor. Every edge is an observed flux. The learned representation and the explanation are the same object.
Observations Gates Graph Analysis CERES HDF5 ──→ CERESGate ──→ ┐ ERA5 HDF5 ──→ ERA5Gate ──→ ├──→ Assembly ──→ Graph Argo HDF5 ──→ ArgoGate ──→ ┘ │ │ Walker ←──┘ │ WalkResult │ ┌──────────┴──────────┐ LeakDetector Traceback │ │ Leak regions Gap analysis with slopes with attribution
Nodes are sensors. Edges are observed fluxes. Resolution is instrument density, not grid spacing. Nothing is interpolated. Nothing is parameterized.
Every event that passes through the graph leaves a trace. Where prediction diverges from observation, the error maps back to specific nodes and edges. The graph learns.
Not a number. Not a map. A structural assessment: which instruments, which gaps, which transport pathways are insufficient. Traceback is interpretable because the graph is physical.