# GeoNum precision tiers

GDBS uses **GeoNum** — a domain-polymorphic numeric type that tracks uncertainty as a first-class quantity, not as something you have to derive from `eps_machine` after the fact.

## The four tiers

| Tier | Shades | Use when |
| ---: | ---: | --- |
| 0 | 256 | Quick exploration, parameter sweeps, low-stakes plotting |
| 1 | 512 | Production simulations within one domain |
| 2 | 1024 | Multi-scale problems (10⁻⁶ to 10³ ranges) |
| 3 | 2048 | Cross-decade (10⁻³⁵ to 10³⁰), publication results |

The plasma module's default is tier 0; bump it for convergence studies or when comparing two close configurations.

## What the drift number means

GeoNum reports drift in *shades*. Roughly:

- `drift < 0.5` — your result is reliable to the displayed digits.
- `0.5 ≤ drift < 1.0` — last digit is uncertain; quote one fewer.
- `drift ≥ 1.0` — operation broke out of zone tessellation; result may be unreliable, escalate precision tier.

## Zone configurations per domain

Each module configures zone boundaries appropriate to its physical range:

- **Theory (Lucas zones)** — logarithmic, 10⁻³⁵ to 10³⁰. Validated on Hawking radiation: 0.27% error.
- **Plasma** — frequency-aligned to characteristic plasma frequencies (kHz–THz).
- **Quantum** — tight eV-scale zones around atomic levels.
- **Fluids** — uniform grid zones for CFD.
- **Materials** — lattice-symmetric, Angstrom scale.
- **Geophysics** — spherical-harmonic-aligned, km scale.
- **Ballistics** — Mach-number-scaled.

You usually don't need to touch zone boundaries — the module defaults are calibrated. But if you're pushing into a new regime, the **Convergence** tab will tell you when zone resolution is the bottleneck.
