+++ /dev/null
-Changed: deal.II now requires a compiler supporting (very nearly) the entire C++11 standard. The minimal version of GCC supported is now 4.8.
-<br>
-(David Wells, 2017/03/23)
+++ /dev/null
-Removed: The deprecated CMake flag <code>DEAL_II_CXX11_FLAG</code> has been
-removed.
-<br>
-(David Wells, 2017/03/23)
+++ /dev/null
-Removed: The deprecated MPI communicator and the constructor which used it were
-removed from the MatrixFree::AdditionalData class.
-<br>
-(Denis Davydov, 2017/03/26)
+++ /dev/null
-Removed: The FiniteElement::interpolate() function and all of its
-implementations in derived classes has been removed. It was
-previously already deprecated. Use
-FiniteElement::convert_generalized_support_point_values_to_nodal_values()
-instead.
-<br>
-(Wolfgang Bangerth, 2017/04/05)
+++ /dev/null
-Removed: A number of deprecated classes have been removed in favor of the
-new LinearOperator concept:
-<ul>
- <li>BlockDiagonalMatrix
- <li>InverseMatrixRichardson
- <li>IterativeInverse
- <li>MeanValueFilter
- <li>ProductMatrix
- <li>ProductSparseMatrix
- <li>ScaledMatrix
- <li>SchurMatrix
- <li>ShiftedMatrix
- <li>ShiftedMatrixGeneralized
- <li>TransposeMatrix
-</ul>
-Use the LinearOperator class instead, see the module on
-@ref LAOperators "linear operators" for more details.
-<br>
-(Matthias Maier, 2017/04/06 - 2018/05/03)
+++ /dev/null
-Changed: The <code>AssertGlobalIndexRange</code> macro has been removed: the expansion of this macro involved an undeclared template and always generates compiler errors if used.
-<br>
-(David Wells, 2017/04/13)
+++ /dev/null
-Removed: The FETools::compute_node_matrix() variant that takes two
-arguments has been removed. It was previously already deprecated. Use
-the variant with just one argument instead.
-<br>
-(Wolfgang Bangerth, 2017/04/16)
+++ /dev/null
-Changed: It was previously allowed to copy one FESystem object to
-another via the copy constructor. There are probably few reasons to do
-so, but they complicated the design of data structures. Consequently,
-it is now no longer allowed to copy such objects.
-<br>
-(Wolfgang Bangerth, 2017/04/17)
+++ /dev/null
-Removed: The ParameterHandler::read_input() function and friends have
-been removed. They were already deprecated in the previous release.
-<br>
-(Wolfgang Bangerth, 2017/04/21)
+++ /dev/null
-Removed: DataPostprocessor had member functions
-<code>compute_derived_quantities_*()</code> that had previously
-already been deprecated. These have now been removed.
-<br>
-(Wolfgang Bangerth, 2017/04/24)
+++ /dev/null
-Changed: The deprecated function FEValuesBase::get_normal_vectors()
-that returned a vector of Point objects has been removed. Its
-replacement, FEValuesBase::get_all_normal_vectors() has now itself
-been deprecated, and we have created a new function
-FEValuesBase::get_normal_vectors() that returns a vector of
-Tensor<1,dim> objects. The net effect is that the function with the
-old name has simply gotten a new return type.
-<br>
-(Wolfgang Bangerth, 2017/04/25)
+++ /dev/null
-Changed: The deprecated functions DataOutInterface::write_pvd_record()
-and DataOutBase::write_visit_record() have been removed. Use the
-corresponding functions in namespace DataOutBase.
-<br>
-(Wolfgang Bangerth, 2017/04/25)
+++ /dev/null
-Changed: The deprecated functions DoFHandler::get_tria() and
-hp::DoFHandler::get_tria() have been removed. Use
-DoFHandler::get_triangulation() and
-hp::DoFHandler::get_triangulation() instead.
-<br>
-(Wolfgang Bangerth, 2017/04/25)
+++ /dev/null
-Changed: The deprecated member variables @p supports_distributed_data
-that was present in all vector classes has been removed. If you needed
-this functionality, use the type trait is_serial_vector instead.
-<br>
-(Wolfgang Bangerth, 2017/04/30)
+++ /dev/null
-Changed: The deprecated function FEValuesBase::transform()
-has been removed. It only forwarded the call to the Mapping object
-used by the FEValuesBase object. Use the corresponding function of the
-mapping instead.
-<br>
-(Wolfgang Bangerth, 2017/05/04)
+++ /dev/null
-Changed: The deprecated constructors of MappingQEulerian
-and MappingQ1Eulerian have been removed. Use the other constructor
-of each class instead.
-<br>
-(Wolfgang Bangerth, 2017/05/04)
+++ /dev/null
-Changed: The deprecated variant of
-GridTools::get_face_connectivity_of_cells() has been removed. Use the
-other variant instead.
-<br>
-(Wolfgang Bangerth, 2017/05/04)
+++ /dev/null
-Changed: The deprecated typedef
-FEFieldFunction::ExcPointNotAvailableHere has been removed. Use
-VectorTools::ExcPointNotAvailableHere instead.
-<br>
-(Wolfgang Bangerth, 2017/05/04)
+++ /dev/null
-Changed: The deprecated version of Manifold::get_new_point() that took
-an argument of type Quadrature has been removed. Use the other variant
-of that function instead. The same has been done to all
-implementations of that interface in derived classes.
-<br>
-(Wolfgang Bangerth, 2017/05/05)
+++ /dev/null
-Changed: The deprecated member functions in the classes
-TrilinosWrappers::BlockVector, TrilinosWrappers::MPI::BlockVector,
-TrilinosWrappers::Vector and TrilinosWrappers::MPI::Vector
-have been removed.
-<br>
-(Daniel Arndt, 2017/05/05)
+++ /dev/null
-Removed: The deprecated serial PETSc vector classes have been removed.
-<br>
-(David Wells, 2017/05/06)
+++ /dev/null
-Removed: The deprecated serial Trilinos vector classes have been removed.
-<br>
-(Daniel Arndt, 2017/05/08)
+++ /dev/null
-Changed: The deprecated function Utilities::System::job_supports_mpi()
-has been removed. Use Utilities::MPI::job_supports_mpi() instead.
-<br>
-(Daniel Arndt, 2017/05/14)
+++ /dev/null
-Changed: The deprecated functions BlockSparseMatrixEZ::n_rows()
-and BlockSparseMatrixEZ::n_cols() have been removed.
-Use BlockSparseMatrixEZ::m() and BlockSparseMatrixEZ::n() instead.
-<br>
-(Daniel Arndt, 2017/05/14)
+++ /dev/null
-Changed: The deprecated function SparsityTools::reorder_Cuthill_McKee()
-acting on a SparsityPattern object has been removed.
-Use the one acting on a DynamicSparsityPattern instead.
-<br>
-(Daniel Arndt, 2017/05/15)
+++ /dev/null
-Changed: The FiniteElement::clone() function and all of its
-implementations in derived classes now return a std::unique_ptr rather
-than a plain pointer to a finite element object. User-implemented
-finite element classes need to be adjusted accordingly.
-<br>
-(Wolfgang Bangerth, 2017/06/01)
+++ /dev/null
-Changed: Versions of PETSc prior to 3.3.0 are no longer supported.
-<br>
-(David Wells, 2017/06/03)
+++ /dev/null
-Deprecated: The ParameterHandler::print_parameters_section() function
-has been deprecated.
-<br>
-(Wolfgang Bangerth, 2017/06/07)
+++ /dev/null
-Changed: The deprecated member functions add(), normalize(), conjugate(),
-abs(), sadd(), equ() and mult() in the vector classes have been removed.
-<br>
-(Daniel Arndt, 2017/06/12)
+++ /dev/null
-Changed: The deprecated data in SolverCG::AdditionalData
-and SolverGMRES::AdditionalData::compute_eigenvalues have been removed.
-Use the respective connect_* member functions instead.
-<br>
-(Daniel Arndt, 2017/06/12)
+++ /dev/null
-Changed: The restart_parameter member variable of
-TrilinosWrappers::SolverGMRES::AdditionalData has been removed.
-This value is now stored as gmres_restart_parameter in the base class
-TrilinosWrappers::SolverBase::AdditionalData.
-<br>
-(Jean-Paul Pelteret, 2017/06/26)
+++ /dev/null
-Changed: Timer::print_data doesn't restrict its output to the first MPI process
-anymore but leaves such a choice to the stream given.
-<br>
-(Daniel Arndt, 2017/06/27)
+++ /dev/null
-Changed: In 1D, the face values calculated by <code>MappingManifold</code> now use the manifold attached to the relevant vertex instead of the manifold on the current face.
-<br>
-(David Wells, 2017/07/08)
+++ /dev/null
-Changed: The TableIndices class had a single constructor that just
-took as many indices as one wanted, and padded any unassigned indices
-with numbers::invalid_unsigned_int. This invited mistakes and indeed
-led to difficult to track down errors.
-<br>
-This constructor is therefore now deprecated, and has been replaced by
-a series of constructors with between one and five arguments that can
-be used for objects of type TableIndices<1> to TableIndices<5>.
-<br>
-(Wolfgang Bangerth, 2017/07/10)
+++ /dev/null
-Changed: The SynchronousIteartors::iterators member variable has been
-made private, as mentioned in the changelog of the previous
-release. It can be accessed via SynchronousIterators::operator*(),
-however.
-<br>
-(Wolfgang Bangerth, 2017/07/11)
+++ /dev/null
-Changed: In 1D, MappingQGeneric now considers a cell to have multiple manifolds if the manifold attached to the cell does not match one of the manifolds attached to a face (i.e., vertex).
-<br>
-(David Wells, 2017/07/10)
+++ /dev/null
-Deprecated: A number of classes have been deprecated in favor of the
-LinearOperator concept:
-<ul>
- <li>PointerMatrix, PointerMatrixAux
-</ul>
-Use the LinearOperator class instead, see the module on
-@ref LAOperators "linear operators" for more details.
-<br>
-(Matthias Maier, 2017/07/14)
+++ /dev/null
-Changed: The types::boundary_id and types::material_id types have been changed
-from unsigned char to unsigned int.
-<br>
-(Jean-Paul Pelteret, 2017/08/07)
+++ /dev/null
-Changed: DataOutBase (and derived classes) no longer sets floating point
-output precision of ostreams.
-<br>
-(Matthias Maier, 2017/08/09)
+++ /dev/null
-Removed: Some old functionality has been removed from LogStream:
-<ul>
- <li>The reproducible test functionality has been removed.
- This includes <code>test_mode()</code>, <code>threshold_double()</code>,
- and <code>threshold_float()</code>. Use numdiff, or other tools that can
- do output comparison with small numerical differences instead.</li>
- <li>The <code>log_cerr()</code> function has been removed.
- <li>The timing mechanism has been removed. This includes
- <code>timestamp()</code>, <code>log_execution_time()</code> and
- <code>log_time_differences()</code>. Use the Timer, TimerOutput and
- TimerOutput::Scope classes instead.</li>
- <li>LogStream now defaults to write to std::cout instead of
- std::cerr</li>
-</ul>
-<br>
-(Matthias Maier, 2017/08/10)
+++ /dev/null
-Changed: Triangulation::get_manifold() will now return a FlatManifold instead of
-a StraightBoundary in the case that no manifold description has been attached to
-a provided manifold ID.
-<br> (Luca Heltai, David Wells, 2017/08/12)
+++ /dev/null
-Changed: The member function Boundary::project_to_surface is now ignored in the
-function GridTools::fix_up_distorted_child_cells. Instead,
-GridTools::fix_up_distorted_child_cells uses an internal function that
-duplicates the algorithm used by StraightBoundary::project_to_surface, which was
-the only place project_to_surface was implemented in the library.
-<br>
-(Luca Heltai, David Wells, 2017/08/12)
+++ /dev/null
-Changed: The configuration file <code>deal.II/base/config.h</code> has been
-thoroughly cleaned up. As a result, the following preprocessor symbols (which
-were either never used or were workarounds for older, now unsupported compilers)
-are no longer defined:
-<ul>
- <li> <code>DEAL_II_EXPLICIT_CONSTRUCTOR_BUG</code>
- <li> <code>DEAL_II_MEMBER_VAR_SPECIALIZATION_BUG</code>
- <li> <code>DEAL_II_BOOST_BIND_COMPILER_BUG</code>
- <li> <code>DEAL_II_HAVE_ISNAN</code>
- <li> <code>DEAL_II_STD_ISNAN</code>
- <li> <code>DEAL_II_HAVE_UNDERSCORE_ISNAN</code>
- <li> <code>DEAL_II_HAVE_ISFINITE</code>
- <li> <code>DEAL_II_HAVE_SYS_TIMES_H</code>
- <li> <code>DEAL_II_HAVE_TIMES</code>
- <li> <code>DEAL_II_HAVE_SYS_TYPES_H</code>
- <li> <code>DEAL_II_HAVE_SYS_TIMES_H</code>
-</ul>
-
-<br> (Matthias Maier and David Wells, 2017/08/08 - 2017/08/24)
+++ /dev/null
-Changed: The constructors SymmetricTensor (const Tensor &) and
-Tensor (const array_type &) have been marked as 'explicit'.
-<br>
-(Daniel Arndt, 2017/08/20)
+++ /dev/null
-Changed: The VectorMemory::Pointer class used to have an automatic
-conversion operator to the underlying pointer-to-vector object. As
-part of a rewrite of this class, this conversion (rarely used in
-practice) has been removed.
-<br>
-(Wolfgang Bangerth, 2017/08/22)
+++ /dev/null
-Changed: Specialization of the ProductType class are now implemented through
-specialization of the class internal::ProductTypeImpl . This was done in order
-to ensure that product operations performed with qualified number types do not
-result in the intended specializations being overlooked by the compiler.
-<br>
-(Jean-Paul Pelteret, Wolfgang Bangerth, 2017/08/24)
+++ /dev/null
-Fixed: FiniteElement::get_generalized_support_points() now always returns a
-list of unique points. This is in contrast to the old behavior where
-get_generalized_support_points() returned a repeated list of (nodal)
-support points for an FE_System consisting of Lagrangian elements.
-<br>
-(Matthias Maier, 2017/08/31)
+++ /dev/null
-Changed: SolverGMRES used to notify via deallog when re-orthogonalization
-of the Arnoldi vectors kicks in. Now, there is a slot one can connect to
-retrieve this information. By default nothing is printed.
-<br>
-(Daniel Arndt, 2017/09/02)
+++ /dev/null
-Changed: LAPACKSupport::upper_triangle and LAPACKSupport::lower_triangle are
-renamed to LAPACKSupport::upper_triangular and LAPACKSupport::lower_triangular,
-respectively.
-<br>
-(Denis Davydov, 2017/08/24)
+++ /dev/null
-Changed: deal.II now requires BOOST version 1.59 or newer.
-<br>
-(David Wells, 2017/09/04)
+++ /dev/null
-Changed: The methods
-<ol>
- <li>Manifold::get_new_point</li>
- <li>Manifold::project_to_manifold</li>
-</ol>
-have had their declarations changed in an incompatible manner: these three
-methods now take ArrayView arguments instead of <code>std::vector</code>s. This
-change was done for performance reasons: before this change about a third of the
-time spent generating a curved grid (in this particular benchmark, a circle
-described with polar coordinates and a transfinite interpolation) was used in
-allocating and freeing memory used by the <code>std::vector</code> arguments to
-Manifold::get_new_point() even though the sizes of the arrays are usually known
-at compilation time. This change completely eliminates this allocation cost.
-
-The method <code>Manifold::add_new_points()</code> has been removed in favor of
-Manifold::get_new_points(), which also uses ArrayView arguments instead of
-<code>std::vector</code>s.
-<br>
-(David Wells, 2017/09/10)
+++ /dev/null
-Changed: The virtual function SolverRichardson::criterion() now
-receives the residual and preconditioned residual vectors as
-arguments, rather than accessing it through the member variables of
-the class. It has also been made @p const.
-<br>
-(Wolfgang Bangerth, 2017/09/12)
+++ /dev/null
-Changed: LAPACKSupport::Properties is renamed to LAPACKSupport::Property to be
-consistent with LAPACKSupport::State.
-<br>
-(Denis Davydov, 2017/08/24)
+++ /dev/null
-Changed: The direction argument of the DoFRenumbering::downstream()
-and related functions have been changed from a Point<dim> to a
-Tensor<1,dim> type, since that is the correct data type for a
-direction vector.
-<br>
-(Wolfgang Bangerth, 2017/10/23)
+++ /dev/null
-Removed: The BZIP2 dependency has been removed as it was not used
-in the library anymore.
-<br>
-(Daniel Arndt, 2017/10/25)
+++ /dev/null
-Changed: ParameterHandler::print_parameters() in LaTeX format now correctly
-escapes special characters. As a consequence, the names of labels changed
-because they are now mangled. See the documentation for more details.
-<br>
-(Timo Heister, 2017/11/03)
+++ /dev/null
-Changed: The distribution of degrees of freedom along a refinement edge for a parallel::shared::Triangulation has been changed to mimic that of a parallel::distributed::Triangulation, that is, they are now all given to the processor with the smallest subdomain_id.
-<br>
-(Conrad Clevenger, 2017/11/13)
+++ /dev/null
-Changed: The many KellyErrorEstimator::estimate() overloads all have
-an argument that represents the Neumann boundary values (if the
-solution of the PDE satisfies Neumann boundary conditions on parts of
-the boundary). They used to just be of type Function<dim>, but this
-has now been changed to Function<dim,number> (or, more precisely,
-FunctionMap<dim,number>, which stores a map to Function<dim,number>
-objects) where @p number is the underlying data type of the input
-vector. In other words, if you are using a regular Vector<double> (or
-PETSc or Trilinos equivalents), then nothing has changed since @p
-number is @p double, which is the default for the Function class. On
-the other hand, if you are using a Vector<std::complex<double>>, for
-example, then you need to pass a Function<dim,std::complex<double>> --
-which of course makes sense because the Neumann boundary values of a
-complex-valued solution should also be complex-valued.
-<br>
-(Wolfgang Bangerth, 2017/11/17)
+++ /dev/null
-Removed: The default constructor for ArrayView was removed since
-an object constructed in this way can't be used in any sensible way.
-<br>
-(Daniel Arndt, 2017/11/17)
+++ /dev/null
-Changed: The minimal supported Trilinos version is 12.4.
-<br>
-(Daniel Arndt, 2017/11/18)
+++ /dev/null
-Changed: The default partitioner for parallel::shared::Triangulation
-is Zoltan.
-<br>
-(Daniel Arndt, 2017/11/28)
+++ /dev/null
-Changed: The parameters contained in struct SolverQMRS::AdditionalData have
-been changed in order to meet the rewritten algorithm. See the class documentation
-for more details.
-<br>
-(Ingo Kligge, 2017/12/06)
+++ /dev/null
-Changed: Change the logic of DoFTools::get_subdomain_association to have the
-degrees of freedom along a refinement edge be now all given to the processor
-with the smallest subdomain_id.
-<br>
-(Alexander Grayver, 2017/12/11)
-
+++ /dev/null
-Changed: The type <code>LAPACKFullMatrix::size_type</code> is now <code>unsigned int</code>, which matches <code>FullMatrix::size_type</code>.
-<br>
-(David Wells, 2017/12/20)
+++ /dev/null
-Changed: It is now necessary to explicitly enable MPI support when
-configuring deal.II via -DDEAL_II_WITH_MPI=ON, or -DWITH_MPI=ON on the
-command line. The old behavior of just specifying an MPI compiler wrapper
-via environment, or CMAKE_(C|CXX)_COMPILER does not work any more.
-<br>
-(Matthias Maier, 2018/01/01)
-
+++ /dev/null
-Changed: The classes OpenCASCADE::NormalProjectionBoundary,
-OpenCASCADE::DirectionalProjectionBoundary
-and OpenCASCADE::NormalToMeshProjectionBoundary are rebased
-from Boundary to FlatManifold.
-<br>
-(Daniel Arndt, 2018/01/05)
+++ /dev/null
-Changed: TableIndices uses std::size_t for index access,
-LAPACKFullMatrix::size_type is types::blas_int and
-FullMatrix::size_type is std::size_t.
-<br>
-(Daniel Arndt, 2018/02/02)
-
+++ /dev/null
-Changed: The GridRefinement functions only allow Vector objects
-to be passed in as criteria.
-<br>
-(Daniel Arndt, 2018/02/04)
+++ /dev/null
-Changed: The function Mapping::clone (and all inheriting classes' implementations, such as MappingQ1Eulerian::clone) now return a <code>unique_ptr<Mapping<dim,spacedim>></code>.
-<br>
-(David Wells, 2018/02/08)
+++ /dev/null
-Changed: FETools::get_fe_by_name returns a std::unique_ptr instead of a
-owning raw pointer to prevent creating memory leaks.
-<br>
-(Daniel Arndt, 2018/02/09)
+++ /dev/null
-New: The class FE_DGQHermite has been switched to the more stable polynomial
-basis Polynomials::HermiteLikeInterpolation. This changes the representation
-of the numbers by the FE_DGQHermite class. The change is yet highly beneficial
-because it significantly improves the accuracy (in terms of roundoff) for this
-basis and also reduces iteration counts for some iterative solvers with simple
-preconditioner ingredients such as point-Jacobi or point-Jacobi smoothing.
-<br>
-(Martin Kronbichler, 2018/02/09)
+++ /dev/null
-New: The Manifold class now requires the implementation of a Manifold::clone() method in
-all derived classes.
-<br>
-(Luca Heltai, 2018/04/08)
-
+++ /dev/null
-New: The implementation of the divergence in FEValuesExtractors::Tensor
-was changed so that the gradient operator is contracted from the right.
-This is done in order to make it consistent with gradient of the
-second order tensor, namely $Grad(T) : I = Div(T)$.
-<br>
-(Denis Davydov, 2018/04/12)
+++ /dev/null
-New: Every function in the GridGenerator namespace now attaches a default manifold to the
-curved parts of the boundary of the domain, and sets reasonable defaults for manifold indicators in the
-domain, independently on the boundary indicators.
-<br>
-(Luca Heltai, Daniel Arndt, Jean-Paul Pelteret, David Wells, 2018/04/17)
-
+++ /dev/null
-New: A new manifold class TransfiniteInterpolationManifold implementing an
-interpolation from a curved boundary description to the interior has been
-added. This class enables high-order convergence rates of more than three in
-the power of the mesh size for situations where a curved manifold can only be
-prescribed to the boundary but not in a whole volume.
-<br>
-(Martin Kronbichler, Luca Heltai, 2017/06/01)
+++ /dev/null
-New: SolverFIRE implements FIRE (Fast Inertial Relaxation Engine) for solving
-the problem of minimization of a given objective function.
-<br>
-(Vishal Boddu, Denis Davydov 2017/07/11)
+++ /dev/null
-New: The hp::DoFHandler class can now work with shared triangulations
-of type parallel::shared::Triangulation.
-<br>
-(Wolfgang Bangerth, 2017/07/17)
+++ /dev/null
-New: The cmake configuration now supports unity builds with the option <code>-DDEAL_II_UNITY_BUILD=ON</code>. This option speeds up the build by about 10 to 25%.
-<br> (David Wells, 2017/07/20)
+++ /dev/null
-New: The new namespace Patterns::Tools contains
-utilities that can be used to convert from complicated types
-to strings and vice versa. These tools have been put to use
-in the method ParameterHandler::add_parameter() that allows
-users to perform in one single call the operations
-ParameterHandler::declare_parameter(),
-ParameterHandler::get() and to convert the string to a valid
-value stored in the variable that is given as a parameter to
-ParameterHandler::add_parameter().
-<br>
-(Luca Heltai, 2017/07/20)
+++ /dev/null
-New: The eigenvalues of a rank-2 symmetric tensor can now be computed using an
-analytical approach via the eigenvalues() function.
-<br>
-(Jean-Paul Pelteret, Ester Comellas, 2017/07/27)
+++ /dev/null
-New: The eigenvectors of a rank-2 symmetric tensor can now be computed using one
-of three approaches through the eigenvectors() function. The three algorithms
-that have been implemented are:
-1. The QL algorithm with implicit shifting.
-2. A hybrid algorithm that preferentially uses an analytical algorithm
-and falls back to the QL algorithm if the calculations are deemed
-inaccurate.
-3. The Jacobi algorithm.
-<br>
-(Joachim Kopp, Jean-Paul Pelteret, Ester Comellas, 2017/07/27)
+++ /dev/null
-New: A new MeshWorker::mesh_loop() function has been added
-that performs the same tasks of the MeshWorker::loop() function
-without forcing the users to adhere to a specific interface.
-<br>
-(Luca Heltai, 2017/08/12)
+++ /dev/null
-New: A new KDTreeDistance class has been added that interfaces
-the nanoflann library (https://github.com/jlblancoc/nanoflann).
-This class can be used to extract nearest neighbour information
-on collection of points, query for the closest points to a target
-point or all points contained within a given distance.
-<br>
-(Luca Heltai, 2017/08/13)
+++ /dev/null
-Improved: The support for non-Lagrangian elements with generalized support
-points has been vastly improved. FESystem::get_generalized_support_point()
-now returns a list of unique generalized support points for the finite
-element system. In order to do interpolation a function
-FiniteElement::convert_generalized_support_points_to_dof_values() can be
-used. This interface is implement for a wide variety of base classes and
-FESystem. TODO
-<br> (Matthias Maier, Luca Heltai, 2017/08/31)
-
+++ /dev/null
-New: A new SUNDIALS::IDA class has been added that interfaces
-the SUNDIALS IDA library (https://computation.llnl.gov/projects/sundials)
-This class can be used to solve differential algebraic equations
-using IDA (an implicit differential algebraic equation solver, that
-supports variable step and variable order BDF schemes).
-<br>
-(Luca Heltai, 2017/09/12)
-
+++ /dev/null
-New: A new GridTools::Cache class
-allows caching of some expensive data of the
-Triangulation class, computed generally using
-functions in GridTools.
-<br>
-(Luca Heltai, 2017/09/14)
+++ /dev/null
-New: Added support for the Open Asset Import Library (Assimp)
-(http://assimp.sourceforge.net/). This library can be used
-to read about 40 different 3D graphics formats, used in 3D
-modelers (such as Blender, Maya, etc.). Some of these formats
-contain mesh information, that in turn can be read
-into deal.II Triangulation<2,3> objects.
-<br>
-(Luca Heltai, 2017/09/16)
+++ /dev/null
-New: A new ParameterAcceptor class has been added to the library.
-The class is intended to be used as a base class for any class
-that wants to handle parameters using the ParameterHandler class.
-
-If you derive all your classes from ParameterAcceptor, and declare
-your parameters either with parse/declare_parameters methods or
-via the ParameterAcceptor::add_parameter() method, then the declaring
-and parsing of your parameter files will be automatically managed
-by the ParameterAcceptor::initialize() function.
-<br>
-(Luca Heltai, 2017/09/20)
-
+++ /dev/null
-New: There is now support for the storage of Particles and their
-properties in the new namespace Particles.
-<br>
-(Rene Gassmoeller, 2017/09/22)
+++ /dev/null
-New: Added support for the ARKode solver of the SUNDIALS
-library. ARKode is a solver library that provides
-adaptive-step time integration of the initial value problem
-for systems of stiff, nonstiff, and multi-rate systems of
-ordinary differential equations (ODEs) given in linearly
-implicit form.
-<br>
-(Luca Heltai, 2017/09/27)
+++ /dev/null
-New: Added support for the KINSOL solver of the SUNDIALS
-library. KINSOL is a solver for nonlinear algebraic systems.
-It includes a Newton-Krylov solver as well as Picard and
-fixed point solvers, both of which can be accelerated with
-Anderson acceleration.
-<br>
-(Luca Heltai, 2017/09/28)
+++ /dev/null
-New: The function distribute_mg_dofs has been written for a parallel::shared::Triangulation. This allows for geometric multigrid computations on an adaptively refined mesh using a shared triangulation with the possibility of a user defined partitioning of the active and level cells.
-<br>
-(Conrad Clevenger, 2017/10/10)
+++ /dev/null
-New: Using the Physics::Notation::Kelvin class, it is possible to store and
-retrieve tensors and symmetric tensors in or from a compressed format.
-<br>
-(Jean-Paul Pelteret, 2017/10/16)
+++ /dev/null
-New: The new namespace Rol contains an adaptor class that provides
-the implementation of the ROL::Vector interface.
-The Trilinos package, Rapid Optimization Library (ROL), can solve unconstrained
-and constrained optimization problems, and optimization problems under
-uncertainty.
-<br>
-(Vishal Boddu 2017/11/02)
+++ /dev/null
-New: The majority of deal.II classes that deal with solution vectors
-are now also instantiated for complex-valued vectors. In other words,
-complex-valued vectors should now be supported at the same level as
-real-valued vectors.
-<br>
-(Wolfgang Bangerth, 2017/11/08)
+++ /dev/null
-New: The new ParticleHandler class can store and organize a collection of particles,
-and provide information about their properties. It is currently limited to parallel
-distributed computations and specific applications, but will be extended over time.
-<br>
-(Rene Gassmoeller, 2017/11/10)
+++ /dev/null
-New: Add ScaLAPACKMatrix and ProcessGrid wrappers for high-performance dense linear
-algebra routines for parallel distributed memory machines.
-<br>
-(Denis Davydov, Benjamin Brands, 2017/11/20)
+++ /dev/null
-Improved: The manifold smoothing algorithms applied in the Triangulation class
-and MappingQGeneric have been changed from the old Laplace-style smoothing to
-a transfinite interpolation that linearly blends between the descriptions on
-the faces around a cell. The old transformation introduced boundary layers
-inside cells that prevented convergence rates from exceeding 3.5 in the global
-L2 errors on typical settings. This change also considerably improves mesh
-quality on settings where curved descriptions are only applied to the boundary
-rather than the whole volume.
-<br>
-(Martin Kronbichler, 2017/12/04)
+++ /dev/null
-Changed: The bundled version of Intel Threading Building Blocks has been updated to 2018 U2.
-<br> (David Wells, 2018/03/02)
+++ /dev/null
-New: Triangulation now uses std::unique_ptr to store Manifolds, and duplicates the Manifolds when
-Triangulation::set_manifold() is called. This allows the construction of the Manifold objects
-to be independent of the Triangulation. In particular, it will be possible to associate
-to the Triangulation reasonable default Manifold descriptors, that will be copied
-around together with the Triangulation itself.
-<br>
-(Luca Heltai, 2018/04/06)
-
+++ /dev/null
-New: The MatrixFree framework has been reworked to also support face integrals
-in DG. The new function MatrixFree::loop() takes three function pointers for
-workers on cells, interior faces and boundary faces. The loop can perform the
-data exchange with MPI and is also parallelized with threads taking into
-account the face dependencies. The new class FEFaceEvaluation implements the
-respective evaluation and access routines for face terms.
-<br>
-(Katharina Kormann, Martin Kronbichler, 2018/04/27)
+++ /dev/null
-Extend: The two overloaded functions GridTools::find_active_cell_around_point() now take an optional custom mask for vertices
-to narrow down the search for surrounding cells.
-<br>
-(Vishal Boddu, 2017/03/22)
+++ /dev/null
-New: GridTools::compute_bounding_box() computes a bounding box of a subdomain
-whose active cells conform to a given predicate.
-GridTools::compute_active_cell_layer_within_distance() computes a collection
-of active cells that are within a given distance from
-predicate subdomain.
-GridTools::compute_ghost_cell_layer_within_distance() computes a collection
-of active cells that are within a given distance from
-locally owned active cells.
-<br>
-(Vishal Boddu, Denis Davydov 2017/03/23)
+++ /dev/null
-New: DoFTools::extract_dofs_with_support_contained_within() returns a set of
-degrees of freedom whose support is entirely contained within the cells for
-which the predicate returns true.
-<br>
-(Denis Davydov, 2017/03/24)
+++ /dev/null
-New: The tensor product kernels used by FEEvaluation have gained a faster
-variant for evaluating gradients derived from spectral identities. This
-improves performance of the Laplace operator evaluation by 10-20% in the
-computation-bound case.
-<br>
-(Martin Kronbichler, 2017/03/24)
+++ /dev/null
-New: The FEEvaluation::read_dof_values and
-FEEvaluation::distribute_local_to_global now use dedicate gather (AVX2,
-AVX-512) and scatter (AVX-512) instructions for faster vector access if those
-are available.
-<br>
-(Martin Kronbichler, 2017/03/24)
+++ /dev/null
-New: The classes FE_Q, FE_DGQ, and FE_DGQArbitraryNodes now implement
-the
-FiniteElement::convert_generalized_support_point_values_to_dof_values()
-interface.
-<br>
-(Wolfgang Bangerth, 2017/04/05)
+++ /dev/null
-New: The class FESystem now implements
-the
-FiniteElement::convert_generalized_support_point_values_to_dof_values()
-interface.
-<br>
-(Wolfgang Bangerth, Matthias Maier, 2017/08/31)
+++ /dev/null
-New: There is now a function TableHandler::start_new_row() that fills
-all entries of the current row (if any) that hadn't been filled, and
-thus starts a new row of the table.
-interface.
-<br>
-(Wolfgang Bangerth, 2017/04/09)
+++ /dev/null
-New: There is now a function TableHandler::declare_entry() that
-creates a column of a table without actually putting a value into it.
-<br>
-(Wolfgang Bangerth, 2017/04/11)
+++ /dev/null
-New: Augment python interface of Point: add operators to modify point, a
-function to compute the distance between points, and functions to compute norms.
-<br>
-(Bruno Turcksin, 2017/04/11)
+++ /dev/null
-Fixed: When initializing a LinearAlgebra::distributed::Vector and omitting
-zeroing the entries, ghost entries were left undefined, leading to use of
-invalid memory when calling compress() without a previous zero_out_ghosts()
-also when the local range was completely valid. This is now fixed.
-<br>
-(Martin Kronbichler, 2017/04/12)
+++ /dev/null
-Fixed: FETools::extrapolate also works for BlockVector types.
-<br>
-(Daniel Arndt, 2017/04/13)
+++ /dev/null
-Changed: The PointValueHistory class still used the old, deprecated
-interface for DataPostprocessor objects in that variant of the
-PointValueHistory::evaluate_field() function that takes such an
-object. This is now fixed: it uses
-DataPostprocessor::evaluate_scalar_field() and
-DataPostprocessor::evaluate_vector_field(), like all other
-users of the DataPostprocessor class.
-<br>
-(Wolfgang Bangerth, 2017/04/16)
+++ /dev/null
-Fixed: The MeshWorker framework can also be used in case dim != spacedim.
-<br>
-(Daniel Arndt, 2017/04/16)
+++ /dev/null
-New: The new function ParameterHandler::add_action() allows to
-register actions that should be performed when a parameter
-is read from somewhere. This allows, in particular, initializing
-member variables that store parameter values without having to
-explicitly call ParameterHandler::get(),
-ParameterHandler::get_integer(), or similar functions.
-<br>
-(Wolfgang Bangerth, 2017/04/16)
+++ /dev/null
-Changed: We no longer support Visual Studio 2013 because it
-lacks important c++11 features like constexpr. It is now possible
-to use MSVC 2017 in addition to MSVC 2015.
-<br>
-(Timo Heister, 2017/04/20)
+++ /dev/null
-New: The ParameterHandler::parse_input() function and friends now make
-a guarantee that if a parameter value does not match its pattern, or
-an associated action throws an exception, that the enclosing
-ParameterHandler object will be reset to the same subsection level
-it was in before ParameterHandler::parse_input() was called.
-<br>
-(Wolfgang Bangerth, 2017/04/21)
+++ /dev/null
-New: Add Point<dim,Number>::distance_square() which calculates the squared
-Euclidean distance.
-<br>
-(Denis Davydov, 2017/04/24)
+++ /dev/null
-Fixed: Copying Patterns::List or Patterns::Map objects previously led
-to memory corruption. This is now fixed.
-<br>
-(Wolfgang Bangerth, 2017/04/25)
+++ /dev/null
-New: TriaAccessor::enclosing_ball() computes and return a pair of Point
-and double corresponding to the center and the radius of a reasonably small
-enclosing ball of the TriaAccessor object.
-<br>
-(Vishal Boddu, Denis Davydov 2017/04/26)
+++ /dev/null
-Changed: The PETScWrappers::MPI::Vector class always corresponds to a PETSc
-vector with type <code>mpi</code>, even when empty.
-<br> (David Wells, 2017/03/29)
+++ /dev/null
-New: ConstraintMatrix::distribute_local_to_global can now also assemble to
-rectangular matrices where rows and columns are described by different
-ConstraintMatrix objects.
-<br>
-(Martin Kronbichler, 2017/05/04)
+++ /dev/null
-New: TrilinosWrappers::MPI::BlockMatrix can now return its MPI_Comm via
-get_mpi_communicator() and its range and domain indices via
-locally_owned_range_indices() and locally_owned_domain_indices()
-relying on the information of the TrilinosWrappers::MPI::Matrix
-object it is based on.
-<br>
-(Daniel Arndt, 2017/05/09)
+++ /dev/null
-New: Add support for matrix-free operator application on GPU using CUDA.
-Constraints (Dirichlet boundary conditions, hanging nodes, etc.) cannot be
-applied.
-<br>
-(Bruno Turcksin and Karl Ljungkvist, 2017/05/10)
+++ /dev/null
-New: The vertex (and face) iterator for dimension 1 triangulations now implements
-the get_manifold method.
-<br> (David Wells, 2017/05/10)
+++ /dev/null
-New: Add a new class ConsecutiveControl which returns SolverControl::State::success
-if and only if a certain positive number of consecutive iterations satisfy the
-specified tolerance.
-<br>
-(Denis Davydov, 2017/05/17)
+++ /dev/null
-New: Added a GridTools::regularize_corner_cells function that
-detects if the boundary cells of a mesh at corner positions
-(with dim adjacent faces on the boundary) need to be split into
-cells with smaller angles.
-<br> (Luca Heltai, Martin Kronbichler, 2017/05/18)
+++ /dev/null
-New: Add method to access timing data from TimerOutput from code.
-<br>
-(Jonathan Robey, 2017/05/22)
+++ /dev/null
-New: There is a new header, <tt>lac/trilinos_index_access.h</tt>, that provides
-index and size functions for some common Trilinos objects that work correctly for
-both 32 and 64 bit code.
-<br> (David Wells, 2017/05/10)
+++ /dev/null
-Removed: The build_tests category of tests has been removed. Build tests
-now compile all configurable example steps as part of the regular build
-stage.
-<br>
-(Matthias Maier, 2017/04/06)
+++ /dev/null
-New: deal.IIFeatureConfig.cmake will contain detailed information about
-feature configuration and is installed along with other CMake files.
-These variables can be loaded by calling INCLUDE(\${DEAL_II_FEATURE_CONFIG}).
-This is useful when users want to link in additional parts of dependencies, not
-required by deal.II (i.e. filesystem library from Boost package).
-<br>
-(Denis Davydov and Matthias Maier, 2017/05/29)
+++ /dev/null
-Fixed: DataOutInterface::set_flags() was broken when passed an object
-of type DataOutBase::GnuplotFlags. This is now fixed.
-<br>
-(Wolfgang Bangerth, 2017/05/30)
+++ /dev/null
-New: The ConeBoundary class now has a member function ConeBoundary::normal_vector().
-<br> (Anne Glerum, 2017/05/30)
+++ /dev/null
-Deprecated: The ParameterHandler::print_parameters_section() function
-has been deprecated.
-<br>
-(Wolfgang Bangerth, 2017/06/02)
+++ /dev/null
-Improved: CylindricalManifold is now really using cylindrical coordinates
-instead of taking an average in space coordinates.
-<br>
-(Daniel Arndt, 2017/06/05)
+++ /dev/null
-New: A function TriaAccessor::real_to_unit_cell_affine_approximation that
-computes an approximation to a point in unit coordinates has been added.
-<br>
-(Martin Kronbichler, 2017/06/05)
+++ /dev/null
-New: Added a new polynomial class IntegratedLegendreSZ. This implements
-the integrated Legendre polynomials described in the 2006 PhD thesis
-of Sabine Zaglmayr.
-<br>
-(Ross Kynch, 2017/06/06)
+++ /dev/null
-Changed: The ParameterHandler::print_parameters() function is now
-@p const, as one would expect it to be.
-<br>
-(Wolfgang Bangerth, 2017/06/07)
+++ /dev/null
-Improved: The multigrid smoothers now provide an additional apply() method that
-specializes the smoothing for the case the input vector is set to zero. This
-method is used in the Multigrid class and saves one matrix-vector product,
-which can speed up the multigrid algorithm by up to 10 percent, depending on
-the cost of the smoother.
-<br>
-(Martin Kronbichler, 2017/06/07)
+++ /dev/null
-Initialization of Chebyshev smoother: project vector onto space of vectors
-with zero mean which is necessary in some cases where the matrix is singular.
-Rename variable is_initialized -> eigenvalues_are_initialized
-in order to improve code readability.
-<br>
-(Niklas Fehn, 2017/06/07)
+++ /dev/null
-Fixed: FullMatrix::print_formatted() and LAPACKFullMatrix::print_formatted
-would previously print NaN values as zero. This is now fixed.
-<br>
-(Simon Sticko, Martin Kronbichler, 2017/06/08)
+++ /dev/null
-Fixed: The ParameterHandler::print_parameters() function
-used the previously set fill character of the output stream, but it
-should have filled with spaces instead. This is now fixed.
-<br>
-(Wolfgang Bangerth, 2017/06/07)
+++ /dev/null
-Changed: ParameterHandler::print_parameters() was at times looking at
-individual bits instead of just the declared values
-of ParameterHandler::OutputStyle. This presumably allowed for calling that
-function with a combination of the OutputStyle flags, for reasons that no
-longer seem particularly relevant nor obvious.
-<br>
-This possibility has now been removed from the current implementation of
-the function, but is for the moment retained for the (deprecated) function
-ParameterHandler::print_parameters_section().
-<br>
-(Wolfgang Bangerth, 2017/06/09)
+++ /dev/null
-Fixed: Patterns derived from PatternBase now return
-std::unique_ptr<PatternBase> in their clone() and
-create() functions.
-<br>
-(Luca Heltai, 2017/06/12)
+++ /dev/null
-Fixed: The passing of additional settings to
-TrilinosWrappers::SolverBase from derived solvers
-was never completed. This has now been corrected.
-<br>
-(Julian Andrej, Jean-Paul Pelteret, 2017/06/14)
+++ /dev/null
-New: Utilities::split_string_list() now has a
-version that allows to pass a string instead of a
-character. With this it is possible to split on
-double chars, for example: "alpha ;; beta ;; gamma".
-<br>
-(Luca Heltai, 2017/06/14)
+++ /dev/null
-New: Patterns::Map now accepts a new optional parameter,
-that allows to specify also the separator between
-key-value pairs.
-<br>
-(Luca Heltai, 2017/06/14)
+++ /dev/null
-Deprecated: The static member variables DoFHandler::invalid_dof_index
-and hp::DoFHandler::invalid_dof_index are now deprecated. Use
-numbers::invalid_dof_index instead.
-<br>
-(Wolfgang Bangerth, 2017/06/20)
+++ /dev/null
-New: The Timer class now has new functions Timer::get_total_data(),
-Timer::print_total_data, Timer::last_wall_time, Timer::cpu_time and
-Timer::last_cpu_time() to access information about the total run as
-well as the last lap.
-<br>
-(Daniel Arndt, 2017/06/23)
+++ /dev/null
-Changed: The complete_index_set() function now returns a compressed
-version of the IndexSet that contains all indices.
-<br>
-(Wolfgang Bangerth, 2017/06/24)
+++ /dev/null
-Fixed: FullMatrix::determinant() is now implemented for square matrices
-of size greater than 3. In this case, it is computed through the
-LU decomposition of the matrix using LAPACK.
-<br>
-(Andreas Kergassner, Jean-Paul Pelteret, 2017/07/02)
+++ /dev/null
-Fixed: FullMatrix::left_invert() and FullMatrix::right_invert() no longer
-fail when the matrix is square.
-<br>
-(Andreas Kergassner, Jean-Paul Pelteret, 2017/07/02)
+++ /dev/null
-New: The determinant of a LAPACKMatrix can now be computed via a
-call to LAPACKMatrix::determinant().
-<br>
-(Jean-Paul Pelteret, 2017/07/02)
+++ /dev/null
-Deprecated: The ParpackSolver::Shift class has been deprecated.
-<br>
-(Matthias Maier, 2017/07/03)
+++ /dev/null
-Fixed: TrilinosWrappers::PreconditionBlock* classes now work correctly if one of the processors does not own any rows.
-<br>
-(Timo Heister, 2017/07/04)
+++ /dev/null
-New: The DoFRenumbering::component_wise() function was available for
-all dimensions and space dimensions for regular DoFHandler objects,
-but only for dimension == space_dimension for hp::DoFHandler. This is
-now fixed.
-<br>
-(Wolfgang Bangerth, 2017/07/07)
+++ /dev/null
-Changed: The DoFRenumbering::compute_component_wise() function used to
-take two template arguments that denote iterator types, one for the
-begin and one for the end iterator. This has been changed: It now only
-takes an iterator type argument for the begin iterator, and the end
-iterator is automatically casted to that same type.
-<br>
-(Wolfgang Bangerth, 2017/07/08)
+++ /dev/null
-New: MGConstrainedDoFs object now stores information for periodicity
-constraints which is used during the multigrid transfer by
-MGTransferMatrixFree and MGTransferPrebuilt.
-<br>
-(Conrad Clevenger, Martin Kronbichler, 2017/07/08)
+++ /dev/null
-Fixed: The DoFHandler::n_boundary_dofs() and
-hp::DoFHandler::n_boundary_dofs() functions did not take into account
-that a one-dimensional triangulation may consist of more than one
-segment (and then may have more than two vertices on the
-boundary). This is now fixed.
-<br>
-(Wolfgang Bangerth, 2017/07/10)
+++ /dev/null
-New: A new class TensorProductMatrixSymmetricSum that represents a tensor
-product of a mass and derivative matrix has been added. It implements both the
-matrix-vector operation (TensorProductMatrixSymmetricSum::vmult()) as well as
-the inverse operation (TensorProductMatrixSymmetricSum::apply_inverse())
-operation in tensorial form with optimal complexity of
-<tt>size<sup>dim+1</sup></tt> operations. The inverse operation uses the fast
-diagonalization method.
-<br>
-(Martin Kronbichler, 2017/07/11)
+++ /dev/null
-New: Adding the functions FE_FaceQ::hp_vertex_dof_identities(),
-FE_FaceQ::hp_line_dof_identities() and FE_FaceQ::hp_quad_dof_identities()
-allows FE_FaceQ to be used in combination with a hp::DoFHandler.
-<br>
-(Samuel Imfeld, Daniel Arndt, 2017/07/11)
+++ /dev/null
-Improved: linear_operator gained an overload that directly takes a
-LinearOperator as exemplar object to directly copy the
-reinit_(domain|range)_vector functions from.
-<br>
-(Matthias Maier, 2017/07/14)
+++ /dev/null
-New: DataOutBase now supports writing zero-dimensional
-data in a higher spatial dimension (e.g. vertices, quadrature points, particles)
-for a number of output formats (vtu,vtk,gnuplot,hdf5). A consequence of the
-change is that HDF5 now in general supports output for dim<spacedim.
-<br>
-(Rene Gassmoeller, 2017/07/18)
+++ /dev/null
-Fixed: The ghost layer computation for the case when periodic boundary
-conditions were set on all boundaries in 3D missed some cells leading to a
-deadlock when used on 43 MPI ranks or more. This is now fixed.
-<br>
-(Martin Kronbichler, 2017/07/20)
+++ /dev/null
-New: There is now a function ConstraintMatrix::copy_from() that allows
-copying objects of type ConstraintMatrix.
-<br>
-(Wolfgang Bangerth, 2017/07/27)
+++ /dev/null
-Fixed: MappingQGeneric::transform_real_to_unit_cell had a bug where, for certain
-parallelograms, a problem with subtracting nearly equal floating point numbers
-ruined most of the digits of accuracy in the coordinate transformation.
-<br> (Giovanni Di Ilio, David Wells, Jean-Paul Pelteret, 2017/07/25)
+++ /dev/null
-Initialization of Chebyshev smoother: Make initial guess robust with
-respect to number of processors by operating on the global index.
-<br>
-(Niklas Fehn, 2017/07/25)
+++ /dev/null
-Fixed: The FunctionParser class demonstrated an incompatibility with
-(very) old versions of the Threading Building Blocks used in
-deal.II. This is now worked around.
-<br>
-(Alberto Sartori, Wolfgang Bangerth, 2017/07/26)
+++ /dev/null
-Fixed: DataOutBase::write_hdf5_parallel() can also be used in case deal.II
-and HDF5 are not compiled with MPI support.
-<br>
-(Daniel Arndt, 2017/07/26)
+++ /dev/null
-New: Quadrature::is_tensor_product() returns if the corresponding quadrature
-formula can be represented as a tensor product and the quadrature points are
-sorted lexicographically. The corresponding 1D objects can be queried using
-Quadrature::get_tensor_basis().
-<br>
-(Daniel Arndt, 2017/07/26)
+++ /dev/null
-New: Extend pArpack solver to cover mode 1 (standard eigenvalue problem) and
-mode 2 (generalized eigenvalue problem without spectral transformation).
-<br>
-(Denis Davydov, 2017/08/01)
+++ /dev/null
-Fixed: DiagonalMatrix<VectorType> can now be used as a linear operator.
-<br>
-(Denis Davydov, 2017/08/01)
+++ /dev/null
-New: Add Utilities::LinearAlgebra::lanczos_largest_eigenvalue() to estimate the largest
-eigenvalue of a symmetric linear operator using k-steps of Lanczos algorithm.
-<br>
-(Denis Davydov, 2017/08/01)
+++ /dev/null
-New: Add Utilities::LinearAlgebra::chebyshev_filter() to apply Chebyshev filter of a
-given degree.
-<br>
-(Denis Davydov, 2017/08/02)
+++ /dev/null
-New: Quadrature has a (defaulted) move assignment operator.
-<br>
-(Daniel Arndt, 2017/08/04)
+++ /dev/null
-New: MappingQGeneric uses tensorized evaluation for maybe_update_Jacobians,
-maybe_compute_q_points and maybe_update_jacobian_grads in case
-the Quadrature object represents a tensor product of identical
-one-dimensional quadrature formulas.
-<br>
-(Daniel Arndt, 2017/08/04)
+++ /dev/null
-Changed: ConstraintMatrix::ConstraintLine is now a public member class
-definition.
-<br>
-(Matthias Maier, 2017/08/08)
+++ /dev/null
-Improved: ConstraintMatrix now has a member function
-ConstraintMatrix::get_lines() that returns a range object that allows
-iteration over all constraint entries.
-<br>
-(Matthias Maier, 2017/08/08)
+++ /dev/null
-Fixed: Creation of coverage information via
-compiling with 'DEAL_II_SETUP_COVERAGE=ON'
-and 'ctest -S ../tests/run_coverage.cmake' works again.
-<br>
-(Matthias Maier, Daniel Arndt, 2017/08/09)
+++ /dev/null
-Deprecated: internal::bool2type and int2type has been depreated
-in favor of std::intergral_constant.
-<br>
-(Daniel Arndt, 2017/08/10)
+++ /dev/null
-New: All of the FEValuesViews classes now have a set of functions
-named get_function_*_from_local_dof_values that return the function
-values, gradients etc. from a local vector of degree-of-freedom
-values. They also now contain a data structure called OutputType
-that that provides the output type for the product of the value
-and derivatives of basis functions of the view and any number type.
-<br>
-(Jean-Paul Pelteret, Luca Heltai, 2017/08/10)
+++ /dev/null
-New: GridTools::exchange_cell_data_to_ghosts() to exchange ghost data.
-<br>
-(Timo Heister, 2017/08/12)
+++ /dev/null
-New: A new version of GridTools::find_active_cell_around_point()
-has been added that exploits local maps constructed
-using standard GridTools utilities.
-<br>
-(Rene Gassmoeller, Luca Heltai, 2017/08/13)
+++ /dev/null
-Deprecated: constraint_and_return_value has been deprecated
-in favor of std::enable_if.
-<br> (Daniel Arndt, 2017/08/14)
+++ /dev/null
-Deprecated: types_are_equal has been deprecated in favor of std::is_same.
-<br> (David Wells, 2017/08/14)
+++ /dev/null
-Fixed: Constructing an IndexSet from an Epetra_Map generated the wrong size.
-<br>
-(Timo Heister, 2017/08/15)
+++ /dev/null
-Fixed: ConsecutiveControl now asserts that check() is being called for zeroth
-iteration.
-<br>
-(Denis Davydov, 2017/08/16)
+++ /dev/null
-Improved: The CMake CUDA detection and configure has been completely
-rewritten. CUDA support now requires CMake version 3.9 or newer.
-<br>
-(Matthias Maier, 2017/08/08)
+++ /dev/null
-Fixed: The Tensor::l1_norm() and Tensor::linfty_norm() functions have now been
-generalized for all number types.
-<br>
-(Jean-Paul Pelteret, 2017/08/17)
+++ /dev/null
-Fixed: The following non-member functions operating on SymmetricTensors have
-been generalized for all number types:
- - scalar_product()
- - double_contract()
- - invert() for rank-4 symmetric tensors
- - operator*() performing a double contraction between two symmetric tensors.
- - operator*() performing a single contraction of a symmetric tensor with a
- rank-1 tensor.
-<br>
-(Jean-Paul Pelteret, 2017/08/17)
+++ /dev/null
-New: An additional non-member operator*() function, performing a single
-contraction between a symmetric and normal tensor of arbitrary rank, has been
-added to the SymmetricTensor class.
-<br>
-(Matthias Maier, Jean-Paul Pelteret, 2017/08/17)
+++ /dev/null
-Fixed: The non-member invert() function operating on SymmetricTensors has
-been generalized for all number types.
-<br>
-(Wolfgang Bangerth, Jean-Paul Pelteret, 2017/08/17)
+++ /dev/null
-New: Add MGTransferBlockMatrixFree which allows using geometric multi-grids with
-LinearAlgebra::distributed::BlockVector<Number> where each block uses the same
-index space of degrees of freedom.
-<br>
-(Denis Davydov, 2017/08/18)
+++ /dev/null
-New: DoFHandler::get_fe() and hp::DoFHandler::get_fe()
-have been deprecated in favor of DoFHandler::get_finite_element(),
-DoFHandler::get_fe_collection(), hp::DoFHandler::get_finite_element()
-and hp::DoFHandler::get_fe_collection() that share a common signature each.
-<br>
-(Daniel Arndt, 2017/08/19)
+++ /dev/null
-New: The constructors for hp::FECollection taking a fixed number of
-FiniteElement objects as argument were replaced by a variadic
-template constructor taking an arbitrary number of objects.
-<br> (Daniel Arndt, 2017/08/20)
+++ /dev/null
-New: The struct is_base_of_all is a generalization of std::is_base_of
-to template parameter packs and tests if all classes in the parameter pack
-have a given class as base class or are this class.
-<br>
-(Daniel Arndt, 2017/08/21)
+++ /dev/null
-Fixed: It turns out that it was not possible to copy an invalid
-operator, i.e., the following code would yield an exception:
-@code
- typename DoFHandler<dim>::active_cell_iterator invalid_1;
- typename DoFHandler<dim>::active_cell_iterator invalid_2;
-
- invalid_1 = invalid_2; // resulted in an error
-@endcode
-This made no sense, and has now been fixed.
-<br>
-(Wolfgang Bangerth, 2017/08/23)
+++ /dev/null
-Fixed: On Vector::add(..), a pointer to the first element of a std::vector
-is gotten by std::vector::data() instead of using the "&v[0]" idiom, which
-results in an undefined behaviour.
-<br>
-(Tulio Ligneul, 2017/08/23)
+++ /dev/null
-New: Extend Point::distance_square() to work with VectorizedArray numbers.
-<br>
-(Denis Davydov, 2017/08/24)
+++ /dev/null
-Changed: DoFHandler::get_finite_element(unsigned int) has been removed again in
-favor of equipping DoFHandler::get_fe() with a (defaulted) unsigned int
-parameter. hp::DoFHandler::get_finite_element(unsigned int) has been renamed to
-hp::DoFHandler::get_fe(unsigned int).
-<br>
-(Daniel Arndt, 2017/08/25)
+++ /dev/null
-New: The DataPostprocessorVector class now has an extensive example of
-its use.
-<br>
-(Wolfgang Bangerth, 2017/08/29)
+++ /dev/null
-New: The new DataPostprocessorTensor can help visualize tensor-valued
-quantities.
-<br>
-(Wolfgang Bangerth, 2017/08/30)
+++ /dev/null
-Changed: The various overloads for Threads::new_thread() and
-Threads::new_task() taking from 0 to 9 parameters have been replaced
-by two variadic template versions.
-<br>
-(Daniel Arndt, 2017/09/01)
+++ /dev/null
-New: Add Utilities::MPI::sum() for FullMatrix objects.
-<br>
-(Denis Davydov, 2017/09/04)
+++ /dev/null
-New: The newly implemented FiniteElement::operator^ allows in combination
-with the new variadic template constructor or the new std::initializer_list
-constructor for FESystem to construct
-FESystem objects using syntax like
-@code
- FESystem<dim, spacedim> fe_system1 ({FiniteElementType1^n1,
- FiniteElementType2^n2});
- FESystem<dim, spacedim> fe_system2 (FiniteElementType1^n3,
- FiniteElementType2^n4);
-@endcode
-<br>
-(Daniel Arndt, 2017/09/05)
+++ /dev/null
-New: Add more Python wrappers to generate meshes and to flatten a Triangulation.
-<br>
-(Bruno Turcksin, 2017/09/10)
+++ /dev/null
-New: There is now a conversion constructor that converts std::vector
-objects to ArrayView objects.
-<br>
-(Wolfgang Bangerth, 2017/09/11)
+++ /dev/null
-New: FiniteElement and FESystem have move constructors.
-<br>
-(Daniel Arndt, 2017/09/11)
+++ /dev/null
-Fixed: The destructor of TimerOutput::Scope will now always exit the subsection
-it entered in its constructor, instead of just exiting the last subsection that
-was created in the provided TimerOutput object. This fixes timing output
-measurements for multithreaded applications and cases where subsections are
-nested.
-<br>
-(David Wells, 2017/09/14)
+++ /dev/null
-New: Added the base class BoundingBox. The BoundingBox is constructed from a std::pair of points in real space, ordered following the convention bottom-left, top-right.
-The class has the method BoundingBox::point_inside(Point<spacedim> p) which checks for the presence of a point inside it.
-<br>
-(Giovanni Alzetta, 2017/09/15)
+++ /dev/null
-New: A new GridIn::read_assimp() function allows to
-read in a file in one of the (40) formats supported by Assimp.
-<br>
-(Luca Heltai, 2017/09/16)
+++ /dev/null
-New: A GridTools::extract_used_vertices() has been added
-that returns a map of index-vertex position, using an
-optional Mapping<dim,spacedim> object to compute the
-vertex locations.
-<br>
-(Luca Heltai, 2017/09/18)
+++ /dev/null
-New: A GridTools::find_closest_vertex() has been added
-that takes a map of index-vertex position and a target
-point, and returns the index of the closest point in
-the map.
-<br>
-(Luca Heltai, 2017/09/19)
+++ /dev/null
-New: Added two methods to the class BoundingBox. The first, merge_with(BoundingBox) merges the current BoundingBox with BBox. The second, volume(), returns the volume (dim-dimensional measure) of the current BoundingBox
-<br>
-(Giovanni Alzetta, 2017/09/22)
+++ /dev/null
-Changed: The new methods ArrayView::cbegin() and ArrayView::cend() return
-const_iterators and are const themselves. ArrayView::begin() and
-ArrayView::end() return (non-const) iterators and are const themselves.
-<br>
-(Daniel Arndt, Julius Witte, 2017/09/24)
+++ /dev/null
-New: There are new signals in the Triangulation class
-that signal the beginning and end of a parallel::distributed
-refinement and serialization. This allows to connect functions
-that should be called uniquely once before and after
-refinement and serialization for parallel distributed
-Triangulations (something not possible with the existing
-signals).
-<br>
-(Rene Gassmoeller, 2017/09/25)
+++ /dev/null
-New: Extend LAPACKFullMatrix to provide (i) Cholesky factorization (and use it for inversion);
-(ii) an estimate of the reciprocal condition number; (iii) l1_norm(),
-linfty_norm() and frobenius_norm().
-<br>
-(Denis Davydov, 2017/09/26)
+++ /dev/null
-Fixed: The hp version of DoFTools::make_flux_sparsity_pattern() with masks for
-DoF couplings now works with non-primitive FE spaces, similarly to its non-hp version.
-The hp version of VectorTools::project_boundary_values() is modified to work properly with Hdiv
-conforming finite elements.
-<br>
-(Eldar Khattatov, 2017/09/26)
+++ /dev/null
-New: Extend MappingQEulerian to work with multi-grid vectors.
-<br>
-(Denis Davydov, 2017/09/27)
+++ /dev/null
-New: Add MGTransferMatrixFree::interpolate_to_mg() to transfer fine-level
-solution to a multi-grid vector
-<br>
-(Denis Davydov, 2017/09/27)
+++ /dev/null
-Changed: Split TensorProductMatrixSymmetricSum into base and derived class.
-Added a template specialization for TensorProductMatrixSymmetricSum
-in case of having a VectorizedArray as arithmetic type.
-In addition, TensorProductMatrixSymmetricSum is now able to handle
-distinct 1D matrices in each tensor dimension.
-<br>
-(Julius Witte, 2017/09/27)
+++ /dev/null
-Fixed: One of the functions GridTools::find_active_cell_around_point()
-supports an additional `mapping` argument. This mapping was used
-to actually transform points from the real to the reference space,
-but somewhere in the algorithm we look for the `closest_vertex` to
-the target point. Such search was done ignoring if the `mapping`
-actually changes the location of the vertices. This is now fixed,
-and the internal function that looks for the closest vertex now
-takes into account the `mapping` transformation.
-<br>
-(Luca Heltai, 2017/09/27)
+++ /dev/null
-New: Add LinearAlgebra::distributed::BlockVector<Number>::multivector_inner_product()
-to perform inner product between each block of the two block vectors.
-<br>
-(Denis Davydov, 2017/09/30)
+++ /dev/null
-New: Add Utilities::MPI::sum() for LAPACKFullMatrix objects.
-<br>
-(Denis Davydov, 2017/09/04)
+++ /dev/null
-New: MGTransferBlockMatrixFree allows to use a separate DoFHandler
-for each block. The required interface is supported by PreconditionMG.
-<br>
-(Daniel Arndt, 2017/10/01)
+++ /dev/null
-Fixed: It was previously not possible to create objects of type Table
-with elements that are not copyable or copy constructible. An example
-of such a type is `std::unique_ptr`. This has now been fixed.
-<br>
-(Wolfgang Bangerth, 2017/10/02)
+++ /dev/null
-New: FiniteElement::get_sub_fe() allows you to return a contained FiniteElement based on a ComponentMask.
-<br>
-(Timo Heister, 2017/10/07)
+++ /dev/null
-New: Add LAPACKFullMatrix::trace() to calculate trace of a matrix.
-<br>
-(Denis Davydov, 2017/10/09)
+++ /dev/null
-Fixed: The transformation operation for rank-2 and rank-4 (non-symmetric) tensors
-in the Physics::Transformations was incorrectly implemented.
-This has now been fixed.
-<br>
-(Jean-Paul Pelteret, 2017/10/17)
+++ /dev/null
-New: The class Utilities::MPI::Partitioner now supports handling only a
-selection of ghost indices within a larger ghost set. Use this feature by
-adding a second, larger, IndexSet to Partitioner::set_ghost_indices().
-<br>
-(Martin Kronbichler, 2017/10/17)
+++ /dev/null
-New: The class Utilities::MPI::Partitioner can now handle the MPI import and
-export calls that were previously hidden in the vector class. This allows to
-use MPI communication of integers besides the previously supported floating
-point data.
-<br>
-(Martin Kronbichler, 2017/10/17)
+++ /dev/null
-New: A new version of GridTools::find_active_cell_around_point()
-has been added that exploits a GridTools::Cache object.
-<br>
-(Luca Heltai, 2017/10/18)
+++ /dev/null
-New: MatrixFreeOperators::Base now also stores the diagonal of the operator that
-shall be populated in derived class in compute_diagonal() method. The read access
-is provided by MatrixFreeOperators::Base::get_matrix_diagonal().
-<br>
-(Denis Davydov, 2017/10/19)
+++ /dev/null
-Changed: The <code>enum</code> VectorOperation is now declared in its own header instead of the header for Vector.
-<br>
-(David Wells, 2017/10/20)
+++ /dev/null
-New: Added BoundingBox::get_neighbor_type() which returns the neighboring relation between two bounding boxes. Added the function GridTools::compute_mesh_predicate_bounding_box() which returns a vector of BoundingBoxes covering the cells for which a given predicate is true.
-<br>
-(Giovanni Alzetta, 2017/10/20)
+++ /dev/null
-New: DoFHandler::renumber_dofs() for multigrid levels is now implemented for
-parallel::distributed::Triangulation for the special case that the numbering
-does not change over processor boundaries.
-<br>
-(Martin Kronbichler, 2017/10/20)
+++ /dev/null
-Added: Test for Functions::FEFieldFunction::compute_point_locations
-<br>
-(Giovanni Alzetta, 2017/10/23)
+++ /dev/null
-Added: Function GridTools::compute_point_locations and a test for it. The function uses the recently added Cache to improve performance.
-<br>
-(Giovanni Alzetta, 2017/10/24)
+++ /dev/null
-New: The function
-LinearAlgebra::distributed::Vector::copy_locally_owned_data_from() can copy
-the locally owned range in a parallel vector without considering the ghost
-entries which might be different between the two vectors.
-<br>
-(Martin Kronbichler, 2017/10/24)
+++ /dev/null
-Fixed: The computation of the inverse jacobians in the
-MappingCartesian class was broken. It would trigger an
-assertion at runtime complaining that only an assignment
-with zero is allowed. This is fixed now.
-<br>
-(Rene Gassmoeller, 2017/10/24)
+++ /dev/null
-New: Add LAPACKFullMatrix<number>::add (const number a, const LAPACKFullMatrix<number> &A)
-<br>
-(Denis Davydov, 2017/10/25)
+++ /dev/null
-New: Removed a typo in QTelles and added a new singular integration test.
-
-<br>
-(Nicola Giuliani, 25/10/2017
+++ /dev/null
-New: Created a new Patterns::Tuple class, that allows parsing arbitrary tuples
-of objects in parameter files.
-<br>
-(Luca Heltai, 2017/10/26)
+++ /dev/null
-Fixed: The member variable FEEvaluation::dofs_per_cell and the static variable
-FEEvaluation::tensor_dofs_per_cell only returned the number of degrees of
-freedom per scalar component also for vector-valued evaluators, rather than
-returning the number accumulated over all components in the evaluator. This is
-now fixed.
-<br>
-(Martin Kronbichler, 2017/10/28)
+++ /dev/null
-Improved: The step-37 tutorial program now describes how to deal with
-inhomogeneous Dirichlet boundary values with the matrix-free framework in the
-results section of the tutorial.
-<br>
-(Martin Kronbichler, 2017/10/29)
+++ /dev/null
-Fixed: The treatment of inhomogeneous boundary conditions in VectorTools::project
-has been fixed.
-<br>
-(Daniel Arndt, 2017/10/30)
+++ /dev/null
-New: Added GridTools::exchange_local_bounding_boxes function and tests to exchange
-vectors of bounding boxes and gather them in every process.
-<br>
-(Giovanni Alzetta, 2017/10/30)
+++ /dev/null
-Fixed: The spherical manifold used to do a division
-by zero inside of SphericalManifold::get_new_point()
-if the new point was exactly at the center of the
-manifold. This is fixed now.
-<br>
-(Rene Gassmoeller, 2017/10/31)
+++ /dev/null
-Improved: SphericalManifold::get_new_point uses a Newton-type
-optimization algorithm instead of a simple averaging.
-<br>
-(Daniel Arndt, 2017/11/02)
+++ /dev/null
-Fixed: ChartManifold now implements the method
-Manifold::get_intermediate_point().
-<br>
-(Martin Kronbichler, 2017/11/02)
+++ /dev/null
-Improved: Both Sundials-2.7.0 and Sundials-3.0.0 are supported.
-<br>
-(Daniel Arndt, 2017/11/03)
+++ /dev/null
-New: A uniform interface to automatically differentiable numbers that will
-be supported by the deal.II library has been implemented. A corresponding
-set of type traits classes that help query information about these numbers
-has also been implemented.
-<br>
-(Jean-Paul Pelteret, 2017/11/03)
+++ /dev/null
-Fixed: The algorithm in Manifold::normal_vector could
-cause division-by-zero errors for special cases. This
-was fixed.
-<br>
-(Rene Gassmoeller, 2017/11/03)
+++ /dev/null
-Modified: Function Functions::FEFieldFunction::compute_point_locations now calls GridTools::compute_point_locations
-Modified: Function GridTools::compute_point_locations now accepts a cell hint (a test for this hint has been added)
-<br>
-(Giovanni Alzetta, 2017/11/06)
+++ /dev/null
-New: TrilinosWrappers::DirectSolver::solve() with two
-LinearAlgebra::distributed::Vector arguments now re-uses the factorization of
-a matrix set in the TrilinosWrappers::DirectSolver::initialize() call.
-<br>
-(Martin Kronbichler, 2017/11/10)
+++ /dev/null
-Fixed: The VectorTools::interpolate_boundary_values() function that
-takes a hp::MappingCollection argument was declared, but not
-instantiated, and could consequently not be called. This is now fixed.
-<br>
-(Wolfgang Bangerth, 2017/11/12)
+++ /dev/null
-New: Given a vector of points, the GridTools::guess_point_owner() function uses bounding boxes describing the mesh to guess the processes that own these points. A test for the function has been added.
-<br>
-(Giovanni Alzetta, 2017/11/13)
+++ /dev/null
-Fixed and improved: The GridTools::compute_point_locations() now always return the correct number of cells. The new algorithm is also significantly faster.
-<br>
-(Giovanni Alzetta, 2017/11/15)
+++ /dev/null
-New: In parallel, the starting indices of
-DoFRenumbering::Cuthill_McKee() can now also be locally active
-indices. They no longer need to be locally owned DoF indices.
-<br>
-(Wolfgang Bangerth, 2017/11/16)
+++ /dev/null
-Changed: Core functions in the FEValues and FEValuesViews classes have been
-updated to allow the use of certain automatically differentiable numbers to
-represent degree-of-freedom values.
-<br>
-(Jean-Paul Pelteret, 2017/11/16)
+++ /dev/null
-New: Math operations for some automatically differentiable numbers have been
-extended. We also import some math functions for these number types into the
-standard namespace. This gives full compatibility with the Tensor and
-SymmetricTensor classes, and facilitates the integration of these number types
-into existing code.
-<br>
-(Jean-Paul Pelteret, 2017/11/16)
+++ /dev/null
-New: ArrayView has a data() member function making it more similar to the
-standard containers.
-<br>
-(Daniel Arndt, 2017/11/17)
+++ /dev/null
-Changed: The specializations of the scalar_product function for Sacado::Fad::DFad
-numbers were redundant and have been removed.
-<br>
-(Jean-Paul Pelteret, 2017/11/17)
+++ /dev/null
-Fixed: The function GridRefinement::refine_and_coarsen_fixed_number
-no longer produces an EXC_BAD_ACCESS exception when either of the
-arguments top_fraction or bottom_fraction are set to 1.0.
-<br>
-(Oliver Sutton, 2017/11/17)
+++ /dev/null
-New: Utilities::MPI::all_gather and Utilities::MPI::some_to_some functions have been
-added to perform general collective communications between processors.
-<br>
-(Giovanni Alzetta, Luca Heltai, 2017/11/18)
+++ /dev/null
-New: Add Utilities::pack and Utilities::unpack, to serialize and unserialize arbitrary
-objects that support boost::serialization/deserialization.
-<br>
-(Luca Heltai, 2017/11/18)
+++ /dev/null
-Fixed: ConvergenceTable::evaluate_convergence_rates now also supports values
-and keys of type 'unsigned long long int' as used for types::global_dof_index
-with 64 bit integers enabled.
-<br>
-(Martin Kronbichler, 2017/11/19)
+++ /dev/null
-Fixed: Added convert_generalized_support_point_values_to_dof_values into
-FE_FaceQ and FE_TraceQ. This is needed by VectorTools::interpolate
-<br>
-(Praveen Chandrashekar, 2017/11/19)
+++ /dev/null
-Fixed: Added a tolerance inside GridTools::find_active_cell_around_point to errors with boundary points and a test with such points.
-<br>
-(Giovanni Alzetta, 2017/11/21)
+++ /dev/null
-New: Added random_value<T>() and random_point<dim>() in tests.h, to simplify and unify our way to generate random numbers and points.
-<br>
-(Luca Heltai, 2017/11/21)
+++ /dev/null
-Extend: partition_triangulation with options for choosing between METIS or ZOLTAN partitioners.
-METIS (the original partitioner) is the default.
-<br>
-(Nivesh Dommaraju, 2017/11/23)
+++ /dev/null
-New: Added BoundingBox::serialize function and a test for it using pack/unpack functions
-<br>
-(Giovanni Alzetta, 2017/11/24)
+++ /dev/null
-New: Added CellId::serialize function and a test for it using pack/unpack
-<br>
-(Giovanni Alzetta, 2017/11/28)
+++ /dev/null
-Fixed: MappingQGeneric::transform_real_to_unit_cell() with degree 1 would
-previously fail for Cartesian meshes with certain combinations of roundoff
-errors. This is now fixed.
-<br>
-(Martin Kronbichler, 2017/12/01)
+++ /dev/null
-Improved: SphericalManifold::get_new_points now computes a lot
-of information outside of the loop over all points in get_new_point,
-which saves a significant amount of time for spherical geometries.
-<br>
-(Rene Gassmoeller, 2017/12/01)
+++ /dev/null
-Fixed: Manifold::normal_vector() used to pick two directions that are almost
-linearly dependent quite often, which resulted in very bad accuracy of the
-normal vectors. This has been fixed. The downstream use of this function on
-curved geometries in VectorTools::compute_no_normal_flux_constraints() has now
-become much more accurate and robust.
-<br>
-(Martin Kronbichler, 2017/12/02)
+++ /dev/null
-New: GridGenerator::extract_boundary_mesh now correctly extracts also Manifold information.
-<br>
-(Luca Heltai, Dirk Peschka, 2017/12/04)
+++ /dev/null
-New: Add color_sparsity_pattern function to color a graph represented by SparsityPattern Object.
-The function uses coloring function from ZOLTAN library.
-<br>
-(Nivesh Dommaraju, 2017/12/04)
+++ /dev/null
-Fixed: SparsityPattern::print_svg(...) has the right size for the
-white rectangle so there is a small margin between the first and last
-row/column of the printed matrix.
-<br>
-(Christoph Goering, 2017/12/05)
+++ /dev/null
-New: Created a new method OpenCASCADE::Utilities::create_curves_from_triangulation_boundary
-that smoothly interpolates the boundary of two dimensional triangulations into a vector of
-OpenCASCADE TopoDS_Edge closed curves, representing the connected components of the boundary.
-<br>
-(Dirk Peschka, Luca Heltai, 2017/12/05)
+++ /dev/null
-New: Improve support of triangular matrices in LAPACKFullMatrix wrappers.
-Add LAPACKFullMatrix::solve() to solve a system of equations either when
-the matrix is factorized (Cholesky/LU) or triangular.
-<br>
-(Denis Davydov, 2017/12/07)
+++ /dev/null
-New: Now opencascade also works for spacedim == 2.
-<br>
-(Luca Heltai, 2017/12/08)
+++ /dev/null
-Improved: DoFTools::extract_hanging_node_dofs works for
-parallel::shared::Triangualtion and parallel::distributed::Triangulation
-and reports locally relevant DoFs.
-<br>
-(Daniel Arndt, 2017/12/21)
+++ /dev/null
-New: Add Jupyter Notebook explaining how to use the python wrappers.
-<br>
-(Bruno Turcksin, 2017/12/10)
+++ /dev/null
-Fixed: parallel::distributed::Triangulation::communicate_locally_moved_vertices
-treats periodic faces correctly now.
-<br>
-(Daniel Arndt, Sambit Das, 2017/12/11)
+++ /dev/null
-New: Add Vector::grow_or_shrink() and LAPACKFullMatrix::grow_or_shrink()
-to (partly) keep the previous values upon resizing.
-<br>
-(Denis Davydov, 2017/12/16)
+++ /dev/null
-New: Add move constructor for TrilinosWrappers::SparseMatrix and
-TrilinosWrappers::SparsityPattern
-<br>
-(Bruno Turcksin, 2017/12/10)
-
+++ /dev/null
-New: LAPACKFullMatrix::rank1_update(const number, const Vector<number> &) performs
-a rank-1 update of a matrix.
-<br>
-(Denis Davydov, 2017/12/17)
+++ /dev/null
-New: DynamicSparsityPattern::compute_mmult_pattern(left, right) with two arguents of either
-a DynamicSparsityPattern or a SparsityPattern; or any combination of those.
-The result is the pattern which is obtained by multiplying the two sparse matrices on
-the given sparsity patterns.
-<br>
-(Christoph Goering, 2017/12/19)
+++ /dev/null
-Fixed: parallel::distributed::Triangulation::add_periodicity missed to
-update the ghost_owners in the NumberCache member variable.
-<br>
-(Daniel Arndt, Sambit Das, 2017/12/11)
+++ /dev/null
-New: LAPACKFullMatrix::remove_row_and_column() to remove certain row and column
-of the matrix.
-<br>
-(Denis Davydov, 2017/12/20)
+++ /dev/null
-New: add LinearAlgebra::distributed::BlockVector::norm_sqr() and
-LinearAlgebra::distributed::Vector::norm_sqr() that return square of the l2 norm.
-<br>
-(Denis Davydov, 2017/12/21)
+++ /dev/null
-New: add LAPACK_WITH_64BIT_BLAS_INDICES configure option and introduce
-types::blas_int to support 64bit BLAS indices.
-<br>
-(Denis Davydov, 2017/12/21)
+++ /dev/null
-New: Added QSimplex, QTrianglePolar, QDuffy, and QSplit classes to perform quadratures
-on reference simplices, on their affine transformations, and on hyper cubes
-split by a given point.
-<br>
-(Luca Heltai, 2017/12/21)
+++ /dev/null
-Improved: SparseMatrix::mmult(..) is now using the
-DynamicSparsityPattern::compute_mmult_pattern(..) function to create
-the sparsity pattern of the final matrix C.
-<br> (Christoph Goering, 2017/12/22)
+++ /dev/null
-Fixed: implement missing instantiation of TrilinosWrappers::SparsityPattern::copy_from().
-<br>
-(Timo Heister, 2017/12/22)
+++ /dev/null
-New: There is now a function VectorizedArray::streaming_store() that
-stores the content of a vectorized array into another array which bypasses the
-CPU's caches on supported architectures using _mm_stream_pd() intrinsics. This
-operation is useful because it can avoid the read-for-ownership memory access
-on large arrays and directly write to the destination for streaming
-stores. However, it can also be detrimental to performance in case the store
-would fit into caches. This new function is not used within the library
-because only the final user code knows the properties of hardware and whether
-a particular store pattern is so large that it will not fit into caches and
-thus benefit from this optimization.
-<br>
-(Martin Kronbichler, 2017/12/27)
+++ /dev/null
-Fixed: In parallel computations, the DoFRenumbering::hierarchical()
-function created DoF indices that were dependent on the previous DoF
-indices owned by each processor. This was not intended: the new DoF
-indices were supposed to only depend on the order of cells, not any
-previous numbering. This is now fixed.
-<br>
-(Wolfgang Bangerth, 2017/12/31)
+++ /dev/null
-New: Implementing CylindricalManifold::push_forward_gradient allows to compute
-normal vectors for boundaries described by CylindricalManifold objects.
-<br>
-(Daniel Arndt, 2018/01/04)
+++ /dev/null
-Fixed: The DataOut::write_vtu output pretended to write double precision data,
-while in reality the data was first converted to float and then written as
-double. This was fixed by writing all data (including vertex positions) as
-single precision float and adjusting the output types accordingly.
-<br>
-(Rene Gassmoeller, 2018/01/04)
+++ /dev/null
-New: Enhanced Raviart-Thomas polynomial space PolynomialsRT_Bubbles
-consisting of RT_k + curls bubbles.
-<br>
-(Eldar Khattatov, 2018/01/09)
+++ /dev/null
-New: Enhanced Raviart-Thomas finite element FE_RT_Bubbles,
-allows for local elimination of a vector variable in
-multipoint flux mixed finite element methods and similar.
-<br>
-(Eldar Khattatov, 2018/01/11)
+++ /dev/null
-Fixed: In FE_Enriched element, avoid evaluating quadrature points if no dofs are
-assigned. This happens when FE_Nothing is used together with other FE
-(i.e. FE_Q) as enrichments in FE_Enriched constructor.
-<br>
-(Nivesh Dommaraju, 2018/01/15)
+++ /dev/null
-Fixed: In some situations,
-DoFTools::locally_owned_dofs_per_subdomain() returned a vector of the
-wrong size. Specifically, this happened if the processor with the
-highest subdomain id owned no degrees of freedom. This is now fixed.
-<br>
-(Jean-Paul Pelteret, Wolfgang Bangerth, 2018/01/18)
+++ /dev/null
-New: New function GridTools::distributed_compute_point_locations ; similarly to GridTools::compute_point_locations , given
-a vector of points, it returns vectors containing them, their reference position and the process owning them as it works
-with shared and distributed meshes.
-<br>
-(Giovanni Alzetta, 2018/01/19)
+++ /dev/null
-Improved: The implementation of the SolverQMRS iteration has been renewed to
-perform much faster and to be adaptable to left and right side preconditioning
-of the system matrix.
-<br>
-(Ingo Kligge, 2018/01/23)
+++ /dev/null
-New: Added Utilities::MPI::gather wrapper and tests to gather objects from all to one MPI process.
-<br>
-(Benjamin Brands, 2018/01/25)
+++ /dev/null
-New: Add save/load functions for ScaLAPACKMatrix to save/load distributed matrix to/from disc using HDF5. If HDF is configured with MPI, parallel I/O is used to save/load the matrix.
-<br>
-(Benjamin Brands, 2018/01/25)
-
+++ /dev/null
-New: Tensor::begin_raw, Tensor::end_raw, SymmetricTensor::begin_raw
-and SymmetricTensor::end_raw provide access to the underlying storage for Tensor
-and SymmetricTensor.
-<br>
-(Daniel Arndt, 2018/01/25)
+++ /dev/null
-New: There are new overloads of make_array_view for Tensor, SymmetricTensor,
-LAPACKFullMatrix, C-style array and Vector.
-<br>
-(Daniel Arndt, 2018/01/25)
+++ /dev/null
-New: Add AssertCusparse macro to assert the error code of cuSPARSE function
-<br>
-(Bruno Turcksin, 2018/01/29)
+++ /dev/null
-Fixed: MGTransferMatrixFree::restrict() and MGTransferMatrixFree::prolongate()
-would produce a segmentation fault when used with multi-component systems for
-polynomial degrees larger than 10. This is now fixed.
-<br>
-(Martin Kronbichler, 2018/01/30)
+++ /dev/null
-New: Added routines to perform addition, multiplication and scaling for ScaLAPACKMatrix
-<br>
-(Benjamin Brands, 2018/02/07)
+++ /dev/null
-Extend VectorTools::project() function with MatrixFree quadrature data to
-optionally take the finite element component index.
-<br>
-(Denis Davydov, 2018/02/07)
+++ /dev/null
-New: The new polynomial class Polynomials::HermiteLikeInterpolation is a
-modification of the Hermite polynomials with good conditioning of
-interpolation for all degrees, as opposed to the
-Polynomials::HermiteInterpolation class.
-<br>
-(Anian Fuchs, Martin Kronbichler, 2018/02/09)
+++ /dev/null
-New: add parallel::distributed::BlockVector::mmult(BlockVector &, const FullMatrixType &, const NumberType, const NumberType) const
-and parallel::distributed::BlockVector::multivector_inner_product_with_metric(const FullMatrixType &, const BlockVector &V, const bool) const
-to operate on multivectors with a metric tensor.
-<br>
-(Denis Davydov, 2018/02/10)
+++ /dev/null
-New: Add LAPACKFullMatrix<number>::Tmmult(LAPACKFullMatrix<number> &, const LAPACKFullMatrix<number> &, const Vector<number> &, const bool) const
-to do a triple matrix product with a diagonal matrix in the middle. Add
-LAPACKFullMatrix::scale_rows() to scale rows via a given vector. Make
-LAPACKFullMatrix::Tmmult() and LAPACKFullMatrix::mTmult() use Xsyrk if A==B.
-<br>
-(Denis Davydov, 2018/02/14)
+++ /dev/null
-New: Add a new class CUDAWrappers::SparseMatrix, i.e., wrappers for cuSPARSE csr
-sparse matrix. The matrix is copied from deal.II own's SparseMatrix and copied
-to the device.
-<br>
-(Bruno Turcksin, 2018/02/18)
+++ /dev/null
-Changed: The GridOut::write_mesh_per_processor_as_vtu function now
-only includes processor info in the .vtu filename and writes a .pvtu file
-when using a <code>parallel::Triangulation</code>.
-<br>
-(Conrad Clevenger, 2018/02/19)
+++ /dev/null
-New: LAPACKFullMatrix: make operators *= and /= use Lapack function,
-LAPACKFullMatrix::add() uses BLAS 1 routine instead of handwritten loops
-<br>
-(Benjamin Brands, 2018/02/20)
+++ /dev/null
-New: A top level target 'expand_all_instantiations' generates all .inst files.
-<br>
-(Timo Heister, Daniel Arndt, 2018/02/20)
+++ /dev/null
-New: TransposeTable (the base class of LAPACKFullMatrix and ScaLAPACKMatrix) now
-has a random access iterator implementation similar to the one provided by
-SparseMatrix.
-<br> (David Wells, 2018/02/25)
+++ /dev/null
-Changed: The GridRefinement::hyper_sphere() function used to have two
-template arguments (`dim` and `spacedim`), but it really only existed
-if <code>dim == spacedim-1</code>. Consequently, it now has lost its
-`dim` template argument and has only retained `spacedim`.
-<br>
-(Wolfgang Bangerth, 2018/01/25)
+++ /dev/null
-New: A template class LinearIndexIterator has been added with the intent of
-using it to generalize iterators over contiguously stored data.
-<br> (David Wells, 2018/03/01)
+++ /dev/null
-Fixed: GridTools::distort_random works with
-parallel::shared::Triangulation objects.
-<br>
-(Daniel Arndt, 2018/03/05)
+++ /dev/null
-New: NonMatching::create_coupling_sparsity_pattern and NonMatching::create_coupling_mass_matrix functions
-to handle L2 projections between arbitrary non-aligned grids.
-<br>
-(Luca Heltai, 2018/03/05)
-
+++ /dev/null
-New: The ParameterAcceptorProxy class allows you to wrap a class that provides a static member
-declare_parameters and a member parse_parameters into a ParameterAcceptor subclass.
-<br>
-(Luca Heltai, 2018/03/06)
-
+++ /dev/null
-New: LAPACKFullMatrix::compute_inverse_svd_with_kernel allows to
-set an expected kernel size for an inverse singular value decomposition.
-<br>
-(Daniel Arndt, 2018/03/07)
+++ /dev/null
-Fixed: Copying a Trilinos::MPI::Vector to a local deal.II Vector using
-operator=() resulted in only a partial copy of data to the local vector. In
-addition, the copied elements were offset incorrectly on each process.
-Similar held for copying a Trilinos::MPI::BlockVector to a local deal.II
-BlockVector. This has been fixed and now works as expected.
-<br>
-(Jean-Paul Pelteret, 2018/03/07)
+++ /dev/null
-New: The Utilities::dealii_version_string() function returns a string
-representation of the deal.II version being used.
-<br>
-(Wolfgang Bangerth, 2018/03/09)
+++ /dev/null
-New: The testsuite can be run using valgrind via
-'ctest -S ../tests/run_memorycheck.cmake'.
-<br>
-(Daniel Arndt, 2018/03/11)
+++ /dev/null
-New: JSON files which are written out by the
-parameter handler can be read in again with the
-function ParameterHandler::parse_input_from_json().
-<br>
-(Menno Fraters, 2018/03/12)
+++ /dev/null
-Fixed: FullMatrix::residual(), FullMatrix::add_col(), and FullMatrix::add_row()
-now work correctly with rectangular matrices.
-<br> (David Wells, 2018/03/17)
+++ /dev/null
-New: Add LAPACKFullMatrix<number>::set(const size_type, const size_type, const number)
-to set an element of the matrix.
-<br>
-(Denis Davydov, 2018/03/17)
+++ /dev/null
-Fixed: FETools::get_interpolation_difference_matrix() used to not
-clear content of the matrix passed as argument, but instead just add
-to it. This resulted in wrong output, but is now fixed.
-<br>
-(Wolfgang Bangerth, 2018/03/18)
+++ /dev/null
-Fixed: The SparsityPattern::copy_from() variant that takes a
-FullMatrix argument was previously of quadratic complexity in the
-number of nonzero entries per row. This is now fixed, and the function
-is now linear.
-<br>
-(Ben Shields, Wolfgang Bangerth, 2018/03/20)
+++ /dev/null
-Fixed: Previously, it was not possible to iterate over the local range
-of rows of PETSc matrix objects because one would have to call
-`matrix.end(row)` where `row` is the last locally owned row, and that
-triggered an assertion because this end iterator is also the begin
-iterator of the next row -- which is not locally owned any more.
-<br>
-This is now fixed.
-<br>
-(Feimi Yu, Wolfgang Bangerth, 2018/03/20)
+++ /dev/null
-New: Added a third test variant to the testsuite driver: For a test
-consisting of a test.prm.in (and a test.output) file the test.prm.in file
-will be configured/preprocessed to a test.prm file. This is done with the
-CMake macro CONFIGURE_FILE that replaces all strings \@VARIABLE\@ with the
-contents of the corresponding CMake variable. This is useful in particular
-to conveniently substitute \@SOURCE_DIR\@ with the full source directory path
-of the test.
-<br>
-(Matthias Maier, 2018/03/21)
-
+++ /dev/null
-Fixed: GridTools::minimal_cell_diameter() and GridTools::maximal_cell_diameter()
-return the maximal respectively minimal cell diameter over the whole mesh for
-parallel::distributed::Triangulation object, too.
-<br>
-(Daniel Arndt, 2018/03/25)
+++ /dev/null
-Fixed: LinearAlgebra::distributed::Vector::compress(VectorOperation::insert) now flashes
-ghost part of the vector in Release mode.
-<br>
-(Denis Davydov, 2018/03/17)
+++ /dev/null
-Fixed: Threads::Thread<T> and Threads::Task<T> objects can now also be
-used when @p T is a type that is only move-constructable or movable,
-but not necessarily copy-constructible or copyable. Consequently, one
-can now also call functions that return such objects on tasks and
-threads. In particular, this is relevant for functions that return
-std::unique_ptr objects that have this property.
-<br>
-(Wolfgang Bangerth, 2018/03/28)
+++ /dev/null
-Fixed: The VectorTools::integrate_difference() function allows users
-to provide a weight function that can also serve as a component mask
-to select individual components of the solution vector for error
-computation. For components not selected, such a mask would then
-simply be zero.
-<br>
-In some cases, the solution vector contains NaN numbers, for example
-when one uses the FE_FaceQ element for certain components of the
-solution vector and uses a quadrature formula for error evaluation
-that has quadrature points in the interior of the cell. For any
-"regular" solution component for which the component mask has a zero
-weight, the value of that component will be multiplied by zero and
-consequently does not add anything to the error computation. However,
-if the NaNs of a FE_FaceQ are multiplied with zero weights, the result
-is still a NaN, and adding it to the values times weights of the other
-components results in NaNs -- in effect rendering it impossible to get
-any information out of the VectorTools::integrate_difference()
-function if one of the finite elements involved is FE_FaceQ.
-<br>
-This is now fixed by simply skipping vector components for which the
-weight vector is zero. This has the same result as before for all
-"normal" situations, but also properly skips the NaN case outlined
-above.
-<br>
-(Wolfgang Bangerth, 2018/03/29)
+++ /dev/null
-New: Multigrid classes obtained the new signals
-mg::Signals::transfer_to_mg,
-mg::Signals::transfer_to_global,
-mg::Signals::coarse_solve,
-mg::Signals::restriction,
-mg::Signals::prolongation,
-mg::Signals::pre_smoother_step,
-mg::Signals::post_smoother_step
-that functions can be connected to.
-<br>
-(Daniel Arndt, Timo Heister, 2018/03/31)
+++ /dev/null
-Improved: VectorTools::get_position_vector() now supports parallel triangulations.
-<br>
-(Denis Davydov, 2018/04/01)
+++ /dev/null
-New: There is now a function Utilities::dynamic_unique_cast() that does for
-`std::unique_ptr` objects what `dynamic_cast` does for regular pointers.
-<br>
-(Wolfgang Bangerth, 2018/04/03)
+++ /dev/null
-New: Extend GridGenerator::extrude_triangulation to using exact slicing z-axis
-values and reimplement the exsiting GridGenerator::extrude_triangulation using
-the newly developed overload.
-<br>
-(Weixiong Zheng, 2018/04/05)
+++ /dev/null
-New: Patterns::Tools::to_string() and Patterns::Tools::to_value() simplify the conversion to and from
-strings of arbitrarily complex types.
-<br>
-(Luca Heltai, 2018/04/06)
-
+++ /dev/null
-New: The two new functions Polynomials::jacobi_polynomial_value() and
-Polynomials::jacobi_polynomial_roots() provide a user-visible
-implementation of Jacobi polynomials. This functionality has previously only
-been available internally in the library.
-<br>
-(Martin Kronbichler, 2018/04/06)
+++ /dev/null
-New: FEValuesExtractors::Tensor now supports calculation of gradients.
-<br>
-(Denis Davydov, 2018/04/12)
+++ /dev/null
-Fixed: Some compile-times errors would previously appear for some arithmetic functions
-when using Sacado::Fad::DFad types (e.g. Physics::Elasticity::Kinematics::F_iso() ).
-By defining the ProductType Sacado expression templates, this issue is now avoided.
-<br>
-(Jean-Paul Pelteret, 2018/04/12)
+++ /dev/null
-Fixed: The Tensor::invert() function would previously not work with some Sacado
-number types. This has now been fixed.
-<br>
-(Jean-Paul Pelteret, 2018/04/12)
+++ /dev/null
-Fixed: The Tensor class was previously not instantiated for
-auto-differentiable numbers.
-<br>
-(Jean-Paul Pelteret, 2018/04/12)
+++ /dev/null
-Fixed: When using diagonal SymmetricTensors with automatic-differentiable numbers, computations
-using the eigenvalue() and eigenvector() functions would return correct values of the
-eigenvalues/vectors. However, the derivatives of these values/vectors were incorrect as
-the sensitivities of the eigenvalues/vectors with respect to one another was not encoded
-in the returned result. Therefore, under these specific conditions the returned result is now
-a more coarse approximation for the eigenvalues/vectors but with the trade-off that a
-meaningful approximation of the derivative of the result can now be computed.
-<br>
-(Jean-Paul Pelteret, 2018/04/12)
+++ /dev/null
-Fixed: The SymmetricTensor class was previously not instantiated for
-auto-differentiable numbers.
-<br>
-(Jean-Paul Pelteret, 2018/04/12)
+++ /dev/null
-Fixed: Ensure that numbers::NumberTraits and its corresponding operations are
-well defined for all supported auto-differentiable numbers.
-<br>
-(Jean-Paul Pelteret, 2018/04/12)
+++ /dev/null
-New: GridTools::map_boundary_to_manifold_ids() allows you to set manifold ids on the
-boundary according to a given map of boundary to manifold ids.
-<br>
-(Luca Heltai, 2018/04/13)
-
+++ /dev/null
-New: Introduced Triangulation::reset_manifold(), as a substitute for Triangulation::set_manifold()
-with only one argument. The set_manifold() method with one argument only was used to reset the manifold
-object. This method is now deprecated, in favor of the new, more explicative, method.
-An additional Triangulation::reset_all_manifolds() method has been added to remove all manifold
-objects from the triangulation.
-<br>
-(Luca Heltai, 2018/04/14)
-
+++ /dev/null
-Changed: GridTools::distributed_compute_point_locations now takes as input the
-global description of the manifold using bounding boxes.
-<br>
-(Giovanni Alzetta, 2018/04/16)
-
+++ /dev/null
-New: Cell weighting can now be taken into account by the Metis partitioner. This can be done directly
-using the new GridTools::partition_triangulation() function that accepts a vector of cell weights,
-or by adding the appropriate signal to the triangulation itself (Triangulation::Signals::cell_weight).
-<br>
-(Jean-Paul Pelteret, 2018/04/17)
+++ /dev/null
-Add default constructor and member function `initialize` to hp::DoFHandler,
-making the interface consistent with DoFHandler.
-<br>
-(Ce Qin, 2018/04/20)
+++ /dev/null
-Changed: In accordance with dealii::DoFHandler, hp::DoFHandler stores a copy
-of the FECollection instead of a pointer.
-<br>
-(Daniel Arndt, 2018/04/21)
+++ /dev/null
-New: Utilities::System::get_current_vectorization_level() returns the currently used vectorization support in string format.
-<br>
-(Timo Heister, 2018/04/21)
+++ /dev/null
-New: Add direct solvers (Cholesky and LU factorization) to solve problems on the
-GPU
-<br>
-(Bruno Turcksin, 2018/04/23)
+++ /dev/null
-Fixed: GridTools::distributed_compute_point_locations now returns the correct
-maps values (third component of the output tuple). Added a test to check it.
-<br>
-(Giovanni Alzetta, 2018/04/23)
-
+++ /dev/null
-New: GridTools::minimal_cell_diameter and GridTools::maximal_cell_diameter now take an optional Mapping
-argument, that allows one to compute minimal and maximal cell diameters of deformed grids.
-<br>
-(Luca Heltai, 2018/04/23)
-
+++ /dev/null
-Updated: deal.II is now compatible with PETSc version 3.9.0, SLEPC version
-3.9.0
-<br>
-(Matthias Maier, 2018/04/23)
-
+++ /dev/null
-New: Added missing implementation of MappingFEField::get_vertices.
-<br>
-(Luca Heltai, 2018/04/24)
-
+++ /dev/null
-New: FECollection gained an equality comparison operator. Both FiniteElement
-and FECollcetion have a non-equality comparison operator now.
-<br>
-(Daniel Arndt, 2018/04/25)
+++ /dev/null
-New: The class FEEvaluation can now be constructed for only a subset of
-the components inside an FESystem, picking e.g. the pressure part
-outside of a Taylor-Hood element.
-<br>
-(Katharina Kormann, Martin Kronbichler, 2018/04/27)
+++ /dev/null
-New: The new field
-MatrixFree::AdditionalData::cell_vectorization_categories allows to
-control the way batches of cells are formed in MatrixFree by assigning
-different numbers to different parts in the domain.
-<br>
-(Katharina Kormann, Martin Kronbichler, 2018/04/27)
+++ /dev/null
-New: The function MatrixFree::cell_loop takes an optional boolean
-argument that enables the class to zero vectors within the loop for
-better cache locality, clearing only that part of the vector that will
-be accessed soon.
-<br>
-(Katharina Kormann, Martin Kronbichler, 2018/04/27)
+++ /dev/null
-New: There are new functions FEEvaluation::gather_evaluate() and
-FEEvaluation::integrate_scatter() that combine the vector access through
-FEEvaluation::read_dof_values() and FEEvaluation::evaluate() as well as
-FEEvaluation::integrate() and
-FEEvaluation::distribute_local_to_global(), respectively. This allows to
-write somewhat more compact code and is also more efficient in the case
-of FEFaceEvaluation where equivalent functions exists.
-<br>
-(Katharina Kormann, Martin Kronbichler, 2018/04/27)
+++ /dev/null
-New: Utilities::MPI::create_group allows using the functionality provided by
-MPI_Comm_create_group to be used also for a non-MPI-3.0-conforming MPI
-dependency.
-<br>
-(Daniel Arndt, 2018/04/28)
+++ /dev/null
-New: NonMatching::create_coupling_sparsity_pattern and NonMatching::create_coupling_mass_matrix now have an
-overloaded version that takes an additional GridTools::Cache, instead of
-building it inside the functions. In the process, NonMatching::create_coupling_sparsity_pattern
-gained also an additional ConstraintMatrix argument to reflect the same argument list of
-its companion function NonMatching::create_coupling_mass_matrix.
-<br>
-(Luca Heltai, 2018/05/02)
-
+++ /dev/null
-New: Gmsh::create_triangulation_from_boundary_curve is a new method that constructs a grid from an
-OpenCASCADE TopoDS_Edge object. It offers the reverse functionality of the method
-OpenCASCADE::create_curves_from_triangulation_boundary().
-<br>
-(Luca Heltai, 2018/05/03)