+++ /dev/null
-Removed: Deprecated constructors for PETScWrappers::MPI::SparseMatrix,
-a deprecated overload for PETScWrappers::MatrixBase::add and a deprecated
-constructor for PETScWrappers::MPI::Vector have been removed.
-<br>
-(Daniel Arndt, 2020/04/21)
+++ /dev/null
-Changed: All GridIn functions now remove unused vertices and will attempt to fix
-pyramids and wedges with negative volumes.
-<br>
-(David Wells, 2022/05/25)
+++ /dev/null
-Removed: The previously deprecated class hp::DoFHandler has been
-removed, and with it all functions and classes that required the
-template parameter DoFHandlerType.
-<br>
-From now on, use the standard DoFHandler. All hp-functionality has been
-integrated to this one.
-<br>
-(Marc Fehling, Peter Munch, 2022/05/24)
+++ /dev/null
-Rotated: The list of incompatible changes has been rotated.
-<br>
-(Matthias Maier, 2022/06/16)
+++ /dev/null
-Removed: The deprecated LinearAlgebra::CUDAWrappers::atomicAdd_wrapper
-has been removed.
-<br>
-(Daniel Arndt, 2022/06/22)
+++ /dev/null
-Removed: The deprecated constructors for SparseVanka and SparseBlockVanka
-have been removed.
-<br>
-(Daniel Arndt, 2022/06/22)
+++ /dev/null
-Removed: The deprecated functions MatrixFree::n_macro_cells(),
-MatrixFree::get_hp_cell_iterator(), MatrixFree::n_components_filled(),
-MatrixFree::get_dof_handler(), and
-MatrixFree::reinit() with default Mapping argument have been removed.
-<br>
-(Daniel Arndt, 2022/06/22)
+++ /dev/null
-Removed: The deprecated member functions of QProjector not using a ReferenceCell
-object have been removed.
-<br>
-(Daniel Arndt, 2022/06/24)
+++ /dev/null
-Removed: The deprecated member functions DoFHandler::initialize() and
-DoFHandler::set_fe() have been removed.
-<br>
-(Daniel Arndt, 2022/06/24)
+++ /dev/null
-Removed: The deprecated classes ConstantFunction and ZeroFunction
-have been removed.
-<br>
-(Daniel Arndt, 2022/06/24)
+++ /dev/null
-Removed: The deprecated header file lac/parallel_block_vector.h
-has been removed.
-<br>
-(Daniel Arndt, 2022/06/27)
+++ /dev/null
-Removed: The deprecated member function CellId::to_cell() has been removed.
-<br>
-(Daniel Arndt, 2022/06/28)
+++ /dev/null
-Removed: The deprecated QTrapez, ParticleHandler::locally_relevant_ids(),
-and Arkode::reinit_vector have been removed.
-<br>
-(Daniel Arndt, 2022/06/29)
+++ /dev/null
-Changed: The oldest supported version of PETSc has been increased from 3.3.0
-to 3.7.0.
-<br>
-(David Wells, 2022/07/27)
+++ /dev/null
-Moved: The functions in Utilities::Trilinos have been moved to a separate header,
-base/trilinos_utilities.h.
-<br>
-(David Wells, 2022/08/16)
+++ /dev/null
-Changed: The function DoFHandler::get_active_fe_indices() now returns
-the result vector. The previous version that writes into the argument
-as well as DoFTools::get_active_fe_indices() have been deprecated.
-<br>
-(Marc Fehling, 2022/08/20)
+++ /dev/null
-Updated: The version of the vtu output has been increased to 2.2
-if high-order output is requested.
-This is necessary to fix visualization issues in Paraview.
-<br>
-(Peter Munch, Magdalena Schreter, 2022/09/18)
+++ /dev/null
-Removed: The base class of SparsityPattern, SparsityPatternBase, has been removed.
-<br>
-(David Wells, 2022/09/22)
+++ /dev/null
-Changed: We introduced a stronger datatype for FE indices:
-<ul>
- <li> Instead of unsigned int, we now use types::fe_index for FE indices throughout the library.
- <li> For invalid FE indices, we no longer use numbers::invalid_unsigned_int, but numbers::invalid_fe_index.
-</ul>
-This affects interfaces to a lot of functions. Most of them are backwards compatible via implicit conversion.
-Functions that do not fall in that category are listed below and might need your attention.
-Some of them have been deprecated, some are replaced because we imagine them only being used internally.
-<ul>
- <li> DoFHandler::set_active_fe_indices() (deprecated)
- <li> DoFHandler::get_active_fe_indices() (deprecated)
-</ul>
-Further, the serialization of parallel::distributed::Triangulation objects is also affected by this change
-as we write FE indices to disk. Thus, the version in the serialization metafile has been bumped to `5`.
-<br>
-(Marc Fehling, 2022/10/27)
+++ /dev/null
-Removed: The deal.IIFeatureConfig.cmake configuration file has been
-removed. This file used to contain a record of all
-<code>FEATURE_[suffix]</code> variables for a given external library. Said
-information is now exported via interface targets in CMake.
-<br>
-(Matthias Maier, 2022/11/30)
-
+++ /dev/null
-Removed: The build system no longer generates pkg-config files.
-<br>
-(Matthias Maier, 2022/11/30)
-
+++ /dev/null
-Removed: A number of obscure CMake configuration options have been removed:
-<code>DEAL_II_PREFER_STATIC_LINKAGE</code>,
-<code>DEAL_II_STATIC_EXECUTABLE</code>,
-<code>DEAL_II_SETUP_DEFAULT_COMPILER_FLAGS</code>.
-<br>
-(Matthias Maier, 2022/12/02)
+++ /dev/null
-Fixed: The function ParameterHandler::add_parameter() used to
-call the internal action. Within that step, the action
-converts the default value to a string and back afterwards.
-This can lead to round-off errors so that the default
-values might change in the case of floating-point numbers.
-The action is not called any more during ParameterHandler::add_parameter(),
-fixing the problem.
-<br>
-(Peter Munch, Magdalena Schreter, 2022/12/11)
+++ /dev/null
-Updated: deal.II now requires CMake version 3.13.4 or later.
-<br>
-(Matthias Maier, 2023/01/26)
+++ /dev/null
-Changed: The default behavior of the hdf5 output is changed from "not compressed" to "compressed" (default compression_level: best_speed).
-<br>
-(Christoph Schmidt, 2023/03/24)
+++ /dev/null
-Updated: deal.II no longer exports the -fPIC/-fpic compiler flags for
-compiling relocatable, position independent code. This should have minimal
-impact on user projects because CMake is handling the -fPIC/-fpic
-automatically. But for some less common scenarios in user projects (e.g.,
-object targets) it might be necessary to set the POSITION_INDEPENDENT_CODE
-target property in CMake.
-<br>
-(Matthias Maier, 2023/03/29)
+++ /dev/null
-Removed: The CUDAWrappers::MatrixFee::AdditionalData::ParallelizationScheme
-parameter has been removed.
-<br>
-(Bruno Turcksin, 2023/03/30)
+++ /dev/null
-Removed: The docker image with root user has been removed.
-<br>
-If you would like to use the docker image in the context of github actions,
-you can use the regular image and override the default user like this:
-```
-container:
- image: dealii/dealii:master-focal
- options: --user root
-```
-(Marc Fehling, 2023/04/09)
+++ /dev/null
-Changed: The get_mpi_communicator() methods no longer return references to MPI_Comm.
-They all now return the MPI_Comm by value.
-<br>
-(Stefano Zampini, 2023/04/12)
+++ /dev/null
-Extensive rework of CUDAWrappers::MatrixFree and CUDAWrappers::FEEvaluation.
-<br>
-(Bruno Turcksin, 2023/05/11)
+++ /dev/null
-Deprecated: All vector classes had member functions called `import()`
-to copy elements from a source into the current vector. Unfortunately,
-`import` is a
-[keyword (of sorts) in C++20](https://en.cppreference.com/w/cpp/keyword/import).
-While not strictly necessary because we do not use the name in a
-context where it would be recognized as a keyword, it is useful to
-avoid the name nonetheless, if only to avoid confusing readers and
-IDEs. As a consequence, these functions have been renamed to
-`import_elements()`. The old name remains for now, but is deprecated.
-<br>
-(Wolfgang Bangerth, 2023/05/23)
+++ /dev/null
-Changed: The integrate() function of FEPointEvaluation now multiplies the submitted
-entities internally with a JxW value to represent a proper integration like in FEEvaluation.
-The old behavior (where the entities are only multiplied with the test functions and summed up)
-is available through the new function test_and_sum().
-<br>
-(Maximilian Bergbauer, 2023/05/29)
+++ /dev/null
-Changed: The SUNDIALS::KINSOL, SUNDIALS::ARKode, and SUNDIALS::IDA
-interfaces used to use callbacks through which users provide
-information to these solvers. If user code encountered errors, this
-was indicated via integer return codes -- a zero return value
-indicating success.
-
-This is not in line with how C++ typically operates; in C++ errors are
-typically indicated via exceptions. The interfaces to the libraries
-above have been changed to now use exceptions instead, and this
-convention has been documented in a glossary entry on
-@ref GlossUserProvidedCallBack "user provided callback".
-<br>
-(Wolfgang Bangerth, 2023/05/31)
+++ /dev/null
-New: Add a wrapper to the non-linear solver NOX from the
-Trilinos library.
-<br>
-(Peter Munch, Vladimir Ivannikov, 2022/10/02)
+++ /dev/null
-New: Kokkos is now a required dependency.
-<br>
-(Daniel Arndt, 2022/10/26)
+++ /dev/null
-New: Add wrappers to the non-linear solver SNES (PETScWrappers::NonLinearSolver ) and
-the ode integrator TS (PETScWrappers::TimeStepper) from the PETSc library.
-<br>
-(Stefano Zampini, 2023/04/22)
+++ /dev/null
-New: Add a two level transfer operator between non-nested multigrid levels for CG and DG.
-<br>
-(Marco Feder, Johannes Heinz, Peter Munch, Martin Kronbichler, 2023/04/26)
+++ /dev/null
-Changed: Several parts of the library involve interfacing with
-external libraries by way of user-defined callback functions. Specific
-examples are the interfaces to the SUNDIALS solvers (e.g., the
-SUNDIALS::KINSOL class). These interfaces typically required using the
-convention for error reporting defined by the underlying library -- in
-the case of SUNDIALS, for example, callbacks needed to return zero in
-case of success, a negative value for an irrecoverable error, and a
-positive value for a recoverable error.
-
-This approach does not scale across the many interfaces we have. As a
-consequence, we standardized how callbacks should behave, as
-documented in @ref GlossUserProvidedCallBack "this glossary entry".
-The interfaces in SUNDIALS::KINSOL and SUNDIALS::ARKode have been
-changed correspondingly.
-<br>
-(Wolfgang Bangerth, 2023/05/08)
+++ /dev/null
-New: The new function distributed_compute_intersection_locations() computes
-intersections on parallel::distributed::Triangulations using CGAL. It
-returns a new class DistributedComputeIntersectionLocationsInternal which
-stores the found intersections and relevant information about communication.
-The class contains a helper function
-convert_to_distributed_compute_point_locations_internal() to produce
-DistributedComputePointLocationsInternal without an additional
-(possibly expensive) search of points and can therefore be used to
-initialize RemotePointEvaluation.
-<br>
-(Johannes Heinz, 2023/05/18)
+++ /dev/null
-New: Added support for the VTK library (https://vtk.org/).
-<br>
-(Pasquale Africa, 2023/05/24)
+++ /dev/null
-New: The PetscWrappers::PreconditionBDDC preconditioner has been implemented. It requires a special matrix type (IS), which is initialized with the new function PetscWrappers::reinit.
-<br>
-(Nicolas Barnafi, 2022/05/10)
+++ /dev/null
-Fixed: The function find_active_cell_around_point() now skips cells without any marked vertices.
-<br>
-(Johannes Heinz, 2022/06/28)
+++ /dev/null
-Fixed: MappingCartesian used to throw exceptions in debug mode when checking if
-small cells in a large domain size are actually aligned to coordinate axes.
-This is fixed now.
-<br>
-(Rene Gassmoeller, 2022/07/04)
+++ /dev/null
-Added the missing explicit instantiations of DoFTools::distribute_cell_to_dof_vector
-for problems with non-zero codim (dim != spacedim)
-<br>
-(Ahmad Shahba, 2022/07/06)
+++ /dev/null
-Improved: The function VectorTools::point_values() can now handle
-cell-data vectors.
-<br>
-(Peter Munch, 2022/07/06)
+++ /dev/null
-New: There are now functions Utilities::MPI::isend() and
-Utilities::MPI::irecv() that can send and receive arbitrary objects to
-and from other processes, and that handle all of the setting up and
-tearing down of MPI objects and temporary buffers.
-<br>
-(Wolfgang Bangerth, 2022/07/07)
+++ /dev/null
-Improved: The function GridGenerator::merge_triangulations() can now copy boundary ids to remaining boundary faces.
-<br>
-(Johannes Heinz, 2022/07/07)
+++ /dev/null
-New: Implement `DataOut::write_deal_II_intermediate_in_parallel()`
-that writes a combined file from all MPI ranks using MPI I/O of the
-internal patches and a corresponding
-`DataOutReader::read_whole_parallel_file()` to read them back in.
-<br>
-(Timo Heister, 2022/07/07)
+++ /dev/null
-New: The new class MatrixFreeTools::ElementActivationAndDeactivationMatrixFree
-is a wrapper around MatrixFree designed to deal with
-DoFHandler objects involving cells without degrees of freedom, i.e.,
-cells using FENothing as element type. The class helps to implement the
-"element birth and death technique".
-<br>
-(Peter Munch, Sebastian Proell, 2022/07/09)
+++ /dev/null
-Improved: Refinement and coarsening flags are now
-communicated in parallel::shared::Triangulation.
-<br>
-(Peter Munch, 2022/07/12)
+++ /dev/null
-New: The CellAccessor::as_dof_handler_iterator() function can be used
-to convert from a Triangulation active cell iterator to a DoFHandler active cell
-iterator, or from an active cell iterator of one DoFHandler to that of another
-DoFHandler.
-<br>
-(Jean-Paul Pelteret, 2022/07/15)
+++ /dev/null
-New: Functions DoFHandler::get_future_fe_indices() and
-DoFHandler::set_future_fe_indices() that store and recover future FE
-indices on a DoFHandler. They can also be used to transfer future FE
-indices between different DoFHandler objects.
-<br>
-(Marc Fehling, 2022/08/20)
+++ /dev/null
-Improved: The vector operations in SolverIDR::solve() have been revised for
-performance. The new implementation should show a speedup in case the
-matrix-vector product and preconditioner are not much more expensive than the
-vector operations. Furthermore, the usage of temporary vectors has been
-reduced by two.
-<br>
-(Martin Kronbichler, 2022/09/12)
+++ /dev/null
-Improved: The functions VectorTools::point_values()/::point_gradients() and
-the class Utilities::MPI::RemotePointEvaluation now allow to specify the first
-component to be selected. The feature is used in the class DataOutResample
-to output multi-component solutions.
-<br>
-(Peter Munch, Magdalena Schreter, 2022/09/12)
+++ /dev/null
-Fixed: The function GridTools::internal::distributed_compute_point_locations()
-now projects reference points outside of a cell (but within a tolerance) onto
-the unit cell. This enables the use of FE_Q_iso_Q1 in
-Utilities::MPI::RemotePointEvaluation.
-<br>
-(Peter Munch, Magdalena Schreter, 2022/09/12)
+++ /dev/null
-New: The new function CGALWrappers::compute_intersection_of_cells computes
-the intersection between two (affine) cells starting from the location of the
-vertices. The intersection is described by a vector of arrays, where each array
-identifies a simplex of the sub-tassellation of the intersection.
-<br>
-(Marco Feder, Johannes Heinz, 2022/09/20)
+++ /dev/null
-Fixed: On very coarse meshes, with very particular manifolds, e.g., polar manifolds,
-cylindrical manifolds, Manifold<3, 3>::normal_vector may return a zero vector.
-This is fixed now.
-<br>
-(Timo Heister, Luca Heltai, Jiaqi Zhang, 2022/09/20)
+++ /dev/null
-New: The GridTools::MarchingCubeAlgorithm supports now also 1D.
-<br>
-(Magdalena Schreter, Peter Munch, 2022/09/23)
+++ /dev/null
-New: We now instruct doxygen to build the documentation with multiple
-threads, substantially reducing the amount of time it takes to
-complete this step.
-<br>
-(Wolfgang Bangerth, 2022/10/04)
+++ /dev/null
-New: A new overload for MatrixFree::loop allows
-to specify a pre- and post-operation, similar
-to MatrixFree::cell_loop.
-<br>
-(Sebastian Proell, 2022/10/11)
+++ /dev/null
-Improved: FEImmersedSurfaceValues can now be constructed using a MappingFEField.
-<br>
-(Marco Feder, 2022/10/31)
+++ /dev/null
-Workaround: The testsuite CMake macros now generate a top-level target
-compile_test_executables in user projects that can be used to force the
-compilation of all test executables. This works around an issue with the
-ninja build system that concurrent invocation of tests
-(via <code>ctest -jN</code>) that build executables will fail when calling
-back into cmake. As a workaround it is now possible to first build all
-executables first via <code>ninja compile_test_executables</code> and then
-run tests in parallel with <code>ctest -jN</code>.
-<br>
-(Matthias Maier, 2022/11/11)
+++ /dev/null
-New: PreconditionChebyshev now also supports
-James Lottes’s fourth-kind Chebyshev.
-<br>
-(Martin Kronbichler, Peter Munch, 2022/11/12)
+++ /dev/null
-Changed: The constructors of the various solver classes in the PETScWrappers namespace
-used to take an `MPI_Comm` argument. This has now been changed: There
-is a new set of constructors that no longer take this argument, and
-the old constructors have been deprecated. In practice, the solvers
-now use the same MPI communicator as the matrix give to the `solve()`
-function.
-<br>
-(Wolfgang Bangerth, 2022/11/16)
+++ /dev/null
-Improved: Added capability in the particle handler to generate ghost particles
-in ghost cells close to periodic boundary conditions.
-<br>
-(Bruno Blais, Audrey Collard-Daigneault, 2022-11-18)
+++ /dev/null
-Improved: The deal.II CMake project configuration and the
-deal_II_invoke_autopilot() CMake macro that is used in user projects now
-always export the <code>compile_commands.json</code> file used for various
-tooling (such as completion backends like clangd).
-<br>
-(Matthias Maier, 2022/11/24)
+++ /dev/null
-New: Add utility function Utilities::MPI::scatter.
-<br>
-(Magdalena Schreter, Peter Munch, 2022/11/24)
+++ /dev/null
-Changed: All SparsityPattern classes now inherit from a new class SparsityPatternBase
-which provides an API for efficiently adding new entries. As a consequence of this change,
-the majority of templates over the sparsity pattern type have been removed.
-<br>
-(David Wells, 2022/11/25)
+++ /dev/null
-New: There is now a new function Threads::TaskGroup::return_values() that waits
-for all tasks in a task group and returns a vector of their returned objects.
-<br>
-(Wolfgang Bangerth, 2022/11/29)
+++ /dev/null
-Improved: The quick_tests mechanism has been redesigned. Quick tests are
-now part of the regular deal.II testsuite. This means they can be
-configured via the <code>setup_tests_quick_tests</code> target, and run via
-invoking ctest from the build directory. The <code>test</code> target will
-now ensure that the library is fully compiled and quick tests are
-configured prior to running all quick tests.
-<br>
-(Matthias Maier, 2022/11/29, 2022/12/10)
+++ /dev/null
-New: TrilinosWrappers::MPI::Vector and PETScWrappers::MPI::Vector now both have
-reinit functions that take a Utilities::MPI::Partitioner as an argument, so
-their interface is compatible to LinearAlgebra::distributed::Vector.
-<br>
-(Marc Fehling, 2022/12/05)
+++ /dev/null
-Improved: The history of linear residuals norms inside classes SolverControl and
-ReductionControl is now cleared at the first step of the solution.
-<br>
-(Vladimir Ivannikov, 2022/12/05)
+++ /dev/null
-Fixed: The residual assembly in step-77 contained a bug that prevented
-the correct residual from being computed. This is now fixed.
-<br>
-(Stefano Zampini, 2022/12/06)
+++ /dev/null
-New: SolverGMRES and SolverFGMRES now also support classical
-Gram-Schmidt orthonormalization
-alongside to the existing modified Gram-Schmidt algorithm. This
-algorithm allows to reduce the cost of vector operations in terms of
-communication latency and memory transfer significantly.
-<br>
-(Peter Munch, Martin Kronbichler, 2022/12/08)
+++ /dev/null
-Improved: The function GridTools::rotate()
-can now also handle Triangulation objects with
-dim=1 and spacedim=2.
-<br>
-(Peter Munch, 2022/12/08)
+++ /dev/null
-Fixed: PETSc has no concept of ownership, but only shared ownership. Vec and Mat objects are
-reference counted, and automatically cleaned when no longer used. We do not need to keep track
-of ownership manually.
-<br>
-(Stefano Zampini, 2022/12/13)
+++ /dev/null
-Fixed: Add default MPI getter for PETSc Mat objects, that queries the underlying PETSc type.
-<br>
-(Stefano Zampini, 2022/12/13)
+++ /dev/null
-Improved: FEInterfaceValues objects can now also be constructed using hp-collections.
-<br>
-(Marco Feder, 2022/12/20)
+++ /dev/null
-New: LinearAlgebra::distributed::BlockVector::reinit now accepts
-a vector of Utilities::MPI::Partitioner objects.
-<br>
-(Marc Fehling, 2022/12/20)
+++ /dev/null
-Fixed: Small fixes to commnicator handling in PETSc classes. Move from
-GetArray to GetArrayRead (threadsafe version).
-<br>
-(Stefano Zampini, 2022/12/20)
+++ /dev/null
-New: PETScWrappers:BlockSparseMatrix now is also a PETSc MATNEST type.
-<br>
-(Stefano Zampini, 2022/12/20)
+++ /dev/null
-New: Expose PETScWrappers::MPI::BlockVector as a PETSc VecNest vector, and make sure the mpi communicator is always
-queried from the internal vec object.
-<br>
-(Stefano Zampini, 2022/12/21)
+++ /dev/null
-New: Allow the construction of a deal.II PETSc matrices from a PETSc Mat.
-<br>
-(Stefano Zampini, 2022/12/21)
+++ /dev/null
-New: ScratchData now has support for hp finite elements on interfaces.
-<br>
-(Jean-Paul Pelteret, 2022/12/23)
+++ /dev/null
-Improved: The FEInterfaceValues values public interface has been extended
-further to support hp-FEM. Functions have been added to report if the class has
-been initialized with hp support, and to get the underlying
-hp::MappingCollection, hp::FECollection and hp::QCollection. The various
-FEInterfaceValues::reinit() methods now accept indices to indicate which
-quadrature rule, mapping (and, in some cases, finite elements) should be used to
-compute values across the interface.
-<br>
-(Jean-Paul Pelteret, 2022/12/28)
+++ /dev/null
-New: Writing graphical output in VTU format now uses a workflow that
-uses multiple threads where possible, substantially increasing the
-speed with which functions such as DataOut::write_vtu() work.
-<br>
-(Wolfgang Bangerth, 2022/12/30)
+++ /dev/null
-Deprecated: The functions ReferenceCell::compute_orientation() and
-ReferenceCell::permute_according_orientation() have been deprecated. Use
-ReferenceCell::get_orientation_index() and
-ReferenceCell::reorient_based_on_orientation_index() instead.
-<br>
-(Wolfgang Bangerth, 2023/01/09)
+++ /dev/null
-New: There are now overloads of the make_array_view() function for objects of
-type std::array.
-<br>
-(Wolfgang Bangerth, 2023/01/09)
+++ /dev/null
-New: The function ReferenceCell::contains_points() is now implemented
-for all reference cell kinds (it had been missing for wedges and
-pyramids before).
-<br>
-(Wolfgang Bangerth, 2023/01/11)
+++ /dev/null
-Improved: Introduce a function that only checks if Bounding Boxes are overlapping.
-Fixed: If a 1D BBox is completely contained in another one, it was not recognized as mergeable neighbor.
-<br>
-(Johannes Heinz, 2022/07/07)
+++ /dev/null
-Fixed: When outputting hexahedral meshes in AVS Explorer's UCD file format,
-cells were written with an inverted vertex order. While they were shown
-correctly, these cells had negative volume. This has now been fixed.
-<br>
-(Nils Margenberg, 2023/01/22)
+++ /dev/null
-Improved: Mapping can now return vertices on a face of a cell.
-<br>
-(Johannes Heinz, 2023/01/25)
+++ /dev/null
-New: The function IndexSet::get_index_vector() returns a vector
-with all indices that are part of an index set.
-<br>
-(Wolfgang Bangerth, 2023/01/26)
+++ /dev/null
-Fixed: The DerivativeForm class had a constructor that took an array
-of elements via the type
-`Tensor<order, spacedim, Tensor<1, dim,Number>>`.
-This should have been
-`Tensor<1, spacedim, Tensor<order, dim, Number>>`, and it is now fixed.
-<br>
-(Robin Goermer, Wolfgang Bangerth, 2023/02/01)
+++ /dev/null
-Fixed: Fix GridTools::find_all_active_cells_around_point() to return the correct cells
-if the requested point is located on a cell edge adjacent to neighbor cells at different
-refinement levels.
-<br>
-(Peter Munch, Magdalena Schreter, 2023/02/07)
+++ /dev/null
-New: The function ReferenceCell::face_vertex_location() allows
-translating between the vertices of faces of cells and the coordinate
-system of the cell itself.
-<br>
-(Wolfgang Bangerth, 2023/02/09)
+++ /dev/null
-New: Implement `VectorTools::add_constant` that adds a constant
-to a given component of a finite element solution.
-<br>
-(Timo Heister, 2023/02/17)
+++ /dev/null
-Fixed: When used with the linear-polynomial MappingQCache(1),
-FEValues::reinit() could previously trigger CellSimilarity in case the
-underlying mesh was affine, but the deformed state described via MappingQCache
-was not. This is now fixed.
-<br>
-(Martin Kronbichler, 2023/02/22)
+++ /dev/null
-Fixed: SolverCG used with matrices and preconditioners that support
-interleaving of the vector updates with the matrix-vector product (e.g. with
-certain matrix-free operators) sometimes performed the final update to the
-result vector `x` with a wrong coefficient. This could affect the returned
-solution for coarse tolerances far away from convergence. This is now fixed.
-<br>
-(Martin Kronbichler, 2023/02/26)
+++ /dev/null
-Fixed: It was previously possible to assign scalar values to
-Tensor and VectorizedArray objects that were temporaries -- say in expressions
-such as
-```
- VectorizedArray<...> my_function();
- ...
- my_function() = 1.234;
-```
-This does not make any sense: What `my_function()` returns is a
-temporary object, and assigning a value to it has no consequences
-because the temporary object dies at the end of the line. Whatever the
-programmer intended to do here was almost certainly a mistake.
-
-As a consequence, this is now prohibited and the compiler will produce
-an error when trying to do this.
-<br>
-(Wolfgang Bangerth, 2023/03/05)
+++ /dev/null
-New: Provide overloads for `make_array_view` for `AlignedVector`.
-<br>
-(Sebastian Proell, 2023/03/06)
+++ /dev/null
-New: LAPACKFullMatrix now provides two new functions,
-LAPACKFullMatrix::get_right_eigenvectors() and
-LAPACKFullMatrix::get_left_eigenvectors(), to return eigenvectors after calls
-to LAPACKFullMatrix::compute_eigenvalues().
-<br>
-(Martin Kronbichler, 2023/03/09)
+++ /dev/null
-Fixed: There was no instance of GridTools::collect_periodic_faces() with
-MeshType = parallel::shared::Triangulation<1,1>. But the function works with the
-template parameter as well. Thus, it should be instantiated.
-<br>
-(Nils Schween, 2023/03/14)
\ No newline at end of file
+++ /dev/null
-New: Added functionality to the matrix-free CellwiseInverseMassMatrix
-operator for coupling (dyadic) coefficients. `fill_inverse_JxW_values`
-and `CellwiseInverseMassMatrixImplFlexible` have been extended.
-Internal interfaces for the coefficients now use ArrayView instead
-of AlignedVector.
-<br>
-(Bugrahan Temur, 2023/03/15)
+++ /dev/null
-New: Added an ArrayView::empty() function.
-<br>
-(Maximilian Bergbauer, 2023/03/21)
+++ /dev/null
-Changed: The default `compression_level` for vtu output is changed from `best_compression` to `best_speed`.
-<br>
-(Christoph Schmidt, 2023/03/28)
+++ /dev/null
-New: Added Functions::SignedDistance::Rectangle() and BoundingBox::signed_distance()
-to compute the signed distance function of a rectangle.
-<br>
-(Magdalena Schreter, Peter Munch, 2023/03/31)
+++ /dev/null
-Fixed: In grid_out.cc VtkFlags with default settings were passed to the
-write_vtu method instead of the available vtu_flags. Thus, a
-compression_level that has been set was simply ignored. This has been
-fixed in #14983 by passing the available vtu_flags to the method.
-<br>
-(Christoph Schmidt, 2023/04/05)
+++ /dev/null
-New: Added Functions::SignedDistance::ZalesakDisk()
-to compute the signed distance function of Zalesak's disk.
-<br>
-(Magdalena Schreter, Simon Sticko, Peter Munch, 2023/04/06)
+++ /dev/null
-Deprecated: The DoFTools::map_dofs_to_support_points() function family
-had functions that returned what they computed via a non-const
-reference argument `support_points` of type `std::map`. These
-overloads are now deprecated and replaced by functions that return the
-map via a regular `return` value.
-<br>
-(Wolfgang Bangerth, 2023/04/07)
+++ /dev/null
-Fixed: In FEInterfaceValues::reinit(), if `q_index` is not explicitly
-given but none of the two adjacent elements dominates the other, one
-used to get a rather obscure error. The error now produced points at
-the actual problem, and a much expanded discussion of what is going
-wrong is provided in the documentation of the function.
-<br>
-(Simon Sticko, Wolfgang Bangerth, 2023/04/13)
+++ /dev/null
-Fixed: Mesh files in COMSOL's `.mphtxt` format are often created on
-Windows and then read using deal.II on Unix. Windows uses a different
-line ending style than Linux, and this led to error messages that were
-impossible to understand because the different line ending style is
-not visible in most editors. This is now fixed: The
-GridIn::read_comsol_mphtxt() function also accepts Windows line
-endings.
-<br>
-(Wolfgang Bangerth, 2023/04/20)
+++ /dev/null
-Fixed: ParameterAcceptor::clear() had issues with 'use after free'.
-<br>
-(Luca Heltai, 2023/04/20)
+++ /dev/null
-Fixed: Consider the following scenario: You initialize a DoFHandler with a
-parallel::distributed::Triangulation, and afterwards you want to create the
-Triangulation by calling Triangulation::create_triangulation() that takes a
-TriangulationDescription::Description as an argument. This caused an issue
-as the active FE tables of the DoFHandler have not been properly updated
-during the creation of the Triangulation. This is fixed now by treating the
-resulting Triangultion as a 'fresh' one by triggering Triangulation::Signals::create
-at the end of Triangulation::create_triangulation(), which in turn
-reinitializes the DoFHandler.
-<br>
-(Marc Fehling, 2023/04/21)
+++ /dev/null
-New: FEInterfaceValues::reinit() sometimes had trouble automatically
-determining which quadrature or mapping object to use in the hp
-context. There are now two more rules that help determine which
-objects to use, as described in detail in the documentation.
-<br>
-(Wolfgang Bangerth, 2023/04/25)
+++ /dev/null
-New: Added new nonlinear solver class NonlinearSolverSelector.
-<br>
-(Sean Ingimarson, 2023/05/01)
+++ /dev/null
-New: The new class ScopeExit is useful in ensuring that cleanup code
-is always run, regardless of how a function is left.
-<br>
-(Wolfgang Bangerth, 2023/05/05)
+++ /dev/null
-Changed: MPI communicators (of type `MPI_Comm`) are now treated as
-trivially copyable POD types throughout the library. This means that
-we store and pass them by value instead of by reference.
-<br>
-(Timo Heister, 2023/05/08)
+++ /dev/null
-Fixed: step-77 contained a bug where the residual was not
-zeroed out before assembly.
-<br>
-(Sebastian Proell, 2023/05/14)
+++ /dev/null
-Changed: The KINSOL wrapper used to copy vectors to/from deal.II format
-to/from a native SUNDIALS format. These copies are no longer made.
-<br>
-(Sebastian Proell, 2023/05/15)
+++ /dev/null
-Fixed: Patterns::pattern_factory now parses lists of lists correctly.
-<br>
-(Daniel Arndt, 2023/05/16)
+++ /dev/null
-Improved: Make it possible to fill JxW in NonMatching::MappingInfo from quadratures which contain JxW as weights.
-<br>
-(Johannes Heinz, 2023/06/01)
+++ /dev/null
-New: All parallel BlockVector classes now have a reinit function that takes
-collections of Utilities::MPI::Partitioner objects as an argument. This
-affects TrilinosWrappers::MPI::BlockVector, PETScWrappers::MPI::BlockVector,
-and LinearAlgebra::distributed::BlockVector. The interface is compatible.
-<br>
-(Marc Fehling, 2023/06/02)
+++ /dev/null
-Fixed: DoFCellAccessor::distribute_local_to_global() now works with std:: iterators.
-<br>
-(Johannes Heinz, 2022/06/06)
+++ /dev/null
-Fixed: The numbering applied within FEPointEvaluation did not work correctly
-for multiple components and when used with first_selected_component!=0 for
-certain FiniteElement types, leading to wrong results. This is now fixed.
-<br>
-(Johannes Heinz, Peter Munch, 2023/06/11)
+++ /dev/null
-Fixed: Originally, the LAPACK in /source/lac/lapack_full_matrix.cc directly
-printed errors to the console. This is fixed by using the AssertThrow mechanism
-to explicitly display various error messages based on the error values that are
-consistent with the LAPACK manual.
-<br>
-(Tao Jin, 2023/06/20)
+++ /dev/null
-Fixed: With some compilers, calling Threads::Task::Task() with a
-function object that ends with an exception lead to a segmentation
-fault. This is now fixed.
-<br>
-(Wolfgang Bangerth, 2023/06/26)