diff --git a/openmc/deplete/chain.py b/openmc/deplete/chain.py index 689546b86bf..8972e173591 100644 --- a/openmc/deplete/chain.py +++ b/openmc/deplete/chain.py @@ -655,7 +655,7 @@ def setval(i, j, val): # Allow for total annihilation for debug purposes if branch_val != 0.0: - if target is not None: + if target is not None and 'sf' not in decay_type: k = self.nuclide_dict[target] setval(k, i, branch_val) @@ -696,11 +696,12 @@ def setval(i, j, val): # Determine light nuclide production, e.g., (n,d) should # produce H2 - light_nucs = REACTIONS[r_type].secondaries - for light_nuc in light_nucs: - k = self.nuclide_dict.get(light_nuc) - if k is not None: - setval(k, i, path_rate * br) + if path_rate != 0.0: + light_nucs = REACTIONS[r_type].secondaries + for light_nuc in light_nucs: + k = self.nuclide_dict.get(light_nuc) + if k is not None: + setval(k, i, path_rate * br) else: for product, y in fission_yields[nuc.name].items():