armi.physics.neutronics package¶
The neutronics physics package in the ARMI framework.
Neutronics encompasses the modeling of nuclear chain reactions and their associated transmutation and decay.
The ARMI Framework comes with a neutronics plugin that introduces two independent interfaces:
fissionProductModel
Handles fission product modeling
crossSectionGroupManager
Handles the management of different cross section “groups”
Warning
There is also some legacy and question-raising code in this module that is here temporarily while we finish untangling some of the neutronics plugins outside of ARMI.
- class armi.physics.neutronics.NeutronicsPlugin[source]¶
Bases:
armi.plugins.ArmiPlugin
The built-in neutronics plugin with a few capabilities and a lot of state parameter definitions.
- static exposeInterfaces(cs)[source]¶
Collect and expose all of the interfaces that live under the built-in neutronics package
- static defineParameters()[source]¶
Function for defining additional parameters.
- Returns
Keys should be subclasses of ArmiObject, values being a ParameterDefinitionCollection should be added to the key’s perameter definitions.
- Return type
Example
>>> pluginBlockParams = parameters.ParameterDefinitionCollection() >>> with pluginBlockParams.createBuilder() as pb: ... pb.defParam("plugBlkP1", ...) ... # ... ... >>> pluginAssemParams = parameters.ParameterDefinitionCollection() >>> with pluginAssemParams.createBuilder() as pb: ... pb.defParam("plugAsmP1", ...) ... # ... ... >>> return { ... blocks.Block: pluginBlockParams, ... assemblies.Assembly: pluginAssemParams ... }
- static defineEntryPoints()[source]¶
Return new entry points for the ARMI CLI
This hook allows plugins to provide their own ARMI entry points, which each serve as a command in the command-line interface.
- Returns
class objects which derive from the base EntryPoint class.
- Return type
- static defineSettings()[source]¶
Define configuration settings for this plugin.
This hook allows plugins to provide their own configuration settings, which can participate in the
armi.settings.caseSettings.CaseSettings
. Plugins may provide entirely new settings to what are already provided by ARMI, as well as new options or default values for existing settings. For instance, the framework provides aneutronicsKernel
setting for selecting which global physics solver to use. Since we wish to enforce that the user specify a valid kernel, the settings validator will check to make sure that the user’s requested kernel is among the available options. If a plugin were to provide a new neutronics kernel (let’s say MCNP), it should also define a new option to tell the settings system that"MCNP"
is a valid option.- Returns
A list of Settings, Options, or Defaults to be registered.
- Return type
- armi.physics.neutronics.gammaTransportIsRequested(cs)[source]¶
Check if gamma transport was requested by the user.
- Parameters
cs (ARMI settings object) – Object containing the default and user-specified ARMI settings controlling the simulation
- Returns
flag – Returns true if gamma transport is requested.
- Return type
- armi.physics.neutronics.gammaXsAreRequested(cs)[source]¶
Check if gamma cross-sections generation was requested by the user.
- Parameters
cs (ARMI settings object) – Object containing the default and user-specified ARMI settings controlling the simulation.
- Returns
flag – Returns true if gamma cross section generation is requested.
- Return type
- armi.physics.neutronics.adjointCalculationRequested(cs)[source]¶
Return true if an adjoint calculation is requested based on the
neutronicsType
setting.
- armi.physics.neutronics.realCalculationRequested(cs)[source]¶
Return true if a real calculation is requested based on the
neutronicsType
type setting.
- armi.physics.neutronics.applyEffectiveDelayedNeutronFractionToCore(core, cs)[source]¶
Process the settings for the delayed neutron fraction and precursor decay constants.
Subpackages¶
Submodules¶
- armi.physics.neutronics.const module
- armi.physics.neutronics.crossSectionGroupManager module
- armi.physics.neutronics.crossSectionSettings module
- armi.physics.neutronics.diffIsotxs module
- armi.physics.neutronics.energyGroups module
- armi.physics.neutronics.macroXSGenerationInterface module
- armi.physics.neutronics.parameters module
- armi.physics.neutronics.reports module
- armi.physics.neutronics.settings module