diff --git a/docs/source/releasenotes/notes_0.5.2.rst b/docs/source/releasenotes/notes_0.5.2.rst index c50ca2fd19..d030615db7 100644 --- a/docs/source/releasenotes/notes_0.5.2.rst +++ b/docs/source/releasenotes/notes_0.5.2.rst @@ -19,7 +19,7 @@ New Features - Python script for mesh tally plotting - Isotopic abundances based on IUPAC 2009 when using -- Particle restart file +- Particle restart files for debugging - Code will abort after certain number of lost particles (defaults to 10) - Region outside lattice can be filled with material (void by default) - 3D voxel plots @@ -41,6 +41,7 @@ Bug Fixes - a3c593_: Fixed bug in use of free gas scattering for H-1. - 3a66e3_: Fixed bug in 2D mesh tally implementation. - ab0793_: Corrected PETSC_NULL references to their correct types. +- 182ebd_: Use analog estimator with energyout filter. .. _7632f3: https://github.com/mit-crpg/openmc/commit/7632f3 .. _f85ac4: https://github.com/mit-crpg/openmc/commit/f85ac4 @@ -53,3 +54,4 @@ Bug Fixes .. _a3c593: https://github.com/mit-crpg/openmc/commit/a3c593 .. _3a66e3: https://github.com/mit-crpg/openmc/commit/3a66e3 .. _ab0793: https://github.com/mit-crpg/openmc/commit/ab0793 +.. _182ebd: https://github.com/mit-crpg/openmc/commit/182ebd diff --git a/docs/source/usersguide/install.rst b/docs/source/usersguide/install.rst index 077befb5be..ef01aeff7f 100644 --- a/docs/source/usersguide/install.rst +++ b/docs/source/usersguide/install.rst @@ -239,7 +239,8 @@ Cross Section Configuration In order to run a simulation with OpenMC, you will need cross section data for each nuclide in your problem. Since OpenMC uses ACE format cross sections, you can use nuclear data that was processed with NJOY, such as that distributed with -MCNP_ or Serpent_. +MCNP_ or Serpent_. The TALYS-based evaluated nuclear data library, TENDL_, is +openly available in ACE format. Using JEFF Cross Sections from OECD/NEA --------------------------------------- @@ -292,6 +293,7 @@ file. .. _here: http://www.oecd-nea.org/dbdata/pubs/jeff312-cd.html .. _MCNP: http://mcnp.lanl.gov .. _Serpent: http://montecarlo.vtt.fi +.. _TENDL: ftp://ftp.nrg.eu/pub/www/talys/tendl2012/tendl2012.html -------------- Running OpenMC diff --git a/src/cmfd_execute.F90 b/src/cmfd_execute.F90 index 197a6ec561..7588d11a52 100644 --- a/src/cmfd_execute.F90 +++ b/src/cmfd_execute.F90 @@ -36,11 +36,6 @@ contains cmfd_act_flush, current_batch, keff, & n_batches, message, master, mpi_err, rank - logical :: leave_cmfd - - ! set leave cmfd to false - leave_cmfd = .false. - ! stop cmfd timer if (master) then call time_cmfd % start() @@ -60,17 +55,6 @@ contains end if - ! check to hold weights - 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 - call MPI_BCAST(leave_cmfd, 1, MPI_LOGICAL, 0, MPI_COMM_WORLD, mpi_err) - if (leave_cmfd) return - ! filter processors (lowest PETSc group) if (rank < n_procs_cmfd) then @@ -100,19 +84,6 @@ contains end if - ! check to hold weights - if ((abs(cmfd%keff-keff)/keff > cmfd_keff_tol)) then - if (current_batch >= cmfd_inact_flush(1) .or. & - current_batch >= cmfd_act_flush - 1 ) then - message = 'Not Modifying Weights - keff %diff > 0.005, up batch size' - call warning() - if (cmfd_feedback) call cmfd_reweight(.false.) - leave_cmfd = .true. - end if - end if - call MPI_BCAST(leave_cmfd, 1, MPI_LOGICAL, 0, MPI_COMM_WORLD, mpi_err) - if (leave_cmfd) return - ! calculate fission source call calc_fission_source() diff --git a/src/input_xml.F90 b/src/input_xml.F90 index 45abaf9a2e..229282bfe1 100644 --- a/src/input_xml.F90 +++ b/src/input_xml.F90 @@ -1747,6 +1747,9 @@ contains tally_(i) % filter(j) % bins(k)) end do + ! Set to analog estimator + t % estimator = ESTIMATOR_ANALOG + case default ! Specified tally filter is invalid, raise error message = "Unknown filter type '" // trim(tally_(i) % & @@ -1958,6 +1961,7 @@ contains end if case ('scatter') t % score_bins(j) = SCORE_SCATTER + case ('nu-scatter') t % score_bins(j) = SCORE_NU_SCATTER diff --git a/src/output.F90 b/src/output.F90 index 9ecc629c09..f19148fb02 100644 --- a/src/output.F90 +++ b/src/output.F90 @@ -1419,16 +1419,20 @@ contains gen_per_batch) / time_active % elapsed end if else - speed_inactive = real(n_particles * n_inactive * gen_per_batch) / & - time_inactive % elapsed + if (n_inactive > 0) then + speed_inactive = real(n_particles * n_inactive * gen_per_batch) / & + time_inactive % elapsed + end if speed_active = real(n_particles * n_active * gen_per_batch) / & time_active % elapsed end if ! display calculation rate - string = to_str(speed_inactive) - if (.not. (restart_run .and. (restart_batch >= n_inactive))) & - write(ou,101) "Calculation Rate (inactive)", trim(string) + if (.not. (restart_run .and. (restart_batch >= n_inactive)) & + .and. n_inactive > 0) then + string = to_str(speed_inactive) + write(ou,101) "Calculation Rate (inactive)", trim(string) + end if string = to_str(speed_active) write(ou,101) "Calculation Rate (active)", trim(string)