Allow control over status messages in Chain.from_endf

This commit is contained in:
Andrew Johnson 2020-01-24 10:42:55 -05:00
parent d4ad3cfb75
commit 0f2863b488
No known key found for this signature in database
GPG key ID: C40EC2D0985B2B02

View file

@ -189,7 +189,7 @@ class Chain(object):
return len(self.nuclides)
@classmethod
def from_endf(cls, decay_files, fpy_files, neutron_files):
def from_endf(cls, decay_files, fpy_files, neutron_files, progress=True):
"""Create a depletion chain from ENDF files.
Parameters
@ -200,12 +200,20 @@ class Chain(object):
List of ENDF neutron-induced fission product yield sub-library files
neutron_files : list of str
List of ENDF neutron reaction sub-library files
progress : bool, optional
Flag to print status messages during processing. Does not
effect warning messages
Returns
-------
Chain
"""
chain = cls()
# Create dictionary mapping target to filename
print('Processing neutron sub-library files...')
if progress:
print('Processing neutron sub-library files...')
reactions = {}
for f in neutron_files:
evaluation = openmc.data.endf.Evaluation(f)
@ -219,7 +227,8 @@ class Chain(object):
reactions[name][mt] = q_value
# Determine what decay and FPY nuclides are available
print('Processing decay sub-library files...')
if progress:
print('Processing decay sub-library files...')
decay_data = {}
for f in decay_files:
data = openmc.data.Decay(f)
@ -228,13 +237,15 @@ class Chain(object):
continue
decay_data[data.nuclide['name']] = data
print('Processing fission product yield sub-library files...')
if progress:
print('Processing fission product yield sub-library files...')
fpy_data = {}
for f in fpy_files:
data = openmc.data.FissionProductYields(f)
fpy_data[data.nuclide['name']] = data
print('Creating depletion_chain...')
if progress:
print('Creating depletion_chain...')
missing_daughter = []
missing_rx_product = []
missing_fpy = []