surrogates_gpu.py: auto_batch_size was missing the irfft output buffer
(batch × T × 4 bytes) from its per-surrogate VRAM estimate, causing OOM
on long series (T≈3600). Added the missing term.
08_combined_timeseries.py: write_combined_report crashed with TypeError
when in-sample load failed (keys absent → None). Added _fv() helper that
formats None values as "N/A" instead of failing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When load_usgs returns an empty DataFrame it has a RangeIndex, causing
resample("1D") to throw TypeError. Guard with an isinstance check and
fall back to a zero series so the rest of the pipeline continues.
Also aligns expected usgs-dir path with what script 06 wrote.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Scripts 01-08 implement the complete cosmic-ray/earthquake correlation
analysis from data ingestion through out-of-sample validation and
combined timeseries sinusoid fitting.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>