From 7b0189125906fbc8e351cae1e54933e6369bc6f4 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Fri, 29 Jul 2022 10:08:47 -0500 Subject: [PATCH] Start release notes for 0.13.1 --- docs/source/pythonapi/stats.rst | 7 ++ docs/source/releasenotes/0.13.1.rst | 179 ++++++++++++++++++++++++++++ docs/source/releasenotes/index.rst | 1 + 3 files changed, 187 insertions(+) create mode 100644 docs/source/releasenotes/0.13.1.rst diff --git a/docs/source/pythonapi/stats.rst b/docs/source/pythonapi/stats.rst index 1d4ef0302..b4f115854 100644 --- a/docs/source/pythonapi/stats.rst +++ b/docs/source/pythonapi/stats.rst @@ -51,3 +51,10 @@ Spatial Distributions openmc.stats.SphericalIndependent openmc.stats.Box openmc.stats.Point + +.. autosummary:: + :toctree: generated + :nosignatures: + :template: myfunction.rst + + openmc.stats.spherical_uniform diff --git a/docs/source/releasenotes/0.13.1.rst b/docs/source/releasenotes/0.13.1.rst new file mode 100644 index 000000000..501d54090 --- /dev/null +++ b/docs/source/releasenotes/0.13.1.rst @@ -0,0 +1,179 @@ +==================== +What's New in 0.13.1 +==================== + +.. currentmodule:: openmc + +------- +Summary +------- + +This release of OpenMC includes many bug fixes as well as improvements in +geometry modeling, mesh functionality, source specification, depletion +capabilities, and other general enhancements. The depletion module features a +new transport operator, :class:`openmc.deplete.IndependentOperator`, that allows +a depletion calculation to be performed using arbitrary one-group cross sections +(e.g., generated by an external solver). The track file generation capability +has been significantly overhauled and a new :class:`openmc.Tracks` class was +introduced to allow access to information in track files from the Python API. +Support has been added for new ENDF thermal scattering evaluations that use +mixed coherent/incoherent elastic scattering. + +------------------------------------ +Compatibility Notes and Deprecations +------------------------------------ + +- The ``openmc.deplete.Operator`` class has been renamed + :class:`openmc.deplete.CoupledOperator`. +- The ``openmc.deplete.ResultsList`` class has been renamed to + :class:`openmc.deplete.Results` and no longer requires you to call the + ``from_hdf5()`` method in order to create it; instead, you can directly + instantiate it. +- A few methods that represent k-effective have been renamed for the sake of + consistency: + + - ``openmc.StatePoint.k_combined`` is now :attr:`openmc.StatePoint.keff` + - ``openmc.deplete.ResultsList.get_eigenvalue`` is now + :meth:`openmc.deplete.Results.get_keff` + +- The :class:`openmc.stats.SphericalIndependent` class, which used to + accept a distribution for ``theta`` now accepts a distribution for ``cos_theta`` + instead in order to more easily handle the common case of specifying a uniform + spatial distribution over a sphere (also see the new + :func:`openmc.stats.spherical_uniform` function). + +- If you are building OpenMC from source, note that several of our CMake options + have been changed: + + ========== ====================== + Old option New option + ========== ====================== + debug --- + optimize --- + profile OPENMC_ENABLE_PROFILE + coverage OPENMC_ENABLE_COVERAGE + openmp OPENMC_USE_OPENMP + --- OPENMC_USE_MPI + dagmc OPENMC_USE_DAGMC + libmesh OPENMC_USE_LIBMESH + ========== ====================== + + The ``debug`` and ``optimize`` options have been removed; instead, use the + standard `CMAKE_BUILD_TYPE + `_ + variable. + +------------ +New Features +------------ + +- An :class:`openmc.model.IsogonalOctagon` composite surface. +- The :class:`~openmc.DAGMCUniverse` class now has a + :attr:`~openmc.DAGMCUniverse.bounding_box` attribute and a + :meth:`~openmc.DAGMCUniverse.bounding_region` method. +- When translating a :class:`~openmc.Region` using the + :meth:`~openmc.Region.translate` method, there is now an ``inplace`` argument. +- The :class:`~openmc.Material` class has several new methods and attributes: + + - The :meth:`~openmc.Material.add_components` methods allows you to add + multiple nuclides/elements to a material with a single call by passing a + dictionary. + - The :meth:`~openmc.Material.get_activity` method returns the activity of a + material in Bq, Bq/g, or Bq/cm³. + - The :meth:`~openmc.Material.remove_element` method removes an element from a + material + - The :meth:`~openmc.Material.get_nuclide_atoms` method gives the number of + atoms of each nuclide in a material + +- All mesh classes now have a ``volumes`` property that provides the volume of + each mesh element as well as ``write_data_to_vtk`` methods. +- Support for externally managed MOAB meshes or libMesh meshes. +- Multiple discrete distributions can be merged with the new + :meth:`~openmc.stats.Discrete.merge` method. +- The :func:`openmc.stats.spherical_uniform` function creates a uniform + distribution over a sphere using the + :class:`~openmc.stats.SphericalIndependent` class. +- Univariate distributions in the :mod:`openmc.stats` module now have + ``sample()`` methods. +- An ``openmc_sample_external_source`` function has been added to the C API with + a corresponding Python binding :func:`openmc.lib.sample_external_source`. +- The track file generation capability has been completely overhauled. Track + files now include much more information, and a new :class:`~openmc.TrackFile` + class allows access to track file information from the Python API. Multiple + tracks are now written to a single file (one per MPI rank). +- A new :func:`openmc.wwinp_to_wws` function that converts weight windows from a + ``wwinp`` file to a list of :class:`~openmc.WeightWindows` objects. +- The new :meth:`openmc.EnergyFilter.from_group_structure` method provides a + way of creating an energy filter with a group structure identified by name. +- The :class:`openmc.data.Decay` class now has a + :attr:`~openmc.data.Decay.sources` property that provides radioactive decay + source distributions. +- A :class:`openmc.mgxs.ReducedAbsorptionXS` class produces a multigroup cross + section representing "reduced" absorption (absorption less neutron production + from (n,xn) reactions). +- Added support in the Python API and HDF5 nuclear data format for new ENDF + thermal neutron scattering evaluations with mixed coherent elastic and + incoherent elastic. +- CMake now relies on ``find_package(MPI)`` for a more standard means of + identifying an MPI compiler configuration. + +--------- +Bug Fixes +--------- + +- `Fix bug when a rotation matrix is passed to Halfspace.rotate `_ +- `Fix bug for spherical mesh string repr `_ +- `Fix package_data specification to include pyx files `_ +- `Allow meshes with same ID to appear in multiple files `_ +- `Fix overwritten variable in get_libraries_from_xsdata `_ +- `Write output files to correct directory `_ +- `Allow CMake to properly find third-party packages `_ +- `Fix Region.from_expression when ")(" appears in specification `_ +- `Move lost particle reset from finalize() to reset() `_ +- `Minor typo fixes in test_lattice.py `_ +- `Fix color assignment in Universe.plot `_ +- `Several depletion-related fixes `_ +- `Allow control of C++ standard used by compiler `_ +- `Fix IO format documentation for surface source read/write `_ +- `Make sure basis gets set in Plot.from_geometry `_ +- `Improve robustness of torus distance calculation `_ +- `Allow use of redundant fission when adjusting KERMA in from_njoy `_ +- `Disable GNU extensions for CMake target `_ +- `Two from_xml fixes `_ +- `Fix for rare infinite loop when finding cell `_ +- `Allow photon heating to be tallied by nuclide `_ +- `Use UTF-8 encoding when reading dose coefficients `_ +- `Fix a corner case in Region.from_expression `_ +- `Fix bug in spherical and cylindrical meshes `_ +- `Ensure weight window bounds are flattened when writing to XML `_ +- `Fix for std::cout sync bug in output.cpp `_ +- `Allow compiling against fmt v9 `_ +- `Fix TimeFilter for small time intervals `_ + +------------ +Contributors +------------ + +- `David Andrs `_ +- `Hunter Belanger `_ +- `Helen Brooks `_ +- `Rémi Delaporte-Mathurin `_ +- `Joffrey Dorville `_ +- `Christopher Fichtlscherer `_ +- `Lewis Gross `_ +- `Andrew Johnson `_ +- `Kalin Kiesling `_ +- `Amanda Lund `_ +- `Richard Morrison `_ +- `Patrick Myers `_ +- `Adam Nelson `_ +- `April Novak `_ +- `Ethan Peterson `_ +- `Gavin Ridley `_ +- `Paul Romano `_ +- `Jonathan Shimwell `_ +- `Patrick Shriwise `_ +- `Amelia Trainer `_ +- `John Tramm `_ +- `Bob Urberger `_ +- `Olek Yardas `_ diff --git a/docs/source/releasenotes/index.rst b/docs/source/releasenotes/index.rst index 75db7ebc9..34ddb285a 100644 --- a/docs/source/releasenotes/index.rst +++ b/docs/source/releasenotes/index.rst @@ -7,6 +7,7 @@ Release Notes .. toctree:: :maxdepth: 1 + 0.13.1 0.13.0 0.12.2 0.12.1