armi.physics.neutronics.fissionProductModel.lumpedFissionProduct module

The lumped fission product (LFP) module deals with representing LFPs and loading them from files.

These are generally managed by the FissionProductModel

class armi.physics.neutronics.fissionProductModel.lumpedFissionProduct.LumpedFissionProduct(name=None)[source]

Bases: object

Lumped fission product.

The yields are in number fraction and they sum to 2.0 in general so a fission of an actinide results in one LFP, which represents 2 real FPs.

This object is a data structure and works a lot like a dictionary in terms of accessing and modifying the data.

The yields are indexed by nuclideBase – in self.yld the yield fraction is indexed by nuclideBases of the individual fission product isotopes

Examples

>>> fpd = FissionProductDefinitionFile(stream)
>>> lfp = fpd.createSingleLFPFromFile('LFP39')
>>> lfp[<nuclidebase for EU151>]
2.9773e-05

Make an LFP.

Parameters:

name (str, optional) – A name for the LFP. Will be overwritten if you load from file. Provide only if you are spinning your own custom LFPs.

duplicate()[source]

Make a copy of this w/o using deepcopy.

keys()[source]
values()[source]
items()[source]
getGaseousYieldFraction()[source]

Return the yield fraction of the gaseous nuclides.

getTotalYield()[source]

Get the fractional yield of all nuclides in this lumped fission product.

Accounts for any fission gas that may be removed.

Return type:

total yield of all fps

getMassFracs()[source]

Return a dictionary of mass fractions indexed by nuclide.

Returns:

massFracs – mass fractions (floats) of LFP masses

Return type:

dict

getMassFrac(nucName=None, nuclideBase=None)[source]

Return the mass fraction of the given nuclide.

Return type:

nuclide mass fraction (float)

getMassFracDenom()[source]
class armi.physics.neutronics.fissionProductModel.lumpedFissionProduct.LumpedFissionProductCollection[source]

Bases: dict

A set of lumped fission products.

Typically there would be one of these on a block or on a global level.

duplicate()[source]
getLumpedFissionProductNames()[source]
getAllFissionProductNames()[source]

Gets names of all fission products in this collection.

getAllFissionProductNuclideBases()[source]

Gets names of all fission products in this collection.

getNumberDensities(objectWithParentDensities=None, densFunc=None)[source]

Gets all FP number densities in collection.

Parameters:
  • objectWithParentDensities (ArmiObject) – object (probably block) that can be called with getNumberDensity(‘LFP35’), etc. to get densities of LFPs.

  • densFunc (function, optional) – Optional method to extract LFP densities

Returns:

fpDensities – keys are fp names, vals are fission product number density in atoms/bn-cm.

Return type:

dict

getMassFrac(oldMassFrac=None)[source]

Returns the mass fraction vector of the collection of lumped fission products.

class armi.physics.neutronics.fissionProductModel.lumpedFissionProduct.FissionProductDefinitionFile(stream)[source]

Bases: object

Reads a file that has definitions of one or more LFPs in it to produce LFPs.

The format for this file is as follows:

LFP35 GE73  5.9000E-06
LFP35 GE74  1.4000E-05
LFP35 GE76  1.6000E-04
LFP35 AS75  8.9000E-05

and so on

Examples

>>> fpd = FissionProductDefinitionFile(stream)
>>> lfps = fpd.createLFPsFromFile()

The path to this file is specified by the lfpCompositionFilePath user setting.

createLFPsFromFile()[source]

Read the file and create LFPs from the contents.

Returns:

lfps – List of LumpedFissionProducts contained in the file

Return type:

list

createSingleLFPFromFile(name)[source]

Read one LFP from the file.

armi.physics.neutronics.fissionProductModel.lumpedFissionProduct.lumpedFissionProductFactory(cs)[source]

Build lumped fission products.

armi.physics.neutronics.fissionProductModel.lumpedFissionProduct.isGas(nuc)[source]

True if nuclide is considered a gas.