Crate fispact

Expand description

Analysis tools for FISPACT-II inventory calculations

§Quickstart example

To quickly load a JSON inventory for further analysis:

// Read the JSON file content into an `Inventory`.
let inventory = Inventory::from_json("path/to/results.json");

// Alternatively, use the convenience function.
let inventory = read_json("path/to/results.json");

§Core concepts

Data structures reflect output files for simplicity.

  • Inventory - all deserialised JSON data
    • RunData - run metadata
    • Interval - list of intervals for every calculation step
      • Nuclide - list of nuclides and their associated data
      • Spectrum - basic gamma line histogram (v5 only).
Several tweaks are made during deserialisation, so data structures are not an exact 1:1 match for the JSON dictionary.
§Changes to FISPACT-II structure
  1. All masses are converted to grams in the background such that Nuclide and Interval mass values are consistent.

  2. Sample dose rate for intervals are converted into a more concise structure. See Dose and DoseKind for details.

  3. Several of the “totals” are renamed for brevity. e.g. “total_activity” is simply stored as Interval.activity.

Structs§

Dose
Total sample dose rate and type
Interval
Results of a calculation step
Inventory
Top level inventory data
Nuclide
Nuclide data
RunData
Metadata for the run
Spectrum
Predicted gamma spectrum intensities

Enums§

DoseKind
Type of dose rate
Error
The error type for the ntools-fispact crate
SortProperty
Sortable properties for Nuclides and Intervals
Stability
Variants of nuclide stability

Functions§

read_json
Read the full JSON inventory results