API reference
Every stable operation of the three EarthSciASTDiff bindings, side by side.
EarthSciASTDiff has three bindings — Julia, Python and Rust — that differentiate the same .esm models symbolically into structured Jacobian bands. This reference has one page per stable operation, with a tab for each binding showing its spelling, signatures and documentation, taken from the binding’s own documentation tooling, along with runnable examples. The examples run in CI, so what is shown here is what the code does.
The surface has two tiers. Stable names are harmonized across bindings and break only at a major version. Extension names are a binding’s own documented seams; they may differ between bindings and may change in a minor release, and each binding lists them on one page.
Guides
- Getting started — Differentiate a model, read its sparsity pattern and structure, evaluate the Jacobian, and serialize it as a document block.
Topics
- Differentiate a model (10) — Take a model or flattened system, differentiate its right-hand side, and get back structured Jacobian bands.
- Sparsity and structure (6) — The exact structural sparsity pattern, the structure classification, and the symbolic factorization plan.
- Evaluate the Jacobian (7) — Numeric values at a point, and prepared evaluators and ODE pieces that fill a fixed sparse prototype.
- Serialize as a document block
(5) — The
jacobiansdocument block, so the Jacobian is itself an.esmartifact any binding can evaluate.
Or browse all stable operations A–Z .
Bindings
| Binding | Package | Version | Docs from | Stable | Extension |
|---|---|---|---|---|---|
| Julia | EarthSciASTDiff | 0.1.0 | Base.Docs (Julia 1.13.3) | 25 | 0 |
| Python | earthsci_astdiff | 0.1.0 | griffe 2.3.2 | 21 | 0 |
| Rust | earthsci-astdiff | 0.1.0 | rustdoc JSON (rustdoc 1.101.0-nightly (21b707e3f 2026-09-30)), format_version 61 | 21 | 0 |
Documentation coverage lists the stable names each binding has not documented yet.