openmc.deplete.IndependentOperator

class openmc.deplete.IndependentOperator(materials, micro_xs, chain_file=None, keff=None, normalization_mode='fission-q', fission_q=None, dilute_initial=1000.0, prev_results=None, reduce_chain=False, reduce_chain_level=None, fission_yield_opts=None)[source]

Transport-independent transport operator that uses one-group cross sections to calculate reaction rates.

Instances of this class can be used to perform depletion using one-group cross sections and constant flux or constant power. Normally, a user needn’t call methods of this class directly. Instead, an instance of this class is passed to an integrator class, such as openmc.deplete.CECMIntegrator.

New in version 0.13.1.

Parameters
  • materials (openmc.Materials) – Materials to deplete.

  • micro_xs (MicroXS) – One-group microscopic cross sections in [b] .

  • chain_file (str) – Path to the depletion chain XML file. Defaults to openmc.config['chain_file'].

  • keff (2-tuple of float, optional) – keff eigenvalue and uncertainty from transport calculation. Default is None.

  • prev_results (Results, optional) – Results from a previous depletion calculation.

  • normalization_mode ({"fission-q", "source-rate"}) – Indicate how reaction rates should be calculated. "fission-q" uses the fission Q values from the depletion chain to compute the flux based on the power. "source-rate" uses a the source rate (assumed to be neutron flux) to calculate the reaction rates.

  • fission_q (dict, optional) – Dictionary of nuclides and their fission Q values [eV]. If not given, values will be pulled from the chain_file. Only applicable if "normalization_mode" == "fission-q".

  • dilute_initial (float, optional) – Initial atom density [atoms/cm^3] to add for nuclides that are zero in initial condition to ensure they exist in the decay chain. Only done for nuclides with reaction rates.

  • reduce_chain (bool, optional) – If True, use openmc.deplete.Chain.reduce() to reduce the depletion chain up to reduce_chain_level.

  • reduce_chain_level (int, optional) – Depth of the search when reducing the depletion chain. Only used if reduce_chain evaluates to true. The default value of None implies no limit on the depth.

  • fission_yield_opts (dict of str to option, optional) – Optional arguments to pass to the openmc.deplete.helpers.FissionYieldHelper object. Will be passed directly on to the helper. Passing a value of None will use the defaults for the associated helper.

Variables
  • materials (openmc.Materials) – All materials present in the model

  • cross_sections (MicroXS) – Object containing one-group cross-sections in [cm^2].

  • dilute_initial (float) – Initial atom density [atoms/cm^3] to add for nuclides that are zero in initial condition to ensure they exist in the decay chain. Only done for nuclides with reaction rates.

  • output_dir (pathlib.Path) – Path to output directory to save results.

  • round_number (bool) – Whether or not to round output to OpenMC to 8 digits. Useful in testing, as OpenMC is incredibly sensitive to exact values.

  • number (openmc.deplete.AtomNumber) – Total number of atoms in simulation.

  • nuclides_with_data (set of str) – A set listing all unique nuclides available from cross_sections.xml.

  • chain (openmc.deplete.Chain) – The depletion chain information necessary to form matrices and tallies.

  • reaction_rates (openmc.deplete.ReactionRates) – Reaction rates from the last operator step.

  • burnable_mats (list of str) – All burnable material IDs

  • heavy_metal (float) – Initial heavy metal inventory [g]

  • local_mats (list of str) – All burnable material IDs being managed by a single process

  • prev_res (Results or None) – Results from a previous depletion calculation. None if no results are to be used.

__call__(vec, source_rate)[source]

Obtain the reaction rates

Parameters
  • vec (list of numpy.ndarray) – Total atoms to be used in function.

  • source_rate (float) – Power in [W] or flux in [neutron/cm^2-s]

Returns

Eigenvalue and reaction rates resulting from transport operator

Return type

openmc.deplete.OperatorResult

classmethod from_nuclides(volume, nuclides, micro_xs, chain_file, nuc_units='atom/b-cm', keff=None, normalization_mode='fission-q', fission_q=None, dilute_initial=1000.0, prev_results=None, reduce_chain=False, reduce_chain_level=None, fission_yield_opts=None)[source]

Alternate constructor from a dictionary of nuclide concentrations

volumefloat

Volume of the material being depleted in [cm^3]

nuclidesdict of str to float

Dictionary with nuclide names as keys and nuclide concentrations as values.

micro_xsMicroXS

One-group microscopic cross sections.

chain_filestr

Path to the depletion chain XML file.

nuc_units{‘atom/cm3’, ‘atom/b-cm’}

Units for nuclide concentration.

keff2-tuple of float, optional

keff eigenvalue and uncertainty from transport calculation. Default is None.

normalization_mode{“fission-q”, “source-rate”}

Indicate how reaction rates should be calculated. "fission-q" uses the fission Q values from the depletion chain to compute the flux based on the power. "source-rate" uses the source rate (assumed to be neutron flux) to calculate the reaction rates.

fission_qdict, optional

Dictionary of nuclides and their fission Q values [eV]. If not given, values will be pulled from the chain_file. Only applicable if "normalization_mode" == "fission-q".

dilute_initialfloat

Initial atom density [atoms/cm^3] to add for nuclides that are zero in initial condition to ensure they exist in the decay chain. Only done for nuclides with reaction rates.

prev_resultsResults, optional

Results from a previous depletion calculation.

reduce_chainbool, optional

If True, use openmc.deplete.Chain.reduce() to reduce the depletion chain up to reduce_chain_level. Default is False.

reduce_chain_levelint, optional

Depth of the search when reducing the depletion chain. Only used if reduce_chain evaluates to true. The default value of None implies no limit on the depth.

fission_yield_optsdict of str to option, optional

Optional arguments to pass to the openmc.deplete.helpers.FissionYieldHelper class. Will be passed directly on to the helper. Passing a value of None will use the defaults for the associated helper.

initial_condition()[source]

Performs final setup and returns initial condition.

Returns

Total density for initial conditions.

Return type

list of numpy.ndarray