From: bangerth
Date: Fri, 7 Oct 2011 22:32:55 +0000 (+0000)
Subject: Go through points 1&2 of the release task list.
X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3798bd725aa289dec16bd7a0d460cfd777851016;p=dealii-svn.git
Go through points 1&2 of the release task list.
git-svn-id: https://svn.dealii.org/trunk@24563 0785d39b-7218-0410-832d-ea1e28bc413d
---
diff --git a/deal.II/doc/news/7.0.0-vs-7.1.0.h b/deal.II/doc/news/7.0.0-vs-7.1.0.h
new file mode 100644
index 0000000000..11b550b391
--- /dev/null
+++ b/deal.II/doc/news/7.0.0-vs-7.1.0.h
@@ -0,0 +1,755 @@
+/**
+ * @page changes_between_7_0_and_7_1 Changes between Version 7.0 and 7.1
+
+
+This is the list of changes made between the release of
+deal.II version 7.0.0 and that of 7.1.0.
+All entries are signed with the names of the author.
+
+
+
+
+Incompatibilities
+
+
+Following are a few modifications to the library that unfortunately
+are incompatible with previous versions of the library, but which we
+deem necessary for the future maintainability of the
+library. Unfortunately, some of these changes will require
+modifications to application programs. We apologize for the
+inconvenience this causes.
+
+
+
+- Changed: GridTools, DoFTools, MGTools, VectorTools, MatrixCreator
+and MatrixTools are now namespaces. They have long
+been classes that had only public, static member functions, making
+the end result semantically exactly equivalent to a namespace, which is
+also how it was used. This is now also reflected in the actual code.
+
+(Wolfgang Bangerth, 2011/04/27, 2011/09/14)
+
+ - Changed: The PETScWrappers::VectorBase and PETScWrappers::MatrixBase
+classes tried to keep track of
+whether the last operation done on a vector was to add to an element or to
+write into one. If the previous such operation was of a different kind
+than the current one, we would flush buffers (see the description in
+@ref GlossCompress). However, trying to do this automatically turned
+out to be an endless source of hard-to-find bugs in %parallel programs.
+The scheme has therefore now been changed to the following: the classes
+keep track of the previous operation and if it differs from the
+current one, reports an error stating that the user needs to call
+PETScWrapper::VectorBase::compress() or
+PETScWrapper::MatrixBase::compress() instead.
+
+(Wolfgang Bangerth, 2011/08/03, 2011/08/30)
+
+ - Changed: The classes Tensor, SymmetricTensor and Point now have an
+additional template argument for the number type. While a default template
+value of
double
ensures that all old code is still valid, this
+change invalidates forward declarations of the form template
+@ class Point
that might be present in user-defined header
+files. Now forward declarations need to specify the type as well, i.e.,
+template @ class Point
. However,
+nothing changes if the full declarations in deal.II/base/tensor.h,
+deal.II/base/symmetric_tensor.h
and deal.II/base/point.h
+are included.
+
+(Martin Kronbichler, 2011/08/02)
+
+ - Removed: deal.II no longer supports Trilinos versions prior to 10.0.
+
+(Wolfgang Bangerth, 2011/06/29)
+
+ - Changed: deal.II has a namespace std_cxx1x that was used to
+import classes from BOOST that are part of the upcoming C++ 1x standard. On
+the other hand, if your compiler supported a sufficiently large subset
+of C++ 1x, we had code that simply did
+@code
+ namespace std_cxx1x = std;
+@endcode
+allowing you to refer to everything that was part of the compiler's namespace
+
std
under the alternative name. This turned out to be untenable
+in connection to the changed outlined below for _1, _2, etc. Consequently,
+if the compiler used supports C++ 1x, we now selectively import elements of the
+compiler's namespace std into namespace std_cxx1x as well. This may lead to
+incompatibilities if you are already using elements of the C++ 1x
+standard by refering to them through the std_cxx1x namespace and these elements
+are not on the list of selectively imported ones.
+
+(Wolfgang Bangerth, 2011/05/29)
+
+ - Changed: Previously, placeholder arguments like _1, _2, etc that are used
+in conjunction with the std_cxx1x::bind function could be referenced as if
+they are part of the global namespace. This was achieved by importing the
+corresponding elements of namespace std::placeholders into the global namespace
+if your compiler supported this part of the C++ 1x standard, or otherwise using
+the BOOST counterparts which are already in the global namespace. However,
+this leads to a conflict if one has a C++ 1x enabled compiler (e.g. GCC 4.6)
+and includes certain BOOST headers, since the importation of symbols
+into the global namespace now leads to ambiguous names. The only solution to
+the problem is to not import names into the global namespace, but rather
+import the names from either BOOST or namespace std into the deal.II namespace
+std_cxx1x. The downside is that all code that uses _1, _2, etc needs to be
+changed to use std_cxx1x::_1, std_cxx1x::_2, etc from now on.
+
+(Wolfgang Bangerth, 2011/05/29)
+
+
+
+
+
+
+General
+
+
+- New: Long in the making, the new tutorial program step-32 is a massively
+%parallel simulator for the Boussinesq equations that describe thermal convection.
+
+(Martin Kronbichler, Timo Heister, Wolfgang Bangerth, 2011/10/06)
+
+ - New: There is now a namespace Utilities::MPI that holds some of the MPI-related
+functions that were previously part of Utilities::System. Specifically, the following
+functions were moved and in part renamed: Utilities::System::get_n_mpi_processes
+is now Utilities::MPI::n_mpi_processes; Utilities::System::get_this_mpi_process
+is now Utilities::MPI::this_mpi_process;
+Utilities::System::compute_point_to_point_communication_pattern
+is now Utilities::MPI::compute_point_to_point_communication_pattern;
+Utilities::System::duplicate_communicator
+is now Utilities::MPI::duplicate_communicator;
+Utilities::System::calculate_collective_mpi_min_max_avg
+is now Utilities::MPI::min_max_avg;
+Utilities::System::MPI_InitFinalize
+is now Utilities::MPI::MPI_InitFinalize.
+In addition, some of the arguments of these functions or classes
+have changed.
+
+The previous functions should still be available, though their use
+is now deprecated.
+
+(Wolfgang Bangerth, 2011/09/26)
+
+ - Removed: Utilities::System::program_uses_mpi does exactly the same thing
+as Utilities::System::job_supports_mpi. The former has therefore been
+deprecated.
+
+(Wolfgang Bangerth, 2011/09/26)
+
+ - New: When using a new enough version of GCC, debug sections in
+object files are now compressed using the
-Wa,--compress-debug-sections
+flag, resulting in savings in disk space on the order of 230 MB.
+
+(Wolfgang Bangerth, 2011/09/22)
+
+ - New: deal.II can now be configured and built with the
+Clang C++ frontend of the LLVM compiler.
+
+(Timo Heister, Wolfgang Bangerth, 2011/08/20)
+
+ - Changed: Several of the tutorial programs used the same class
+names, often
LaplaceProblem
in the earlier programs.
+There is nothing inherently wrong with this, since these are
+entirely separate programs, but this sometimes confused
+integrated development environments because searching for
+individual symbols would turn up several occurrences in different
+files. To make this a bit simpler, the main classes for step-3
+through step-6 were renamed to StepX
(steps 1 and 2
+do not have a main class). Starting with step-7, everything specific
+to a tutorial program has been moved into a namespace called
+StepX
to make the fully qualified names unique across
+different tutorial programs.
+
+(Wolfgang Bangerth, Guido Kanschat 2011/08/16)
+
+ - Extended: Many operations on objects of
+type Point@<0@>, Quadrature@<0@>, etc
+(including creation) were previously forbidden since such objects do not make
+much sense. However, this prevented a lot of code that could otherwise work
+in a dimension independent way, from working in 1d, e.g. integration on
+faces. Many of these places have now been cleaned up and work.
+
+(Wolfgang Bangerth, 2011/08/12)
+
+ - Extended: The classes Tensor, SymmetricTensor and Point now have an
+additional template argument for the number type. It is now possible to base
+these classes on any abstract data type that implements basic arithmetic
+operations, like
Tensor<1,dim,std::complex >
. deal.II
+uses a default template argument double
that ensures that all
+code using e.g. Tensor<1,dim>
remains valid.
+
+(Martin Kronbichler, 2011/08/02)
+
+ - Fixed: deal.II can link with Trilinos but previously it required a
+very specific set of Trilinos sub-libraries; if Trilinos had been compiled
+with a larger set of sub-libraries, linking would sometimes fail. This
+has now been made more generic and deal.II obtains the proper set of
+libraries from Trilinos.
+
+(Wolfgang Bangerth, 2011/06/29)
+
+ - Fixed: On Mac OS X, linking with some external libraries such as Trilinos
+sometimes failed due to a misconfiguration of linker flags. This should now be
+fixed.
+
+(Praveen C, Martin Kronbichler, Wolfgang Bangerth, 2011/06/23)
+
+ - Changed: Doing
make clean
was supposed to only remove object
+files but not libraries; however, it also removed the TBB libraries and a
+few executables. This has now been changed: make clean
now only
+removes stuff that isn't needed to run executables, i.e. it leaves the TBB
+and other libraries alone. As before, the target make distclean
+is responsible for removing everything.
+
+(Max Jensen, Wolfgang Bangerth, 2011/06/14)
+
+ - New: The Triangulation and DoFHandler classes, together with many
+smaller classes can now be serialized, i.e. their data can be written
+to an output stream and later retrieved to restore the state of the program.
+
+(Wolfgang Bangerth, 2011/06/13)
+
+ - New/deprecated: The Triangulation class offers ways to get informed
+whenever the triangulation changes. Previously, the mechanism doing this
+was through the Triangulation::RefinementListener class. This has been
+deprecated and has been superceded by a BOOST signals based mechanism
+that is generally more powerful and does not rely on overloading
+particular virtual functions inherited from a base class.
+
+While the old mechanism should continue to work, you should consider
+upgrading. For more information on the signals mechanism, see the
+documentation of the Triangulation class.
+
+In addition to the change above, the new implementation now offers two
+more signals one can subscribe to: Triangulation::Signals::clead for
+when the triangulation is cleared, and Triangulation::Signals::any_change
+that can be used for any operation that changes the mesh. Furthermore,
+in a change from previous behavior, the Triangulations::Signal::create
+signal is now also triggered when another triangulation is copied to
+the one that owns the signal.
+
+(Wolfgang Bangerth, 2011/06/01)
+
+ - Removed: The
./configure
script allowed configuring
+for the GNU Scientific Library (GSL) in version 7.0 but didn't actually
+use any of the GSL functions. The corresponding code has therefore been
+removed again.
+
+(Wolfgang Bangerth, 2011/05/22)
+
+ - Changed: Traditionally, include directories were set through the
+
-I
flag in make files in such a way that one would do
+@code
+ #include
+@endcode
+In preparation for future changes that will make possible installing
+header files in a directory under /usr/include
it seemed
+useful to install everything under /usr/include/deal.II
+and include them as
+@code
+ #include
+@endcode
+This change has been made throughout the library and tutorial programs.
+However, the old way of using include directories will continue to work
+for at least one release for backward compatibility.
+
+(Wolfgang Bangerth, 2011/05/16)
+
+- Changed: The version of BOOST we ship with deal.II has been upgraded
+to 1.46.1. BOOST now also resides in the directory
contrib/boost-1.46.1
+instead of an unversioned directory.
+
+(Wolfgang Bangerth, 2011/05/16)
+
+ - New: The SparseDirectUMFPACK class can now also deal with matrices
+provided in SparseMatrixEZ format.
+
+(Martin Genet, 2011/05/04)
+
+ - New: The new tutorial program step-46 shows how to couple different
+models defined on subsets of
+the domain, in this case Stokes flow around an elastic solid. The
+trick here is that variables (here the flow velocity and pressure,
+and the solid displacement) do not live on the entire domain, but
+only on a part. The point of the program is how to represent this in
+source code.
+
+(Wolfgang Bangerth, 2011/04/30)
+
+ - Fixed: On Debian, the Trilinos packages use a different layout
+of include files and library names. The
./configure
+script can now deal with this.
+
+(Walter Landry, 2011/02/22)
+
+ - Improved: Linking the deal.II libraries on file systems that
+are mounted remotely from a file server took painfully long. This
+is now fixed by linking everything on the local file system
+and only subsequently moving the file into its final location.
+
+(Wolfgang Bangerth, 2011/01/28)
+
+ - Changed: Most classes in deal.II have a member function
+
memory_consumption
that used to return an unsigned int.
+However, on most 64-bit systems, unsigned int is still only 32-bit
+wide, and consequently the return type does not provide enough
+precision to return the size of very large objects. The return types
+of all of these functions has been changed to std::size_t, which is
+defined to be a type that can hold the sizes of all objects possible
+on any system.
+
+(Wolfgang Bangerth, 2011/01/22)
+
+ - Fixed: When using the
--enable-mpi
to
+./configure
, the script only tried mpiCC
+as the MPI C++ compiler. However, on some systems, it is called
+mpicxx
. The script now tries that as well.
+
+(Wolfgang Bangerth, 2011/01/22)
+
+ - Fixed: When using Trilinos and using the Intel C++ compiler,
+we accidentally used invalid compiler flags that led to a warning
+every time we compiled a file.
+
+(Wolfgang Bangerth, 2011/01/22)
+
+ - Fixed: At the bottom of the page of tutorial programs we show a "plain"
+version of the tutorial program. However, the script that generates this plain
+version was broken and sometimes truncated the file. This
+should be fixed now.
+
+(Wolfgang Bangerth, 2011/01/18)
+
+ - Extended: Several missing instantiations of functions for triangulations
+and DoF handlers embedded in higher dimensional space have been added.
+
+(Wolfgang Bangerth, 2011/01/15)
+
+
+
+
+
+
+Specific improvements
+
+
+- New: There is a new predicate IteratorFilters::LocallyOwnedCell
+for filtered iterators.
+
+(Wolfgang Bangerth, 2011/10/03)
+
+ - Improved: The class BlockList used in RelaxationBlock has been replaced
+by SparsityPattern, since it only reproduced its functionality.
+
+(Guido Kanschat, 2011/09/26)
+
+ - New: SparsityPattern::row_position() finds a column index in a row and returns
+its "local" index or numbers::invalid_unsigned_int.
+
+(Guido Kanschat, 2011/09/26)
+
+ - New: The functions Utilities::MPI::sum and Utilities::MPI::max
+function can be used to compute the sum or maximum of values over a number of
+MPI processes without having to deal with the underlying MPI functions.
+
+(Wolfgang Bangerth, 2011/09/25)
+
+ - New: The CellAccessor::is_locally_owned function is a shortcut
+for the
!cell-@>is_ghost() && !cell-@>is_artificial()
pattern
+found in many places when dealing with distributed meshes.
+
+(Wolfgang Bangerth, 2011/09/10)
+
+ - New: The GridGenerator::torus function and TorusBoundary class can
+create and describe the surface of a torus.
+
+(Daniel Castanon Quiroz, 2011/09/08)
+
+ - Fixed: FEFieldFunction class was not thread-safe because it keeps a
+cache on the side that was invalidated when different
+threads kept pouncing on it. This is now fixed.
+
+(Patrick Sodré, 2011/09/07)
+
+ - New: There is now a function GridTools::volume() computing the volume
+of a triangulation.
+
+(Wolfgang Bangerth, 2011/09/02)
+
+ - New: Code like
cell-@>face(1)-@>set_boundary_indicator(42);
+now also works in 1d.
+
+(Wolfgang Bangerth, 2011/08/30)
+
+ - Fixed: The TimerOutput::print_summary() function changed the
+precision of output on the stream it prints to, but didn't restore
+the previous value. This is now fixed.
+
+(Wolfgang Bangerth, 2011/08/30)
+
+ - New: There are now two new functions Utilities::string_to_double.
+
+(Wolfgang Bangerth, 2011/08/25)
+
+ - Changed: The function VectorTools::compute_no_normal_flux_constraints
+used to compute its constraints by evaluating the normal vector to the
+surface as described by the mapping, rather than using the normal to
+the surface described by the Boundary object associated with this face.
+(Note that the Mapping computes its approximation by polynomial interpolation
+of the surface described by the Boundary object.) This has now been changed:
+the normal vector is now obtained from the Boundary object directly, at
+points computed by the Mapping.
+
+(Wolfgang Bangerth, 2011/08/25)
+
+ - New: The Boundary base class now has a function Boundary::normal_vector
+that returns the normal vector to the surface at a given location. Derived
+classes need to implement it, of course, if they want it to be used.
+
+(Wolfgang Bangerth, 2011/08/25)
+
+ - Fixed: The function VectorTools::compute_no_normal_flux_constraints had
+a problem that led to extremely difficult to pin down bugs when running
+with sufficiently many processors. Basically, the constraints computed
+by different processors did not agree which should be the independent
+degrees of freedom and which should be the constrained ones. The result
+were constraints that did not lead to a consistent linear system.
+
+(Martin Kronbichler, 2011/08/24)
+
+ - New: Added GridRefinement::hierarchical() to reorder the degrees of freedom
+by going through the cells in hierarchical order. This ensures consistent
+DoF numbering in parallel computations.
+
+(Timo Heister, 2011/08/24)
+
+ - Changed: Triangulation::get_boundary_indicators() returned
+wrong data for dim=1.
+
+(Sebastian Pauletti 2011/08/17)
+
+- Improved: The function LogStream::timestamp() outputs all results of the Posix
+function times, namely wall time, user time and system time.
+
+(Guido Kanschat, 2011/08/18)
+
+ - Extended: GridGenerator::half_hyper_shell() got the option
+
colorize
, which assigns different boundary indicators to the
+different parts of the boundary. Added GridGenerator::quarter_hyper_shell()
+with the same options.
+
+(Timo Heister, 2011/08/15)
+
+ - Fixed: The functions VectorTools::create_boundary_right_hand_side()
+called with an empty set of boundary_indicators (the default), did not apply
+any boundary conditions. The empty set now applies it to all boundaries.
+
+(Timo Heister, Sebastian Pauletti, 2011/08/15)
+
+ - Fixed: The function VectorTools::compute_no_normal_flux_constraints had
+a bug that led to an exception whenever we were computing constraints for
+vector fields located on edges shared between two faces of a 3d cell if those
+faces were not perpendicular. This is now fixed.
+
+(Wolfgang Bangerth, Thomas Geenen, Timo Heister, 2011/08/10)
+
+ - New: The function FullMatrix::triple_product() adds triple products
+like Schur complements to existing matrices.
+
+(Guido Kanschat, 2011/08/05)
+
+ - Improved: The PETScWrapper::VectorBase class was rather generous in
+calling the PETSc
VecAssembleBegin/End
functions that incur
+communication in the %parallel case and are therefore causes of potential
+slowdowns. This has been improved.
+
+(Wolfgang Bangerth, 2011/08/03)
+
+ - Fixed: The function VectorTools::create_right_hand_side now also works
+for objects of type hp::DoFHandler with different finite elements.
+
+(Daniel Gerecht, 2011/07/20)
+
+ - Improved: Evaluation of Lagrangian basis functions has been made stable
+by exchanging polynomial evaluation from the standard form
+$a_n x^n+\ldots+a_1 x + a_0$ to a product of linear factors,
+$c (x - x_0) (x-x_1)\ldots (x-x_n)$. This ensures accurate evaluation up to
+very high order and avoids inaccuracies when using high order finite elements.
+
+(Martin Kronbichler 2011/07/26)
+
+ - Improved: The internal functions in the constructor of the FE_Q element
+have been improved for high order elements. Especially when the element is
+constructed for a 1D quadrature formula, the initialization is now much faster.
+E.g. the initialization up to order 12 in three dimension completes in less
+than a second, whereas it took hundreds of seconds before.
+
+(Martin Kronbichler 2011/07/26)
+
+ - New: There is now a class Threads::ThreadLocalStorage that allows threads
+to have their own copy of an object without having to fear interference from
+other threads in accessing this object.
+
+(Wolfgang Bangerth 2011/07/07)
+
+ - Fixed: The 2d grid reordering algorithm that is used by all grid readers had
+a component that was quadratic in its complexity, sometimes leading to cases
+where reading in a mesh in debug mode could take minutes for just a few tens
+of thousands of cells. This has now been fixed.
+
+(Wolfgang Bangerth 2011/07/07)
+
+ - New: The function DoFTools::count_dofs_per_component now also works
+for objects of type hp::DoFHandler.
+
+(Christian Goll, Wolfgang Bangerth 2011/07/06)
+
+ - Fixed: Under some circumstances, Threads::Thread::join() could only be
+called once and would generate a system exception when called a second time.
+Since it is often useful to not track whether this function had already been
+called, this is now worked around in such a way that one can always call
+the function multiple times.
+
+(Wolfgang Bangerth 2011/07/03)
+
+ - New: The Threads::Thread::join() function can now also be called even
+if no thread has been assigned to this thread object. The function then simply
+does nothing.
+
+(Wolfgang Bangerth 2011/07/03)
+
+ - New: There is now a new function Threads::Thread::valid that can be used
+to query whether the thread object has been assigned a thread.
+
+(Wolfgang Bangerth 2011/07/01)
+
+ - New: The new function GridGenerator::merge_triangulations can be used to compose
+coarse meshes from simpler ones by merging their cells into a single
+triangulation object.
+
+(Wolfgang Bangerth 2011/06/17)
+
+ - Fixed: If an FEValues object was kept around until after the triangulation
+on which it works has been refined or coarsened, and is then reinitialized
+with a cell from the refined triangulation, it could compute wrong results or
+crash outright. This has now been fixed.
+
+(Wolfgang Bangerth 2011/06/02)
+
+ - Changed: The TrilinosWrappers::SparsityPattern::trilinos_sparsity_pattern()
+function returned a reference to an object of kind Epetra_CrsMatrix. However, the
+actual object pointed to is of derived class Epetra_FECrsMatrix. The function
+has now been changed to return a reference to the latter type. Since derived
+references can be assigned to references to base, this change should not
+result in any incompatibilities.
+
+(Wolfgang Bangerth 2011/05/27)
+
+ - New: The class RelaxationBlockJacobi has been added to the relaxation classes.
+
(Guido Kanschat, 2011/05/19)
+
+ - New: discontinuous Galerkin versions of vector-valued elements have been
+implemented: FE_DGBDM, FE_DGNedelec, and FE_DGRaviartThomas.
+
(Guido Kanschat, 2011/05/19)
+
+ - New: Mapping::transform_real_to_unit_cell now
+works also in the codimension one case, where it performs the normal
+projection of the point on the codimension one surface.
+
(Luca Heltai, 2011/05/17)
+
+- New: The PersistentTriangulation class now works also in
+the codimension one case.
+
+(Luca Heltai, 2011/05/16)
+
+ - Fixed: The TrilinosWrappers::SparseMatrix::print() function
+didn't get column indices right. This is now fixed.
+
+(Habib Talavatifard, Wolfgang Bangerth 2011/05/10)
+
+ - Fixed: The TrilinosWrappers::SparseMatrix::operator() and
+TrilinosWrappers::SparseMatrix::el() functions sometimes produced
+wrong results for rectangular matrices. The same is true for
+TrilinosWrappers::SparsityPattern::exists(). This is now fixed.
+
+(Habib Talavatifard, Wolfgang Bangerth 2011/05/09, 2011/05/27)
+
+ - New: The version of DoFTools::make_flux_sparsity_pattern that takes
+the coupling masks is now also available for hp::DoFHandler objects.
+
+(Wolfgang Bangerth, 2011/04/27)
+
+ - Fixed: If Triangulation::create_triangulation is called after an
+hp::DoFHandler object is attached to the triangulation object, setting active
+FE indices leads to a crash. The problem did not happen if the mesh was
+refined before setting the FE indices. This is now fixed. In the process, the
+Triangulation::RefinementListener::create_notification function was
+introduced.
+
+(Wolfgang Bangerth, 2011/04/22)
+
+ - Fixed: The function FEValuesViews::SymmetricTensor::divergence had a bug.
+This is now fixed.
+
+(Wolfgang Bangerth, Feifei Cheng, Venkat Vallala 2011/04/21)
+
+ - Fixed: Under some conditions, FEFaceValues applied to an FESystem element
+that contained elements of type FE_Nothing would receive an erroneous
+exception. This is now fixed.
+
+(Wolfgang Bangerth, 2011/04/17)
+
+ - New: There is now an operator* for the multiplication of a
SymmetricTensor@<2,dim@>
+and a Tensor@<1,dim@>
.
+
+(Wolfgang Bangerth, 2011/04/12)
+
+ - Fixed: Added some instantiations to make KellyErrorEstimator and SolutionTransfer
+work in codimension one. Fixed some dim in spacedim.
+
+(Luca Heltai, 2011/04/11)
+
+ - Fixed: Added some instantiations to make anisotropic refinement work
+in codimension one.
+
+(Luca Heltai, 2011/03/31)
+
+ - Fixed: Corrections in the creation of the face and subface
+interpolation matrices in the class FE_Nedelec.
+
+(Markus Bürg, 2011/03/17)
+
+ - Fixed: In step-21, the inner iteration would sometimes not converge for
+very coarse meshes because of numerical roundoff. This is now fixed by allowing
+more than
rhs.size()
CG iterations if the number of degrees of freedom
+is very small.
+
+(Jichao Yin, Wolfgang Bangerth, 2011/04/06)
+
+ - New: There is now a new function ConditionalOStream::get_stream().
+
+(Wolfgang Bangerth, 2011/03/09)
+
+ - Fixed: FESystem::get_unit_face_support_points would refuse to return
+anything if one of the base elements did not have support points. This
+condition has been relaxed: it now only doesn't return anything if this
+base element has no support points and also has degrees of freedom on
+the face.
+
+(Wolfgang Bangerth, 2011/03/07)
+
+ - Fixed: Objects of type FE_Nothing could be generated with multiple vector components
+by passing an argument to the constructor. Yet, the FE_Nothing::get_name() function
+always just returned the string
FE_Nothing@()
independently of the
+number of components. This is now fixed.
+
+(Wolfgang Bangerth, 2011/03/07)
+
+ - Fixed: PETScWrappers:MPI:SparseMatrix and apply_boundary_values() produced an error in debug mode about non-existant SparsityPattern entries. Reason: clear_rows() also eliminated the whole row in the PETSc-internal SparsityPattern, which resulted in an error in the next assembly process.
+
+(Timo Heister, 2011/02/23)
+
+ - Fixed: It wasn't possible to use the FE_Nothing element inside an FESystem
+object and hand the result over to an FEValues object. This is now fixed.
+
+(Wolfgang Bangerth, 2011/02/18)
+
+ - New: There is now a function DataOutBase::write_visit_record that does
+the equivalent for VisIt that DataOutBase::write_pvtu_record does for ParaView:
+generate a file that contains a list of all other VTK or VTU files of which the
+current parallel simulation consists.
+
+(Wolfgang Bangerth, 2011/02/16)
+
+ - New: There is now a function TrilinosWrappers::VectorBase::minimal_value.
+
+(Wolfgang Bangerth, 2011/02/16)
+
+ - Fixed: TableBase::operator= could not be compiled if the type of the
+elements of the table was
bool
. This is now fixed.
+
+(Wolfgang Bangerth, 2011/02/16)
+
+ - Improved: The GridGenerator::hyper_shell function generated meshes in 3d
+that are valid but of poor quality upon refinement. There is now an additional
+option to generate a coarse mesh of 96 cells that has a much better quality.
+
+(Wolfgang Bangerth, 2011/02/12)
+
+ - Fixed: There are systems where the
libz
library is installed
+but the zlib.h
header file is not available. Since the latter
+condition was not tested, this would result in compiler errors. This is now
+fixed.
+
+(Wolfgang Bangerth, 2011/02/09)
+
+ - Fixed: Prolongation and restriction matrices were not computed at all
+for elements of type FE_DGQ if
dim@. Consequently,
+consumers of this information, such as the SolutionTransfer class or
+the DoFCellAccess::set_dof_values_by_interpolation function did not
+work either and simply returned zero results. This is now fixed.
+
+(M. Sebastian Pauletti, Wolfgang Bangerth, 2011/02/09)
+
+- Fixed: When refining a mesh with codimension one, edges were refined using
+the same manifold description as adjacent cells, but this ignored that a
+boundary indicator might have been purposefully set for edges that are truly at
+the boundary of the mesh. For such edges, the boundary indicator is now honored.
+
+(M. Sebastian Pauletti, Wolfgang Bangerth, 2011/02/09)
+
+ - Fixed: The functions VectorTools::compute_mean_value and
+VectorTools::integrate_difference now also work for distributed
+triangulations of type parallel::distributed::Triangulation.
+
+(Wolfgang Bangerth, 2011/02/07)
+
+ - Changed: If the
libz
library was detected during library
+configuration, the function DataOutBase::write_vtu now writes data in compressed
+format, saving a good fraction of disk space (80-90% for big output files).
+
+(Wolfgang Bangerth, 2011/01/28)
+
+ - New: Trilinos and PETSc vectors now have a function has_ghost_elements().
+
+(Timo Heister, 2011/01/26)
+
+ - Changed: The TrilinosWrappers::MPI::BlockVector::compress function now takes an
+argument (with a default value) in exactly the same way as the
+TrilinosWrappers::MPI::Vector::compress function already did.
+
+(Wolfgang Bangerth, 2011/01/21)
+
+ - Fixed: When calling DataOut::build_patches with a mapping, requesting more
+than one subdivision, and when
dim@, then some cells
+were not properly mapped. This is now fixed.
+
+(Wolfgang Bangerth, 2011/01/18)
+
+- New: Restructured the internals of
PETScWrappers::Precondition*
+to allow a PETSc PC object to exist without a solver. New: Use
+Precondition*::vmult()
to apply the preconditioner once.
+Preconditioners now have a default constructor and an initialize()
+function and are no longer initialized in the solver call,
+but in the constructor or initialize()
.
+
+(Timo Heister, 2011/01/17)
+
+ - Fixed: Boundary conditions in the step-23 tutorial program are now
+applied correctly. Matrix columns get eliminated with the used method
+and introduce some contribution to the right hand side coming from
+inhomogeneous boundary values. The old implementation did not reset the
+matrix columns before applying new boundary values.
+
+(Martin Stoll, Martin Kronbichler, 2011/01/14)
+
+ - Extended:
base/tensor.h
has an additional collection of
+contractions between three tensors (ie. contract3
).
+This can be useful for writing matrix/vector assembly in a more compact
+form than before.
+
+(Toby D. Young, 2011/01/12)
+
+
+
+
+*/
diff --git a/deal.II/doc/news/changes.h b/deal.II/doc/news/changes.h
index 7dd30ab3f2..556323c177 100644
--- a/deal.II/doc/news/changes.h
+++ b/deal.II/doc/news/changes.h
@@ -1,13 +1,16 @@
/**
- * @page changes_after_7_0 Changes after Version 7.0
+ * @page changes_after_7_1 Changes after Version 7.1
This is the list of changes made after the release of
-deal.II version 7.0.0.
+deal.II version 7.1.0.
All entries are signed with the names of the author.
+
+
+
Incompatibilities
@@ -21,79 +24,7 @@ inconvenience this causes.
-- Changed: GridTools, DoFTools, MGTools, VectorTools, MatrixCreator
-and MatrixTools are now namespaces. They have long
-been classes that had only public, static member functions, making
-the end result semantically exactly equivalent to a namespace, which is
-also how it was used. This is now also reflected in the actual code.
-
-(Wolfgang Bangerth, 2011/04/27, 2011/09/14)
-
- - Changed: The PETScWrappers::VectorBase and PETScWrappers::MatrixBase
-classes tried to keep track of
-whether the last operation done on a vector was to add to an element or to
-write into one. If the previous such operation was of a different kind
-than the current one, we would flush buffers (see the description in
-@ref GlossCompress). However, trying to do this automatically turned
-out to be an endless source of hard-to-find bugs in %parallel programs.
-The scheme has therefore now been changed to the following: the classes
-keep track of the previous operation and if it differs from the
-current one, reports an error stating that the user needs to call
-PETScWrapper::VectorBase::compress() or
-PETScWrapper::MatrixBase::compress() instead.
-
-(Wolfgang Bangerth, 2011/08/03, 2011/08/30)
-
- - Changed: The classes Tensor, SymmetricTensor and Point now have an
-additional template argument for the number type. While a default template
-value of
double
ensures that all old code is still valid, this
-change invalidates forward declarations of the form template
-@ class Point
that might be present in user-defined header
-files. Now forward declarations need to specify the type as well, i.e.,
-template @ class Point
. However,
-nothing changes if the full declarations in deal.II/base/tensor.h,
-deal.II/base/symmetric_tensor.h
and deal.II/base/point.h
-are included.
-
-(Martin Kronbichler, 2011/08/02)
-
- - Removed: deal.II no longer supports Trilinos versions prior to 10.0.
-
-(Wolfgang Bangerth, 2011/06/29)
-
- - Changed: deal.II has a namespace std_cxx1x that was used to
-import classes from BOOST that are part of the upcoming C++ 1x standard. On
-the other hand, if your compiler supported a sufficiently large subset
-of C++ 1x, we had code that simply did
-@code
- namespace std_cxx1x = std;
-@endcode
-allowing you to refer to everything that was part of the compiler's namespace
-
std
under the alternative name. This turned out to be untenable
-in connection to the changed outlined below for _1, _2, etc. Consequently,
-if the compiler used supports C++ 1x, we now selectively import elements of the
-compiler's namespace std into namespace std_cxx1x as well. This may lead to
-incompatibilities if you are already using elements of the C++ 1x
-standard by refering to them through the std_cxx1x namespace and these elements
-are not on the list of selectively imported ones.
-
-(Wolfgang Bangerth, 2011/05/29)
-
- - Changed: Previously, placeholder arguments like _1, _2, etc that are used
-in conjunction with the std_cxx1x::bind function could be referenced as if
-they are part of the global namespace. This was achieved by importing the
-corresponding elements of namespace std::placeholders into the global namespace
-if your compiler supported this part of the C++ 1x standard, or otherwise using
-the BOOST counterparts which are already in the global namespace. However,
-this leads to a conflict if one has a C++ 1x enabled compiler (e.g. GCC 4.6)
-and includes certain BOOST headers, since the importation of symbols
-into the global namespace now leads to ambiguous names. The only solution to
-the problem is to not import names into the global namespace, but rather
-import the names from either BOOST or namespace std into the deal.II namespace
-std_cxx1x. The downside is that all code that uses _1, _2, etc needs to be
-changed to use std_cxx1x::_1, std_cxx1x::_2, etc from now on.
-
-(Wolfgang Bangerth, 2011/05/29)
+ - None so far.
@@ -103,226 +34,7 @@ changed to use std_cxx1x::_1, std_cxx1x::_2, etc from now on.
General
-- New: Long in the making, the new tutorial program step-32 is a massively
-%parallel simulator for the Boussinesq equations that describe thermal convection.
-
-(Martin Kronbichler, Timo Heister, Wolfgang Bangerth, 2011/10/06)
-
- - New: There is now a namespace Utilities::MPI that holds some of the MPI-related
-functions that were previously part of Utilities::System. Specifically, the following
-functions were moved and in part renamed: Utilities::System::get_n_mpi_processes
-is now Utilities::MPI::n_mpi_processes; Utilities::System::get_this_mpi_process
-is now Utilities::MPI::this_mpi_process;
-Utilities::System::compute_point_to_point_communication_pattern
-is now Utilities::MPI::compute_point_to_point_communication_pattern;
-Utilities::System::duplicate_communicator
-is now Utilities::MPI::duplicate_communicator;
-Utilities::System::calculate_collective_mpi_min_max_avg
-is now Utilities::MPI::min_max_avg;
-Utilities::System::MPI_InitFinalize
-is now Utilities::MPI::MPI_InitFinalize.
-In addition, some of the arguments of these functions or classes
-have changed.
-
-The previous functions should still be available, though their use
-is now deprecated.
-
-(Wolfgang Bangerth, 2011/09/26)
-
- - Removed: Utilities::System::program_uses_mpi does exactly the same thing
-as Utilities::System::job_supports_mpi. The former has therefore been
-deprecated.
-
-(Wolfgang Bangerth, 2011/09/26)
-
- - New: When using a new enough version of GCC, debug sections in
-object files are now compressed using the
-Wa,--compress-debug-sections
-flag, resulting in savings in disk space on the order of 230 MB.
-
-(Wolfgang Bangerth, 2011/09/22)
-
- - New: deal.II can now be configured and built with the
-Clang C++ frontend of the LLVM compiler.
-
-(Timo Heister, Wolfgang Bangerth, 2011/08/20)
-
- - Changed: Several of the tutorial programs used the same class
-names, often
LaplaceProblem
in the earlier programs.
-There is nothing inherently wrong with this, since these are
-entirely separate programs, but this sometimes confused
-integrated development environments because searching for
-individual symbols would turn up several occurrences in different
-files. To make this a bit simpler, the main classes for step-3
-through step-6 were renamed to StepX
(steps 1 and 2
-do not have a main class). Starting with step-7, everything specific
-to a tutorial program has been moved into a namespace called
-StepX
to make the fully qualified names unique across
-different tutorial programs.
-
-(Wolfgang Bangerth, Guido Kanschat 2011/08/16)
-
- - Extended: Many operations on objects of
-type Point@<0@>, Quadrature@<0@>, etc
-(including creation) were previously forbidden since such objects do not make
-much sense. However, this prevented a lot of code that could otherwise work
-in a dimension independent way, from working in 1d, e.g. integration on
-faces. Many of these places have now been cleaned up and work.
-
-(Wolfgang Bangerth, 2011/08/12)
-
- - Extended: The classes Tensor, SymmetricTensor and Point now have an
-additional template argument for the number type. It is now possible to base
-these classes on any abstract data type that implements basic arithmetic
-operations, like
Tensor<1,dim,std::complex >
. deal.II
-uses a default template argument double
that ensures that all
-code using e.g. Tensor<1,dim>
remains valid.
-
-(Martin Kronbichler, 2011/08/02)
-
- - Fixed: deal.II can link with Trilinos but previously it required a
-very specific set of Trilinos sub-libraries; if Trilinos had been compiled
-with a larger set of sub-libraries, linking would sometimes fail. This
-has now been made more generic and deal.II obtains the proper set of
-libraries from Trilinos.
-
-(Wolfgang Bangerth, 2011/06/29)
-
- - Fixed: On Mac OS X, linking with some external libraries such as Trilinos
-sometimes failed due to a misconfiguration of linker flags. This should now be
-fixed.
-
-(Praveen C, Martin Kronbichler, Wolfgang Bangerth, 2011/06/23)
-
- - Changed: Doing
make clean
was supposed to only remove object
-files but not libraries; however, it also removed the TBB libraries and a
-few executables. This has now been changed: make clean
now only
-removes stuff that isn't needed to run executables, i.e. it leaves the TBB
-and other libraries alone. As before, the target make distclean
-is responsible for removing everything.
-
-(Max Jensen, Wolfgang Bangerth, 2011/06/14)
-
- - New: The Triangulation and DoFHandler classes, together with many
-smaller classes can now be serialized, i.e. their data can be written
-to an output stream and later retrieved to restore the state of the program.
-
-(Wolfgang Bangerth, 2011/06/13)
-
- - New/deprecated: The Triangulation class offers ways to get informed
-whenever the triangulation changes. Previously, the mechanism doing this
-was through the Triangulation::RefinementListener class. This has been
-deprecated and has been superceded by a BOOST signals based mechanism
-that is generally more powerful and does not rely on overloading
-particular virtual functions inherited from a base class.
-
-While the old mechanism should continue to work, you should consider
-upgrading. For more information on the signals mechanism, see the
-documentation of the Triangulation class.
-
-In addition to the change above, the new implementation now offers two
-more signals one can subscribe to: Triangulation::Signals::clead for
-when the triangulation is cleared, and Triangulation::Signals::any_change
-that can be used for any operation that changes the mesh. Furthermore,
-in a change from previous behavior, the Triangulations::Signal::create
-signal is now also triggered when another triangulation is copied to
-the one that owns the signal.
-
-(Wolfgang Bangerth, 2011/06/01)
-
- - Removed: The
./configure
script allowed configuring
-for the GNU Scientific Library (GSL) in version 7.0 but didn't actually
-use any of the GSL functions. The corresponding code has therefore been
-removed again.
-
-(Wolfgang Bangerth, 2011/05/22)
-
- - Changed: Traditionally, include directories were set through the
-
-I
flag in make files in such a way that one would do
-@code
- #include
-@endcode
-In preparation for future changes that will make possible installing
-header files in a directory under /usr/include
it seemed
-useful to install everything under /usr/include/deal.II
-and include them as
-@code
- #include
-@endcode
-This change has been made throughout the library and tutorial programs.
-However, the old way of using include directories will continue to work
-for at least one release for backward compatibility.
-
-(Wolfgang Bangerth, 2011/05/16)
-
-- Changed: The version of BOOST we ship with deal.II has been upgraded
-to 1.46.1. BOOST now also resides in the directory
contrib/boost-1.46.1
-instead of an unversioned directory.
-
-(Wolfgang Bangerth, 2011/05/16)
-
- - New: The SparseDirectUMFPACK class can now also deal with matrices
-provided in SparseMatrixEZ format.
-
-(Martin Genet, 2011/05/04)
-
- - New: The new tutorial program step-46 shows how to couple different
-models defined on subsets of
-the domain, in this case Stokes flow around an elastic solid. The
-trick here is that variables (here the flow velocity and pressure,
-and the solid displacement) do not live on the entire domain, but
-only on a part. The point of the program is how to represent this in
-source code.
-
-(Wolfgang Bangerth, 2011/04/30)
-
- - Fixed: On Debian, the Trilinos packages use a different layout
-of include files and library names. The
./configure
-script can now deal with this.
-
-(Walter Landry, 2011/02/22)
-
- - Improved: Linking the deal.II libraries on file systems that
-are mounted remotely from a file server took painfully long. This
-is now fixed by linking everything on the local file system
-and only subsequently moving the file into its final location.
-
-(Wolfgang Bangerth, 2011/01/28)
-
- - Changed: Most classes in deal.II have a member function
-
memory_consumption
that used to return an unsigned int.
-However, on most 64-bit systems, unsigned int is still only 32-bit
-wide, and consequently the return type does not provide enough
-precision to return the size of very large objects. The return types
-of all of these functions has been changed to std::size_t, which is
-defined to be a type that can hold the sizes of all objects possible
-on any system.
-
-(Wolfgang Bangerth, 2011/01/22)
-
- - Fixed: When using the
--enable-mpi
to
-./configure
, the script only tried mpiCC
-as the MPI C++ compiler. However, on some systems, it is called
-mpicxx
. The script now tries that as well.
-
-(Wolfgang Bangerth, 2011/01/22)
-
- - Fixed: When using Trilinos and using the Intel C++ compiler,
-we accidentally used invalid compiler flags that led to a warning
-every time we compiled a file.
-
-(Wolfgang Bangerth, 2011/01/22)
-
- - Fixed: At the bottom of the page of tutorial programs we show a "plain"
-version of the tutorial program. However, the script that generates this plain
-version was broken and sometimes truncated the file. This
-should be fixed now.
-
-(Wolfgang Bangerth, 2011/01/18)
-
- - Extended: Several missing instantiations of functions for triangulations
-and DoF handlers embedded in higher dimensional space have been added.
-
-(Wolfgang Bangerth, 2011/01/15)
+ - None so far.
@@ -332,423 +44,7 @@ and DoF handlers embedded in higher dimensional space have been added.
Specific improvements
-- New: There is a new predicate IteratorFilters::LocallyOwnedCell
-for filtered iterators.
-
-(Wolfgang Bangerth, 2011/10/03)
-
- - Improved: The class BlockList used in RelaxationBlock has been replaced
-by SparsityPattern, since it only reproduced its functionality.
-
-(Guido Kanschat, 2011/09/26)
-
- - New: SparsityPattern::row_position() finds a column index in a row and returns
-its "local" index or numbers::invalid_unsigned_int.
-
-(Guido Kanschat, 2011/09/26)
-
- - New: The functions Utilities::MPI::sum and Utilities::MPI::max
-function can be used to compute the sum or maximum of values over a number of
-MPI processes without having to deal with the underlying MPI functions.
-
-(Wolfgang Bangerth, 2011/09/25)
-
- - New: The CellAccessor::is_locally_owned function is a shortcut
-for the
!cell-@>is_ghost() && !cell-@>is_artificial()
pattern
-found in many places when dealing with distributed meshes.
-
-(Wolfgang Bangerth, 2011/09/10)
-
- - New: The GridGenerator::torus function and TorusBoundary class can
-create and describe the surface of a torus.
-
-(Daniel Castanon Quiroz, 2011/09/08)
-
- - Fixed: FEFieldFunction class was not thread-safe because it keeps a
-cache on the side that was invalidated when different
-threads kept pouncing on it. This is now fixed.
-
-(Patrick Sodré, 2011/09/07)
-
- - New: There is now a function GridTools::volume() computing the volume
-of a triangulation.
-
-(Wolfgang Bangerth, 2011/09/02)
-
- - New: Code like
cell-@>face(1)-@>set_boundary_indicator(42);
-now also works in 1d.
-
-(Wolfgang Bangerth, 2011/08/30)
-
- - Fixed: The TimerOutput::print_summary() function changed the
-precision of output on the stream it prints to, but didn't restore
-the previous value. This is now fixed.
-
-(Wolfgang Bangerth, 2011/08/30)
-
- - New: There are now two new functions Utilities::string_to_double.
-
-(Wolfgang Bangerth, 2011/08/25)
-
- - Changed: The function VectorTools::compute_no_normal_flux_constraints
-used to compute its constraints by evaluating the normal vector to the
-surface as described by the mapping, rather than using the normal to
-the surface described by the Boundary object associated with this face.
-(Note that the Mapping computes its approximation by polynomial interpolation
-of the surface described by the Boundary object.) This has now been changed:
-the normal vector is now obtained from the Boundary object directly, at
-points computed by the Mapping.
-
-(Wolfgang Bangerth, 2011/08/25)
-
- - New: The Boundary base class now has a function Boundary::normal_vector
-that returns the normal vector to the surface at a given location. Derived
-classes need to implement it, of course, if they want it to be used.
-
-(Wolfgang Bangerth, 2011/08/25)
-
- - Fixed: The function VectorTools::compute_no_normal_flux_constraints had
-a problem that led to extremely difficult to pin down bugs when running
-with sufficiently many processors. Basically, the constraints computed
-by different processors did not agree which should be the independent
-degrees of freedom and which should be the constrained ones. The result
-were constraints that did not lead to a consistent linear system.
-
-(Martin Kronbichler, 2011/08/24)
-
- - New: Added GridRefinement::hierarchical() to reorder the degrees of freedom
-by going through the cells in hierarchical order. This ensures consistent
-DoF numbering in parallel computations.
-
-(Timo Heister, 2011/08/24)
-
- - Changed: Triangulation::get_boundary_indicators() returned
-wrong data for dim=1.
-
-(Sebastian Pauletti 2011/08/17)
-
-- Improved: The function LogStream::timestamp() outputs all results of the Posix
-function times, namely wall time, user time and system time.
-
-(Guido Kanschat, 2011/08/18)
-
- - Extended: GridGenerator::half_hyper_shell() got the option
-
colorize
, which assigns different boundary indicators to the
-different parts of the boundary. Added GridGenerator::quarter_hyper_shell()
-with the same options.
-
-(Timo Heister, 2011/08/15)
-
- - Fixed: The functions VectorTools::create_boundary_right_hand_side()
-called with an empty set of boundary_indicators (the default), did not apply
-any boundary conditions. The empty set now applies it to all boundaries.
-
-(Timo Heister, Sebastian Pauletti, 2011/08/15)
-
- - Fixed: The function VectorTools::compute_no_normal_flux_constraints had
-a bug that led to an exception whenever we were computing constraints for
-vector fields located on edges shared between two faces of a 3d cell if those
-faces were not perpendicular. This is now fixed.
-
-(Wolfgang Bangerth, Thomas Geenen, Timo Heister, 2011/08/10)
-
- - New: The function FullMatrix::triple_product() adds triple products
-like Schur complements to existing matrices.
-
-(Guido Kanschat, 2011/08/05)
-
- - Improved: The PETScWrapper::VectorBase class was rather generous in
-calling the PETSc
VecAssembleBegin/End
functions that incur
-communication in the %parallel case and are therefore causes of potential
-slowdowns. This has been improved.
-
-(Wolfgang Bangerth, 2011/08/03)
-
- - Fixed: The function VectorTools::create_right_hand_side now also works
-for objects of type hp::DoFHandler with different finite elements.
-
-(Daniel Gerecht, 2011/07/20)
-
- - Improved: Evaluation of Lagrangian basis functions has been made stable
-by exchanging polynomial evaluation from the standard form
-$a_n x^n+\ldots+a_1 x + a_0$ to a product of linear factors,
-$c (x - x_0) (x-x_1)\ldots (x-x_n)$. This ensures accurate evaluation up to
-very high order and avoids inaccuracies when using high order finite elements.
-
-(Martin Kronbichler 2011/07/26)
-
- - Improved: The internal functions in the constructor of the FE_Q element
-have been improved for high order elements. Especially when the element is
-constructed for a 1D quadrature formula, the initialization is now much faster.
-E.g. the initialization up to order 12 in three dimension completes in less
-than a second, whereas it took hundreds of seconds before.
-
-(Martin Kronbichler 2011/07/26)
-
- - New: There is now a class Threads::ThreadLocalStorage that allows threads
-to have their own copy of an object without having to fear interference from
-other threads in accessing this object.
-
-(Wolfgang Bangerth 2011/07/07)
-
- - Fixed: The 2d grid reordering algorithm that is used by all grid readers had
-a component that was quadratic in its complexity, sometimes leading to cases
-where reading in a mesh in debug mode could take minutes for just a few tens
-of thousands of cells. This has now been fixed.
-
-(Wolfgang Bangerth 2011/07/07)
-
- - New: The function DoFTools::count_dofs_per_component now also works
-for objects of type hp::DoFHandler.
-
-(Christian Goll, Wolfgang Bangerth 2011/07/06)
-
- - Fixed: Under some circumstances, Threads::Thread::join() could only be
-called once and would generate a system exception when called a second time.
-Since it is often useful to not track whether this function had already been
-called, this is now worked around in such a way that one can always call
-the function multiple times.
-
-(Wolfgang Bangerth 2011/07/03)
-
- - New: The Threads::Thread::join() function can now also be called even
-if no thread has been assigned to this thread object. The function then simply
-does nothing.
-
-(Wolfgang Bangerth 2011/07/03)
-
- - New: There is now a new function Threads::Thread::valid that can be used
-to query whether the thread object has been assigned a thread.
-
-(Wolfgang Bangerth 2011/07/01)
-
- - New: The new function GridGenerator::merge_triangulations can be used to compose
-coarse meshes from simpler ones by merging their cells into a single
-triangulation object.
-
-(Wolfgang Bangerth 2011/06/17)
-
- - Fixed: If an FEValues object was kept around until after the triangulation
-on which it works has been refined or coarsened, and is then reinitialized
-with a cell from the refined triangulation, it could compute wrong results or
-crash outright. This has now been fixed.
-
-(Wolfgang Bangerth 2011/06/02)
-
- - Changed: The TrilinosWrappers::SparsityPattern::trilinos_sparsity_pattern()
-function returned a reference to an object of kind Epetra_CrsMatrix. However, the
-actual object pointed to is of derived class Epetra_FECrsMatrix. The function
-has now been changed to return a reference to the latter type. Since derived
-references can be assigned to references to base, this change should not
-result in any incompatibilities.
-
-(Wolfgang Bangerth 2011/05/27)
-
- - New: The class RelaxationBlockJacobi has been added to the relaxation classes.
-
(Guido Kanschat, 2011/05/19)
-
- - New: discontinuous Galerkin versions of vector-valued elements have been
-implemented: FE_DGBDM, FE_DGNedelec, and FE_DGRaviartThomas.
-
(Guido Kanschat, 2011/05/19)
-
- - New: Mapping::transform_real_to_unit_cell now
-works also in the codimension one case, where it performs the normal
-projection of the point on the codimension one surface.
-
(Luca Heltai, 2011/05/17)
-
-- New: The PersistentTriangulation class now works also in
-the codimension one case.
-
-(Luca Heltai, 2011/05/16)
-
- - Fixed: The TrilinosWrappers::SparseMatrix::print() function
-didn't get column indices right. This is now fixed.
-
-(Habib Talavatifard, Wolfgang Bangerth 2011/05/10)
-
- - Fixed: The TrilinosWrappers::SparseMatrix::operator() and
-TrilinosWrappers::SparseMatrix::el() functions sometimes produced
-wrong results for rectangular matrices. The same is true for
-TrilinosWrappers::SparsityPattern::exists(). This is now fixed.
-
-(Habib Talavatifard, Wolfgang Bangerth 2011/05/09, 2011/05/27)
-
- - New: The version of DoFTools::make_flux_sparsity_pattern that takes
-the coupling masks is now also available for hp::DoFHandler objects.
-
-(Wolfgang Bangerth, 2011/04/27)
-
- - Fixed: If Triangulation::create_triangulation is called after an
-hp::DoFHandler object is attached to the triangulation object, setting active
-FE indices leads to a crash. The problem did not happen if the mesh was
-refined before setting the FE indices. This is now fixed. In the process, the
-Triangulation::RefinementListener::create_notification function was
-introduced.
-
-(Wolfgang Bangerth, 2011/04/22)
-
- - Fixed: The function FEValuesViews::SymmetricTensor::divergence had a bug.
-This is now fixed.
-
-(Wolfgang Bangerth, Feifei Cheng, Venkat Vallala 2011/04/21)
-
- - Fixed: Under some conditions, FEFaceValues applied to an FESystem element
-that contained elements of type FE_Nothing would receive an erroneous
-exception. This is now fixed.
-
-(Wolfgang Bangerth, 2011/04/17)
-
- - New: There is now an operator* for the multiplication of a
SymmetricTensor@<2,dim@>
-and a Tensor@<1,dim@>
.
-
-(Wolfgang Bangerth, 2011/04/12)
-
- - Fixed: Added some instantiations to make KellyErrorEstimator and SolutionTransfer
-work in codimension one. Fixed some dim in spacedim.
-
-(Luca Heltai, 2011/04/11)
-
- - Fixed: Added some instantiations to make anisotropic refinement work
-in codimension one.
-
-(Luca Heltai, 2011/03/31)
-
- - Fixed: Corrections in the creation of the face and subface
-interpolation matrices in the class FE_Nedelec.
-
-(Markus Bürg, 2011/03/17)
-
- - Fixed: In step-21, the inner iteration would sometimes not converge for
-very coarse meshes because of numerical roundoff. This is now fixed by allowing
-more than
rhs.size()
CG iterations if the number of degrees of freedom
-is very small.
-
-(Jichao Yin, Wolfgang Bangerth, 2011/04/06)
-
- - New: There is now a new function ConditionalOStream::get_stream().
-
-(Wolfgang Bangerth, 2011/03/09)
-
- - Fixed: FESystem::get_unit_face_support_points would refuse to return
-anything if one of the base elements did not have support points. This
-condition has been relaxed: it now only doesn't return anything if this
-base element has no support points and also has degrees of freedom on
-the face.
-
-(Wolfgang Bangerth, 2011/03/07)
-
- - Fixed: Objects of type FE_Nothing could be generated with multiple vector components
-by passing an argument to the constructor. Yet, the FE_Nothing::get_name() function
-always just returned the string
FE_Nothing@()
independently of the
-number of components. This is now fixed.
-
-(Wolfgang Bangerth, 2011/03/07)
-
- - Fixed: PETScWrappers:MPI:SparseMatrix and apply_boundary_values() produced an error in debug mode about non-existant SparsityPattern entries. Reason: clear_rows() also eliminated the whole row in the PETSc-internal SparsityPattern, which resulted in an error in the next assembly process.
-
-(Timo Heister, 2011/02/23)
-
- - Fixed: It wasn't possible to use the FE_Nothing element inside an FESystem
-object and hand the result over to an FEValues object. This is now fixed.
-
-(Wolfgang Bangerth, 2011/02/18)
-
- - New: There is now a function DataOutBase::write_visit_record that does
-the equivalent for VisIt that DataOutBase::write_pvtu_record does for ParaView:
-generate a file that contains a list of all other VTK or VTU files of which the
-current parallel simulation consists.
-
-(Wolfgang Bangerth, 2011/02/16)
-
- - New: There is now a function TrilinosWrappers::VectorBase::minimal_value.
-
-(Wolfgang Bangerth, 2011/02/16)
-
- - Fixed: TableBase::operator= could not be compiled if the type of the
-elements of the table was
bool
. This is now fixed.
-
-(Wolfgang Bangerth, 2011/02/16)
-
- - Improved: The GridGenerator::hyper_shell function generated meshes in 3d
-that are valid but of poor quality upon refinement. There is now an additional
-option to generate a coarse mesh of 96 cells that has a much better quality.
-
-(Wolfgang Bangerth, 2011/02/12)
-
- - Fixed: There are systems where the
libz
library is installed
-but the zlib.h
header file is not available. Since the latter
-condition was not tested, this would result in compiler errors. This is now
-fixed.
-
-(Wolfgang Bangerth, 2011/02/09)
-
- - Fixed: Prolongation and restriction matrices were not computed at all
-for elements of type FE_DGQ if
dim@. Consequently,
-consumers of this information, such as the SolutionTransfer class or
-the DoFCellAccess::set_dof_values_by_interpolation function did not
-work either and simply returned zero results. This is now fixed.
-
-(M. Sebastian Pauletti, Wolfgang Bangerth, 2011/02/09)
-
-- Fixed: When refining a mesh with codimension one, edges were refined using
-the same manifold description as adjacent cells, but this ignored that a
-boundary indicator might have been purposefully set for edges that are truly at
-the boundary of the mesh. For such edges, the boundary indicator is now honored.
-
-(M. Sebastian Pauletti, Wolfgang Bangerth, 2011/02/09)
-
- - Fixed: The functions VectorTools::compute_mean_value and
-VectorTools::integrate_difference now also work for distributed
-triangulations of type parallel::distributed::Triangulation.
-
-(Wolfgang Bangerth, 2011/02/07)
-
- - Changed: If the
libz
library was detected during library
-configuration, the function DataOutBase::write_vtu now writes data in compressed
-format, saving a good fraction of disk space (80-90% for big output files).
-
-(Wolfgang Bangerth, 2011/01/28)
-
- - New: Trilinos and PETSc vectors now have a function has_ghost_elements().
-
-(Timo Heister, 2011/01/26)
-
- - Changed: The TrilinosWrappers::MPI::BlockVector::compress function now takes an
-argument (with a default value) in exactly the same way as the
-TrilinosWrappers::MPI::Vector::compress function already did.
-
-(Wolfgang Bangerth, 2011/01/21)
-
- - Fixed: When calling DataOut::build_patches with a mapping, requesting more
-than one subdivision, and when
dim@, then some cells
-were not properly mapped. This is now fixed.
-
-(Wolfgang Bangerth, 2011/01/18)
-
-- New: Restructured the internals of
PETScWrappers::Precondition*
-to allow a PETSc PC object to exist without a solver. New: Use
-Precondition*::vmult()
to apply the preconditioner once.
-Preconditioners now have a default constructor and an initialize()
-function and are no longer initialized in the solver call,
-but in the constructor or initialize()
.
-
-(Timo Heister, 2011/01/17)
-
- - Fixed: Boundary conditions in the step-23 tutorial program are now
-applied correctly. Matrix columns get eliminated with the used method
-and introduce some contribution to the right hand side coming from
-inhomogeneous boundary values. The old implementation did not reset the
-matrix columns before applying new boundary values.
-
-(Martin Stoll, Martin Kronbichler, 2011/01/14)
-
- - Extended:
base/tensor.h
has an additional collection of
-contractions between three tensors (ie. contract3
).
-This can be useful for writing matrix/vector assembly in a more compact
-form than before.
-
-(Toby D. Young, 2011/01/12)
-
+ - None so far.
diff --git a/deal.II/doc/news/news.html b/deal.II/doc/news/news.html
index 34758d4c08..02d1e7c90e 100644
--- a/deal.II/doc/news/news.html
+++ b/deal.II/doc/news/news.html
@@ -28,10 +28,19 @@
mailing list for additional news.
- Changes in the library since the last major release are
- here.
-
+ -
+ 2011/10/09: Version 7.1 released
+
+ -
+ Version 7.1.0 was released today. This release provides two
+ new tutorial programs and many smaller enhancements
+ throughout the entire library. A complete list of new
+ features is found here.
+
+
+
-
2011/10/06: step-32, a massively parallel thermal
convection solver