reactivated use of inactive flushes for user input, and now cmfd weights are held on the batch right after tally flush

This commit is contained in:
Bryan Herman 2012-11-27 06:01:41 -08:00
parent cbbe1ab392
commit b3a4779e6e
3 changed files with 10 additions and 4 deletions

View file

@ -66,6 +66,7 @@ contains
if (cmfd_hold_weights) then
message = 'Not Modifying Weights - Albedo estimate not good, increase batch size.'
call warning()
cmfd_hold_weights = .false.
if (cmfd_feedback) call cmfd_reweight(.false.)
leave_cmfd = .true.
end if
@ -144,7 +145,7 @@ contains
use global, only: cmfd_begin, cmfd_on, &
cmfd_tally_on, n_inactive, &
cmfd_inact_flush, cmfd_act_flush, cmfd_run, &
current_batch
current_batch, cmfd_hold_weights
! check to activate CMFD diffusion and possible feedback
! this guarantees that when cmfd begins at least one batch of tallies are
@ -152,6 +153,8 @@ contains
if (cmfd_run .and. cmfd_begin == current_batch) then
cmfd_on = .true.
cmfd_tally_on = .true.
cmfd_hold_weights = .true.
call cmfd_tally_reset()
end if
! check to flush cmfd tallies for active batches, no more inactive flush
@ -167,8 +170,8 @@ contains
! if (cmfd_run .and. current_batch < n_inactive .and. mod(current_batch-1,cmfd_inact_flush(1)) &
! == 0 .and. cmfd_inact_flush(2) >= 0) then
if (cmfd_run .and. mod(current_batch,cmfd_inact_flush(1)) &
== 0 .and. cmfd_inact_flush(2) > 0) then
== 0 .and. cmfd_inact_flush(2) > 0 .and. cmfd_begin < current_batch) then
cmfd_hold_weights = .true.
call cmfd_tally_reset()
cmfd_inact_flush(2) = cmfd_inact_flush(2) - 1
end if

View file

@ -137,7 +137,8 @@ contains
cmfd_tally_on = inactive_
! inactive batch flush window
! cmfd_inact_flush = inactive_flush_
cmfd_inact_flush(1) = inactive_flush_
cmfd_inact_flush(2) = num_flushes_
! last flush before active batches
cmfd_act_flush = active_flush_

View file

@ -33,5 +33,7 @@
<variable name="inactive_" tag="inactive" type="logical" default=".true." />
<variable name="active_flush_" tag="active_flush" type="integer" default="0" />
<variable name="keff_tol_" tag="keff_tol" type="double" default="0.005" />
<variable name="inactive_flush_" tag="inactive_flush" type="integer" default="9999" />
<variable name="num_flushes_" tag="num_flushes" type="integer" default="1" />
</template>