Operator aborts in unpacking, not call, if no energy produced

This commit is contained in:
Andrew Johnson 2019-09-17 12:17:49 -05:00
parent 6b386f8447
commit cfbd4f2fd6
No known key found for this signature in database
GPG key ID: 253418E91B7F6FEB

View file

@ -277,16 +277,7 @@ class Operator(TransportOperator):
time_openmc = time.time()
# Extract results
try:
op_result = self._unpack_tallies_and_normalize(power)
except ZeroDivisionError:
if comm.rank == 0:
sys.stderr.flush()
print(" No energy reported from openmc tallies. Do you have "
"MT901 data?\n", file=sys.stderr, flush=True)
comm.barrier()
comm.Abort(1)
op_result = self._unpack_tallies_and_normalize(power)
return copy.deepcopy(op_result)
@ -671,7 +662,12 @@ class Operator(TransportOperator):
# Guard against divide by zero
if energy == 0:
raise ZeroDivisionError
if comm.rank == 0:
sys.stderr.flush()
print(" No energy reported from OpenMC tallies. Do your HDF5 "
"files have heating data?\n", file=sys.stderr, flush=True)
comm.barrier()
comm.Abort(1)
# Scale reaction rates to obtain units of reactions/sec
rates *= power / energy