From b50a9db628a77f9768f843afefac515733db9b2c Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Fri, 28 Oct 2016 11:43:08 -0500 Subject: [PATCH] Fix bug with tallying prompt and recoverable Q --- src/tally.F90 | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/tally.F90 b/src/tally.F90 index 978f26d7b..c44d5f787 100644 --- a/src/tally.F90 +++ b/src/tally.F90 @@ -897,6 +897,8 @@ contains end if case (SCORE_FISS_Q_PROMPT) + score = ZERO + if (t % estimator == ESTIMATOR_ANALOG) then if (survival_biasing) then ! No fission events occur if survival biasing is on -- need to @@ -938,11 +940,8 @@ contains if (allocated(nuclides(i_nuclide) % fission_q_prompt)) then score = micro_xs(i_nuclide) % fission * atom_density * flux & * nuclides(i_nuclide) % fission_q_prompt % evaluate(E) - else - score = ZERO end if else - score = ZERO do l = 1, materials(p % material) % n_nuclides atom_density_ = materials(p % material) % atom_density(l) i_nuc = materials(p % material) % nuclide(l) @@ -956,6 +955,8 @@ contains end if case (SCORE_FISS_Q_RECOV) + score = ZERO + if (t % estimator == ESTIMATOR_ANALOG) then if (survival_biasing) then ! No fission events occur if survival biasing is on -- need to @@ -997,11 +998,8 @@ contains if (allocated(nuclides(i_nuclide) % fission_q_recov)) then score = micro_xs(i_nuclide) % fission * atom_density * flux & * nuclides(i_nuclide) % fission_q_recov % evaluate(E) - else - score = ZERO end if else - score = ZERO do l = 1, materials(p % material) % n_nuclides atom_density_ = materials(p % material) % atom_density(l) i_nuc = materials(p % material) % nuclide(l) @@ -1607,7 +1605,6 @@ contains t % results(score_index, filter_index) % value = & t % results(score_index, filter_index) % value + score - end select end subroutine expand_and_score