misoenrichment
is a module for the nuclear fuel cycle simulator
Cyclus and is developed at the
Nuclear Verification and Disarmament Group
at RWTH Aachen University.
It currently provides two Cyclus facilities, MIsoEnrich
and GprReactor
.
MIsoEnrich
is an enrichment facility that enriches
streams composed of two or more uranium isotopes taking into account the
different enrichment behaviour of minor isotopes such as 234U (present in
natural as well as in reprocessed uranium) or 236U (present in
reprocessed uranium from spent nuclear fuel). The tracking of minor
isotopes makes this module suitable for nuclear archaeology, see, e.g., Ref 3.
GprReactor
is a Cyclus reactor facility that uses Gaussian Process
Regression (GPR) to calculate the composition of the irradiated fuel depending
on various input parameters. Generally, this implementation works for any
reactor type and any input parameters. However, one needs the appropriate
GPR model (which needs to be generated using training data) and depending
on which input parameters are chosen, the source code of GprReactor
may
need minor tweaking. Additional information on this issue will be given
in future commits.
In order to use the VarRecipeSource
archetype, a patched version of
Cyclus needs to be
used (commit 15e1f30
) or later.
This patch will be integrated into Cyclus' main branch.
The module has additional dependencies.
Python dependencies (scipy
and
numpy
are installed automatically via pip
,
while the C++ dependencies
(CppOptimizationLibrary,
Eigen and
JSON for Modern C++) are included as Git
submodules.
These need to be fetched first, as shown below:
$ git clone /~https://github.com/Nuclear-Verification-and-Disarmament/miso_enrichment.git
$ cd miso_enrichment
$ git submodule update --init --recursive # Download C++ dependencies
$ python3 install.py # Install misoenrichment module
$ misoenrichment_unit_tests # Run unit tests (optional).
An example input file is found in input/main.py
featuring a
cycamore::Source
source agent, a MIsoEnrich
enrichment facility and two
cycamore::Sink
agents, one for enriched and one for depleted uranium.
Note that the sink requests a binary composition of enriched uranium (90% 235U, 10% 238 U) and that the enrichment facility enriches to a level at least equal to the requested one while keeping track of the minor isotopes. This implies that one does not need to know the final composition of enriched uranium beforehand (its desired assay is sufficient). In fact, one cannot request a material with a certain concentration in minor isotopes or with a constraint on the minor isotopes concentration (e.g., to make it ASTM compliant, see Ref 4).
Additionally, it should be noted that the facility allows to select between integer number of stages (default) or decimal number of stages. The former option will exceed (undershoot) the desired product (tails) assay, the latter option will match both assays as close as possible.
Also note that when using an integer number of stages, the facility supports
downblending of uranium.
This means that the facility tries to match the desired enrichment
level as precise as possible by first enriching the uranium (to a higher
level, as explained above) and then blending the product with uranium from
the feed. This procedure is only performed if the use_downblending
variable is set to True
in the input file.
The implementation of the facility itself and the interaction with Cyclus' Dynamic Resource Exchange is based on the binary enrichment facility from the Cycamore package.
The multi-component isotope calculations are based on mainly on Refs 1 and 2. Ref 1 derives the mathematical formalism of a matched abundance ratio cascade using constant overall stage separation factors while Ref 2 gives a new physically founded approach to calculating said separation factors.
- E. von Halle, Multicomponent Isotope Separation in Matched Abundance Ratio Cascades Composed of Stages With Large Separation Factors. International Technology Programs (K/ITP--131). Oak Ridge, TN (1987).
- Houston G. Wood, Effects of Separation Processes on Minor Uranium Isotopes in Enrichment Cascades. Science and Global Security, 16:26–36 (2008), DOI: 10.1080/08929880802361796.
- Steve Fetter, Nuclear Archaeology: Verifying Declarations of Fissile-material Production. Science and Global Security, 3:237-261 (1993).
- ASTM International. C787-20 Standard Specification for Uranium Hexafluoride for Enrichment. West Conshohocken, PA; ASTM International, 2020. DOI: 10.1520/C0787-20.