Commit graph

3 commits

Author SHA1 Message Date
653ca103cd Add the field plan for the 12 August 2026 total eclipse from Menorca
Menorca sits inside the path of totality, but the geometry is extreme
and it drives every decision in the plan: the Sun is 2 degrees above
the horizon at maximum, on azimuth 288, and totality lasts 1 minute
12 seconds at Ciutadella before the Sun sets at 20:42.

Two consequences follow from that 2 degrees. The light travels through
roughly twenty times more atmosphere than at the zenith, so everything
is dimmer, softer and redder than any published exposure table assumes
and the histogram has to be the authority rather than a chart. And a low
hill, a building or a haze bank on the sea horizon hides the entire
event, so an unobstructed west-north-west view matters more than
anything else about the site.

That produces a genuine trade-off worth recording. Totality runs 1m38s
at Mahon against 1m12s at Ciutadella, because the centre line favours
the south-east - but Mahon is on the east coast, so from there the view
towards 288 degrees crosses the island with Monte Toro in roughly that
direction. Horizon beats duration: 26 extra seconds is a bonus, a
blocked horizon is total loss. The plan therefore recommends a west or
south-west coastal site.

The plan also corrects an idea that was on the table: a photographic ND
filter is not a solar filter. Standard NDs cut visible light while
passing infrared largely unattenuated, which is where the heat is, and
that will damage a sensor. The requirement is a certified ISO 12312-2
filter around OD 5 on the front of the lens, with the specific warning
that Baader's AstroSolar Photo Film ND 3.8 is camera-only and unsafe to
look through, while the ND 5.0 safety film does both jobs.

The Star Adventurer GTi is explicitly excluded from eclipse day.
Seventy-two seconds needs no tracking, and polar aligning in bright
twilight towards a 2 degree Sun is impractical. It earns its place on
the night skies of the same trip, not on the 12th.

Kept in this repo rather than in a notes app because it is worked out
from real numbers, it will be revised as the date approaches, and the
reasoning behind each decision is the part worth keeping.
2026-07-21 17:10:01 +01:00
f2d173f047 Fix directory resolution in layout, and generate the session READMEs
layout.path() treated every argument as a filename, so asking it for a
directory - layout.path('final'), which the rendering scripts do - built
a path to a file called 'final' INSIDE final/ and created an empty
final/final along the way. Directory names now resolve to the directory
itself.

Three scripts also held path literals split across two lines with
implicit string concatenation, where the rewrite had replaced only the
first fragment and left a dangling continuation. verify_core.py,
mo_gccheck.py and mo_mpc.py are corrected; all 52 files now compile
without warnings.

subdir_readmes.py writes a short README into each session subdirectory
saying what it holds, where it came from, and whether it is safe to
delete. Those three facts are what someone opening a folder cold needs,
and they belong with the data rather than in this repo.

Re-verified after the fix: closeup.py and triptych.py run end to end
against the reorganised session and leave no stray directories behind.
2026-07-21 15:33:52 +01:00
5286a2e81b Processing and analysis code for remote-telescope imaging sessions
The scripts that processed the NGC 5128 session of 2026-07-21 previously
lived inside the data directory and addressed it with absolute paths.
Code and data are now separated: the code lives here, and a session is
located at runtime through the ASTRO_SESSION environment variable.

layout.py is what makes that work. It maps a FILENAME to the
subdirectory that file belongs in, using the same rules the session
directories are organised with, so a script can go on asking for
'master-Red.fit' or '_stars.npz' without any call site knowing the
directory structure. Anything unrecognised resolves to the session root,
which is visible and correctable rather than silently wrong.

restructure.py reorganises a flat session directory into that layout. It
is idempotent and dry-run by default.

The 50 session scripts are kept as they were run rather than tidied into
a library. They were written in sequence as the work went along, several
of them by parallel agents, and they show it - but they are the honest
provenance of a published set of results, and the productionised pipeline
should be able to reproduce those results exactly.

Verified before committing: all 51 files compile without warnings, and
verify_core.py, closeup.py and triptych.py were run end to end against
the reorganised session, correctly finding inputs across calibrated/,
stacks/masters/ and final/ and writing outputs back to the right places.
2026-07-21 15:29:49 +01:00