What’s New in 0.12.0¶
This release of OpenMC includes an assortment of new features and many bug fixes.
In particular, the
openmc.deplete module has been heavily tested which
has resulted in a number of usability improvements, bug fixes, and other
enhancements. Energy deposition calculations, particularly for coupled
neutron-photon simulations, have been improved as well.
Improvements in modeling capabilities continue to be added to the code,
including the ability to rotate surfaces in the Python API, several new
“composite” surfaces, a variety of new methods on
unstructured mesh tallies that leverage the existing DAGMC infrastructure,
effective dose coefficients from ICRP-116, and a new cell instance tally
- All surfaces now have a rotate method that allows them to be rotated.
- Several “composite” surfaces, which are actually composed of multiple surfaces but can be treated as a normal surface through the -/+ unary operators, have been added. These include:
- Various improvements related to depletion:
- The matrix exponential solver can now be configured through the solver argument on depletion integrator classes.
openmc.deplete.Chain.reduce()method can automatically reduce the number of nuclides in a depletion chain.
- Depletion integrator classes now allow a user to specify timesteps in several units (s, min, h, d, MWd/kg).
openmc.deplete.ResultsList.get_atoms()now allows a user to obtain depleted material compositions in atom/b-cm.
- Several new methods on
openmc.Material.add_elements_from_formula()method allows a user to create a material based on a chemical formula.
openmc.Material.add_element()now supports the enrichment argument for non-uranium elements when only two isotopes are naturally occurring.
openmc.Material.add_element()now supports adding elements by name rather than by symbol.
openmc.Material.get_elements()method returns a list of elements within a material.
openmc.Material.mix_materials()method allows multiple materials to be mixed together based on atom, weight, or volume fractions.
- The acceptable number of lost particles can now be configured through
- Delayed photons produced from fission are now accounted for by default by
scaling the yield of prompt fission photons. This behavior can be modified
- A trigger can now be specified for a volume calculation via the
openmc.stats.CylindricalIndependentclasses allow a user to specify source distributions based on spherical or cylindrical coordinates.
- Custom external source distributions can be used via the
- Unstructured mesh class,
openmc.UnstructuredMesh, that can be used in tallies.
openmc.CellInstanceFilterclass allows one or more instances of a repeated cell to be tallied. This is effectively a more flexible version of the existing
openmc.data.dose_coefficients()function provides effective dose coefficients from ICRP-116 and can be used in conjunction with
openmc.EnergyFunctionFilterin a tally.
- Keep user-supplied prev_results on operator
- Fix bug when S(a,b) tables appear in depletable material
- DAGMC fix for implicit complement material assignment
- Bug fix for tallying reaction rates in coupled n-p runs
- Corrected issue with multiplicity matrix
- Fix depletion with photon transport
- Fix secondary photon creation
- Bug fix for total xs plotting
- Account for light nuclide production in depletion
- Reset timer in depletion calculations
- Fix for Model.run
- Ensure NJOY output goes to specified directory
- Fix bug preventing creating photon data
- Fix bug when surface ID > 999999
- Fix bug for reading output settings in Settings.from_xml
- Fix improve energy deposition for coupled neutron-photon
- Use number of particles for tally normalization
- Fix a number of problems related to photoatomic data
- Fix cosine smearing for S(a,b)
- Use relative distances for coincidence test in hex lattice
- Fix RPATH for non-Debian linux systems
- Fix mesh plotter energy filter bins
- Fix memory leak
- Fix volume allocation related to burnable materials
- Fix tally mesh bug for short tracks
- DAGMC void material assignment fix
- Fix for Mesh __repr__ methods
This release contains new contributions from the following people:
- Paul Cosgrove
- Steven Dargaville
- Andrew Davis
- Iurii Drobyshev
- Guillaume Giudicelli
- Alec Golas
- Avery Grieve
- Sterling Harper
- Yuan Hu
- Yue Jin
- Andrew Johnson
- Mikolaj Kowalski
- Shikhar Kumar
- Jingang Liang
- David Long
- Amanda Lund
- Alex Lyons
- Adam Nelson
- Ethan Peterson
- Sam Powell-Gill
- Ariful Islam Pranto
- Simon Richards
- Gavin Ridley
- Paul Romano
- Jonathan Shimwell
- Patrick Shriwise
- John Tramm
- Paul P.H. Wilson
- Jiankai Yu