.. _pythonapi_deplete: ---------------------------------- :mod:`openmc.deplete` -- Depletion ---------------------------------- .. module:: openmc.deplete Several classes are provided that implement different time-integration algorithms for depletion calculations, which are described in detail in Colin Josey's thesis, `Development and analysis of high order neutron transport-depletion coupling algorithms `_. .. autosummary:: :toctree: generated :nosignatures: :template: myintegrator.rst PredictorIntegrator CECMIntegrator CELIIntegrator CF4Integrator EPCRK4Integrator LEQIIntegrator SICELIIntegrator SILEQIIntegrator Each of these classes expects a "transport operator" to be passed. An operator specific to OpenMC is available using the following class: .. autosummary:: :toctree: generated :nosignatures: :template: myclass.rst Operator When running in parallel using `mpi4py `_, the MPI intercommunicator used can be changed by modifying the following module variable. If it is not explicitly modified, it defaults to ``mpi4py.MPI.COMM_WORLD``. .. data:: comm MPI intercommunicator used to call OpenMC library :type: mpi4py.MPI.Comm Internal Classes and Functions ------------------------------ During a depletion calculation, the depletion chain, reaction rates, and number densities are managed through a series of internal classes that are not normally visible to a user. However, should you find yourself wondering about these classes (e.g., if you want to know what decay modes or reactions are present in a depletion chain), they are documented here. The following classes store data for a depletion chain: .. autosummary:: :toctree: generated :nosignatures: :template: myclass.rst Chain DecayTuple Nuclide ReactionTuple FissionYieldDistribution FissionYield The following classes are used during a depletion simulation and store auxiliary data, such as number densities and reaction rates for each material. .. autosummary:: :toctree: generated :nosignatures: :template: myclass.rst AtomNumber OperatorResult ReactionRates Results ResultsList The following classes are used to help the :class:`openmc.deplete.Operator` compute quantities like effective fission yields, reaction rates, and total system energy. .. autosummary:: :toctree: generated :nosignatures: :template: myclass.rst helpers.AveragedFissionYieldHelper helpers.ChainFissionHelper helpers.ConstantFissionYieldHelper helpers.DirectReactionRateHelper helpers.FissionYieldCutoffHelper The following classes are abstract classes that can be used to extend the :mod:`openmc.deplete` capabilities: .. autosummary:: :toctree: generated :nosignatures: :template: myclass.rst EnergyHelper FissionYieldHelper ReactionRateHelper TalliedFissionYieldHelper TransportOperator Custom integrators can be developed by subclassing from the following abstract base classes: .. autosummary:: :toctree: generated :nosignatures: :template: myintegrator.rst Integrator SIIntegrator Each of the integrator classes also relies on a number of "helper" functions as follows: .. autosummary:: :toctree: generated :nosignatures: :template: myfunction.rst cram.CRAM16 cram.CRAM48