armi.nuclearDataIO.xsNuclides module¶
This module contains cross section nuclides, which are a wrapper around the
INuclide
objects. The cross section nuclide objects contain
cross section information from a specific calculation (e.g. neutron, or gamma cross sections).
XSNuclide
objects also contain meta data from the original file, so that another file can be
reconstructed.
Warning
XSNuclide
objects should only be created by reading data into
XSLibrary
objects, and then retrieving them through their label
index (i.e. “PU39AA”).
-
class
armi.nuclearDataIO.xsNuclides.
XSNuclide
(xsCollection, xsCollectionKey)[source]¶ Bases:
armi.nucDirectory.nuclideBases.NuclideWrapper
A nuclide object for a specific library.
XSNuclide objects can contain GAMISO, ISOTXS, and PMATRX data all on a single instance.
-
_ensuredBurnInfo
= False¶
-
updateBaseNuclide
()[source]¶ Update which nuclide base this
XSNuclide
points to.Notes
During instantiation, not everything is available, only they user-supplied nuclide label, i.e.
containerKey
. During the read operation,
-
getMicroXS
(interaction, group)[source]¶ Returns the microscopic xs as the ISOTXS value if it exists or a 0 since it doesn’t
-
getXS
(interaction)[source]¶ Get the cross section of a particular interaction.
See also
armi.nucDirectory.homogRegion.getXS()
-
buildNormalizedScatterColumns
(scatterMatrixKey)[source]¶ Build normalized columns of a scatter matrix.
the vectors represent all scattering out of each group. The rows of the scatter matrix represent in-scatter and the columns represent out-scatter. So this sums up the columns.
- Returns
scatterWeights – keys are fromG indices, values are sparse matrix columns (size: Gx1) containing normalized columns of the scatter matrix.
- Return type
-
property
trans
¶ Get the transmutations for this nuclide.
Notes
This is a property wrapper around the base nuclide’s
trans
attribute
-
property
decays
¶ Get the decays for this nuclide.
Notes
This is a property wrapper around the base nuclide’s
decays
attribute
-
merge
(other)[source]¶ Merge the attributes of two XSNuclides.
- Parameters
other (armi.nuclearDataIO.xsNuclides.XSNuclide) – The other nuclide to merge information.
Notes
The merge is really more like “cannibalize” in that the object performing the merge takes on the attributes of the
other
. It isn’t necessary to create new objects for the newly merged attributes, because the 99% usage is only used during runtime, where the second XSNuclide, and it’s container (e.g. ISTOXS, GAMISO, etc.) are discarded after the merge.
-
-
armi.nuclearDataIO.xsNuclides.
_mergeAttributes
(this, other, attrName)[source]¶ Function for merging XSNuclide attributes.
Notes
This function checks to see that the attribute has only been assigned for a single instance, and then uses uses the one that has been assigned.
- Returns
- Return type
The proper value for the attribute.