simplified hotfix version of PR 440

This commit is contained in:
walshjon 2015-08-13 23:07:45 -07:00
parent fc5fd61b7f
commit e1868225dd
3 changed files with 28 additions and 64 deletions

View file

@ -6,8 +6,7 @@ module fixed_source
use constants, only: ZERO, MAX_LINE_LEN
use global
use output, only: write_message, header, print_mean_leak,&
print_columns
use output, only: write_message, header
use particle_header, only: Particle
use random_lcg, only: set_particle_seed
use source, only: sample_external_source, copy_source_attributes
@ -27,7 +26,6 @@ contains
type(Particle) :: p
if (master) call header("FIXED SOURCE TRANSPORT SIMULATION", level=1)
if (master) call print_columns()
! Allocate particle and dummy source site
!$omp parallel
@ -132,12 +130,6 @@ contains
call synchronize_tallies()
call time_tallies % stop()
leak = global_tallies(LEAKAGE) % sum / n_realizations
leak_sem = sqrt(ONE / (n_realizations - ONE) &
* (global_tallies(LEAKAGE) % sum_sq / n_realizations&
- leak * leak))
if (master) call print_mean_leak()
! Check_triggers
if (master) call check_triggers()
#ifdef MPI

View file

@ -200,10 +200,6 @@ module global
real(8) :: k_abs_tra = ZERO ! sum over batches of k_absorption * k_tracklength
real(8) :: k_combined(2) ! combined best estimate of k-effective
! Temorary leakage values
real(8) :: leak ! running mean leakage
real(8) :: leak_sem ! 1sigma SEM of the running mean leakage
! Shannon entropy
logical :: entropy_on = .false.
real(8), allocatable :: entropy(:) ! shannon entropy at each generation

View file

@ -1346,44 +1346,35 @@ contains
subroutine print_columns()
select case(run_mode)
case(MODE_EIGENVALUE)
write(UNIT=ou, FMT='(2X,A9,3X)', ADVANCE='NO') "Bat./Gen."
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') " k "
if (entropy_on) write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "Entropy "
write(UNIT=ou, FMT='(A20,3X)', ADVANCE='NO') " Average k "
if (cmfd_run) then
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') " CMFD k "
select case(trim(cmfd_display))
case('entropy')
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "CMFD Ent"
case('balance')
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "RMS Bal "
case('source')
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "RMS Src "
case('dominance')
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "Dom Rat "
end select
end if
write(UNIT=ou, FMT=*)
write(UNIT=ou, FMT='(2X,A9,3X)', ADVANCE='NO') "Bat./Gen."
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') " k "
if (entropy_on) write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "Entropy "
write(UNIT=ou, FMT='(A20,3X)', ADVANCE='NO') " Average k "
if (cmfd_run) then
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') " CMFD k "
select case(trim(cmfd_display))
case('entropy')
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "CMFD Ent"
case('balance')
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "RMS Bal "
case('source')
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "RMS Src "
case('dominance')
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "Dom Rat "
end select
end if
write(UNIT=ou, FMT=*)
write(UNIT=ou, FMT='(2X,A9,3X)', ADVANCE='NO') "========="
write(UNIT=ou, FMT='(2X,A9,3X)', ADVANCE='NO') "========="
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "========"
if (entropy_on) write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "========"
write(UNIT=ou, FMT='(A20,3X)', ADVANCE='NO') "===================="
if (cmfd_run) then
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "========"
if (entropy_on) write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "========"
write(UNIT=ou, FMT='(A20,3X)', ADVANCE='NO') "===================="
if (cmfd_run) then
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "========"
if (cmfd_display /= '') &
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "========"
end if
write(UNIT=ou, FMT=*)
case(MODE_FIXEDSOURCE)
write(ou, '(A10)', advance='no') 'Batch'
write(ou, '(A24)', advance='no') 'Mean Leakage'
write(ou, '(A24)') '1sigma SEM'
case default
continue
end select
if (cmfd_display /= '') &
write(UNIT=ou, FMT='(A8,3X)', ADVANCE='NO') "========"
end if
write(UNIT=ou, FMT=*)
end subroutine print_columns
@ -1463,21 +1454,6 @@ contains
end subroutine print_batch_keff
!===============================================================================
! PRINT_MEAN_LEAK displays the overall mean system leakage and 1sigma SEM at
! each batch
!===============================================================================
subroutine print_mean_leak()
! write out information batch and option independent output
write(ou, '(A10)', advance='no') trim(to_str(current_batch))
write(ou, '(ES24.16)', advance='no') leak
if (n_realizations > 1) write(ou, '(ES24.16)', advance='no') leak_sem
write(ou, *)
end subroutine print_mean_leak
!===============================================================================
! PRINT_PLOT displays selected options for plotting
!===============================================================================