Skip to main content

Kronos Research Toolkit

One versioned, anchor-tested Python engine behind the Kronos breeder and burner designs — replacing ~950 one-off scripts that each re-derived the same physics.

Every headline number Kronos publishes can be reproduced by running this library. Where the toolkit stands in for a high-fidelity code it has not run, it says so honestly: that result is tagged [T] and names the real code that would retire it.

from kronos_toolkit.core import evaluate_breeder, solve_mirror, surplus_kg_per_fpy
from kronos_toolkit.verify import run_regression

run_regression()          # reproduces the frozen record, all anchors

Why this exists

The research tree had grown ~950 loose .py files, each re-implementing the mirror 0-D power balance, the D-T breeder evaluator, TBR/neutronics, UQ, and the surplus law. Fragile, un-versioned, inconsistent. This toolkit unifies those engines, verifies them against a frozen anchor suite, and provides an adapter layer so the real high-fidelity codes become plug-and-play the moment they are available.

It does not substitute high-fidelity physics. It makes the program cohesive and honest about what is demonstrated versus what is reach.

Install

pip install -e .            # core (numpy, scipy)
pip install -e .[plot]      # + matplotlib for report plotting
pip install -e .[neutronics]  # + OpenMC for real neutron transport

Python 3.9+. Deterministic throughout (seed 20260726).

Modules

module what it is
core the frozen engines: D-T breeder evaluator, D-³He tandem-mirror power balance, reactivities (Bosch-Hale + embedded cross-section table), radiation, confinement, tritium surplus law
verify the frozen-anchor regression suite + [D]/[T]/[R]/[Q] provenance tagging
uq Monte-Carlo, tornado, Sobol/Saltelli, model-form bands — deterministic
neutronics TBR, coil fluence, shielding, streaming — OpenMC if installed ([D]), analytic fallback otherwise ([T]), one API
hifi the adapter spine: 7 adapters that call the real code if present, else a documented surrogate that names what retires it
report study scaffold (pre-register → run → CSV → manifest → verdict), brand plotting, paper-table export, no-economics firewall
viz the visual research layer — kronos-viz build regenerates a self-contained HTML dashboard from live data

The anchor guarantee

The toolkit is only trustworthy if it reproduces the frozen record exactly. The regression suite pins every engine:

python -m kronos_toolkit.verify.regression
breeder.Q            3.423913   (dt_evaluator config 22021)
breeder.P_fus_MW    88.660424
burner.Q_E           1.318121   (mirror M-45 design point)
burner.P_fus_MW   4298.499304
surplus.1.80         3.979503   (net-TBR → kg-T/fpy)
neutronics.net_tbr   0.742400   (3-D blanket, H1 anchor)
...                             ALL PASS (19/19)

Any drift is a failure. The same anchors pin the digital-twin simulator's forked solver (.../3D_Model .../solver/_toolkit_anchor_bridge.py) so the twin and the canonical engine can never silently disagree.

Honesty by construction

  • Surrogates are tagged. A reduced-order stand-in returns a [T] value that must name the real code that retires it — e.g. the 0.785× peak-fiber coil-stress factor is [T], retired by ANSYS/COMSOL/Elmer FEA.
  • Gates are honest. The dashboard's gate board reports red/yellow/green from the live engines: breeder net electric power is NO-GO (Q is scientific gain, not net electric); tritium self-sufficiency is a deficit at the 3-D blanket (net TBR 0.74); the burner reaches Q_E>1 only with a plug-density requirement not yet demonstrated.
  • No economics in public outputs. report.guard scans every public export and refuses to emit if a cost/price/valuation term appears. The viz dashboard runs the same firewall and defaults to the public view.

Worked examples

Two reference studies in study_template/ show the whole pipeline and double as integration tests:

python study_template/tritium_exporter_push.py    # scan → confirm → surplus
python study_template/coil_buildability.py         # coil stress vs REBCO allowable

The dashboard

kronos-viz build --out dashboard.html --results study_template/_results
kronos-viz build --confidential --out internal.html   # internal view

A single offline HTML file: gate board, design-point cards, extrapolation ledger (reach vs demonstrated), the study results with reproducibility hashes, and the paper/DOI tracker — all read live from the frozen anchors.

Migrating existing scripts

See MIGRATION.md — it maps the highest-traffic legacy scripts to their toolkit calls and provides shims so hot-path work can switch over incrementally.

License

Apache-2.0 (see LICENSE) — chosen over MIT for its explicit patent grant.

Metadata

Release files for kronos-toolkit 0.1.0

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

Source distribution (sdist)

Source distribution for kronos-toolkit 0.1.0
File Size Uploaded Provenance Actions
kronos_toolkit-0.1.0.tar.gz 53.8 kB Without provenance Details for kronos_toolkit-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for kronos-toolkit 0.1.0
File Interpreter ABI Platform Actions
kronos_toolkit-0.1.0-py3-none-any.whl Python 3 none any Details for kronos_toolkit-0.1.0-py3-none-any.whl

Total release size: 115.7 kB

Release files / kronos_toolkit-0.1.0.tar.gz

Download URL kronos_toolkit-0.1.0.tar.gz
Size 53.8 kB
Tags Source
SHA-256 checksum
How to use checksums
26423c3382167c183cbf74ae74dec318378b6202e329fb6dd9aadd253193508c
BLAKE2b-256 checksum
How to use checksums
824c7bb5220883bd84481f752f4c47e2e460f030c086b0825c20d9df467cb8ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release files / kronos_toolkit-0.1.0-py3-none-any.whl

Download URL kronos_toolkit-0.1.0-py3-none-any.whl
Size 61.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
713ac0eeafa892ec54dcf3a7d2ca03befeab93fa89cfcfe2925e778c4f18c365
BLAKE2b-256 checksum
How to use checksums
35723f21d44f8aaa1b8db55094b203b17ed999f452b62b293aa37677163bc312
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Security for kronos-toolkit 0.1.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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

0.1.0 This release

2 release files No 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