Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ADR 0015: Ready for non-local models without building them

  • Status: Accepted (2026-11-10)
  • Date: 2026-11-10
  • Deciders: Vincent Mader
  • Related: vision section 2 (non-goals); ADR 0004; grill decision Q19

Context

The paper studies a local model at one radius (r₀ = 10 au). Radial transport and a global disk model are the most likely follow-up projects. The most expensive refactor in codes of this kind is physics that reads global disk state directly, so that adding a spatial dimension touches every layer.

Decision

  • The solver state is organized as cells × particle grid. Today the number of cells is one.
  • coag-disk evaluates the disk model at a cell position and returns a plain LocalConditions value (T, ρ_g, c_s, H_p, Ω_K, α, ν, pressure gradient, u_g, u_n, …). Everything below it (kinematics, rates, recipes, estimators, integrators) receives LocalConditions and never calls the disk model.
  • Rhs implementations and the run loop operate on a list of cells, so a transport operator can be added later, either by operator splitting or as additional terms in a coupled Jacobian.
  • The cell position (radius, height) is a config key from the start.
  • No transport, advection, or diffusion code is written for the paper.

Alternatives considered

  • Build a 1D radial model now: multiplies cost by N_r and adds a second research question to a paper that already has several.
  • Ignore non-locality: fastest now, but locks physics to a single global point and forces a broad refactor later.

Consequences

  • Small overhead (one extra loop level, one plain-data struct).
  • Recipes and rate matrices are built per cell; for one cell this is identical to the local model.
  • A later transport milestone needs a new ADR on splitting vs coupled integration.