Skip to main content

YANI

Yet Another Nuclide Inventory. A material, an irradiation schedule and a neutron spectrum in; inventories, activities, decay heat and decay photon spectra out.

Documentation | PyPI

pip install yani
import yani

yani.cross_section_data = "tendl-2025"
yani.transmutation_reactions = "tendl-2025"
yani.transmutation_branch_ratios = "tendl-2025"
yani.transmutation_decay_data = "endf-b8.1"      # TENDL has no decay data
yani.transmutation_fission_yields = "endf-b8.1"  # nor fission yields

steel = yani.materials.pnnl.material("Steel, Stainless 316", volume=1000.0)
spectrum = yani.NeutronSource(
    energy=yani.sources.Histogram([1e-5, 1e5, 1e6, 1.5e7], [1e12, 1e13, 1e14])
)
schedule = yani.PulseSchedule([
    yani.Pulse(rate=1.11e14, duration=(1, "a"), source=spectrum),
    yani.Cooldown(duration=(1, "d")),
])

final = steel.transmute(schedule=schedule)[-1]
print(final.activity(), "Bq")
print(final.decay_heat(), "W")
print(final.contact_dose(), "Gy/h")

What it solves

The nuclide inventory under irradiation is the Bateman equations with reaction terms, dN/dt = A N, solved as a matrix exponential N(t) = exp(A t) N(0) by CRAM at order 48. The solver is Rust; the wheel needs no compiler and no external toolchain.

What this repository contains

Documentation, packaging and release automation. The code lives in the yani-core wheel this package depends on, which provides the yani module itself, its type stubs and its docstrings. pip install yani pulls it in.

That arrangement is why there is no Python here: one source of truth for the API, and no re-export layer that can drift from it.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yani-0.6.0.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yani-0.6.0-py3-none-any.whl (2.8 kB view details)

Uploaded Python 3

File details

Details for the file yani-0.6.0.tar.gz.

File metadata

  • Download URL: yani-0.6.0.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for yani-0.6.0.tar.gz
Algorithm Hash digest
SHA256 79a7743c2e39fce5080491282a2e1565642a92d381bc34f35a4bff1098bbff10
MD5 8d5e62fe31fdf939e218a76814eddbb1
BLAKE2b-256 129d50b26d6f8c636cc0920fcad9fb6060f62a6f95f2c43cadbaa694afef8ce8

See more details on using hashes here.

Provenance

The following attestation bundles were made for yani-0.6.0.tar.gz:

Publisher: publish.yml on fusion-neutronics/yani

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file yani-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: yani-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 2.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for yani-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 13fcb6fdcc320d8024234162076b871a1598de1d3d5e0f2d70e448d0ee0c1468
MD5 6a61994e03755fc8c6f11032d8b553c6
BLAKE2b-256 4704d095f3cc8450146ca84304d8bc55db0cbc2758a07e23e2bb4deaf43d52e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for yani-0.6.0-py3-none-any.whl:

Publisher: publish.yml on fusion-neutronics/yani

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page