changed how estimator scoring routines are called, now called if tallies are in active tally list. this will work for inactive tallies now

This commit is contained in:
Bryan Herman 2012-08-27 08:22:43 -07:00
parent cacd776fc3
commit 05b97500ef
2 changed files with 16 additions and 15 deletions

View file

@ -260,15 +260,15 @@ contains
! forward slightly so that if the mesh boundary is on the surface, it is
! still processed
if (associated(active_current_tallies)) then
! TODO: Find a better solution to score surface currents than
! physically moving the particle forward slightly
p % coord0 % xyz = p % coord0 % xyz + TINY_BIT * p % coord0 % uvw
call score_surface_current()
end if
if (tallies_on) then
if (n_current_tallies > 0) then
! TODO: Find a better solution to score surface currents than
! physically moving the particle forward slightly
p % coord0 % xyz = p % coord0 % xyz + TINY_BIT * p % coord0 % uvw
call score_surface_current()
end if
! Score to global leakage tally
call add_to_score(global_tallies(LEAKAGE), p % wgt)
end if
@ -295,7 +295,7 @@ contains
! particle to change -- artificially move the particle slightly back in
! case the surface crossing in coincident with a mesh boundary
if (tallies_on .and. n_current_tallies > 0) then
if (associated(active_current_tallies)) then
p % coord0 % xyz = p % coord0 % xyz - TINY_BIT * p % coord0 % uvw
call score_surface_current()
p % coord0 % xyz = p % coord0 % xyz + TINY_BIT * p % coord0 % uvw

View file

@ -99,11 +99,12 @@ contains
coord => coord % next
end do
if (tallies_on) then
! Score track-length tallies
if (n_tracklength_tallies > 0) &
call score_tracklength_tally(distance)
! Score track-length tallies
if (associated(active_tracklength_tallies)) &
call score_tracklength_tally(distance)
! Score global tracklength tallies
if (tallies_on) then
! Score track-length estimate of k-eff
call add_to_score(global_tallies(K_TRACKLENGTH), &
p % wgt * distance * material_xs % nu_fission)
@ -195,7 +196,7 @@ contains
! since the direction of the particle will change and we need to use the
! pre-collision direction to figure out what mesh surfaces were crossed
if (tallies_on .and. n_current_tallies > 0) &
if (associated(active_current_tallies)) &
call score_surface_current()
! Sample nuclide/reaction for the material the particle is in
@ -229,7 +230,7 @@ contains
! information on the outgoing energy for any tallies with an outgoing energy
! filter
if (tallies_on .and. n_analog_tallies > 0) &
if (associated(active_analog_tallies)) &
call score_analog_tally()
! Reset banked weight during collision