OpenMC 0.10.0
This release of OpenMC includes several new features, performance improvements, and bug fixes compared to version 0.9.0. Notably, a C API has been added that enables in-memory coupling of neutronics to other physics fields, e.g., burnup calculations and thermal-hydraulics. The C API is also backed by Python bindings in a new openmc.capi
package. Users should be forewarned that the C API is still in an experimental state and the interface is likely to undergo changes in future versions.
The Python API continues to improve over time; several backwards incompatible changes were made in the API which users of previous versions should take note of:
-
To indicate that nuclides in a material should be treated such that elastic scattering is isotropic in the laboratory system, there is a new
Material.isotropic
property:mat = openmc.Material() mat.add_nuclide('H1', 1.0) mat.isotropic = ['H1']
To treat all nuclides in a material this way, the
Material.make_isotropic_in_lab
method can still be used. -
The initializers for
openmc.Intersection
andopenmc.Union
now expect an iterable. -
Auto-generated unique IDs for classes now start from 1 rather than 10000.
NOTE: This is the last release of OpenMC that will support Python 2.7. Future releases of OpenMC will require Python 3.4 or later.
New Features
- Rotationally-periodic boundary conditions
- C API (with Python bindings) for in-memory coupling
- Improved correlation for Uranium enrichment
- Support for partial S(a,b) tables
- Improved handling of autogenerated IDs
- Many performance/memory improvements
Bug Fixes
- 9374695 Fix energy group sampling for multi-group simulations
- a149ef4 Ensure mutable objects are not hashable
- 2c9b210 Preserve backwards compatibility for generated HDF5 libraries
- 8047f6c Handle units of division for tally arithmetic correctly
- 0beb4cb Compatibility with newer versions of Pandas
- f124bec Fix generating 0K data with openmc.data.njoy module
- 0c69153 Bugfix for generating thermal scattering data
- 61ecb47 Fix bugs in Python multipole objects
Contributors
This release contains new contributions from the following people: