openmc.deplete.IndependentOperator

class openmc.deplete.IndependentOperator(materials, fluxes, micros, chain_file=None, keff=None, normalization_mode='fission-q', fission_q=None, 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.

Note that passing an empty MicroXS instance to the micro_xs argument allows a decay-only calculation to be run.

New in version 0.13.1.

Changed in version 0.14.0: Arguments updated to include list of fluxes and microscopic cross sections.

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

  • fluxes (list of numpy.ndarray) – Flux in each group in [n-cm/src] for each domain

  • micros (list of MicroXS) – Cross sections in [b] for each domain. If the MicroXS object is empty, a decay-only calculation will be run.

  • 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".

  • 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].

  • 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, flux, micro_xs, chain_file=None, nuc_units='atom/b-cm', keff=None, normalization_mode='fission-q', fission_q=None, 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.

fluxnumpy.ndarray

Flux in each group in [n-cm/src]

micro_xsMicroXS

Cross sections in [b]. If the MicroXS object is empty, a decay-only calculation will be run.

chain_filestr, optional

Path to the depletion chain XML file. Defaults to openmc.config['chain_file'].

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

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".

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