Corrections to activity calcs

Co-authored-by: Ethan Peterson <ethan.peterson@mit.edu>
This commit is contained in:
Jonathan Shimwell 2022-08-04 07:55:35 +01:00 committed by GitHub
parent 98c707ea07
commit c900e4784e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -927,23 +927,15 @@ class Material(IDManagerMixin):
cv.check_value('normalization', normalization, {'total', 'mass', 'volume'})
cv.check_type('by_nuclide', by_nuclide, bool)
if normalization=='total':
activity = {}
for nuclide, atoms in self.get_nuclide_atoms().items():
inv_seconds = openmc.data.decay_constant(nuclide)
activity[nuclide] = inv_seconds * atoms
elif normalization=='mass':
activity = {}
for nuclide, atoms in self.get_nuclide_atom_densities().items():
inv_seconds = openmc.data.decay_constant(nuclide)
activity[nuclide] = (inv_seconds * atoms * 1.0e24) / self.density
# normalization must be volume by this stage so else can be used
if normalization == 'total':
multiplier = self.volume
else:
activity = {}
for nuclide, atoms in self.get_nuclide_atom_densities().items():
inv_seconds = openmc.data.decay_constant(nuclide)
activity[nuclide] = (inv_seconds * atoms * 1.0e24) / self.volume
multiplier = 1 if normalization == 'volume' else 1.0 / self.get_mass_density()
activity = {}
for nuclide, atoms_per_bcm in self.get_nuclide_atom_densities().items():
inv_seconds = openmc.data.decay_constant(nuclide)
activity[nuclide] = inv_seconds * 1e24 * atoms_per_bcm * multiplier
if by_nuclide:
return activity