openmc.deplete.helpers.FissionYieldCutoffHelper¶
-
class
openmc.deplete.helpers.FissionYieldCutoffHelper(chain_nuclides, n_bmats, cutoff=112.0, thermal_energy=0.0253, fast_energy=500000.0)[source]¶ Helper that computes fission yields based on a cutoff energy
Tally fission rates above and below the cutoff energy. Assume that all fissions below cutoff energy have use thermal fission product yield distributions, while all fissions above use a faster set of yield distributions.
Uses a limit of 20 MeV for tallying fission.
Parameters: - chain_nuclides (iterable of openmc.deplete.Nuclide) – Nuclides tracked in the depletion chain. All nuclides are not required to have fission yield data.
- n_bmats (int, optional) – Number of burnable materials tracked in the problem
- cutoff (float, optional) – Cutoff energy in [eV] below which all fissions will be use thermal yields. All other fissions will use a faster set of yields. Default: 112 [eV]
- thermal_energy (float, optional) – Energy of yield data corresponding to thermal yields. Default: 0.0253 [eV]
- fast_energy (float, optional) – Energy of yield data corresponding to fast yields. Default: 500 [kev]
Variables: - n_bmats (int) – Number of burnable materials tracked in the problem. Must be set prior to generating tallies
- thermal_yields (dict) – Dictionary of the form
{parent: {product: yield}}with thermal yields - fast_yields (dict) – Dictionary of the form
{parent: {product: yield}}with fast yields - constant_yields (collections.defaultdict) – Fission yields for all nuclides that only have one set of
fission yield data. Dictionary of form
{str: {str: float}}representing yields for{parent: {product: yield}}. Default return object is an empty dictionary - results (numpy.ndarray) – Array of fission rate fractions with shape
(n_mats, 2, n_nucs).results[:, 0]corresponds to the fraction of all fissions that occured belowcutoff. The number of materials in the first axis corresponds to the number of materials burned by theopenmc.deplete.Operator
-
classmethod
from_operator(operator, **kwargs)[source]¶ Construct a helper from an operator
All keyword arguments should be identical to their counterpart in the main
__init__methodParameters: - operator (openmc.deplete.Operator) – Operator with a chain and burnable materials
- kwargs – Additional keyword arguments to be used in construction
Returns: Return type:
-
generate_tallies(materials, mat_indexes)[source]¶ Use C API to produce a fission rate tally in burnable materials
Include a
openmc.lib.EnergyFilterto tally fission rates above and below cutoff energy.Parameters: - materials (iterable of
openmc.lib.Material) – Materials to be used inopenmc.lib.MaterialFilter - mat_indexes (iterable of int) – Indices of tallied materials that will have their fission
yields computed by this helper. Necessary as the
openmc.deplete.Operatorthat uses this helper may only burn a subset of all materials when running in parallel mode.
- materials (iterable of
-
weighted_yields(local_mat_index)[source]¶ Return fission yields for a specific material
For nuclides with both yield data above and below the cutoff energy, the effective yield for nuclide
Awill be a weighted sum of fast and thermal yields. The weights will be the fraction ofAfission events in the above and below the cutoff energy.If
Ahas fission product distributionFfor fast fissions andTfor thermal fissions, and 70% ofAfissions are considered thermal, then the effective fission product yield distributions forAis0.7 * T + 0.3 * FParameters: local_mat_index (int) – Index for specific burnable material. Effective yields will be produced using self.results[local_mat_index]Returns: library – Dictionary of {parent: {product: fyield}}Return type: collections.defaultdict