==================== What's New in 0.13.0 ==================== .. currentmodule:: openmc ------- Summary ------- This release of OpenMC includes several noteworthy and unique features. Most importantly, mesh-based weight windows have been added and work with all supported mesh types (regular, rectilinear, cylindrical, spherical, and unstructured). Other additions include torus surfaces, an ability to place CAD-based geometries in universes, a feature to export/import physical properties, and a filter for particle time. There is one breaking changing in the Python API. The :class:`openmc.deplete.Operator` class used to accept :class:`~openmc.Geometry` and :class:`~openmc.Settings` objects as its first two arguments; users now need to pass a :class:`~openmc.model.Model` class instead. The minimum supported Python version is now 3.6. ------------ New Features ------------ - Variance reduction using mesh-based weight windows is now possible with the :class:`~openmc.WeightWindows` class. - Users can now model axis-aligned tori using the :class:`~openmc.XTorus`, :class:`~openmc.YTorus`, and :class:`~openmc.ZTorus` classes. - DAGMC CAD-based geometries can now be placed in a universe using :class:`~openmc.DAGMCUniverse`, allowing users to combine CSG and CAD-based geometry in a single model. - The C/C++ API has two new functions ``openmc_properties_export`` and ``openmc_properties_import`` with corresponding Python API bindings, :func:`~openmc.lib.export_properties` and :func:`~openmc.lib.import_properties`. These functions allow physical properties (temperatures, densities, material compositions) to be written to an HDF5 file and re-used for subsequent simulations. - A new :class:`~openmc.stats.PowerLaw` univariate distribution - The capabilities of the :class:`~openmc.Model` class have been substantially expanded (e.g., the :meth:`~openmc.model.Model.deplete`, :meth:`~openmc.model.Model.plot_geometry`, and :meth:`~openmc.model.Model.rotate_cells` methods). - A new :class:`~openmc.TimeFilter` class that allows tallies to be filtered by the particle's time, which is now tracked. - The :class:`~openmc.Source` class now allows you to specify a time distribution. - The new :class:`~openmc.CylindricalMesh` and :class:`~openmc.SphericalMesh` can be used for mesh tallies over cylidrical and spherical meshes, respectively. - Geometry plotting, which used to produce the files in the unusual .ppm format, now produces .png files by default. --------- Bug Fixes --------- - `Fix for shared fission bank memory errors `_ - `Make sure properties export only happens from root process `_ - `Fix pathlib use error in openmc-ace-to-hdf5 `_ - `Fix DAGMC and libMesh variable in CMake config `_ - `Fix bug associated with volume calc in MG mode `_ - `Add missing Settings.write_initial_source property `_ - `Bug fixes for specifying Materials.cross_sections `_ - `Removing Legendre filter in diffusion coefficient results `_ - `Ensure particles lost during event_calculate_xs are terminated `_ - `Fixed parsing of xsdir entries with a continuation line `_ - `openmc.RegularMesh attribute consistency `_ - `Ensure secondary particles below energy cutoff are not created `_ - `Allow compilation with g++ 11 `_ - `Depletion-related bug fixes `_ - `Miscellaneous bug fixes `_ - `Fixes for various bugs `_ - `Reset triggers in openmc_reset `_ ------------ Contributors ------------ - `Hunter Belanger `_ - `Helen Brooks `_ - `Andrew Davis `_ - `Valerio Giusti `_ - `Jeff Hammond `_ - `Yuan Hu `_ - `Andrew Johnson `_ - `Miriam Kreher `_ - `Amanda Lund `_ - `Adam Nelson `_ - `April Novak `_ - `Ariful Islam Pranto `_ - `Gavin Ridley `_ - `Paul Romano `_ - `Olaf Schumann `_ - `Jonathan Shimwell `_ - `Patrick Shriwise `_ - `John Tramm `_