PHYSICAL_HELIACAL_VISIBILITY_PHASE1_NAMED_SPECTRAL_DIRECT_CHECKPOINT_2026 07 30 - TheDaniel166/moira GitHub Wiki
Physical Heliacal Visibility Phase 1 Named-Spectral Direct Checkpoint
Date: 2026-07-30
Status: named-atmosphere full-spectral direct-transmission gate passed for the clear molecular surface domain; Phase 1 remains in progress
Scope
This checkpoint takes the 290-level candidate admitted by the controlled direct-geometry checkpoint and tests it with the six named AFGL atmospheres and the full 380-780 nm direct-transmission spectrum.
It answers four bounded questions:
- Does the 290-level grid remain converged for real pressure, temperature, water-vapor, ozone, and molecular profiles near the horizon?
- Is the 579-level comparison grid itself converged against a 1,157-level calculation?
- Which REPTRAN resolution is suitable as the full-spectral research reference?
- Can a faster direct-beam bulk solver be used without changing the governing 16-stream DISORT output?
This remains external research and validation evidence. It does not add engine calculations, public contracts, runtime tables, package dependencies, automatic downloads, or a physical heliacal model.
Source and Data Lock
The executable and source remain libRadtran 2.0.6:
source archive bytes:
154147176
source archive SHA-256:
64930cc40b6e4a37aa220520974d330fc1563796f466a649b2238131f2d69840
uvspec SHA-256:
d4e94259296a65f7700a0911f0dc7fc14aacde89985befac0266fe0a18531b7a
The full-spectral calculation additionally binds the official REPTRAN download module:
reptran_2024_all.tar.gz
bytes: 698709957
SHA-256:
55893c80bcc999651bac3bf014ee64aaf602653ba640eb5bebe787a5d8eacce7
regular archive files: 292
The 260 files overlapping the libRadtran 2.0.6 source tree are byte-identical.
The module supplies 32 official files absent from that tree, including the
general medium- and fine-resolution lookup data required by uvspec.
The archive contains no embedded notice or license file. It is therefore kept as an external operator-supplied research input and is not redistributed by Moira. The separately constructed merged data root contains 1,478 files and is bound by this canonical receipt:
regular file bytes: 873635625
canonical receipt bytes: 204827
canonical receipt SHA-256:
68f1817782e424ef617dab03ad985a3fbcb91fa2ed0239a8c2de1e8cb6855b59
Controlled Design
Named atmospheres:
- tropical;
- midlatitude summer;
- midlatitude winter;
- subarctic summer;
- subarctic winter; and
- U.S. Standard.
Vertical grids:
| Grid | Levels | Role |
|---|---|---|
| Native AFGL | 50 | Coarse diagnostic control |
near_horizon_piecewise_refined_v1 |
290 | Candidate |
near_horizon_piecewise_reference_v1 |
579 | Grid-error reference |
near_horizon_piecewise_convergence_v1 |
1,157 | Reference-convergence diagnostic |
The 290-level construction retains 25 m layers from 0-2 km, 50 m from 2-5 km, 100 m from 5-10 km, 250 m from 10-25 km, 1 km from 25-50 km, and 5 km from 50-120 km. The 579- and 1,157-level controls divide every step by two and four.
The vertical matrix covers all six profiles at 0.25 degrees true altitude
and the U.S. Standard profile at 0.5, 1, 2, 5, 10, 20, and 45
degrees. The observer remains at the profile surface. Refraction is disabled.
The full spectrum is:
380-780 nm
output step: 0.05 nm
rows per run: 8001
REPTRAN medium uses 5 cm-1 bands and REPTRAN fine uses 1 cm-1 bands. The equal-step output is compared in half-open 1, 5, and 20 nm diagnostic bins. These bins are unweighted numerical diagnostics; they are not CIE response integration and do not represent a target spectrum.
The checkpoint deliberately excludes aerosol, cloud, ground-albedo effects, CIE response data, target spectra, pressure overrides, elevated observers, runtime interpolation, limiting magnitude, and event time.
Solver Parity
The governing direct solver remains pseudo-spherical 16-stream DISORT.
Fifty bulk direct-beam runs use twostr, followed by four DISORT stress
anchors:
- U.S. Standard,
0.25degrees, 290 levels, REPTRAN fine; - U.S. Standard,
0.25degrees, 579 levels, REPTRAN medium; - tropical,
0.25degrees, 290 levels, REPTRAN medium; and - U.S. Standard,
45degrees, 290 levels, REPTRAN medium.
All four DISORT stdout files are byte-identical to their 8,001-row twostr
counterparts. This admits twostr only as a direct-beam generation
accelerator under these parity gates; DISORT remains the governing solver.
Acceptance Results
Values below are maximum extinction-magnitude differences after equal-step bin averaging.
| Comparison | 1 nm | 5 nm | 20 nm |
|---|---|---|---|
| 290-level candidate vs 579-level reference | 0.0021747648486831893 |
0.0014793362143320915 |
0.0009251996429829469 |
| 579-level reference vs 1,157-level convergence control | 0.0005383102314783803 |
0.000428510572537017 |
0.0003788155571649315 |
| Conservative combined candidate grid bound | 0.0027130750801615698 |
0.0019078467868691084 |
0.0013040152001478783 |
| REPTRAN-fine 290-level candidate vs 579-level reference | 0.0009911761883017317 |
0.0008148543346673419 |
0.0007187127901082604 |
| Native 50-level grid vs 579-level reference | 0.18968620808949826 |
0.09127626084604672 |
0.08058758441655986 |
Frozen conservative combined limits are 0.003, 0.0025, and 0.002 mag
for 1, 5, and 20 nm bins. All pass. The native 50-level atmosphere remains
only a diagnostic and is not suitable for the low-altitude direct reference.
Spectral Resolution Finding
The largest REPTRAN-medium versus REPTRAN-fine differences are:
| Bin | Maximum difference | Stress location |
|---|---|---|
| 1 nm | 2.5079702399353927 mag |
Tropical, 0.25 degrees, 760 nm |
| 5 nm | 0.43181699588608113 mag |
Tropical, 0.25 degrees, 725 nm |
| 20 nm | 0.2718747355689283 mag |
Tropical, 0.25 degrees, 720 nm |
The near-horizon tropical water-vapor structure and the oxygen A band make medium resolution unsuitable as the full-spectral truth surface. REPTRAN fine is therefore the admitted research reference. This does not require a runtime table to carry 8,001 spectral samples: the implementation plan still requires response-integrated runtime products after versioned CIE and target-spectrum inputs are bound.
Immutable Receipts
Repository specification:
scripts/visibility_reference_lab/phase1_named_spectral_direct_probe_spec.json
bytes: 11509
SHA-256:
30822b4a90fe24c63872a904de8078770b2450c15798a6c24450fd6ecc0548ee
Builder:
scripts/build_visibility_named_spectral_direct_probe.py
bytes: 68914
SHA-256:
0fc0809d2c95ba572e8aab9754783936d64933c7c381b324d4ee522f965cd7d2
Independent validator:
scripts/validate_visibility_named_spectral_direct_probe.py
bytes: 46191
SHA-256:
0fe3b0abc46277ddf4230b3da15328a966e251e4bab1277ac61c056bb4258d99
External artifact:
manifest bytes: 198494
manifest SHA-256:
b2bac79b30a3458fe17f8446b3da40f61deba1d7320b679724ebd60a65a539e8
generation fingerprint:
f9b370bdbd97e9a48976b07771fb048e84c452aff2c5aa8e4f3cd68fe9d2e608
bound files: 379
bound file bytes: 11203625
uvspec runs: 54
The validator independently reconstructs every grid, reparses every spectrum, recomputes every comparison, checks all checksums, and rejects unbound files or symlinks. The exact artifact passes under both WSL Python and Windows Python 3.14.3.
The compact source-owned receipt is
tests/artifacts/visibility_reference_lab/phase1_named_spectral_direct_checkpoint_2026-07-30.json.
The direct-geometry predecessor remains byte-for-byte unchanged.
Closed and Open
Closed by this checkpoint:
- the official REPTRAN module and merged external data-root identity;
- the six-profile clear molecular full-spectral direct surface;
- the named-atmosphere low-altitude error bound for the 290-level candidate;
- convergence of the 579-level reference against 1,157 levels;
- admission of REPTRAN fine as the full-spectral research reference;
- rejection of REPTRAN medium as a full-spectral truth substitute;
- byte-identical direct-beam parity for four DISORT anchors; and
- cross-platform independent artifact validation.
Still open:
- production observer-altitude and pressure policy;
- aerosol, AOD550, Angstrom, ozone-column, and albedo dimensions;
- adaptive sparse directional-radiance design;
- the deep-twilight solar-only tail;
- versioned CIE response and target-spectrum inputs;
- response-integrated spectral products;
- untouched off-grid holdouts;
- storage and interpolation selection;
- propagated limiting-magnitude and event-time error; and
- the separately versioned visibility data pack.
Phase 2 remains inactive.