Skip to main content

solar-flare-utac

GenesisAeon Package 22 — Solar Flare Magnetic Avalanches as UTAC System

DOI (GenesisAeon Whitepaper) GPLv3 License CC BY 4.0 Part of genesis-os Package 22

[![CI](https://github.com/genesisaeon/solar-flare-utac/actions/workflows/ci.yml/badge.svg)](https://github.com/genesisaeon/solar-flare-utac/actions/workflows/ci.yml) [![Reference](https://img.shields.io/badge/Ref-A%26A%202026-red)](https://doi.org/10.1051/0004-6361/202449012)

Solar flares modelled as magnetic UTAC avalanches — calibrated against Solar Orbiter (2026), GOES X-ray data (1975–2026), and Velasco Herrera et al. (2026, JGR Space Physics).

Key result: Γ_solar ≈ 0.014 (ultra-low CREP) → most hair-trigger system in the atlas.


Central Result

Γ_solar = arctanh(0.03) / 2.2 ≈ 0.014

Solar active regions occupy the ultra-sensitive (ultra-low CREP) end of the GenesisAeon cross-domain criticality spectrum — the lowest Γ of any system in the atlas. Tiny CREP fluctuations produce giant energy releases, explaining why deterministic solar flare prediction is so notoriously difficult.

CREP Criticality Spectrum

Domain Package Γ η Character
Solar Flare P21 0.014 1% Ultra-sensitive
Cygnus X-1 Jet P17 0.046 5% Hair-trigger
Amazon Rainforest P19 0.116 12% Fragile
AMOC Ocean P18 0.251 50% Homeostatic
Neural Criticality P20 0.251 50% Homeostatic (!)
BTW Sandpile P22 0.296 58% Robust SOC
Manna Sandpile P22 0.376 72% Dense SOC
ERA5 Arctic P01 0.920 99% Near-saturated

Physical Mapping to UTAC

UTAC symbol Solar quantity
H(t) Normalised magnetic free energy ∈ [0, 1]
K E_max ≈ 10³² J (active region energy ceiling)
H* Quiescent fixed point ≈ 0.10 K
r Flux-emergence buildup rate ≈ 0.06 hr⁻¹
σ CREP coupling = 2.2
Γ(t) CREP tensor (C, R, E, P) → Γ_solar ≈ 0.014

Flare trigger: when H > H_threshold = 0.60 AND Γ > θ_PT ≈ 0.014, the magnetic current sheet becomes unstable → reconnection cascade → "magnetic avalanche" (Solar Orbiter A&A 2026).


Installation

pip install solar-flare-utac
# or
uv add solar-flare-utac
# development
pip install -e ".[dev]"

Quickstart

from solar_flare_utac import SolarFlareUTAC

model = SolarFlareUTAC(seed=42)
state  = model.run_cycle(duration_hours=72)

print(state['crep_state'])    # {C, R, E, P, Gamma}
print(state['utac_state'])    # {H, dH_dt, H_star, K_eff}
print(state['flare_count'])   # flares in this cycle

window = model.predict_flare_window(horizon_days=3)
record = model.to_zenodo_record()

CLI

# Run a 72-hour simulation cycle
solar-utac run --duration 72 --active-region AR3000

# Flare probability window forecast
solar-utac flare-window --horizon 7

# Print the full CREP Criticality Spectrum
solar-utac gamma-crep-spectrum

# Validate against benchmark targets
solar-utac benchmark

# Export Zenodo metadata record
solar-utac zenodo-export

Integration in genesis-os

from genesis_os import GenesisOS
os = GenesisOS()
solar = os.load_package(21)
results = solar.run_cycle(duration_hours=72)
print(f"Γ_solar = {results['crep_state']['Gamma']:.4f}")

Diamond-Template Contract

All GenesisAeon packages implement the same five-method interface:

model.run_cycle(duration_hours=72)  → dict
model.get_crep_state()              → {C, R, E, P, Gamma}
model.get_utac_state()              → {H, dH_dt, H_star, K_eff}
model.get_phase_events()            → list[dict]   # each flare = one event
model.to_zenodo_record()            → dict

Repository Structure

solar-flare-utac/
├── src/solar_flare_utac/
│   ├── system.py          # SolarFlareUTAC — Diamond interface + Ethics Gate
│   ├── active_region.py   # Magnetic free energy ODE (UTAC)
│   ├── reconnection.py    # Reconnection instability threshold (Syrovatsky)
│   ├── crep_solar.py      # Solar CREP tensor (C, R, E, P → Γ)
│   ├── goes_loader.py     # GOES X-ray flux loader + synthetic generator
│   ├── superflare.py      # Power-law flare statistics (SOC)
│   ├── geomagnetic.py     # Dst storm impact model
│   ├── benchmark.py       # Validation vs. GOES catalog + Orbiter
│   ├── cli.py             # Typer CLI
│   └── constants.py       # All physical and model constants
├── data/
│   ├── goes_xray_annual_stats.yaml
│   └── flare_catalog_summary.yaml
├── notebooks/
│   ├── 01_solar_utac_overview.ipynb
│   ├── 02_goes_crep_analysis.ipynb
│   ├── 03_flare_cascade.ipynb
│   └── 04_gamma_solar_calibration.ipynb
└── tests/
    ├── test_diamond_interface.py
    ├── test_active_region.py
    ├── test_reconnection.py
    └── test_superflare.py

Benchmark

Target values below are informed by the cited literature, but most checks compare the model against itself rather than independent data at runtime -- see benchmark.py's module docstring for the honest breakdown of which checks are self-consistency tests. The reconnection timescale check currently fails by ~20x at its test point; this is a known, unresolved calibration gap (see FOLLOWUP_TICKETS.md), not silently hidden.

Target Value Tolerance
Γ_solar 0.014 ±0.005
X-class energy [J] 10³² log ±0.5
Power-law index α 1.8 ±0.1
Reconnection timescale 10 min ±30%
X-class flares/cycle 150 ±20%

Falsifiable Prediction

Next X5+ flare window in 2026 Q3 (southern hemisphere active region peak, per Velasco Herrera 2026). Γ_solar will exceed θ_PT during this period. Testable against GOES real-time monitoring at SWPC.

References

  • Solar Orbiter / A&A 2026 — magnetic avalanche mechanism
  • Velasco Herrera et al. 2026, JGR Space Physics — 47-year superflare dataset
  • Thoen Faber et al. 2025 — SST/CHROMIS high-resolution flare ribbons (140–200 km)
  • ESA CryoSat + Swarm 2026 — X-class geomagnetic storm measurements

Citation

DOI


Part of the GenesisAeon cross-domain CREP criticality atlas. Code: GPLv3-or-later · Docs & Data: CC BY 4.0 · seed=42 · numpy/scipy/matplotlib

Metadata

Release files for solar-flare-utac 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for solar-flare-utac 1.0.1
File Size Uploaded Provenance
solar_flare_utac-1.0.1.tar.gz 113.1 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for solar-flare-utac 1.0.1
File Interpreter ABI Platform
solar_flare_utac-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 146.3 kB

Release files / solar_flare_utac-1.0.1.tar.gz

Download URL solar_flare_utac-1.0.1.tar.gz
Size 113.1 kB
Tags Source
SHA-256 checksum
How to use checksums
8cd11dad60da0c00d50f2c6e19e9039f78a89bcce9ce95c02ef31aa6d5ab71b0
BLAKE2b-256 checksum
How to use checksums
0110847ea7da0ed3dfaac766d8315f069d1eb39383c2852401a492564c41abb2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 15, 2026.

Transparency log

Release files / solar_flare_utac-1.0.1-py3-none-any.whl

Download URL solar_flare_utac-1.0.1-py3-none-any.whl
Size 33.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7d8d181b292f0603c1ca8aace89de8ef18d7bd6b5feefb023df9e7d16f6ad6fc
BLAKE2b-256 checksum
How to use checksums
27bd0b12ad328c04e2ac13dcedc4266aae36f9b503d972cb71045e9f18ebde32
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 15, 2026.

Transparency log

Security for solar-flare-utac 1.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for solar_flare_utac-1.0.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 15, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page