Enrichment – pyne.enrichment
¶
The enrichment module contains tools for defining and manipulating enrichment cascades. The Cascade class is a simple container for storing parameters that define an enrichment setup. These include feed, product, and tail materials, target enrichments, and separation factors. The main functions in this module compute the total flow rate and separation factors from an initial cascade. Other helper functions compute relative flow rates and nuclide-specific separation factors.
-
class
pyne.enrichment.
Cascade
(self, **kwargs)¶ This class is a container for enrichment cascade parameters that define the perfomance of a separations plant. Instances of this class are passed into and out of many enrichment functions.
- Parameters
- kwargsoptional
Any keyword argument which is supplied is applied as an attribute to this instance.
-
M
¶ The number of stripping stages.
-
Mstar
¶ This is the mass separation factor \(M^*\). On initialization, this should be in the ballpark of the optimized result of the Mstar value. However, this must always have a value between the weights of the j and k key components.
-
N
¶ The number of enriching stages.
-
alpha
¶ The \(\alpha\) attribute specifies the overall stage separation factor for the cascade. This should be set on initialization. Values should be greater than one. Values less than one represent de-enrichment.
-
j
¶ This is an integer in id-form that represents the jth key component. This nuclide is preferentially enriched in the product stream. For standard uranium cascades j is 922350 (ie U-235).
-
k
¶ This is an integer in id-form that represents the kth key component. This nuclide is preferentially enriched in the tails stream. For standard uranium cascades k is 922380 (ie U-238).
-
l_t_per_feed
¶ Total flow rate (\(L_t\)) per feed flow rate. This is a characteristic of the cascade as a whole. As such it is this quatity which is minimized in any real cascade.
-
mat_feed
¶ Feed material to be enriched. Often set at initialization.
-
mat_prod
¶ Product (enriched) material.
-
mat_tail
¶ Tails (de-enriched) material.
-
swu_per_feed
¶ The seperative work units (SWU) per unit mass of feed material.
-
swu_per_prod
¶ The seperative work units (SWU) per unit mass of prod material.
-
x_feed_j
¶ This is the target enrichment of the jth isotope in the feed stream mat_feed. The \(x^F_j\) value should be set prior to solving for the remainder of the cascade. For typical uranium vectors, this value is about U-235 = 0.00711.
-
x_prod_j
¶ This is the target enrichment of the jth isotope in the product stream mat_prod. The \(x^P_j\) value should be set prior to solving for the remainder of the cascade. For typical uranium vectors, this value is about U-235 = 0.05.
-
x_tail_j
¶ This is the target enrichment of the jth isotope in the Tails stream mat_tail. The \(x^T_j\) value should be set prior to solving for the remainder of the cascade. For typical uranium vectors, this value is about U-235 = 0.0025.
-
pyne.enrichment.
alphastar_i
()¶ Calculates the stage separation factor for a nuclide i of atomic mass \(M_i\).
\[\alpha^*_i = \alpha^{(M^* - M_i)}\]- Parameters
- alphafloat
Stage separation factor.
- Mstarfloat
Mass separation factor.
- M_ifloat
Atomic mass of the ith nuclide.
- Returns
- astar_ifloat
As calculated above.
-
pyne.enrichment.
default_uranium_cascade
()¶ Returns a copy of a default uranium enrichment cascade, which has sensible initial values for this very common case.
The values of this instance of Cascade are as follows:
duc = pyne.enrichment.Cascade(N=30.0, M=10.0, alpha=1.05, Mstar=236.5, j=922350, k=922380, x_feed_j=0.0072, x_prod_j=0.05, x_tail_j=0.0025, l_t_per_feed=0.0, swu_per_feed=0.0, swu_per_prod=0.0, mat_feed=pyne.material.Material({922340: 5.5e-05, 922350: 0.0072, 922380: 0.992745}, 1.0, 'Natural Uranium', 1.0), mat_prod=pyne.material.Material({}, -1.0, '', -1.0), mat_tail=pyne.material.Material({}, -1.0, '', -1.0))
- Returns
- ducCascade
As defined above.
-
pyne.enrichment.
feed
()¶ Calculates the feed quantity in kg from either the product or tails.
- Parameters
- x_feedfloat
Feed enrichment.
- x_prodfloat
Product enrichment.
- x_tailfloat
Feed enrichment.
- productfloat, optional
Quantity of product in kg
- tailsfloat, optional
Quantity of tails in kg
- Returns
- feedfloat
Feed quantity
-
pyne.enrichment.
multicomponent
()¶ Calculates the optimal value of Mstar by minimzing the seperative power. The minimizing the seperative power is equivelent to minimizing \(L_t/F\), or the total flow rate for the cascade divided by the feed flow rate. Note that orig_casc.Mstar represents an intial guess at what Mstar might be. This function is appropriate for feed materials with more than 2 nuclides (i.e. multicomponent).
- Parameters
- orig_cascCascade
A cascade to optimize.
- solverstr, optional
Flag for underlying cascade solver function to use. Current options are either “symbolic” or “numeric”.
- tolerancefloat, optional
Numerical tolerance for underlying solvers, default=1E-7.
- max_iterint, optional
Maximum number of iterations for underlying solvers, default=100.
- Returns
- cascCascade
A new cascade object, copied from the original, which has been optimized to minimize flow rates. Correct values of product and tails materials are also computed on this instance.
-
pyne.enrichment.
prod_per_feed
()¶ Calculates the product over feed enrichment ratio.
\[\frac{p}{f} = \frac{(x_f - x_t)}{(x_p - x_t)}\]- Parameters
- x_feedfloat
Feed enrichment.
- x_prodfloat
Product enrichment.
- x_tailfloat
Tails enrichment.
- Returns
- pfratiofloat
As calculated above.
-
pyne.enrichment.
product
()¶ Calculates the product quantity in kg from either the feed or tails.
- Parameters
- x_feedfloat
Feed enrichment.
- x_prodfloat
Product enrichment.
- x_tailfloat
Product enrichment.
- feedfloat, optional
Quantity of feed in kg
- tailsfloat, optional
Quantity of tails in kg
- Returns
- productfloat
Product quantity
-
pyne.enrichment.
solve_numeric
()¶ Calculates the total flow rate (\(L_t\)) over the feed flow rate (\(F\)).
- Parameters
- orig_cascCascade
A cascade to compute the l_t_per_feed, swu_per_feed, swu_per_prod, mat_prod, and mat_tail attributes for.
- tolerancefloat, optional
Numerical tolerance for solvers, default=1E-7.
- max_iterint, optional
Maximum number of iterations for underlying solvers, default=100.
- Returns
- cascCascade
A new cascade object, copied from the original, with the appropriate attributes computed.
-
pyne.enrichment.
solve_symbolic
()¶ Computes the cascade parameters based on a given initial state.
- Parameters
- orig_cascCascade
A cascade to compute the l_t_per_feed, swu_per_feed, swu_per_prod, mat_prod, and mat_tail attributes for.
- Returns
- cascCascade
A new cascade object, copied from the original, with the appropriate attributes computed.
-
pyne.enrichment.
swu
()¶ Calculates the SWU required to reach a given quantity of an enrichment level. One of feed, product, or tails must be provided.
- Parameters
- x_feedfloat
Feed enrichment.
- x_prodfloat
Product enrichment.
- x_tailfloat
Feed enrichment.
- feedfloat, optional
Quantity of feed in kg
- productfloat, optional
Quantity of product in kg
- tailsfloat, optional
Quantity of tails in kg
- Returns
- SWUfloat
SWU required
-
pyne.enrichment.
tail_per_feed
()¶ Calculates the tails over feed enrichment ratio.
\[\frac{t}{f} = \frac{(x_f - x_p)}{(x_t - x_p)}\]- Parameters
- x_feedfloat
Feed enrichment.
- x_prodfloat
Product enrichment.
- x_tailfloat
Tails enrichment.
- Returns
- tfratiofloat
As calculated above.
-
pyne.enrichment.
tail_per_prod
()¶ Calculates the tails over product enrichment ratio.
\[\frac{t}{p} = \frac{(x_f - x_p)}{(x_t - x_f)}\]- Parameters
- x_feedfloat
Feed enrichment.
- x_prodfloat
Product enrichment.
- x_tailfloat
Tails enrichment.
- Returns
- tpratiofloat
As calculated above.
-
pyne.enrichment.
tails
()¶ Calculates the tails quantity in kg from either the feed or product.
- Parameters
- x_feedfloat
Feed enrichment.
- x_prodfloat
Tails enrichment.
- x_tailfloat
Tails enrichment.
- feedfloat, optional
Quantity of feed in kg
- productfloat, optional
Quantity of product in kg
- Returns
- tailsfloat
Tails quantity
-
pyne.enrichment.
value_func
()¶ Calculates the value or separation potential of an assay.
\[V(x) = (2x - 1) \log{\frac{x}{x - 1}}\]- Parameters
- xfloat
assay enrichment.
- Returns
- valfloat
As calculated above.