mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-28 22:26:08 -04:00
Avoid divide-by-zero warnings in tally arithmetic
This commit is contained in:
parent
bd5b7afc2d
commit
0b6333810f
1 changed files with 9 additions and 6 deletions
|
|
@ -1674,19 +1674,22 @@ class Tally(IDManagerMixin):
|
|||
new_tally._std_dev = np.sqrt(data['self']['std. dev.']**2 +
|
||||
data['other']['std. dev.']**2)
|
||||
elif binary_op == '*':
|
||||
self_rel_err = data['self']['std. dev.'] / data['self']['mean']
|
||||
other_rel_err = data['other']['std. dev.'] / data['other']['mean']
|
||||
with np.errstate(divide='ignore', invalid='ignore'):
|
||||
self_rel_err = data['self']['std. dev.'] / data['self']['mean']
|
||||
other_rel_err = data['other']['std. dev.'] / data['other']['mean']
|
||||
new_tally._mean = data['self']['mean'] * data['other']['mean']
|
||||
new_tally._std_dev = np.abs(new_tally.mean) * \
|
||||
np.sqrt(self_rel_err**2 + other_rel_err**2)
|
||||
elif binary_op == '/':
|
||||
self_rel_err = data['self']['std. dev.'] / data['self']['mean']
|
||||
other_rel_err = data['other']['std. dev.'] / data['other']['mean']
|
||||
new_tally._mean = data['self']['mean'] / data['other']['mean']
|
||||
with np.errstate(divide='ignore', invalid='ignore'):
|
||||
self_rel_err = data['self']['std. dev.'] / data['self']['mean']
|
||||
other_rel_err = data['other']['std. dev.'] / data['other']['mean']
|
||||
new_tally._mean = data['self']['mean'] / data['other']['mean']
|
||||
new_tally._std_dev = np.abs(new_tally.mean) * \
|
||||
np.sqrt(self_rel_err**2 + other_rel_err**2)
|
||||
elif binary_op == '^':
|
||||
mean_ratio = data['other']['mean'] / data['self']['mean']
|
||||
with np.errstate(divide='ignore', invalid='ignore'):
|
||||
mean_ratio = data['other']['mean'] / data['self']['mean']
|
||||
first_term = mean_ratio * data['self']['std. dev.']
|
||||
second_term = \
|
||||
np.log(data['self']['mean']) * data['other']['std. dev.']
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue