This will make all changelog files behave the same way.
--- /dev/null
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_1_0_and_2_0 Changes between Version 1.0 and 2.0
+
+<p>
+This is the list of changes made between the deal.II releases listed above.
+</p>
+
+
+<h2>New multithreading scheme</h2>
+
+<p>
+After the old scheme to implement multithreading in
+deal.II has proven to be too difficult, we
+implemented something that is significantly more complex, but at the
+same time significantly simpler to use. There is also a report on this
+subject, explaining why's and how's, which can be accessed from the
+<a href="../../documentation.html" target="body">documentation</a>
+page.
+</p>
+
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
-
-<body>
-
-
-
-<h2>Announcement of <acronym>deal.II</acronym> 3.0</h2>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_2_0_and_3_0 Changes between Version 2.0 and 3.0
<p>
Version 3.0 of the deal.II object-oriented finite element library is
Wolfgang Bangerth, Guido Kanschat, the deal.II team
</p>
-</body>
-</html>
-
+*/
+++ /dev/null
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
-
-<body>
-
-
-
-<h2>New multithreading scheme</h2>
-
-<p>
-After the old scheme to implement multithreading in
-<acronym>deal.II</acronym> has proven to be too difficult, we
-implemented something that is significantly more complex, but at the
-same time significantly simpler to use. There is also a report on this
-subject, explaining why's and how's, which can be accessed from the
-<a href="../../documentation.html" target="body">documentation</a>
-page.
-</p>
-
-</body>
-</html>
-
+++ /dev/null
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
-
-<body>
-
-
-
-<h2>Announcement of <acronym>deal.II</acronym> 3.0.1</h2>
-
-<p>
-Version 3.0.1 of the deal.II object-oriented finite element library is
-available on the deal.II home-page at
-</p>
-<p align="center">
-<a href="http://www.dealii.org" target="_top">
- http://www.dealii.org
-</a>
-</p>
-
-<p>
- Version 3.0.1 is a bug fix release of deal.II 3.0. Overall, the
- number of bugs that have been found is very small (only six) and
- have all been fixed (see
- <a href="3.0.0-vs-3.0.1.html" target="body">this list</a>). We
- consider this a good sign for pre-release testing.
- By issuing this release, we would now like to close the 3.0.x
- branch. Future work will be on the next major version.
-</p>
-
-
-
-<p>
-Wolfgang Bangerth, Guido Kanschat, the deal.II team
-</p>
-
-</body>
-</html>
-
+++ /dev/null
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
-
-<body>
-
-
-<h2>Changes between versions 3.1.1 and 3.1.2</h2>
-
-<ol>
- <li> <p>
- The only is change is that the configuration detects the
- presence of gcc3.0 and works around a bug in it by compiling
- the file <code>tria_accessor.cc(3d)</code> without optimization
- flags even for optimized libraries. The gcc bug is documented
- at the <a
- href="http://gcc.gnu.org/cgi-bin/gnatsweb.pl?database=gcc&user=guest&password=guest&cmd=login"
- target="_top">gcc bug tracking system page</a>, as bugs reports c++/615 and
- optimization/2938.
- <br>
- (WB 2001/06/27)
- </p>
-</ol>
-
-
-<hr>
-
-</body>
-</html>
-
+++ /dev/null
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<body>
-
-
-<h2>Changes between versions 3.3.0 and 3.3.1</h2>
-
-<ol>
- <li> <p>
- Fixed: In 3d, the function <code
- class="member">DoFTools::make_hanging_node_constraints</code>
- contained an assertion that failed erroneously for finite
- elements that do not have degrees of freedom on vertices. This
- is now fixed.
- <br>
- (WB 2002/02/21)
- </p>
-
- <li> <p>
- Fixed: <code class="member">TriaAccessor<3,3>::measure</code>
- sometimes computed a negative value. This is now fixed.
- <br>
- (WB 2002/02/21)
- </p>
-</ol>
-
-<hr>
-Last update $Date$
-
-</body>
-</html>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<body>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_on_the_hp_branchbetween_1_0_and_2_0 Changes between Version 1.0 and 2.0
+
+<p>
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
+</p>
+
<h2>Changes on the hp branch</h2>
<ol>
<li> <p>
Changed:
- Changed <code class="class">FE</code> to
- <code class="class">FECollection</code> at several places and
+ Changed <code>FE</code> to
+ <code>FECollection</code> at several places and
also changed depending functions accordingly. Modified the
- <code class="member">reserve_space</code> method of
- <code class="class">hpDoFHandler</code> to work for 2D
+ <code>reserve_space</code> method of
+ <code>hpDoFHandler</code> to work for 2D
DG-problems. In this context the 2D code for
<code class"member">pre_refinement_notification</code> was
added as well.
<li> <p>
Changed:
Implemented a couple of small modifications to get a first 1D
- hp-example running. The <code class="class">Triangulation</code>
+ hp-example running. The <code>Triangulation</code>
class was extended by a method to add
- <code class="class">RefinementListener</code>s, which allow
+ <code>RefinementListener</code>s, which allow
other classes to be informed about Refinements. This is
- needed for the <code class="class">hpDoFHandler</code>, which
- administrates the <code class="member">active_fe_indices</code>
- in the <code class="class">hpDoFLevel</code>s. Once this
+ needed for the <code>hpDoFHandler</code>, which
+ administrates the <code>active_fe_indices</code>
+ in the <code>hpDoFLevel</code>s. Once this
was implemented, the other changes were straightforward. For
1D, the only thing which had to be changed for hp was the
- <code class="member">reserve_space</code> method.
+ <code>reserve_space</code> method.
Last but not least, for the hp-example the
- <code class="member">add</code> method was added to the
- <code class="class">FECollection</code>. It allows the user to
- add new <code class="class">FiniteElements</code>s to the
- the <code class="class">FECollection</code>.
+ <code>add</code> method was added to the
+ <code>FECollection</code>. It allows the user to
+ add new <code>FiniteElements</code>s to the
+ the <code>FECollection</code>.
<br>
(Oliver Kayser-Herold 2003/06/01)
</p>
<li> <p>
- Changed: Introduced the <code class="class">DoFHandler</code>
- as template parameter in classes <code class="class">DataOutStack</code>,
- <code class="class">DataOutFaces</code>, <code class="class">DataOut</code> and
- <code class="class">DataOut_DoFData</code>.
- <code class="class">DoFHandler</code> is used as default
+ Changed: Introduced the <code>DoFHandler</code>
+ as template parameter in classes <code>DataOutStack</code>,
+ <code>DataOutFaces</code>, <code>DataOut</code> and
+ <code>DataOut_DoFData</code>.
+ <code>DoFHandler</code> is used as default
template argument to ensure backward compatibility. Added
- an overloaded method <code class="member">reinit</code> for the
- new <code class="class">hpDoFHandler</code> in class
- <code class="class">FEValues</code>. Modified method
- <code class="member">interpolate_boundary_values</code> in
- class <code class="class">VectorTools</code> to take the
- <code class="class">DoFHandler</code> as template
+ an overloaded method <code>reinit</code> for the
+ new <code>hpDoFHandler</code> in class
+ <code>FEValues</code>. Modified method
+ <code>interpolate_boundary_values</code> in
+ class <code>VectorTools</code> to take the
+ <code>DoFHandler</code> as template
argument. Probably this method must be changed later, when the real
- <code class="class">hpDoFHandler</code> is implemented. Added
+ <code>hpDoFHandler</code> is implemented. Added
the first implementation of the
- <code class="class">hpDoFHandler</code> which is simply a copy
+ <code>hpDoFHandler</code> which is simply a copy
of the old one. But it should provide a good basis for the new
- one. Finally the <code class="class">DoFAccessor</code> is now
+ one. Finally the <code>DoFAccessor</code> is now
instantiated for the new
- <code class="class">hpDoFAccessor</code>. Overall these changes
+ <code>hpDoFAccessor</code>. Overall these changes
now allow the compilation of some of the sample programs with
- the new <code class="class">hpDoFAccessor</code> but obviously
+ the new <code>hpDoFAccessor</code> but obviously
not yet with new functionality.
<br>
(Oliver Kayser-Herold 2003/02/18)
</p>
<li> <p>
- Changed: The <code class="member">DoFHandler::n_boundary_dofs</code>
+ Changed: The <code>DoFHandler::n_boundary_dofs</code>
functions have been moved and renamed. They are now
- <code class="member">DoFTools::count_boundary_dofs</code>.
+ <code>DoFTools::count_boundary_dofs</code>.
<br>
(WB 2003/02/18)
</p>
<li> <p>
- Changed: The <code class="class">DoFLevel</code> classes has been moved to
- a namespace <code class="class">internal</code>, since they are not
+ Changed: The <code>DoFLevel</code> classes has been moved to
+ a namespace <code>internal</code>, since they are not
meant for public use.
<br>
(WB 2003/02/18)
</p>
<li> <p>
- Changed: Many of the functions in <code class="class">DoFTools</code>
- are now templatized to accept both <code class="class">DoFHandler</code>
- and <code class="class">hpDoFHandler</code> objects.
+ Changed: Many of the functions in <code>DoFTools</code>
+ are now templatized to accept both <code>DoFHandler</code>
+ and <code>hpDoFHandler</code> objects.
<br>
(WB 2003/02/14)
</p>
<li> <p>
- Changed: The <code class="class">TriaDimensionInfo</code> and
- <code class="class">DoFDimensionInfo</code> classes that were used to
+ Changed: The <code>TriaDimensionInfo</code> and
+ <code>DoFDimensionInfo</code> classes that were used to
declare typedefs for the iterators have been moved to a namespace
internal (so as to get them out of the class index in the documentation
-- these classes were not meant for use in applications after all), and
- have been renamed to <code class="class">TriaIteratorSelector</code>
- and <code class="class">DoFIteratorSelector</code>, since that is what
+ have been renamed to <code>TriaIteratorSelector</code>
+ and <code>DoFIteratorSelector</code>, since that is what
they are.
<br>
(WB 2003/02/13)
Changed: Due to the demand for different <code
class="class">DoFHandler</code> classes (mainly for the planned
hp-DoFHandler) the DoFHandler has been introduced as a
- template parameter into the <code class="class">DoFAccessor</code>,
- the <code class="class">DoFObjectAccessor</code>,
- and the <code class="class">DoFCellAccessor</code> classes.
- Furthermore the <code class="class">DoFHandler</code> was
+ template parameter into the <code>DoFAccessor</code>,
+ the <code>DoFObjectAccessor</code>,
+ and the <code>DoFCellAccessor</code> classes.
+ Furthermore the <code>DoFHandler</code> was
also introduced as template parameter into the
- <code class="class">DoFDimensionInfo</code>
+ <code>DoFDimensionInfo</code>
class. These changes induced several little changes in a couple
of methods to get the code through the compiler. But no
functionality was affected.
<li> <p>
Changed: There are now overloaded versions of the <code
class="member">FEValues::reinit</code> function (and likewise in the
- <code class="class">FEFaceValues</code> and <code
+ <code>FEFaceValues</code> and <code
class="class">FESubFaceValues</code> classes) that either take a
- <code class="member">Triangulation::cell_iterator</code> or a
- <code class="member">DoFHandler::cell_iterator</code>. That means that
+ <code>Triangulation::cell_iterator</code> or a
+ <code>DoFHandler::cell_iterator</code>. That means that
you can compute certain data with only the geometrical information the
former provides, independent of whether degrees of freedom are
associated with this cell or not. However, certain functions of the
- <code class="class">FEValues</code> class will throw an error if you
+ <code>FEValues</code> class will throw an error if you
attempt to use them without DoF data being delivered in the
reinitialization call; these functions need to extract values from
finite element fields, and are mostly the
<li> <p>
Changed: The <code
class="member">Mapping::transform_real_to_unit_cell</code> and
- <code class="member">Mapping::transform_unit_to_real_cell</code>
- now only take a <code class="member">Triangulation::cell_iterator</code>
- instead of a <code class="member">DoFHandler::cell_iterator</code> as
+ <code>Mapping::transform_unit_to_real_cell</code>
+ now only take a <code>Triangulation::cell_iterator</code>
+ instead of a <code>DoFHandler::cell_iterator</code> as
previously. This is also reasonable, since they only need the geometric
information.
<br>
</p>
<li> <p>
- Changed: The <code class="member">FiniteElement::fill_fe_*_values</code>
- now only take a <code class="member">Triangulation::cell_iterator</code>
- instead of a <code class="member">DoFHandler::cell_iterator</code> as
+ Changed: The <code>FiniteElement::fill_fe_*_values</code>
+ now only take a <code>Triangulation::cell_iterator</code>
+ instead of a <code>DoFHandler::cell_iterator</code> as
previously. Likewise for <code
class="member">FiniteElementBase::compute_2nd</code> and <code
class="member">FESystem::compute_fill</code>, and the
- <code class="member">Mapping::fill_fe_*_values</code> functions.
+ <code>Mapping::fill_fe_*_values</code> functions.
<br>
(WB 2003/01/20)
</p>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
-<body>
+/**
+ * @page changes_between_3_0_0_and_3_0_1 Changes between Version 3.0.0 and 3.0.1
-
-<h2>Changes between versions 3.0 and 3.0.1</h2>
+<p>
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
+</p>
<ol>
<li> <p>
<li> <p>
Fix: getting the support points from system finite elements
- (class <code class="class">FESystem</code>) resulted in an
+ (class <code>FESystem</code>) resulted in an
exception.
<br>
(WB 2000/05/10)
</p>
<li> <p>
- Fix: <code class="member">FullMatrix::Tmmult</code> and
- <code class="member">FullMatrix::Tvmult</code> were broken.
+ Fix: <code>FullMatrix::Tmmult</code> and
+ <code>FullMatrix::Tvmult</code> were broken.
<br>
(WB 2000/05/08 and 2000/05/26)
</p>
<li> <p>
Fix: slight bug in
- <code class="member">DataOut::build_patches</code>
+ <code>DataOut::build_patches</code>
in multithreaded mode fixed.
<br>
(Ralf Hartmann, 2000/05/29)
<li> <p>
Fix:
- <code class="member">SparsityPattern::print_gnuplot</code>
+ <code>SparsityPattern::print_gnuplot</code>
wrote rows and columns exchanged. Since most matrices have
symmetric sparsity patterns, this has gone unnoticed by now.
<br>
</p>
</ol>
-
-<hr>
-Last update $Date$
-
-</body>
-</html>
-
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
-
-<body>
-
-
-<h2>Changes between Versions 3.0 and 3.1</h2>
-
-This is a quite extensive list of changes made after the release of
-<acronym>deal.II</acronym> version 3.0. It is subdivided into changes
-made to the three sub-libraries <a href="#base">base</a>,
-<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
-changes to the <a href="#general">general infrastructure,
-documentation, etc</a>.
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_3_0_0_and_3_1_0 Changes between Version 3.0.0 and 3.1.0
+
+<p>
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
+</p>
<li> <p>
New: Major and minor version numbers of the
- <acronym>deal.II</acronym> library are now passed to the
+ deal.II library are now passed to the
compiler as preprocessor variables
<code class="program">DEAL_2_MAJOR</code> and
<code class="program">DEAL_2_MINOR</code>. Their present values
<li> <p>
New: the <code class="program">step-9</code> example program is
now ready, showing several advanced programming techniques in
- <acronym>deal.II</acronym>.
+ deal.II.
<br>
(WB 2000/07/18)
</p>
<li> <p>
- Changed: <acronym>deal.II</acronym> now uses the
+ Changed: deal.II now uses the
<code class="program">kdoc2</code> program to generate the API
documentation. This makes up for much nices documentation and
also works better than the previous <code class="program">kdoc1</code>.
A copy of <code class="program">kdoc2</code> is provided within
- the <acronym>deal.II</acronym> source tree.
+ the deal.II source tree.
<br>
(WB 2000/06/28)
</p>
</p>
<li> <p>
- Changed: License is now <acronym>deal.II</acronym> Public
+ Changed: License is now deal.II Public
License, restricting commercial use more explicitely.
<br>
(WB/RH/GK)
<ol>
<li> <p>
- Improved: exceptions <code class="class">ExcIO</code> and <code
+ Improved: exceptions <code>ExcIO</code> and <code
class="class">ExcOutOfMemory</code> are defined globally now.
<br>
(GK 2000/12/07)
</p>
<li> <p>
- Improved: <code class="class">ParameterHandler</code> now has a
- function <code class="member">log_parameters</code> which
+ Improved: <code>ParameterHandler</code> now has a
+ function <code>log_parameters</code> which
allows output of all parameters to a log file.
<br>
(GK 2000/12/07)
<li> <p>
New: almost all classes that store data now have a function
- <code class="member">memory_consumption</code> that returns an
+ <code>memory_consumption</code> that returns an
estimate of the amount of memory (in bytes) used up by this
class. Supporting functions to compute the size of STL vectors
and other objects can be found the
- <code class="class">MemoryConsumption</code> namespace.
+ <code>MemoryConsumption</code> namespace.
<br>
(WB 2000/11/27)
</p>
<li> <p>
- New: Class <code class="class">FunctionDerivative</code>
+ New: Class <code>FunctionDerivative</code>
computes finite difference approximations of a directional
- derivative of a <code class="class">Function</code>.
+ derivative of a <code>Function</code>.
<br>
(GK 2000/11/13)
</p>
<li> <p>
- New: The <code class="class">DataOutBase</code> and
- <code class="class">DataOutBase::Patch</code> classes have been
+ New: The <code>DataOutBase</code> and
+ <code>DataOutBase::Patch</code> classes have been
changed so as to allow output of objects that have an other
dimension than the surrounding space, for example writing faces
instead of cells (this might be useful to write only external
</p>
<li> <p>
- New: There is a new <code class="member">distance</code> function
- in the <code class="class">Point</code> class that calculates the
+ New: There is a new <code>distance</code> function
+ in the <code>Point</code> class that calculates the
distance between two points.
<br>
(Ralf Hartmann 2000/09/06)
</p>
<li> <p>
- New: <code class="class">Timer</code> now uses the system
- function <code class="member">getrusage (RUSAGE_CHILDREN,
+ New: <code>Timer</code> now uses the system
+ function <code>getrusage (RUSAGE_CHILDREN,
.)</code> that is need in multithreading. But still the <code
class="class">Timer</code> class does not yet work in
multithreading, as getrusage with flag RUSAGE_CHILDREN gives always
<li> <p>
New: There are now a set of functions
- <code class="member">outer_product</code> that for the outer
+ <code>outer_product</code> that for the outer
product of tensors.
<br>
(WB 2000/07/23)
<li> <p>
New: The classes
- <code class="class">Patterns::Integer</code>
- and <code class="class">Patterns::Double</code> now allow that
+ <code>Patterns::Integer</code>
+ and <code>Patterns::Double</code> now allow that
a range may be specified in which the parameter shall
be. Furthermore, instead of a class,
- <code class="class">Patterns</code> is now a namespace, so it
+ <code>Patterns</code> is now a namespace, so it
can be reopened in case you want to write another pattern class
and want to put it into the same namespace.
<br>
</p>
<li> <p>
- New: classes <code class="class">QMilne</code> and <code
+ New: classes <code>QMilne</code> and <code
class="class">QWeddle</code> for closed Newton-Cotes-formulæ of
orders 7 and 9, respectively.
<br>
</p>
<li> <p>
- New: There is now a function <code class="member">invert
+ New: There is now a function <code>invert
(Tensor<2,dim>)</code> that returns the inverse of a tensor of
rank 2.
<br>
</p>
<li> <p>
- Improved: <code class="class">Subscriptor</code> prints the
+ Improved: <code>Subscriptor</code> prints the
real class name if a subscribed object is deleted.
<br>
(GK 2000/04/12)
<ol>
<li> <p>
- Fixed: <code class="class">SparseILU</code> had two bugs which
+ Fixed: <code>SparseILU</code> had two bugs which
are now fixed.
<br>
(<a href="mailto:or@winfos.com">Oliver Rheinbach</a>, 2001/02/02)
</p>
<li> <p>
- New: <code class="class">BlockDiagonalMatrix</code> is a
+ New: <code>BlockDiagonalMatrix</code> is a
template that generates a matrix with multiple copies of the
same block on the diagonal.
<br>
Improved: Krylov-space solvers do not use the function residual
anymore. This allows easier implementation of new matrix
- classes. <code class="class">SolverGMRES</code> now also counts
+ classes. <code>SolverGMRES</code> now also counts
the first iteration step. Finally, all solvers inherit a <code
class="class">Subscriptor</code>.
<br>
<li> <p>
New: There are now functions
- <code class="member">SparsityPattern::symmetrize</code> and
- <code class="member">SparseMatrix::symmetrize</code> that
+ <code>SparsityPattern::symmetrize</code> and
+ <code>SparseMatrix::symmetrize</code> that
generate a symmetric matrix from a non-symmetric one.
<br>
(WB 2000/12/02)
<li> <p>
New: almost all classes that store data now have a function
- <code class="member">memory_consumption</code> that returns an
+ <code>memory_consumption</code> that returns an
estimate of the amount of memory (in bytes) used up by this
class.
<br>
</p>
<li> <p>
- New: <code class="member">
+ New: <code>
SparseMatrix<number>::n_actually_nonzero_elements</code>
returns the number of entries that are actually nonzero.
<br>
<li> <p>
Fixed: unlike announced in the docs, the
- <code class="member">FullMatrix::norm2</code> function did not
+ <code>FullMatrix::norm2</code> function did not
return the Frobenius norm of a matrix, but its square. This is
fixed now.
<br>
</p>
<li> <p>
- Improved: <code class="class">PreconditionBlockSOR</code><code
+ Improved: <code>PreconditionBlockSOR</code><code
class="member">::Tvmult(...)</code> is implemented.
<br>
(GK 2000/07/07)
<li> <p>
Improved: The breakdown criterion of <code
class="class">SolverBicgstab</code> can be changed by the use
- of <code class="class">SolverBicgstab::AdditionalData</code>.
+ of <code>SolverBicgstab::AdditionalData</code>.
<br>
(GK 2000/07/07)
</p>
<li> <p>
- New: <code class="class">SolverRichardson</code> has a
- transposed solver <code class="member">Tsolve(...)</code>. It
- uses the functions <code class="member">Tvmult(...)</code> of
+ New: <code>SolverRichardson</code> has a
+ transposed solver <code>Tsolve(...)</code>. It
+ uses the functions <code>Tvmult(...)</code> of
the provided matrix and preconditioner.
<br>
(GK 2000/07/07)
</p>
<li> <p>
- Improved: <code class="class">FullMatrix</code><code
+ Improved: <code>FullMatrix</code><code
class="member">::invert(...)</code> now inverts matrices of all
sizes. If there is no hardcoded inversion, <code
class="member">gauss_jordan()</code> is used implicitly.
<li> <p>
New: For recognizing a diverging solver before the maximum
number of steps is reached,
- <code class="class">SolverControl</code> returns
- <code class="member">failure</code> also if the residual
+ <code>SolverControl</code> returns
+ <code>failure</code> also if the residual
increases over the start residual by a specific factor. This
- factor is given to the <code class="class">SolverControl</code>
- object by the <code class="member">set_failure_criterion</code>
+ factor is given to the <code>SolverControl</code>
+ object by the <code>set_failure_criterion</code>
function. After calling the latter function, checking of this
additional failure criterion may again be disabled by calling
- <code class="member">clear_failure_criterion</code>.
+ <code>clear_failure_criterion</code>.
<br>
(Ralf Hartmann 2000/06/26)
</p>
<li> <p>
Improved: The interface of preconditioner classes has changed.
Preconditioners are now considered linear operators like
- matrices: they have members <code class="member">vmult</code>
- and <code class="member">Tvmult</code> instead of the old <code
+ matrices: they have members <code>vmult</code>
+ and <code>Tvmult</code> instead of the old <code
class="member">operator()</code>. This will allow the
implementation of further non-symmetric solvers.
<br>
<li> <p>
New: there is now a function
- <code class="member">SparseMatrix::el</code> that does mostly
- the same as <code class="member">SparseMatrix::operator()</code>,
+ <code>SparseMatrix::el</code> that does mostly
+ the same as <code>SparseMatrix::operator()</code>,
but returns a zero if elements of the matrix are accessed that
are not in the sparsity pattern. Thus, the new function allows
to actually traverse rows or columns of the matrix without
taking care of the sparsity pattern, while
- <code class="member">SparseMatrix::operator()</code> should be
+ <code>SparseMatrix::operator()</code> should be
used to write algorithms more efficiently.
<br>
(WB 2000/06/02)
<li> <p>
Fix:
- <code class="member">SparsityPattern::print_gnuplot</code>
+ <code>SparsityPattern::print_gnuplot</code>
wrote rows and columns exchanged. Since most matrices have
symmetric sparsity patterns, this has gone unnoticed by now.
<br>
<li> <p>
Fix: the
- <code class="member">FullMatrix::Tvmult</code> function
+ <code>FullMatrix::Tvmult</code> function
suffered from the same problems as the
- <code class="member">FullMatrix::Tmmult</code> function. This
+ <code>FullMatrix::Tmmult</code> function. This
is now fixed as well.
<br>
(WB 2000/05/26)
</p>
<li> <p>
- New: Class <code class="class">PreconditionBlockJacobi</code>.
+ New: Class <code>PreconditionBlockJacobi</code>.
<br>
(GK 2000/05/24)
</p>
<li> <p>
- New: <code class="class">SolverControl</code> has an interface
- to <code class="class">ParameterHandler</code>, defining and
+ New: <code>SolverControl</code> has an interface
+ to <code>ParameterHandler</code>, defining and
reading parameters from a file automatically.
<br>
(GK 2000/05/24)
</p>
<li> <p>
- New: <code class="class">BlockIndices</code>: Class that
+ New: <code>BlockIndices</code>: Class that
manages the conversion of global indices into a block
vector/matrix/... to the indices local to each of the blocks.
<br>
</p>
<li> <p>
- New: <code class="class">BlockSparsityPattern</code> and
- <code class="class">BlockSparseMatrix</code>: Classes that
+ New: <code>BlockSparsityPattern</code> and
+ <code>BlockSparseMatrix</code>: Classes that
represent matrices that are composed of sparse matrices.
<br>
(WB 2000/05/08)
<li> <p>
Fix: the
- <code class="member">FullMatrix::mmult</code> and
- <code class="member">FullMatrix::Tmmult</code> code don't
+ <code>FullMatrix::mmult</code> and
+ <code>FullMatrix::Tmmult</code> code don't
resize their output argument any more, as this is not common
style in the library. Furthermore,
- <code class="member">FullMatrix::Tmmult</code> was utterly
+ <code>FullMatrix::Tmmult</code> was utterly
broken.
<br>
(WB 2000/05/08)
</p>
<li> <p>
- Change: the <code class="member">matrix_norm</code> functions
+ Change: the <code>matrix_norm</code> functions
of sparse and full matrices are renamed to
- <code class="member">matrix_norm_square</code>, since they in
+ <code>matrix_norm_square</code>, since they in
fact return the square of the norm. This should avoid confusion
in some cases.
<br>
<li> <p>
Fix: the ``copy-like'' constructor of
- <code class="class">SparsityPattern</code> that copies another
+ <code>SparsityPattern</code> that copies another
object and adds some off-diagonals had a bug that caused an
exception in some cases. This is now fixed.
<br>
</p>
<li> <p>
- New: <code class="class">SwappableVector</code>: Class that
+ New: <code>SwappableVector</code>: Class that
allows to swap out the data of a vector to disk and reload it
later on. It also has a function to preload the data before its
use in a separate thread if the library is configured for
</p>
<li> <p>
- New: there are now functions <code class="member">Vector::swap</code>
- and <code class="member">BlockVector::swap</code>, as well as
- global functions <code class="member">swap(u,v)</code> that
+ New: there are now functions <code>Vector::swap</code>
+ and <code>BlockVector::swap</code>, as well as
+ global functions <code>swap(u,v)</code> that
exchange the data of two vectors without needing a temporary
vector and without copying around data. Their run-time is
therefore independent of the length of the vectors.
</p>
<li> <p>
- Fix: <code class="class">SolverCG</code> counts steps properly.
+ Fix: <code>SolverCG</code> counts steps properly.
<br>
(GK 2000/04/25)
</p>
<li> <p>
Change: the solver classes in LAC lost their first template
argument. Their names are now
- <code class="class">SolverXX<VECTOR></code>, where
- <code class="class">XX</code> denotes the name of the solver
+ <code>SolverXX<VECTOR></code>, where
+ <code>XX</code> denotes the name of the solver
(e.g. CG, GMRES, etc). Furthermore, the
- inheritance from <code class="class">Solver</code> was made private
+ inheritance from <code>Solver</code> was made private
to reflect the logical structure.
<br>
(GK 2000/04/25)
</p>
<li> <p>
- New: <code class="class">EigenInverse</code> implements inverse
+ New: <code>EigenInverse</code> implements inverse
iteration by Wieland.
<br>
(GK 2000/04/20)
</p>
<li> <p>
- New: <code class="class">EigenPower</code> implements power
+ New: <code>EigenPower</code> implements power
method by von Mises
<br>
(GK 2000/04/19)
</p>
<li> <p>
- New: <code class="member">PreconditionBlockSOR::set_omega</code>
+ New: <code>PreconditionBlockSOR::set_omega</code>
allows to change the relaxation parameter.
<br>
(GK 2000/04/12)
</p>
<li> <p>
- New: <code class="class">SolverXX</code>: There is a virtual function
+ New: <code>SolverXX</code>: There is a virtual function
<code>print_vectors</code> called in every step. It is void in the
solver itself but can be used to print intermediate iteration
vectors.
<ol>
<li> <p>
- Extend: <code class="member">DoFTools::extract_boundary_dofs</code>
+ Extend: <code>DoFTools::extract_boundary_dofs</code>
now allows to also specify which boundary conditions shall be
considered.
<br>
<li> <p>
New: some arguments of the functions
- <code class="member">DoFHandler::n_boundary_dofs</code>,
- <code class="member">DoFTools::extract_boundary_dofs</code>,
+ <code>DoFHandler::n_boundary_dofs</code>,
+ <code>DoFTools::extract_boundary_dofs</code>,
and
- <code class="member">DoFTools::map_dof_to_boundary_indices</code>
- are changed from <code class="class">list</code> to
- <code class="class">set</code>, since that resembles more
+ <code>DoFTools::map_dof_to_boundary_indices</code>
+ are changed from <code>list</code> to
+ <code>set</code>, since that resembles more
closely the purpose of the parameter, and makes computations
slightly faster.
<br>
<li> <p>
New: almost all classes that store data now have a function
- <code class="member">memory_consumption</code> that returns an
+ <code>memory_consumption</code> that returns an
estimate of the amount of memory (in bytes) used up by this
class.
<br>
</p>
<li> <p>
- New: The <code class="member">ConstraintMatrix::add_entries</code>
+ New: The <code>ConstraintMatrix::add_entries</code>
function add several constraints at once.
<br>
(WB 2000/10/26)
</p>
<li> <p>
- New: The <code class="member">DoFRenumbering::random</code>
+ New: The <code>DoFRenumbering::random</code>
function renumbers degrees of freedom in a random way.
<br>
(WB 2000/10/22)
</p>
<li> <p>
- New: The <code class="class">TriaAccessor</code> now has a
- function <code class="member">point_inside</code> that checks
+ New: The <code>TriaAccessor</code> now has a
+ function <code>point_inside</code> that checks
whether a certain point is inside a given cell.
<br>
(Thomas Richter 2000/10/12)
</p>
<li> <p>
- New: The <code class="class">FiniteElement</code> has got two
- new functions <code class="member">transform_unit_to_real_cell
- </code> and <code class="member">transform_real_to_unit_cell
+ New: The <code>FiniteElement</code> has got two
+ new functions <code>transform_unit_to_real_cell
+ </code> and <code>transform_real_to_unit_cell
</code>. They allow to transform points from reference (unit)
cell to real cell and visa versa. <code
class="member">transform_real_to_unit_cell</code> involves a
</p>
<li> <p>
- Extended: The <code class="class">Triangulation</code>
+ Extended: The <code>Triangulation</code>
class can handle boundary information in 3d as well
(i.e. lines and quads in 3d with special material IDs).
<br>
</p>
<li> <p>
- Extended: The <code class="class">GridIn</code>
+ Extended: The <code>GridIn</code>
class can now read 3D UCD data, including boundary information
(i.e. lines and quads in 3d with special material IDs).
<br>
</p>
<li> <p>
- New: The <code class="member">GridRefinement::refine_and_coarsen_optimize</code>
+ New: The <code>GridRefinement::refine_and_coarsen_optimize</code>
function implements an alternative way to flag cells for
refinement and coarsening.
<br>
</p>
<li> <p>
- Extended: The <code class="member">GridIn::delete_unused_vertices</code>
+ Extended: The <code>GridIn::delete_unused_vertices</code>
function now eliminates vertices from the input that are not
referenced by any of the cells in the input file. This makes is
simpler to delete some cells from the input file by hand,
without the need to update the vertex lists, which can be
tiring as several cells usually use each vertex. All functions
- in the <code class="class">GridIn</code> reading grids in
+ in the <code>GridIn</code> reading grids in
several input files call this function before passing the data
to the triangulation object.
<br>
</p>
<li> <p>
- New: The <code class="class">GridIn</code>
+ New: The <code>GridIn</code>
class can now read the basics of grids in DB Mesh format.
<br>
(WB 2000/09/26)
</p>
<li> <p>
- Extended: The <code class="class">KellyErrorEstimator</code>
+ Extended: The <code>KellyErrorEstimator</code>
class is now able to estimate errors for several solution
vectors at the same time, provided they live on the same
- <code class="class">DoFHandler</code> object.
+ <code>DoFHandler</code> object.
<br>
(WB 2000/09/11)
</p>
<li> <p>
- New: The <code class="class">DataOut_Faces</code> class allows to
+ New: The <code>DataOut_Faces</code> class allows to
output faces instead of cells. This might be handy for 3d
computations if one is only interested in surface plots, or
cuts through the domain.
<li> <p>
Removed: The
- <code class="class">DataOut_Old</code> class has finally gone for
+ <code>DataOut_Old</code> class has finally gone for
good. It was already deprecated in version 3.0, and has been
superceded for a long time by the framwork of classes around
- <code class="class">DataOutBase</code> and
- <code class="class">DataOut</code>.
+ <code>DataOutBase</code> and
+ <code>DataOut</code>.
<br>
(WB 2000/09/07)
</p>
<li> <p>
New: There is now a function
- <code class="member">DoFHandler::n_boundary_dofs</code>
+ <code>DoFHandler::n_boundary_dofs</code>
that takes the list of selected boundary indicators as a
- <code class="class">list</code> of values, rather than the
- usual <code class="class">map</code> of pairs of boundary
+ <code>list</code> of values, rather than the
+ usual <code>map</code> of pairs of boundary
indicators and function object pointers.
<br>
(WB 2000/08/25)
<li> <p>
Changed: The
- <code class="member">map_dof_to_boundary_index</code>
- functions have been moved from the <code class="class">DoFHandler</code>
- to the <code class="class">DoFTools</code> class, in order to
+ <code>map_dof_to_boundary_index</code>
+ functions have been moved from the <code>DoFHandler</code>
+ to the <code>DoFTools</code> class, in order to
further remove code from the big classes which is necessarily
needed there.
<br>
</p>
<li> <p>
- New: there is now a class <code class="class">DataOutRotation</code>
+ New: there is now a class <code>DataOutRotation</code>
that can be used to output data which has been computed
exploiting rotational symmetry, on the original domain. Thus,
the output is of one dimension higher than the computation was,
</p>
<li> <p>
- New: class <code class="class">HalfHyperShellBoundary</code>
- and <code class="member">GridGenerator::half_hyper_shell</code>
+ New: class <code>HalfHyperShellBoundary</code>
+ and <code>GridGenerator::half_hyper_shell</code>
generate a half shell, useful for computations with a shell
domain and rotational symmetry.
<br>
<li> <p>
Changed: The functions
- <code class="member">Triangulation::refine</code>,
- <code class="member">Triangulation::coarsen</code>,
+ <code>Triangulation::refine</code>,
+ <code>Triangulation::coarsen</code>,
<code
class="member">Triangulation::refine_and_coarsen_fixed_fraction</code>,
and
<code
class="member">Triangulation::refine_and_coarsen_fixed_number</code>
have been moved from the triangulation class to a separate
- class <code class="class">GridRefinement</code> as they are not
+ class <code>GridRefinement</code> as they are not
intricately bound to the triangulation but rather form a
distinct class of functions that flag cells for refinement or
coarsening based on error indicators.
</p>
<li> <p>
- New: <code class="member">DataOut::clear_input_data_references</code>
+ New: <code>DataOut::clear_input_data_references</code>
clears all reference to input data vectors and to the <code
class="class">DoFHandler</code>. This function may be useful
after the patches have been built, to release memory as early
</p>
<li> <p>
- New: <code class="class">class DerivativeApproximation</code>
+ New: <code>class DerivativeApproximation</code>
approximates the norm of the gradient or second derivative of a
finite element field on each cell from finite difference
approximations.
Fix: Add a missing assertions in <code
class="member">FEValuesBase::get_function_*</code>. If an <code
class="class">ExcAccessToUninitializedField</code> is now thrown
- then probably an <code class="member">update_values</code> or
- <code class="member">update_gradients</code> is missing in the
- <code class="class">UpdateFlags</code> of a used <code
+ then probably an <code>update_values</code> or
+ <code>update_gradients</code> is missing in the
+ <code>UpdateFlags</code> of a used <code
class="class">FEValues</code>. Adding this assertion uncovered
several other errors which are now also fixed; these errors
were dormant, since the values of finite elements are always
</p>
<li> <p>
- New: Class <code class="class">DoFRenumbering</code> now has
+ New: Class <code>DoFRenumbering</code> now has
functions for cell-wise downstream renumbering for
discontinuous elements. The parameters of the function <code
class="member">sort_selected_dofs_back</code> have been
</p>
<li> <p>
- New: Function <code class="class">VectorTools</code><code
+ New: Function <code>VectorTools</code><code
class="member">::compute_mean_value</code> integrates the mean
value of one component of a finite element function.
<br>
</p>
<li> <p>
- New: The new function <code class="member">get_face</code>
- of <code class="class">FEFaceValues</code> and <code
+ New: The new function <code>get_face</code>
+ of <code>FEFaceValues</code> and <code
class="class">FESubfaceValues</code> returns an iterator of the
present face. This is the face, for that the <code
class="class">FE(Sub)FaceValues</code> object was reinited
</p>
<li> <p>
- New: classes <code class="class">FEDG_Px</code> implement
+ New: classes <code>FEDG_Px</code> implement
complete polynomial spaces of degree <em>x</em> on
quadrilaterals. Since they have less degrees of freedom than
- <code class="class">FEDG_Qx</code>, there is no continuous
+ <code>FEDG_Qx</code>, there is no continuous
version for these elements. Implementation for P4 and 3D is
still incomplete.
<br>
<li> <p>
Fix: slight bug in
- <code class="member">DataOut::build_patches</code>
+ <code>DataOut::build_patches</code>
in multithreaded mode fixed.
<br>
(Ralf Hartmann, 2000/05/29)
</p>
<li> <p>
- New: class <code class="class">FETools</code> performs
+ New: class <code>FETools</code> performs
interpolations and extrapolations of discrete functions from one
- <code class="class">FiniteElement</code> to another <code
+ <code>FiniteElement</code> to another <code
class="class">FiniteElement</code>. It also provides the local
interpolation matrices that interpolate on each
cell. Furthermore it provides the interpolation difference
<p>
Removed: The obsolete
- <code class="member">MatrixCreator::create_interpolation_matrix</code>
+ <code>MatrixCreator::create_interpolation_matrix</code>
function is now removed.
</p>
</p>
<li> <p>
- New: <code class="member">DoFTools::make_flux_sparsity_pattern</code>
+ New: <code>DoFTools::make_flux_sparsity_pattern</code>
can be optimized by providing two coefficient matrices.
<br>
(GK 2000/05/25)
</p>
<li> <p>
- Improved: <code class="member">VectorTools::integrate_difference</code>
+ Improved: <code>VectorTools::integrate_difference</code>
allows for vector-valued weight functions. L<sup>1</sup> and
L<sup>infinity</sup> norms are calculated correctly.
<br>
</p>
<li> <p>
- Changed: <code class="member">FE_DGx::restriction</code> is
+ Changed: <code>FE_DGx::restriction</code> is
not an interpolation any more but a local projection which is
more reasonable for DG elements.
<br>
<li> <p>
Changed: enum
- <code class="class">MeshSmoothing</code> is moved into the
- <code class="class">Triangulation</code> class.
+ <code>MeshSmoothing</code> is moved into the
+ <code>Triangulation</code> class.
<br>
(Ralf Hartmann 2000/05/18)
</p>
<li> <p>
- New: <code class="member">Triangulation<dim>::patch_level_1</code>
+ New: <code>Triangulation<dim>::patch_level_1</code>
is a new mesh smoothing. A mesh of patch level 1 consists of
patches, i.e. they consists of cells that are all refined at
least once.
<p>
Changed: As follows from the existence of this new smoothing,
- <code class="member">maximum_smoothing</code> will include this
+ <code>maximum_smoothing</code> will include this
smoothing.
</p>
<li> <p>
Changed: the
- <code class="member">MatrixTools::apply_boundary_values</code>
+ <code>MatrixTools::apply_boundary_values</code>
now uses a much faster algorithm when working on matrices with
symmetric sparsity patterns. On the other hand, it does no more
eliminate whole rows when a matrix has a non-symmetric sparsity
<li> <p>
New: many functions are now templatized on the data type of the
vector they take or return. They thus now support
- <code class="class">Vector<float></code>, but also
- <code class="class">BlockVector<...></code>. An
+ <code>Vector<float></code>, but also
+ <code>BlockVector<...></code>. An
incomplete and growing list of functions that were treated in
this way is:
<ul>
<li>
- <code class="member">DoFAccessor::get_dof_values</code>,
+ <code>DoFAccessor::get_dof_values</code>,
<li>
- <code class="member">DoFAccessor::set_dof_values</code>,
+ <code>DoFAccessor::set_dof_values</code>,
<li>
- <code class="member">DoFAccessor::get_interpolated_dof_values</code>,
+ <code>DoFAccessor::get_interpolated_dof_values</code>,
<li>
- <code class="member">DoFAccessor::set_dof_values_by_interpolation</code>,
+ <code>DoFAccessor::set_dof_values_by_interpolation</code>,
<li>
- <code class="member">FEValues::get_function_values</code>,
+ <code>FEValues::get_function_values</code>,
<li>
- <code class="member">FEValues::get_function_grads</code>,
+ <code>FEValues::get_function_grads</code>,
<li>
- <code class="member">FEValues::get_function_2nd_derivatives</code>,
+ <code>FEValues::get_function_2nd_derivatives</code>,
<li>
- <code class="member">MatrixTools::apply_boundary_values</code>,
+ <code>MatrixTools::apply_boundary_values</code>,
<li>
- Several functions in <code class="class">ConstraintMatrix</code>.
+ Several functions in <code>ConstraintMatrix</code>.
</ul>
<br>
(WB 2000/05/16 and later)
<li> <p>
Changed: The computation of the Jacobian matrices in the
- <code class="class">FEValues</code> class is now done more
+ <code>FEValues</code> class is now done more
efficiently. The speedup is in the range of a factor of 40 for
3D.
<br>
</p>
<li> <p>
- Change: <code class="member">DoFTools::make_hanging_node_constraints ()</code>
+ Change: <code>DoFTools::make_hanging_node_constraints ()</code>
does not use the user flags any more, and can thus run in
parallel more than once.
<br>
</p>
<li> <p>
- Extended: <code class="member">DoFTools::make_sparsity_pattern ()</code>
+ Extended: <code>DoFTools::make_sparsity_pattern ()</code>
now accepts a template parameter as sparsity pattern. This
allows to use this function for the usual
- <code class="class">SparsityPattern</code>, or for
- <code class="class">BlockSparsityPattern</code> arguments.
+ <code>SparsityPattern</code>, or for
+ <code>BlockSparsityPattern</code> arguments.
<br>
(WB 2000/05/15)
</p>
<li> <p>
- New: <code class="member">DoFTools::extract_hanging_node_dofs ()</code>
+ New: <code>DoFTools::extract_hanging_node_dofs ()</code>
identifies nodes that will be constrained by hanging node constraints.
<br>
(WB 2000/05/12)
</p>
<li> <p>
- New: <code class="member">DoFRenumbering::sort_selected_dofs_back ()</code>
+ New: <code>DoFRenumbering::sort_selected_dofs_back ()</code>
sorts selected degrees of freedom to the end of the index
range.
<br>
<li> <p>
Change: the return value of
- <code class="member">DoFHandler::max_couplings_between_dofs ()</code>
- is bounded by <code class="member">DoFHandler::n_dofs()</code>.
+ <code>DoFHandler::max_couplings_between_dofs ()</code>
+ is bounded by <code>DoFHandler::n_dofs()</code>.
<br>
(Ralf Hartmann 2000/05/11)
</p>
<li> <p>
- New: <code class="member">FEValuesBase::get_cell ()</code>
+ New: <code>FEValuesBase::get_cell ()</code>
returns present cell.
<br>
(Ralf Hartmann 2000/05/11)
</p>
<li> <p>
- Fix: <code class="member">FESystem::reinit()</code> generated
- an exception if <code class="member">update_support_points</code>
+ Fix: <code>FESystem::reinit()</code> generated
+ an exception if <code>update_support_points</code>
was set.
<br>
(WB 2000/05/10)
</p>
<li> <p>
- New: <code class="member">IntergridMap::get_{source,destination}_grid</code>
+ New: <code>IntergridMap::get_{source,destination}_grid</code>
functions return the grids for which the map was created.
<br>
(WB 2000/04/19)
</p>
<li> <p>
- New: <code class="member">DoFTools::extract_boundary_dofs</code>
+ New: <code>DoFTools::extract_boundary_dofs</code>
finds all degrees of freedom which are at the boundary and belong to
specified components.
<br>
</p>
<li> <p>
- New: <code class="member">DoFTools::compute_intergrid_constraints</code>
+ New: <code>DoFTools::compute_intergrid_constraints</code>
allows to use different discretization grids for different
variables.
<br>
</p>
<li> <p>
- New: <code class="member">DataOut::clear_data_vectors</code>
+ New: <code>DataOut::clear_data_vectors</code>
allows to re-use an object without deleting the <code
class="class">DoFHandler</code>.
<br>
</p>
<li> <p>
- New: <code class="class">class DoFPrintSolverStep</code> prints
+ New: <code>class DoFPrintSolverStep</code> prints
intermediate vectors of a solver as finite element functions using
- <code class="class">DataOut</code>.
+ <code>DataOut</code>.
<br>
(GK 2000/04/05)
</p>
</ol>
-<hr>
-Last update $Date$
-
-</body>
-</html>
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
-
-<body>
-
-
-<h2>Changes between versions 3.1 and 3.1.1</h2>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_3_1_0_and_3_1_1 Changes between Version 3.1.0 and 3.1.1
+
+<p>
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
+</p>
<ol>
<li> <p>
class="class">GridOut</code>::<code
class="member">write_ucd_faces</code> function are now also
1-based. This, to be consistent with the vertex numbers given
- by the <code class="class">GridOut</code>::<code
+ by the <code>GridOut</code>::<code
class="member">write_ucd</code> function.
<br>
(RH 2001/04/20)
<li> <p>
Fixed: When using Neuman boundary functions in the
- <code class="class">KellyErrorEstimator</code> class, it was
+ <code>KellyErrorEstimator</code> class, it was
assumed that the function object had <code
class="member">Function::vector_value</code> overloaded, even
in the scalar case. We now use <code
New/Fixed: Now there exists a new <code
class="class">Triangulation</code>::<code
class="member">ExcMultiplySetLineInfoOfLine</code> exception,
- that is thrown if the <code class="class">SubCellData</code>
+ that is thrown if the <code>SubCellData</code>
that is given to <code
class="class">Triangulation</code>::<code
class="member">create_triangulation</code>, multiply includes
the line info of a specific line. Before the fix the wrong
- <code class="member">ExcInteriorLineCantBeBoundary</code>
+ <code>ExcInteriorLineCantBeBoundary</code>
exception was thrown.
<br>
(RH 2001/04/03)
</p>
<li> <p>
- New: The class <code class="class">GridReordering::Cell</code> has
+ New: The class <code>GridReordering::Cell</code> has
now a copy constructor to work around a bug in a gcc3.0
snapshot.
<br>
</ol>
-<hr>
-Last update $Date$
-
-</body>
-</html>
-
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
-
-<body>
-
-
-<h2>Changes between versions 3.1.0 and 3.2.0</h2>
-
-
-This is a quite extensive list of changes made between versions 3.1.0
-and 3.2.0 of <acronym>deal.II</acronym>. It is subdivided into changes
-made to the three sub-libraries <a href="#base">base</a>, <a
-href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
-changes to the <a href="#general">general infrastructure,
-documentation, etc</a>.
-
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_3_1_0_and_3_2_0 Changes between Version 3.1.0 and 3.2.0
+
+<p>
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
+</p>
<a name="general"></a>
<li> <p>
Improved: libraries are now all in a subdirectory lib in the
- <acronym>deal.II</acronym> home directory. It is now easy to
+ deal.II home directory. It is now easy to
make this directory a link to put the libraries on a faster
disk.
<br>
</p>
<li> <a name="new_fe_mapping_design"></a>
- <i> New Design of <code class="class">FiniteElements</code>
- and <code class="class">Mappings</code></i>
+ <i> New Design of <code>FiniteElements</code>
+ and <code>Mappings</code></i>
<p>
New: The finite element
<p>
The new implementation uses a totally new structure of
- communication between <code class="class">FEValues</code>, the
- <code class="class">FiniteElements</code> and the <code
+ communication between <code>FEValues</code>, the
+ <code>FiniteElements</code> and the <code
class="class">Mappings</code>. Despite of this, the new
structure will almost not be 'visible' to the user of
- <acronym>deal.II</acronym> as we tried to retain the interface
+ deal.II as we tried to retain the interface
to the user (mainly that of <code
class="class">FEValues</code>) as far as possible.
</p>
<p>
Together with this new design comes a reduction of 25000(!)
- lines of <acronym>deal.II</acronym> code. This elimination
+ lines of deal.II code. This elimination
mainly affected code that previously was machine generated
(e.g. by maple). In view of almost unchanged execution times of
applications, the faster compilation and additional
functionality constitutes a significant improvement of
- <acronym>deal.II</acronym>. Results produced by the new code
+ deal.II. Results produced by the new code
match those of the old design up to machine precision.
<br>
(RH & GK 2001/03/13)
</p>
<li> <p>
- New: Function <code class="member">QProjector::project_to_child</code>
+ New: Function <code>QProjector::project_to_child</code>
generates quadrature formulae which act on the area which a
child would occupy.
<br>
<li> <p>
Changed: The examples classes in the base directory are now
- moved into a namespace <code class="class">Functions</code> of
+ moved into a namespace <code>Functions</code> of
their own. This improves encapsulation, but also keeps the
documentation of these functions together, as they were
previously scrambled all over the screen in the documentation
</p>
<li> <p>
- New: classes <code class="class">FourierSineFunction</code>
- and <code class="class">FourierCosineFunction</code>,
+ New: classes <code>FourierSineFunction</code>
+ and <code>FourierCosineFunction</code>,
resembling one mode of a Fourier decomposition. Classes <code
class="class">FourierSineSum</code> and <code
class="class">FourierCosineSum</code>, resembling sums of such
</p>
<li> <p>
- New: class <code class="class">vector2d</code> was introduced
- in analogy to STL class <code class="class">vector</code>. The
+ New: class <code>vector2d</code> was introduced
+ in analogy to STL class <code>vector</code>. The
bew class provides a two-dimensional array and replaces the use
- of <code class="class">FullMatrix</code> in the base library.
+ of <code>FullMatrix</code> in the base library.
<br>
(GK 2001/05/21)
</p>
<li> <p>
- Improved: <code class="class">JobIdentifier</code>::<code
+ Improved: <code>JobIdentifier</code>::<code
class="member">operator()</code> includes host name if
supported by the operating system
<br>
automatically computes the gradient of a function by employing
numerical difference quotients. This only, if the user function
does not provide the gradient function himself. This class can
- replace the <code class="class">Function</code> class as base
- class for user defined <code class="class">Function</code>
+ replace the <code>Function</code> class as base
+ class for user defined <code>Function</code>
classes.
<br>
This new class can be used if the user only implements the
- <code class="member">value</code> function but wants to call
- also the <code class="member">gradient</code> functions.
+ <code>value</code> function but wants to call
+ also the <code>gradient</code> functions.
<br>
(RH 2001/05/15)
</p>
<li> <p>
- New: The <code class="class">Quadrature</code> class now has a
+ New: The <code>Quadrature</code> class now has a
constructor that only accepts quadrature points and sets the
weights to invalid values.
<br>
</p>
<li> <p>
- New: The function <code class="class">Logstream</code>::<code
+ New: The function <code>Logstream</code>::<code
class="member">get_prefix</code> allows access to the prefix
string used for log-files.
<br>
</p>
<li> <p>
- New: The <code class="class">Threads</code> now has a barrier
+ New: The <code>Threads</code> now has a barrier
class in order to synchronise multiple threads. In
multithreaded mode, this is an alias to the <code
class="class">ACE_Barrier</code> class of the ACE library, if
</p>
<li> <p>
- New: <code class="class">LagrangeEquidistant</code> is a new
- class derived from <code class="class">Polynomial</code>
+ New: <code>LagrangeEquidistant</code> is a new
+ class derived from <code>Polynomial</code>
providing the 1d Lagrange interpolation of degree
<code>n</code> of <code>n+1</code> equidistant support points
in <code>[0,1]</code>. It is implemented up to degree 10.
</p>
<li> <p>
- New: The new <code class="class">Polynomial</code> class can
+ New: The new <code>Polynomial</code> class can
be used as base class for all 1d polynomials. It stores the
coefficients of the polynomial and uses the Horner scheme to
evaluate values and all derivates.
<li> <p>
New: function <code>contract</code> for two arguments of
- <code class="class">Tensor<1,dim></code>
+ <code>Tensor<1,dim></code>
<br>
(GK 2001/03/05)
</p>
- <li> <p> New: <code class="class">Logstream</code>::<code
+ <li> <p> New: <code>Logstream</code>::<code
class="member">log_time_differences (bool)</code> makes <code
class="class">Logstream</code> print the time since the last
log line instead of accumulated time since program start.
(GK 2001/03/05)
</p>
- <li> <p> Fix: <code class="class">Logstream</code>::<code
+ <li> <p> Fix: <code>Logstream</code>::<code
class="member">pop()</code> does not perform anything on empty
stacks.
<br>
<li> <p>
New: function <code>contract</code> for two arguments of
- <code class="class">Tensor<1,dim></code>
+ <code>Tensor<1,dim></code>
<br>
(GK 2001/01/15)
</p>
<ol>
<li> <p>
- New: Function <code class="class">FullMatrix::symmetrize()</code>.
+ New: Function <code>FullMatrix::symmetrize()</code>.
<br>
(WB 2001/09/20)
</p>
</p>
<li> <p>
- New: The <code class="class">FullMatrix</code> class now has a
- function <code class="member">operator*=</code>, which simply
+ New: The <code>FullMatrix</code> class now has a
+ function <code>operator*=</code>, which simply
scales the matrix.
<br>
(WB 2001/09/02)
</p>
<li> <p>
- New: Function <code class="class">BlockSparseMatrix::el()</code>,
- just like <code class="class">SparseMatrix::el()</code>.
+ New: Function <code>BlockSparseMatrix::el()</code>,
+ just like <code>SparseMatrix::el()</code>.
<br>
(WB 2001/08/21)
</p>
<li> <p>
- New: There is now a class <code class="class">MatrixOut</code>
+ New: There is now a class <code>MatrixOut</code>
which can be used to convert a matrix into a graphical output,
for example in order to see visually that a matrix is
diagonally dominant or not.
</p>
<li> <p>
- Changed: Base class <code class="class">Solver</code> and all
- <code class="class">Preconditioner</code> classes are now
- derived from <code class="class">Subscriptor</code>.
- Class <code class="class">PreconditionLACSolver</code> now uses
+ Changed: Base class <code>Solver</code> and all
+ <code>Preconditioner</code> classes are now
+ derived from <code>Subscriptor</code>.
+ Class <code>PreconditionLACSolver</code> now uses
smartpointers to the given solver and preconditioner
objects. You will, therefore, have to derive your own
preconditioners and solvers from <code
class="class">Subscriptor</code> if you want to use it with
- <code class="class">PreconditionLACSolver</code>.
+ <code>PreconditionLACSolver</code>.
<br>
(WB 2001/08/16)
</p>
<li> <p>
- New: Classes <code class="class">Vector</code> and
- <code class="class">BlockVector</code> now have member functions
- <code class="member">operator*=</code> which scale the vectors
+ New: Classes <code>Vector</code> and
+ <code>BlockVector</code> now have member functions
+ <code>operator*=</code> which scale the vectors
by a constant factor. These functions are aliases for the
- <code class="member">scale</code> member functions except that
+ <code>scale</code> member functions except that
they return a reference to themselves.
<br>
(WB 2001/08/14)
<li> <p>
New: There is now a function
- <code class="member">FullMatrix::precondition_Jacobi</code>. The
- <code class="class">PreconditionJacobi</code> class is
+ <code>FullMatrix::precondition_Jacobi</code>. The
+ <code>PreconditionJacobi</code> class is
therefore now also applicable with the full matrix class.
<br>
(WB 2001/08/11)
</p>
<li> <p>
- New: The <code class="class">Vector</code> and
- <code class="class">BlockVector</code> classes can now be
+ New: The <code>Vector</code> and
+ <code>BlockVector</code> classes can now be
initialized using a new constructor that takes two iterators
that denote a range of elements which are to be copied.
<br>
</p>
<li> <p>
- Changed: The <code class="class">SolverCG</code> class now
+ Changed: The <code>SolverCG</code> class now
saves the initial matrix vector product if the initial value of
the solution is vector is zero, as it is common practice to use
this is starting vector.
</p>
<li> <p>
- New: <code class="member">SparsityPattern::reinit</code> no
+ New: <code>SparsityPattern::reinit</code> no
more throws an error if the given maximal row lengths are all
zero.
<br>
</p>
<li> <p>
- New: Class <code class="class">CompressedBlockSparsityPattern</code>
+ New: Class <code>CompressedBlockSparsityPattern</code>
may be used as an intermediate form of the <code
class="class">BlockSparsityPattern</code>.
<br>
</p>
<li> <p>
- New: Class <code class="class">CompressedSparsityPattern</code>
+ New: Class <code>CompressedSparsityPattern</code>
may be used as an intermediate form of the <code
class="class">SparsityPattern</code> class if memory
requirements are tight during construction of the sparsity
<li> <p>
New: There are now functions
- <code class="member">SparsityPattern::copy_from</code> and
- <code class="member">SparseMatrix::copy_from</code>
+ <code>SparsityPattern::copy_from</code> and
+ <code>SparseMatrix::copy_from</code>
that can be used to construct sparsity patterns and matrix at
once, i.e. without setting up a sparsity pattern element by
element, possibly after using a way too large value for the
maximal row length, then calling
- <code class="member">SparsityPattern::compress</code> etc.
+ <code>SparsityPattern::compress</code> etc.
<br>
(WB 2001/05/07)
</p>
<li> <p>
- New: <code class="member">BlockIndices::block_size</code>
+ New: <code>BlockIndices::block_size</code>
returns the size of a specified block.
<br>
(WB 2001/05/07)
</p>
<li> <p>
- New: The <code class="class">FilteredMatrix</code> class is a
+ New: The <code>FilteredMatrix</code> class is a
replacement for the <code
class="class">MatrixTools::apply_boundary_values</code>
function for cases where you would like to solve several times
(WB 2001/04/23)
</p>
- <li> <p> Changed: Solver functions <code class="member">solve</code>
+ <li> <p> Changed: Solver functions <code>solve</code>
return void now. If the solver has not converged within the
maximum number of iterations or encounters a breakdown, it
throws an exception of type <code
</p>
<li> <p>
- New: The functions <code class="class">FullMatrix</code>::<code
+ New: The functions <code>FullMatrix</code>::<code
class="member">mmult</code> and <code
class="member">Tmmult</code> now have an additional
<code>adding</code> argument. If this flag is
</p>
<li> <p>
- New: class <code class="class">SchurMatrix</code> implements
+ New: class <code>SchurMatrix</code> implements
a Schur complement for block matrices. It provides matrix-vector
multiplication suitable for iterative methods as well as pre- and
post-processing of right hand side and slution, respectively.
Removed: The explicite instantiations of <code
class="class">SparseMatrix<long double></code> are
removed as a prerelease of gcc3.0 fails to compile it. A user
- of <code class="class">SparseMatrix<long double></code>
+ of <code>SparseMatrix<long double></code>
needs now to include
<code>lac/include/lac/sparse_matrix.templates.h</code> into his
source file and to use an appropriate compiler, e.g. gcc2.95.2 or
<a href="http://www.cse.clrc.ac.uk/Activity/HSL"
target="_top">Harwell Subroutine Library</a>, and support
classes
- <code class="class">SparseDirectMA27</code> and
- <code class="class">SparseDirectMA47</code>
+ <code>SparseDirectMA27</code> and
+ <code>SparseDirectMA47</code>
for the sparse direct solvers MA27 and MA47.
<br>
(WB 2001/01/30)
<ol>
<li> <p>
- New: Class <code class="class">MappingQ1Eulerian</code>
+ New: Class <code>MappingQ1Eulerian</code>
implementing an Eulerian mapping.
<br>
(<a href="mailto:ms@biomech.tu-graz.ac.at">Michael Stadler</a> 2001/09/24)
</p>
<li> <p>
- New: <code class="member">VectorTools::create_boundary_right_hand_side</code>
+ New: <code>VectorTools::create_boundary_right_hand_side</code>
integrates boundary forces for inhomogeneous Neumann boundary values.
<br>
(WB 2001/09/13)
</p>
<li> <p>
- New: <code class="member">DoFTools::make_flux_sparsity_pattern</code>
+ New: <code>DoFTools::make_flux_sparsity_pattern</code>
now exists also for 1d.
<br>
(WB 2001/09/03)
</p>
<li> <p>
- New: <code class="member">ConstraintMatrix::close</code>
+ New: <code>ConstraintMatrix::close</code>
now simply returns instead of throwing an exception, if the
matrix was already closed.
<br>
<li> <p>
New: Member function
- <code class="member">ConstraintMatrix::is_identity_constrained</code>.
+ <code>ConstraintMatrix::is_identity_constrained</code>.
<br>
(WB 2001/08/29)
</p>
<li> <p>
Fixed: in a rather rare case, some work was done twice in the
- <code class="class">KellyErrorEstimator</code> class when in
+ <code>KellyErrorEstimator</code> class when in
multithread mode. This is now fixed.
<br>
(WB 2001/08/24)
</p>
<li> <p>
- New: There is now a class <code class="class">GridTools</code>
+ New: There is now a class <code>GridTools</code>
which provides algorithms working on triangulations. At
present, it offers a function computing the diameter of a
triangulation.
</p>
<li> <p>
- Changed: The <code class="class">MatrixCreator</code> and <code
+ Changed: The <code>MatrixCreator</code> and <code
class="class">MatrixTools</code> class have lost their template
arguments. Rather, the individual functions now are templated
on their own, so the compiler can pick out the correct space
</p>
<li> <p>
- Extended: <code class="member">ConstraintMatrix::merge</code>
+ Extended: <code>ConstraintMatrix::merge</code>
can now handle arguments which further constrain the present object.
<br>
(WB 2001/07/30)
<li> <p>
New: Implement
- <code class="member">DoFTools::make_sparsity_pattern</code>,
- <code class="member">DoFTools::make_boundary_sparsity_pattern</code>,
+ <code>DoFTools::make_sparsity_pattern</code>,
+ <code>DoFTools::make_boundary_sparsity_pattern</code>,
and
- <code class="member">ConstraintMatrix::condense</code> to work on
- the <code class="class">CompressedSparsityPattern</code> and
- <code class="class">CompressedBlockSparsityPattern</code> and
+ <code>ConstraintMatrix::condense</code> to work on
+ the <code>CompressedSparsityPattern</code> and
+ <code>CompressedBlockSparsityPattern</code> and
classes.
<br>
(WB 2001/06/22)
</p>
<li> <p>
- New: <code class="member">FE*Values::get_quadrature</code>
+ New: <code>FE*Values::get_quadrature</code>
returns a reference to the quadrature formula used by a
FEValues object.
<br>
</p>
<li> <p>
- Changed: the <code class="class">GeometryInfo</code> class
+ Changed: the <code>GeometryInfo</code> class
has been reverted from a general template that calculates the
values of its member variables by recursion/induction to a set
of explicitely specialized classes. This seemed necessary since
Changed: the classes that denote flags to the <code
class="class">TimeStepBase_Tria</code> class have been move
from local classes to a namespace of their own, names
- <code class="class">TimeStepBase_Tria_Flags</code>.
+ <code>TimeStepBase_Tria_Flags</code>.
<br>
(WB 2001/05/23)
</p>
<li> <p>
Fixed: due to a bug in gcc, the compiler did not check that we
did not use the set of given boundary indicators to the
- <code class="member">DoFTools::extract_boundary_dofs</code>
+ <code>DoFTools::extract_boundary_dofs</code>
function in 1d. That set was therefore ignored. This is now
fixed.
<br>
class="class">GridOut</code> class to modify the appearance of
the output have been moved from local classes of the <code
class="class">GridOut</code> class to a namespace names
- <code class="class">GridOutFlags</code> and have lost the
- trailing <code class="class">Flags</code> part in their name.
+ <code>GridOutFlags</code> and have lost the
+ trailing <code>Flags</code> part in their name.
This change was necessary as C++ does not allow explicit
specialization of member classes; the previous use in the
library was only accepted by GCC as an extension.
<li> <p>
New: The functions <code
class="member">DoFTools::map_dof_to_boundary_indices</code>,
- <code class="member">DoFTools::make_boundary_sparsity_pattern</code>,
- <code class="member">DoFHandler::n_boundary_dofs</code>,
+ <code>DoFTools::make_boundary_sparsity_pattern</code>,
+ <code>DoFHandler::n_boundary_dofs</code>,
<code
class="member">DoFHandler::max_couplings_between_boundary_dofs</code>,
- and <code class="member">VectorTools::project_boundary_values</code>,
+ and <code>VectorTools::project_boundary_values</code>,
are now also implemented in 1d.
<br>
(WB 2001/04/29)
class="class">GridOut</code>::<code
class="member">write_ucd_faces</code> function are now also
1-based. This, to be consistent with the vertex numbers given
- by the <code class="class">GridOut</code>::<code
+ by the <code>GridOut</code>::<code
class="member">write_ucd</code> function.
<br>
(RH 2001/04/20)
<li> <p>
Fixed: When using Neuman boundary functions in the
- <code class="class">KellyErrorEstimator</code> class, it was
+ <code>KellyErrorEstimator</code> class, it was
assumed that the function object had <code
class="class">Function</code>::<code
class="member">vector_value</code> overloaded, even
New: The following functions are extended to work
on arbitrary mappings:
<br>
- The static <code class="member">create_mass_matrix</code>,
- <code class="member">create_boundary_mass_matrix</code> and
- <code class="member">create_laplace_matrix</code> member
- functions of the class <code class="class">MatrixCreator</code>,
+ The static <code>create_mass_matrix</code>,
+ <code>create_boundary_mass_matrix</code> and
+ <code>create_laplace_matrix</code> member
+ functions of the class <code>MatrixCreator</code>,
<br>
- the static <code class="member">project</code> and <code
+ the static <code>project</code> and <code
class="member">project_boundary_values</code> member functions
- of the class <code class="class">VectorTools</code>,
+ of the class <code>VectorTools</code>,
<br>
the two versions of the static <code
class="member">estimate</code> member functions of the class
- <code class="class">KellyErrorEstimator</code>,
+ <code>KellyErrorEstimator</code>,
<br>
- and the static <code class="member">approximate_gradient</code>
- and <code class="member">approximate_second_derivative</code>
+ and the static <code>approximate_gradient</code>
+ and <code>approximate_second_derivative</code>
member functions of the class <code
class="class">DerivativeApproximation</code>.
</p>
class="class">FiniteElement</code>::<code
class="member">get_local_mass_matrix</code> function is now
removed. This was necessary as the local mass matrix depends not only on the
- considered <code class="class">FiniteElement</code> but also on
+ considered <code>FiniteElement</code> but also on
the mapping between the unit to the real cell. Hence this function
cannot be a member function of a <code
class="class">FiniteElement</code> any more.
one of the remaining <code
class="class">MatrixCreator</code>::<code
class="member">create_mass_matrix</code> functions that require
- an appropriate <code class="class">Quadrature</code> as
+ an appropriate <code>Quadrature</code> as
argument.
<br>
(RH 2001/04/04)
New/Fixed: Now there exists a new <code
class="class">Triangulation</code>::<code
class="member">ExcMultiplySetLineInfoOfLine</code> exception,
- that is thrown if the <code class="class">SubCellData</code>
+ that is thrown if the <code>SubCellData</code>
that is given to <code
class="class">Triangulation</code>::<code
class="member">create_triangulation</code>, multiply includes
the line info of a specific line. Before the fix the wrong
- <code class="member">ExcInteriorLineCantBeBoundary</code>
+ <code>ExcInteriorLineCantBeBoundary</code>
exception was thrown.
<br>
(RH 2001/04/03)
</p>
<li> <p>
- Removed: the <code class="class">ProblemBase</code> class,
+ Removed: the <code>ProblemBase</code> class,
which has been deprecated since before the release of
- <acronym>deal.II</acronym> 3.0, has finally been removed. The
+ deal.II 3.0, has finally been removed. The
same applies for the classes
- <code class="class">Assembler</code>,
- <code class="class">Equation</code>,
- <code class="class">MassMatrix</code>, and
- <code class="class">LaplaceMatrix</code>.
+ <code>Assembler</code>,
+ <code>Equation</code>,
+ <code>MassMatrix</code>, and
+ <code>LaplaceMatrix</code>.
<br>
(WB 2001/03/27)
</p>
<li> <p>
- New: There is now a class <code class="class">MappingC1</code>
+ New: There is now a class <code>MappingC1</code>
that implements a continuously differentiable C<sup>1</sup>
mapping of the boundary by using a cubic mapping with
continuous derivatives at cell boundaries. The class presently
</p>
<li> <p>
- New: The static <code class="member">interpolate</code>, <code
+ New: The static <code>interpolate</code>, <code
class="member">create_right_hand_side</code>, <code
class="member">interpolate_boundary_values</code>, <code
class="member">integrate_difference</code> and <code
class="member">compute_mean_value</code> member functions of
- the class <code class="class">VectorTools</code> are extended
+ the class <code>VectorTools</code> are extended
to work on arbitrary mappings. All these functions now take a
- <code class="class">Mapping</code> object as additional
+ <code>Mapping</code> object as additional
argument.
<br>
For backward compatibility there exist second versions of
</p>
<li> <p>
- New: <code class="class">Boundary</code> and derived classes
+ New: <code>Boundary</code> and derived classes
now have a function <code
class="member">get_normals_at_vertices</code> that returns a
multiple of the normal vector to the boundary at the
</p>
<li> <p>
- New: <code class="class">GridGenerator</code>::<code
+ New: <code>GridGenerator</code>::<code
class="member">hyper_rectangle</code> creates
coordinate-parallel rectangles in arbitrary dimension.
<br>
Removed: The function <code
class="class">FiniteElement<dim></code>::<code
class="member">get_support_points</code>
- is removed as the <code class="class">FiniteElement</code>
+ is removed as the <code>FiniteElement</code>
cannot know the position of the support points by itself. This is
because the support points depend on the unit support points
- (known to the <code class="class">FiniteElement</code> class)
+ (known to the <code>FiniteElement</code> class)
but they also depend on the mapping.
In future the support points can be computed using a <code
</p>
<li> <p>
- New: The class <code class="class">Boundary</code> has two new
+ New: The class <code>Boundary</code> has two new
functions <code
class="member">get_intermediate_points_on_line</code> and <code
class="member">get_intermediate_points_on_quad</code> that
New: The functions <code
class="member">GridOut::write_gnuplot</code> and <code
class="member">GridOut::write_eps</code> now take a pointer to
- a <code class="class">Mapping</code> object as additional
+ a <code>Mapping</code> object as additional
argument. This allows to write grids in 2d whereby cells with a
curved boundary are transformed by the given <code
class="class">Mapping</code> class. The default mapping is
- <code class="class">MappingQ1</code>. Note, that the grids do
+ <code>MappingQ1</code>. Note, that the grids do
not show the `original' domain with boundaries described by the
- <code class="class">Boundary</code> classes but the
+ <code>Boundary</code> classes but the
discretized domain whose boundary cells are transformed using the
given mapping.
</p>
There are also a new <code
class="member">GnuplotFlags::n_boundary_face_points</code> and
- <code class="member">EpsFlags::n_boundary_face_points</code>
+ <code>EpsFlags::n_boundary_face_points</code>
variables to set the number of additional points written
to represent the curved boundary faces.
<br>
</p>
<li> <p>
- New: The constructor of the <code class="class">FEValues</code>
- and <code class="class">FE(Sub)FaceValues</code> classes now
- take a reference of a <code class="class">Mapping</code> object
+ New: The constructor of the <code>FEValues</code>
+ and <code>FE(Sub)FaceValues</code> classes now
+ take a reference of a <code>Mapping</code> object
as additional argument. This is the new possibility to combine
- a <code class="class">FiniteElement</code> with an arbitrary
- <code class="class">Mapping</code>, see also <a
+ a <code>FiniteElement</code> with an arbitrary
+ <code>Mapping</code>, see also <a
href="#new_fe_mapping_design">New FE and Mapping Design</a>.
</p>
<p>
For backward compatibility there still exists a constructor of
- <code class="class">FEValues</code> without a <code
+ <code>FEValues</code> without a <code
class="class">Mapping</code> argument that uses a <code
class="class">MappingQ1</code> by default.
<br>
</p>
<li> <p>
- New: The class <code class="class">GridReordering::Cell</code> has
+ New: The class <code>GridReordering::Cell</code> has
now a copy constructor to work around a bug in a gcc3.0
snapshot.
<br>
</p>
<li> <p>
- New: The <code class="class">DoFTools</code> class now has
- a function <code class="member">count_dofs_per_component</code>
+ New: The <code>DoFTools</code> class now has
+ a function <code>count_dofs_per_component</code>
that counts the number of degrees of freedom in each of the
components of the finite element, i.e. how many degrees of
freedom there are on the global mesh for each variable (field).
</p>
<li> <p>
- New: The <code class="class">CellAccessor</code> class now has a function
- <code class="member">has_boundary_lines</code> that mostly has
- the same semantics that <code class="member">at_boundary</code>
+ New: The <code>CellAccessor</code> class now has a function
+ <code>has_boundary_lines</code> that mostly has
+ the same semantics that <code>at_boundary</code>
has, but also covers the case that a hexahedron in 3d may be at
the boundary only by one line, rather than by a whole face. In
- that case, <code class="member">at_boundary</code> reports
- false, while <code class="member">has_boundary_lines</code>
+ that case, <code>at_boundary</code> reports
+ false, while <code>has_boundary_lines</code>
reports true.
<br>
(WB 2001/02/21)
<li> <p>
New: There is now a function
- <code class="class">ConstraintMatrix</code>::<code
+ <code>ConstraintMatrix</code>::<code
class="member">merge</code> that merges
the constraints represented by two constraint matrices into one
object.
</p>
</ol>
-<hr>
-Last update $Date$
-
-</body>
-</html>
+*/
--- /dev/null
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_3_1_1_and_3_1_2 Changes between Version 3.1.1 and 3.1.2
+
+<p>
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
+</p>
+
+<ol>
+ <li> <p>
+ The only is change is that the configuration detects the
+ presence of gcc3.0 and works around a bug in it by compiling
+ the file <code>tria_accessor.cc(3d)</code> without optimization
+ flags even for optimized libraries. The gcc bug is documented
+ at the <a
+ href="http://gcc.gnu.org/cgi-bin/gnatsweb.pl?database=gcc&user=guest&password=guest&cmd=login"
+ target="_top">gcc bug tracking system page</a>, as bugs reports c++/615 and
+ optimization/2938.
+ <br>
+ (WB 2001/06/27)
+ </p>
+</ol>
+
+
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
-
-<body>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_3_2_0_and_3_2_1 Changes between Version 3.2.0 and 3.2.1
+
+<p>
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
+</p>
<h2>Changes between versions 3.2.0 and 3.2.1</h2>
<ol>
<li> <p>
- Fixed: In the <code class="class">ParameterHandler</code>
+ Fixed: In the <code>ParameterHandler</code>
class, we leaked 8 or 12 bytes of memory per declared
parameter. This is now fixed.
<br>
</p>
<li> <p>
- Fixed: he <code class="class">DoFHandler</code> class had a
+ Fixed: he <code>DoFHandler</code> class had a
memory leak. This is now fixed.
<br>
(WB 2001/11/28)
<li> <p>
Fixed: when checking for convergence in linear solvers in
- <code class="member">SolverControl::check</code>, we first
+ <code>SolverControl::check</code>, we first
checked whether the maximal iteration count was reached, and
only then whether the target residual was achieved. In cases,
where the target residual was only reached in the very last
</p>
<li> <p>
- Fixed: class <code class="class">SparsityPattern</code> can
+ Fixed: class <code>SparsityPattern</code> can
handle rows of length zero now. For quadratic matrices, these
rows are changed to length one, since a diagonal element must
be stored.
</p>
<li> <p>
- Fixed: The <code class="class">DataOutBase::EpsFlags</code>
+ Fixed: The <code>DataOutBase::EpsFlags</code>
class forgot to declare the reverse grey scale function as one
possible input for the color function for the
- <code class="class">ParameterHandler</code> class. This is now
+ <code>ParameterHandler</code> class. This is now
possible.
<br>
(WB 2001/10/10)
</ol>
-<hr>
-
-</body>
-</html>
-
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<body>
-
-
-<h2>Changes between versions 3.2.0 and 3.3.0</h2>
-
-This is a quite extensive list of changes made between versions 3.2.0
-and 3.3.0 of <acronym>deal.II</acronym>. It is subdivided into changes
-made to the three sub-libraries <a href="#base">base</a>, <a
-href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
-changes to the <a href="#general">general infrastructure,
-documentation, etc</a>.
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_3_2_and_3_3 Changes between Version 3.2 and 3.3
+
+<p>
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
+</p>
<a name="general"></a>
</p>
<li> <p>
- New: <acronym>deal.II</acronym> now uses a file
+ New: deal.II now uses a file
<code>config.h</code> for most global preprocessor defines,
instead of an overly long list of compiler flags given on the
command line.
<li> <p>
Changed: If available, the library now uses the C++ standard
- classes <code class="class">istringstream</code> and <code
+ classes <code>istringstream</code> and <code
class="class">ostringstream</code> over the old classes
- <code class="class">i/ostrstream</code>. The ./configure script
+ <code>i/ostrstream</code>. The ./configure script
finds out whether the new classes exist, or whether the
backward compatibility classes are to be used.
<br>
aborted the program. In that case only report the error and
write out an indication why we do not abort the program any
more. On the other hand, also suppress output of further failed
- <code class="member">Assert()</code> calls, since they often
+ <code>Assert()</code> calls, since they often
are follow-ups of the first one.
<br>
(WB 2002/01/09)
</p>
<li> <p>
- New: <code class="class">ExcFileNotOpen</code> can be used
- after initializing an <code class="class">fstream</code>
+ New: <code>ExcFileNotOpen</code> can be used
+ after initializing an <code>fstream</code>
object. This allows to avoid some cryptic <code
class="class">ExcIO</code>s.
<br>
</p>
<li> <p>
- Changed: The <code class="class">OutputStyle</code> enum used
+ Changed: The <code>OutputStyle</code> enum used
to indicate the output format has been moved into the
- <code class="class">ParameterHandler</code> class.
+ <code>ParameterHandler</code> class.
<br>
(WB 2001/11/30)
</p>
<li> <p>
- Fixed: In the <code class="class">ParameterHandler</code>
+ Fixed: In the <code>ParameterHandler</code>
class, we leaked 8 or 12 bytes of memory per declared
parameter. This is now fixed.
<br>
</p>
<li> <p>
- New: <code class="class">Functions::CutOffFunctionCinfty</code>,
- <code class="class">Functions::CutOffFunctionW1</code>, and
- <code class="class">Functions::CutOffFunctionLinfty</code>
+ New: <code>Functions::CutOffFunctionCinfty</code>,
+ <code>Functions::CutOffFunctionW1</code>, and
+ <code>Functions::CutOffFunctionLinfty</code>
implement functions with support in an arbitrary ball and
differentiability as indicated by their name
<br>
</p>
<li> <p>
- Fixed: The <code class="class">DataOutBase::EpsFlags</code>
+ Fixed: The <code>DataOutBase::EpsFlags</code>
class forgot to declare the reverse grey scale function as one
possible input for the color function for the
- <code class="class">ParameterHandler</code> class. This is now
+ <code>ParameterHandler</code> class. This is now
possible.
<br>
(WB 2001/10/10)
</p>
<li> <p>
- Improved: reinit function of <code class="class">Vector</code>
- and <code class="class">BlockVector</code> allows use of a
+ Improved: reinit function of <code>Vector</code>
+ and <code>BlockVector</code> allows use of a
vector with different number type.
<br>
(GK 2001/11/21)
<li> <p>
Fixed: when checking for convergence in linear solvers in
- <code class="member">SolverControl::check</code>, we first
+ <code>SolverControl::check</code>, we first
checked whether the maximal iteration count was reached, and
only then whether the target residual was achieved. In cases,
where the target residual was only reached in the very last
</p>
<li> <p>
- New: the <code class="class">SparseDirectMA27/47</code> classes
+ New: the <code>SparseDirectMA27/47</code> classes
now provide access to Mutex locks for external
synchronisation.
<br>
</p>
<li> <p>
- Improved: class <code class="class">SolverGMRES</code> accepts
- a parameter in <code class="class">AdditionalData</code>,
+ Improved: class <code>SolverGMRES</code> accepts
+ a parameter in <code>AdditionalData</code>,
allowing for right preconditioning.
<br>
(GK 2001/11/09)
</p>
<li> <p>
- Fixed: class <code class="class">SparsityPattern</code> can
+ Fixed: class <code>SparsityPattern</code> can
handle rows of length zero now. For quadratic matrices, these
rows are changed to length one, since a diagonal element must
be stored.
</p>
<li> <p>
- New: The <code class="class">BlockVector</code> now has a
+ New: The <code>BlockVector</code> now has a
full-fledged random access iterator type, working in exactly
the same way as the iterators of the C++ standard containers.
<br>
(WB 2001/09/28)
</p>
- <li> <p> New: <code class="class">Vector</code>::<code
+ <li> <p> New: <code>Vector</code>::<code
class="member">operator *</code> is now templatized, allowing
for scalar products of vectors with different underlying types.
<br>
<ol>
<li> <p>
- Changed: The classes <code class="class">FEQ1</code>-<code
+ Changed: The classes <code>FEQ1</code>-<code
class="class">FEQ4</code>, <code
- class="class">FEDG_Q1</code><code class="class">FEDG_Q4</code>
+ class="class">FEDG_Q1</code><code>FEDG_Q4</code>
as well as the files with their definitions,
<tt>fe/fe_lib.lagrange.h</tt> and <tt>fe/fe_lib.dg.h</tt>
ceased to exist. They had been left in for backward
compatibility in an earlier version, but their existence is
more confusing than helpful. Please change your code to use the
- classes <code class="class">FE_Q</code> and <code
+ classes <code>FE_Q</code> and <code
class="class">FE_DGQ</code>, respectively.
<br>
(GK 2002/02/01)
</p>
<li> <p>
- New: The <code class="class">FilteredIterator</code> class
+ New: The <code>FilteredIterator</code> class
provides a view on ranges of iterators by iterating over only
those objects that satisfy a certain predicate.
<br>
<li> <p>
Improved: It is now possible to read in unconnected domains
- through the <code class="class">GridIn</code> class, since
+ through the <code>GridIn</code> class, since
renumbering the cells now also works for these domains.
<br>
(<a href="mailto:ms@biomech.tu-graz.ac.at">Michael Stadler</a> 2001/12/14)
class="class">VectorTools</code>::<code
class="member">compute_mean_value</code> take ingoing and
outgoing vector types as template arguments. This allows
- applying them to <code class="class">BlockVector</code>.
+ applying them to <code>BlockVector</code>.
<br>
(GK 2001/12/07)
</p>
<li> <p>
- New: <code class="class">GridGenerator</code> has a function
- <code class="member">cylinder</code> for cylinders in three
+ New: <code>GridGenerator</code> has a function
+ <code>cylinder</code> for cylinders in three
space dimensions. Accoridngly, a class <code
class="class">CylinderBoundary</code> has been created.
<br>
</p>
<li> <p>
- New: <code class="class">FiniteElement</code>::<code
+ New: <code>FiniteElement</code>::<code
class="member">has_support_on_face</code> allows to check
whether a shape function has non-zero values on a certain face
of a cell.
</p>
<li> <p>
- Changed: The <code class="class">IteratorState</code> enum used
+ Changed: The <code>IteratorState</code> enum used
to indicate the state in which an iterator can be is now
enclosed in a namespace of the same name, to take its members
out of the global namespace. When using one of these members,
</p>
<li> <p>
- Changed: The <code class="class">NormType</code> enum used to
+ Changed: The <code>NormType</code> enum used to
indicate the norm the <code
class="member">VectorTools::integrate_difference</code>
function shall integrate is moved from the global namespace
- into the <code class="class">VectorTools</code> class. You
+ into the <code>VectorTools</code> class. You
therefore have to prefix the members of this enum by the
respective class name.
<br>
</p>
<li> <p>
- Fixed: The <code class="class">DoFHandler</code> class had a
+ Fixed: The <code>DoFHandler</code> class had a
memory leak. This is now fixed. Likewise for the <code
class="class">MGDoFHandler</code> class.
<br>
<em>subdomain_id</em> which can be used in parallel
computations to identify which cells are handled on which
processor. These flags are read and set using the functions
- <code class="member">cell->subdomain_id()</code> and <code
+ <code>cell->subdomain_id()</code> and <code
class="member">cell->set_subdomain_id(new_id)</code>. The
subdomain ids are unsigned integers, so should be sufficiently
large also for larger numbers of subdomains.
class="class">VectorTools</code>::<code
class="member">integrate_difference</code> take ingoing and
outgoing vector types as template arguments. This allows
- applying them to <code class="class">BlockVector</code> and of
+ applying them to <code>BlockVector</code> and of
outputting a vector of doubles suitable for <code
class="class">DataOut</code>.
<br>
<li> <p>
Fixed: Functions creating sparsity patterns for DG elements in
- <code class="class">DoFTools</code> get the pattern type as
+ <code>DoFTools</code> get the pattern type as
template argument, too..
<br>
(GK 2001/10/01)
</p>
</ol>
-<hr>
-Last update $Date$
-
-</body>
-</html>
+*/
--- /dev/null
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_3_3_0_and_3_3_1 Changes between Version 3.3.0 and 3.3.1
+
+<p>
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
+</p>
+
+
+<ol>
+ <li> <p>
+ Fixed: In 3d, the function <code
+ class="member">DoFTools::make_hanging_node_constraints</code>
+ contained an assertion that failed erroneously for finite
+ elements that do not have degrees of freedom on vertices. This
+ is now fixed.
+ <br>
+ (WB 2002/02/21)
+ </p>
+
+ <li> <p>
+ Fixed: <code>TriaAccessor<3,3>::measure</code>
+ sometimes computed a negative value. This is now fixed.
+ <br>
+ (WB 2002/02/21)
+ </p>
+</ol>
+
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<body>
-
-
-<h2>Changes between versions 3.3.0 and 3.4.0</h2>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_3_3_and_3_4 Changes between Version 3.3 and 3.4
<p>
-This is a quite extensive list of changes made between versions 3.3.0
-and 3.4.0 of <acronym>deal.II</acronym>. It is subdivided into changes
-made to the three sub-libraries <a href="#base">base</a>, <a
-href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
-changes to the <a href="#general">general infrastructure,
-documentation, etc</a>.
+This is the list of changes made between the deal.II releases listed above.
+All entries are signed with the names of the author.
</p>
-<p>
-All entries are signed with the names of the author. Regular
-contributor's names are abbreviated by WB (Wolfgang Bangerth), GK
-(Guido Kanschat), RH (Ralf Hartmann), BK (Benjamin S. Kirk).
-</p>
-
-
<a name="general"></a>
<h3>General</h3>
</p>
<li> <p>
- New: In all previous versions, <acronym>deal.II</acronym> used
+ New: In all previous versions, deal.II used
the <a href="http://www.cs.wustl.edu/~schmidt/ACE.html"
target="_top">ACE (Adaptive Communications Environment)</a>
library to support cross-platform threading
Fixed: For gcc versions that used <code
class="class">ostrstream</code> instead of <code
class="class">ostringstream</code>, it was necessary to append
- a final <code class="member">std::ends</code> when piping text
+ a final <code>std::ends</code> when piping text
into the string stream. This was not previously
conditionalized, but done for old and new classes.
<br>
<ol>
<li> <p>
- New: The <code class="class">vector2d</code> row accessor
+ New: The <code>vector2d</code> row accessor
classes now have member functions <code
- class="member">begin</code> and <code class="member">end</code>
+ class="member">begin</code> and <code>end</code>
which allow iterating over the elements of a row of such an
object.
<br>
</p>
<li> <p>
- New: The <code class="class">Legendre</code> and
- <code class="class">LagrangeEquidistant</code> classes now have
+ New: The <code>Legendre</code> and
+ <code>LagrangeEquidistant</code> classes now have
static member functions <code
class="member">generate_complete_basis</code> which returns an
array of polynomial objects spanning the complete space up to a
</p>
<li> <p>
- Changed: The <code class="class">Polynomial</code> and
- <code class="class">LagrangeEquidistant</code> classes have lost
+ Changed: The <code>Polynomial</code> and
+ <code>LagrangeEquidistant</code> classes have lost
their default constructor, as that did not make much sense
anyway.
<br>
</p>
<li> <p>
- Fixed: The class <code class="class">TensorFunction</code>
- now uses local types <code class="class">value_type</code> and
- <code class="class">gradient_type</code> as return values of
+ Fixed: The class <code>TensorFunction</code>
+ now uses local types <code>value_type</code> and
+ <code>gradient_type</code> as return values of
its member functions. This works around a bug in Sun's Forte
C++ compilers.
<br>
</p>
<li> <p>
- Improved: The <code class="member">AssertThrow</code> macro now
- uses <code class="member">__builtin_expect</code> if the
+ Improved: The <code>AssertThrow</code> macro now
+ uses <code>__builtin_expect</code> if the
compiler supports this. This indicates to the compiler that we
expect the condition to be true and that throwing an exception
is a rare case. By this information, the compiler can help the
</p>
<li> <p>
- New: The <code class="class">vector2d</code> class now not only
+ New: The <code>vector2d</code> class now not only
allows access to elements through the <code
class="member">operator()(unsingned int,unsigned int)</code>
(i.e. matrix or Fortran style access), but also through nested
- brackets via an <code class="member">operator[]</code>
+ brackets via an <code>operator[]</code>
(i.e. like to a two-dimensional C-style array).
<br>
(WB 2002/03/08)
</p>
<li> <p>
- Changed: The function <code class="class">MultithreadInfo</code>::
- <code class="member">get_n_cpus</code> now reports the proper number
+ Changed: The function <code>MultithreadInfo</code>::
+ <code>get_n_cpus</code> now reports the proper number
of CPUs when running on Silicon Graphics.
<br>
(BK 2002/02/19)
Changed: The quite logorrhoeic function name <code
class="class">TensorProductPolynomials</code>::<code
class="member">n_tensor_product_polynomials</code> was changed to
- <code class="member">n</code> to be compliant wth the new class <code
+ <code>n</code> to be compliant wth the new class <code
class="class">PolynomialSpace</code>.
<br>
(GK 2002/02/11)
</p>
<li> <p>
- New: The class <code class="class">PolynomialSpace</code>
+ New: The class <code>PolynomialSpace</code>
implements the space of polynomials at most a certain degree in
arbitrary space dimensions.
<br>
</p>
<li> <p>
- New: The function <code class="class">DataOutBase</code>::
- <code class="member">write_tecplot_binary</code> has been
+ New: The function <code>DataOutBase</code>::
+ <code>write_tecplot_binary</code> has been
added. This function will write Tecplot binary files if the
Tecplot API is detected by ./configure. To use this feature be
sure that the environment variable TECHOME points to a valid
<h3>lac</h3>
<ol>
- <li> <p> Improved: <code class="class">SolverGMRES</code> allocates
+ <li> <p> Improved: <code>SolverGMRES</code> allocates
basis vectors only, when they are needed. Therefore, it is safe
now to ask for a basis larger than the expected number of
iteration steps. On the other hand, memory allocation failures
<ol>
<li> <p>
- New: The <code class="class">GeometryInfo</code> class now
+ New: The <code>GeometryInfo</code> class now
provides two methods,
- <code class="member">unit_cell_vertex</code> and <code
+ <code>unit_cell_vertex</code> and <code
class="member">vertices_adjacent_to_line</code>, that reveal
something about the placement and numbering of vertices on the
uni cell.
</p>
<li> <p>
- New: The <code class="class">GridOut::</code>
- <code class="member">write_dx</code> function is now implemented.
+ New: The <code>GridOut::</code>
+ <code>write_dx</code> function is now implemented.
It allows to write the mesh (cells and faces) with some additional
information that may be useful once in a while.
<br>
</p>
<li> <p>
- Fixed: The <code class="class">IteratorState::IteratorState</code>
+ Fixed: The <code>IteratorState::IteratorState</code>
enum is now called <code
class="class">IteratorState::IteratorStates</code>. This works
around a bug in Sun's Forte C++ compilers which can't handle
</p>
<li> <p>
- Fixed: <code class="member">TriaAccessor<3,3>::measure</code>
+ Fixed: <code>TriaAccessor<3,3>::measure</code>
sometimes computed a negative value. This is now fixed.
<br>
(WB 2002/02/21)
<li> <p>
New: Finite element family with complete polynomial spaces
- for discontinuous Galerkin: <code class="class">FE_DGP</code>
+ for discontinuous Galerkin: <code>FE_DGP</code>
<br>
(GK 2002/02/11)
</p>
</ol>
-<hr>
-Last update $Date$
-
-</body>
-</html>
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<body>
-
-
-<h2>Changes after Version 3.4</h2>
-
-<p>
-This is the list of changes made after the release of
-<acronym>deal.II</acronym> version 3.4. It is subdivided into changes
-made to the three sub-libraries <a href="#base">base</a>,
-<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
-changes to the <a href="#general">general infrastructure,
-documentation, etc</a>.
-</p>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_3_4_and_4_0 Changes between Version 3.4 and 4.0
<p>
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the author. Regular
contributor's names are abbreviated by WB (Wolfgang Bangerth), GK
(Guido Kanschat), RH (Ralf Hartmann).
<ol>
<li> <p>
- New: <acronym>deal.II</acronym> now uses a new threading
+ New: deal.II now uses a new threading
scheme. The new scheme is simpler to use, and in particular
more flexible in some cases where only one thread is started,
or where a thread is completely detached, since we got rid of
</p>
<li> <p>
- New: <acronym>deal.II</acronym> now makes use of some parts of
+ New: deal.II now makes use of some parts of
the <a href="http://www.boost.org/">boost</a> library, which is
supposed to be a testground for the next generation C++ standard
library. The parts which we use are now in
<li> <p>
Changed: Classes and structures that are declared inside namespaces named
- <code class="class">internal</code> are now no longer shown in the class
+ <code>internal</code> are now no longer shown in the class
index view of the documentation of each of the sublibraries. Since they
are supposed to be used internally only, this is no drawback for the
general public. However, they are documented as members of these
<li> <p>
New: Changes have been made to support compiling and using
- <acronym>deal.II</acronym> on AIX 5 systems.
+ deal.II on AIX 5 systems.
<br>
(WB 2003/01/24)
</p>
</p>
<li> <p>
- New: <acronym>deal.II</acronym> can be compiled with version 7.0 of
+ New: deal.II can be compiled with version 7.0 of
Intel's icc compiler, which was recently released. Since this compiler
finally supports the very restrictive flags <code>-Xc -ansi</code> that
check for close conformance with the C++ standard, we use them (previous
</p>
<li> <p>
- New: <acronym>deal.II</acronym> can now also be compiled with Red Hat's
+ New: deal.II can now also be compiled with Red Hat's
version of the gcc compiler, gcc 2.96. However, some problems remain;
for more information.
<br>
<code>M_PI</code> and <code>M_E</code>) when certain defines are set (on
Linux, these are <code>__USE_BSD</code> or <code>__USE_XOPEN</code>),
portable programs usually defined these constants themselves. In
- <acronym>deal.II</acronym>, this happened at 6 different places. To
+ deal.II, this happened at 6 different places. To
avoid this in the future, <code>base/config.h</code> now exports a
namespace <code>deal_II_numbers</code> that defines these two, and a
number of other numerical constants.
<li> <p>
New: <code>base/config.h</code> now exports the
- <acronym>deal.II</acronym> base directory through the
+ deal.II base directory through the
<code>DEAL_II_PATH</code> preprocessor variable.
<br>
(WB 2002/09/09)
</p>
<li> <p>
- New: <acronym>deal.II</acronym> now also supports vector-valued
+ New: deal.II now also supports vector-valued
finite elements with shape functions for which more than just
one vector component is non-zero. Such elements are, for
example, the Nedelec and Raviart-Thomas families. Previously,
New: The top-level makefile now how a target <tt>distclean</tt>.
<tt>clean</tt> leaves the libraries now, removing
everything that is not needed to use
- <acronym>deal.II</acronym>. <tt>distclean</tt> removes even the
+ deal.II. <tt>distclean</tt> removes even the
libraries, leaving the directory more or less in the state like
after <tt>configure</tt>.
<br>
</p>
<li> <p>
- Changed: The <code class="class">Polynomials::Legendre</code>
+ Changed: The <code>Polynomials::Legendre</code>
class lost its template argument and is now just a regular
class. There was no real good reason for the template argument,
it had just crept in.
</p>
<li> <p>
- Changed: The <code class="class">Table</code> accessor classes
+ Changed: The <code>Table</code> accessor classes
have been moved to a namespace <code
class="class">internal</code>. Since these classes are not (or should
not be) used directly in applications, this should not change
</p>
<li> <p>
- New: The <code class="class">Function</code> class now has an assignment
+ New: The <code>Function</code> class now has an assignment
operator. This way, you can put function objects into
containers. However, the assignment operator makes sure that only
objects can be assigned that have the same number of vector components.
</p>
<li> <p>
- New: The <code class="class">ThreadMutex</code> classes now have a
- member class <code class="class">ScopedLock</code> that implements the
+ New: The <code>ThreadMutex</code> classes now have a
+ member class <code>ScopedLock</code> that implements the
scoped thread-safe locking pattern of Doug Schmidt. It is also used in
various places of the code now.
<br>
</p>
<li> <p>
- Fixed: The <code class="class">PosixThreadManager</code> called
- its <code class="member">wait</code> function in the
+ Fixed: The <code>PosixThreadManager</code> called
+ its <code>wait</code> function in the
destructor. If this had been called before already, then the
same threads would have been waited for twice, which invokes
undefined behavior. This is fixed by making sure that <code
</p>
<li> <p>
- Fixed: The <code class="class">Subscriptor</code> uses a counter to
- count how many <code class="class">SmartPointer</code> objects subscribe
+ Fixed: The <code>Subscriptor</code> uses a counter to
+ count how many <code>SmartPointer</code> objects subscribe
to the pointed-to object. This counter needs to be a volatile variable
in multithreaded mode, to avoid false compiler optimizations based on
the assumption that the variable cannot change between two subsequent
</p>
<li> <p>
- New: There are now classes <code class="class">ThreadCondition</code>
+ New: There are now classes <code>ThreadCondition</code>
that implement thread condition variable operations through POSIX
functions (in multithreaded mode) or doing nothing (in singlethreaded
mode).
</p>
<li> <p>
- New: There is now a <code class="class">Patterns::List</code> pattern
+ New: There is now a <code>Patterns::List</code> pattern
that matches a list of elements each of which has to satisfy a pattern
that was given to the constructor.
<br>
<li> <p>
Changed: In POSIX mode, when the <code
class="member">ThreadManager</code> class created a new thread through
- <code class="member">pthread_create</code>, it only checked for the
+ <code>pthread_create</code>, it only checked for the
error code and aborted if it was non-zero. Now, it checks whether the
- error code is <code class="member">EAGAIN</code> and simply retries the
+ error code is <code>EAGAIN</code> and simply retries the
call if this is the case. This may, in rare cases, lead to a deadlock or
an infinite loop, but will usually just wait until the respective
resources for thread creation are available from the operating system
</p>
<li> <p>
- Fixed: The <code class="member">write_text</code> and <code
+ Fixed: The <code>write_text</code> and <code
class="member">write_tex</code> functions of the <code
class="class">TableHandler</code> class now check whether their
<code>ofstream</code> arguments are in a proper state before
</p>
<li> <p> Changed: Because they became too many, the classes describing 1d
- polynomials are now in a <code class="class">namespace
+ polynomials are now in a <code>namespace
Polynomials</code>.
<br>
(WB 2002/10/14)
system. Rather, if the exception is not caught from the function that
was invoked by the spawning system function, the entire program is
terminated without an additional message. The wrapper functions which
- are used to spawn new threads in the <code class="class">Threads</code>
+ are used to spawn new threads in the <code>Threads</code>
namespace therefore now catch these exceptions and at least print the
message they carry, before aborting the program. This way, at least the
message gets displayed.
<li> <p> Changed: The class <code
class="member">Table<2>::fill</code> function, which is also
- inherited from the <code class="class">FullMatrix</code> class, used to
+ inherited from the <code>FullMatrix</code> class, used to
work also when the size of the matrix was zero, by simply not copying
something. This led to difficult to detect errors. It is therefore no
more allowed to call this function when the matrix is empty. For all
</p>
<li> <p>
- New: The <code class="member">Threads::n_existing_threads</code>
+ New: The <code>Threads::n_existing_threads</code>
function returns the present number of existing threads, allowing an
assessment whether it is useful to spawn new threads or rather perform
the operation in question sequentially.
</p>
<li> <p>
- New: The old class <code class="class">vector2d</code>, implementing a
+ New: The old class <code>vector2d</code>, implementing a
two-dimensional array of objects is now gone. Instead, there is the new
- <code class="class">Table</code> class that implements tables of
+ <code>Table</code> class that implements tables of
arbitrary dimension. Transition is painless: where there was
<code>vector2d<type></code> before, use
<code>Table<2,type></code> now (and don't forget to update the
name of the header file, of course). If you have a three-dimensional
- array, you can use <code class="class">Table<3,type></code> now.
+ array, you can use <code>Table<3,type></code> now.
<br>
(WB 2002/09/03)
</p>
</p>
<li> <p>
- New: Row accessors for the <code class="class">vector2d</code>
+ New: Row accessors for the <code>vector2d</code>
class now have a member function <code
class="member">size</code> that returns the size of the row,
i.e. the number of columns of the table.
<li> <p>
New: There are now operators to allow multiplication and
- division of <code class="class">Tensor</code> objects by scalar
+ division of <code>Tensor</code> objects by scalar
factors.
<br>
(WB 2002/06/07)
<ol>
<li> <p> New: Function
- <code class="member">BlockSparseMatrix::print_formatted</code>
+ <code>BlockSparseMatrix::print_formatted</code>
added, similar to the
- <code class="member">BlockVector::print_formatted</code> function.
+ <code>BlockVector::print_formatted</code> function.
<br>
(Brian Carnes 2003/06/02)
</p>
- <li> <p> New: Functions <code class="member">SparseMatrix::operator *=</code>
- and <code class="member">SparseMatrix::operator /=</code> as well as
- <code class="member">BlockSparseMatrix::operator *=</code>
- and <code class="member">BlockSparseMatrix::operator /=</code>
+ <li> <p> New: Functions <code>SparseMatrix::operator *=</code>
+ and <code>SparseMatrix::operator /=</code> as well as
+ <code>BlockSparseMatrix::operator *=</code>
+ and <code>BlockSparseMatrix::operator /=</code>
are added.
<br>
(Brian Carnes 2003/06/02)
</p>
- <li> <p> Deprecated: The functions <code class="member">Vector::scale</code>
- and <code class="member">BlockVector::scale</code> are now deprecated
+ <li> <p> Deprecated: The functions <code>Vector::scale</code>
+ and <code>BlockVector::scale</code> are now deprecated
and will be removed in a future version. Use <code>operator*=</code> and
<code>operator/=</code> instead.
<br>
(WB 2003/05/31)
</p>
- <li> <p> New: <code class="class">Vector</code>, <code
+ <li> <p> New: <code>Vector</code>, <code
class="class">BlockVector</code> and
- <code class="class">FullMatrix</code> now have <code>operator/=</code>
+ <code>FullMatrix</code> now have <code>operator/=</code>
for scaling by a scalar.
<br>
(WB 2003/05/31)
</p>
- <li> <p> New: <code class="class">PointerMatrix</code> now
+ <li> <p> New: <code>PointerMatrix</code> now
has <code>empty()</code> function, which returns true if the pointer is
null; otherwise we call the pointer's <code>empty()</code> function.
This requires the class MATRIX to have an <code>empty()</code>
(Brian Carnes 2003/05/22)
</p>
- <li> <p> New: <code class="class">SparseLUDecomposition</code> now
+ <li> <p> New: <code>SparseLUDecomposition</code> now
has <code>empty()</code> function, which calls the inherited <code
class="class">SparseMatrix</code> <code>empty()</code> function.
<br>
(Brian Carnes 2003/05/22)
</p>
- <li> <p> New: <code class="class">PreconditionPSOR</code> implements
+ <li> <p> New: <code>PreconditionPSOR</code> implements
interface to permuted SOR preconditioner function in <code
class="class">SparseMatrix</code>.
<br>
(GK 2003/05/12)
</p>
- <li> <p> Improved: <code class="class">FullMatrix</code>::<code
+ <li> <p> Improved: <code>FullMatrix</code>::<code
class="member">fill</code> now copies the largest possible block,
whether the destination or source matrix is bigger. Additionally, an
offset inside the source matrix may be specified.
</p>
<li> <p>
- New/Changed: The <code class="class">SparseILU</code>, <code
+ New/Changed: The <code>SparseILU</code>, <code
class="class">SparseMIC</code> and <code
class="class">SparseLUDecomposition</code> now use the same
- interface (<code class="class">initialize</code>, <code
- class="class">vmult</code>, <code class="class">clear</code>)
- as all <code class="class">PreconditionBlock</code> classes. In
+ interface (<code>initialize</code>, <code
+ class="class">vmult</code>, <code>clear</code>)
+ as all <code>PreconditionBlock</code> classes. In
virtue of an unified preconditioner interface it is now
recommended to use the new methods. The old methods (<code
class="class">reinit</code>, <code
</p>
<li> <p>
- Changed: The <code class="class">BlockVector</code> accessor classes
+ Changed: The <code>BlockVector</code> accessor classes
have been moved to a namespace <code
class="class">internal</code>. Since these classes are not (or should
not be) used directly in applications, this should not change
</p>
<li> <p>
- New: The <code class="class">SolverGMRES</code> now accepts an
- <code class="class">AdditionalData</code> parameter
+ New: The <code>SolverGMRES</code> now accepts an
+ <code>AdditionalData</code> parameter
<code>use_default_residual</code> whose default is
<code>true</code>. By setting this flag to <code>false</code>,
the stopping criterion of the left-preconditioned GMRes solver
</p>
<li> <p>
- New: <code class="class">FullMatrix</code> has a function <code
+ New: <code>FullMatrix</code> has a function <code
class="member">copy_from</code>, copying from sparse matrices.
It uses iterators of the sparse matrix classes.
<br>
<li><p>
Changed: In an attempt to unify the use of preconditioners a
- little, the function <code class="member">initialize</code> of
- classes <code class="class">PreconditionRelaxation</code> and
- <code class="class">PreconditionBlock</code> take an argument
- of type <code class="class">AdditionalData</code>, defined in
+ little, the function <code>initialize</code> of
+ classes <code>PreconditionRelaxation</code> and
+ <code>PreconditionBlock</code> take an argument
+ of type <code>AdditionalData</code>, defined in
the same class. Standard behavior of <code
class="class">PreconditionBlock</code> has been changed on this
occasion to invert diagonal blocks during initialization.
</p>
<li> <p>
- Fixed: In the <code class="class">SparseDirectMA27</code> class, wrapping
+ Fixed: In the <code>SparseDirectMA27</code> class, wrapping
the MA27 solver written in Fortran77 into some structure amenable to C++,
we wrote beyond the end of an array on rare inputs. This is now fixed. The
same probably holds for the respective code for MA47.
New: Since the MA27 sparse direct solver uses Fortran common blocks, it
was previously impossible to run several instances of this solver in
parallel, in a multihreaded environment. To solve this problem, the
- <code class="class">SparseDirectMA27</code> class now has a detached
+ <code>SparseDirectMA27</code> class now has a detached
mode, in which it forks off a separate program that will do the
computations using this solver. The actual operations are therefore
distributed to distint programs that have separate address spaces. This
allows to have as many concurrent instances of this solver in parallel
as you want. For more information, read the documentation of the
- <code class="class">SparseDirectMA27</code> class.
+ <code>SparseDirectMA27</code> class.
<br>
(WB 2002/09/25)
</p>
(GK 2002/09/18)
</p>
- <li> <p> New: Class <code class="class">BlockVector</code> has a
- function <code class="member">collect_sizes()</code>, very much as
- <code class="class">BlockSparsityPattern</code>. This allows
+ <li> <p> New: Class <code>BlockVector</code> has a
+ function <code>collect_sizes()</code>, very much as
+ <code>BlockSparsityPattern</code>. This allows
updating internal structures after blocks have been resized.
<br>
(GK 2002/09/17)
</p>
- <li> <p> New: Class <code class="class">SparseMatrix</code> has an
- STL-conforming <code class="class">const_iterator</code> and
- functions <code class="member">begin()</code> and <code
+ <li> <p> New: Class <code>SparseMatrix</code> has an
+ STL-conforming <code>const_iterator</code> and
+ functions <code>begin()</code> and <code
class="member">end()</code> for looping through all existing
- entries. Furthermore, <code class="member">begin(row)</code> and
- <code class="member">end(row)</code> allow looping through all
+ entries. Furthermore, <code>begin(row)</code> and
+ <code>end(row)</code> allow looping through all
entries of a single line.
<br>
(GK 2002/09/11)
</p>
<li> <p>
- New: Classes <code class="class">SparsityPattern</code> and <code
+ New: Classes <code>SparsityPattern</code> and <code
class="class">SparseMatrix</code> now have functions <code
class="member">block_write/block_read</code>, allowing to dump the data
of these objects into a file in binary format, and later to re-read it
</p>
<li> <p>
- New: <code class="class">Vector</code> has a function <code
+ New: <code>Vector</code> has a function <code
class="member">lp_norm</code>, computing the <i>l<sub>p</sub></i>-norm
of a vector for arbitrary <i>p</i>.
<br>
<li> <p>
New: a way of using abstract base classes for matrices has
- been implemented with <code class="class">PointerMatrixBase</code>
- and <code class="class">PointerMatrix</code>. Storing a matrix in
- <code class="class">PointerMatrix</code> allows to use the base
+ been implemented with <code>PointerMatrixBase</code>
+ and <code>PointerMatrix</code>. Storing a matrix in
+ <code>PointerMatrix</code> allows to use the base
class in functions only templated for the vector class.
<br>
(GK 2002/07/18)
</p>
<li> <p>
- New: The <code class="class">GeometryInfo</code> classes now
+ New: The <code>GeometryInfo</code> classes now
have new static member functions <code
class="member">child_cell_from_point</code> that, given a point
in the unit cell, returns which child cell it is on; <code
<li> <p>
New: The functions in the <code
class="class">DerivativeApproximation</code> class can now also
- work on <code class="class">BlockVector</code>.
+ work on <code>BlockVector</code>.
<br>
(WB 2003/04/11)
</p>
</p>
<li> <p>
- New: The <code class="member">DataOut_DoFData::merge_patches</code>
+ New: The <code>DataOut_DoFData::merge_patches</code>
function allows to merge the patches of two objects, so as to create one
output file from several DoF handlers. This is useful if one uses a
domain decomposition algorithm where each block of the domain is
</p>
<li> <p>
- Fixed: The <code class="class">DataOutStack</code> class had a problem
+ Fixed: The <code>DataOutStack</code> class had a problem
when there were as many degrees of freedom as there were cells (i.e. if
we were using DG0 elements). This should now be fixed.
<br>
</p>
<li> <p>
- Fixed: The <code class="class">DataOutFaces</code> class was
+ Fixed: The <code>DataOutFaces</code> class was
broken for cell data. It should now be correct, although the
algorithm used is not optimal, being approximately quadratic in
runtime.
</p>
<li> <p>
- New: The <code class="member">ConstraintMatrix::shift</code>
+ New: The <code>ConstraintMatrix::shift</code>
function shifts and translates the elements of the constraint
matrix by a certain number of indices.
<br>
</p>
<li> <p>
- New: The <code class="class">GridReordering</code> class now uses a
+ New: The <code>GridReordering</code> class now uses a
vastly better algorithm in 2d than previously. The new algorithm is
linear in time, where it could be exponential before.
<br>
<li> <p>
Changed: Some implementation details of the <code
class="class">GridReordering</code> class have been moved to a
- namespace <code class="class">internal</code>.
+ namespace <code>internal</code>.
<br>
(WB 2003/02/19)
</p>
<li> <p>
New: There are now functions <code
class="member">FiniteElement::prolongation_is_implemented</code> and
- <code class="member">FiniteElement::constraints_are_implemented</code>
+ <code>FiniteElement::constraints_are_implemented</code>
that inform the caller about whether the finite element in question in
fact implements its prolongation matrices and hanging node constraints.
<br>
</p>
<li> <p>
- Fixed: Objects of type <code class="class">FESystem</code>
+ Fixed: Objects of type <code>FESystem</code>
could not be constructed if one of the elements it is to be composed of
did not implement interface constraints for hanging nodes. This is now
fixed: you can construct such a composed element, but it does not
<li> <p>
New: For each of the renumbering functions in the <code
class="class">DoFRenumbering</code> class there is now an
- additional <code class="member">compute_*</code>
+ additional <code>compute_*</code>
function. These new functions compute and return the
corresponding renumbering vectors but do not perform the actual
- renumbering on the <code class="class">DoFHandler</code>
+ renumbering on the <code>DoFHandler</code>
object. The behaviour of the old functions is not changed.
<br>
(RH 2003/02/03)
</p>
<li> <p>
- Fixed: The <code class="class">GridReordering</code> tried to be
+ Fixed: The <code>GridReordering</code> tried to be
thread-safe in the initialization of some data, but was not due to a
typo. This is now fixed.
<br>
</p>
<li> <p>
- Changed: The <code class="member">FEValues::get_cell</code> and
- <code class="member">FEValues::get_face</code> functions have
+ Changed: The <code>FEValues::get_cell</code> and
+ <code>FEValues::get_face</code> functions have
been removed, since they limited our ability to use this
class for other types of DoFHandlers, for example future
extensions for hp elements.
</p>
<li> <p>
- New: Checked in new <code class="class">GridGenerator</code>
- member function <code class="member">half_hyper_ball</code>,
- derived from member <code class="member">hyper_ball</code>.
+ New: Checked in new <code>GridGenerator</code>
+ member function <code>half_hyper_ball</code>,
+ derived from member <code>hyper_ball</code>.
The initial mesh contains four elements. This mesh will work with
- the boundary class <code class="class">HalfHyperBallBoundary</code>.
+ the boundary class <code>HalfHyperBallBoundary</code>.
<br>
(Brian Carnes 2002/12/16)
</p>
<li> <p>
- New: Checked in new class <code class="class">FE_Q_Hierarchical</code>
- derived from class <code class="class">FiniteElement</code>.
- This element is analogous to <code class="class">FE_Q</code>, but
+ New: Checked in new class <code>FE_Q_Hierarchical</code>
+ derived from class <code>FiniteElement</code>.
+ This element is analogous to <code>FE_Q</code>, but
makes use of hierarchical shape functions, based on the
- <code class="class">Polynomials::Hierarchical</code> class.
+ <code>Polynomials::Hierarchical</code> class.
For <code>degree>1</code>, the non-nodal basis functions are "bubble"
functions, which are not Lagrange polynomials. Therefore, the usual
interpolation based on using unit support points will not work for
<li> <p>
New: For finite element classes, the functions
- <code class="member">unit_support_point</code> and
- <code class="member">unit_face_support_point</code> return the position
+ <code>unit_support_point</code> and
+ <code>unit_face_support_point</code> return the position
of an individual support point. This is necessary when you want to get
information about the support points of certain components in a composed
finite element, where not all components provide support points, and the
composed element thus does not fill the array the
- <code class="member">get_unit_support_points</code> function returns.
+ <code>get_unit_support_points</code> function returns.
<br>
(WB 2002/11/23)
</p>
<li> <p>
Fixed: Vectors could not be given as input and output vectors to the
- <code class="class">SolutionTransfer</code> class at the same time, but
+ <code>SolutionTransfer</code> class at the same time, but
this was not checked. An assertion has now been added to ensure this
requirement.
<br>
<li> <p>
New: The <code
class="member">FiniteElement::element_multiplicity</code> function was
- previously only available in the <code class="class">FESystem</code>
+ previously only available in the <code>FESystem</code>
class, where it actually returned a non-trivial value. However, in some
cases one would need to access this field also for general finite
elements, even if the returned value will be equal to one in all cases
<li> <p>
Fixed: The algorithm to generate neighbor information for patches from
- cells in <code class="member">DataOut::build_patches</code> was rather
+ cells in <code>DataOut::build_patches</code> was rather
inefficient, tripling the time for patch generation when support for
neighbor information was added. Furthermore, the algorithm was at least
O(N log N), where the rest was all O(N), making this particularly
</p>
<li> <p>
- Fixed: the <code class="class">GridIn</code> class had problems
+ Fixed: the <code>GridIn</code> class had problems
when reading in UCD grids with comment lines that contained
only the comment sign, but nothing else. This is now fixed.
<br>
</p>
<li> <p>
- Improved: <code class="class">VectorTools</code>::<code
+ Improved: <code>VectorTools</code>::<code
class="member">integrate_difference</code> can compute <i>L<sup>p</sup></i>
and <i>W<sup>1,p</sup></i> norms for arbitrary <i>p</i>. The function
receives an additional optional argument <i>p</i> for this. All previous
(GK 2002/08/01)
</p>
- <li> <p> New: The <code class="class">GridTools</code> class now
+ <li> <p> New: The <code>GridTools</code> class now
offers functions to apply general transformations to all
vertices of a triangulation, and also more specialized
functions that shift, scale, and rotate triangulations.
for continuous elements on globally refined grids and on
discontinuous elements, only. Now, there is a new <code
class="member">FETools::extrapolate</code> function with an
- additional <code class="class">ConstraintMatrix</code> argument
+ additional <code>ConstraintMatrix</code> argument
for the hanging node constraints. This new function works for
continuous as well as for discontinuous elements. But, the old
function is still supported.
led to unexpected behaviour of the <code
class="member">user_flags</code> for users who weren't aware of
this <em>side-effect</em>. Now, these functions do not alter
- the <code class="member">user_flags</code>, any
+ the <code>user_flags</code>, any
more. Consequently, the users do not need to worry any more
about the reliability of the <code
class="member">user_flags</code> when calling any function of
<li> <p> Changed: The constructor of <code
class="class">DoFHandler</code> now takes a reference to a
- <code>const</code> <code class="class">Triangulation</code>.
+ <code>const</code> <code>Triangulation</code>.
<br>
(RH 2002/06/12)
</p>
class="class">DoFAccessor</code>, <code
class="class">TriaAccessor</code> and <code
class="class">TriaIterator</code> classes now take pointers to
- <tt>const</tt> <code class="class">Triangulation</code>s.
+ <tt>const</tt> <code>Triangulation</code>s.
<br>
(RH 2002/06/12)
</p>
</p>
<li> <p>
- Fixed: The <code class="member">get_dof_indices</code>
+ Fixed: The <code>get_dof_indices</code>
functions of DoF accessor classes used to work also for
non-active cells. However, the results were bogus except for
the special case that we had a finite element that has all its
<li> <p>
New: For encapsulated postscript output of 2d grids, it is now
- possible to tell the <code class="class">GridOut</code> class to
+ possible to tell the <code>GridOut</code> class to
write the cell numbers into each cell, as well as the numbers
of the vertices.
<br>
</p>
</ol>
-<hr>
-Last update $Date$
-</body>
-</html>
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.1 Transitional//EN"
- "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
- <head>
- <link href="../screen.css" rel="StyleSheet" media="screen">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<body>
-
-
-<h2>Changes between Version 4.0.0 and 5.0.0</h2>
-
-<p>
-This is the list of changes made after the release of
-<acronym>deal.II</acronym> version 4.0. It is subdivided into changes
-made to the three sub-libraries <a href="#base">base</a>,
-<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
-changes to the <a href="#general">general infrastructure,
-documentation, etc</a>.
-</p>
-
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_4_0_and_5_0 Changes between Version 4.0 and 5.0
+
<p>
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the author. Regular
contributor's names are abbreviated by WB (Wolfgang Bangerth), GK
(Guido Kanschat), RH (Ralf Hartmann).
<ol>
- <li> <p> Removed: All the matrix classes have functions <code
- class="member">reinit</code> that are used to resize the
+ <li> <p> Removed: All the matrix classes have functions <code>reinit</code> that are used to resize the
matrix. However, the sparse matrix classes had an equally named
function without arguments that basically left the size of the matrix
unchanged but set all elements of the matrix to zero. It could also be
abused to notify the matrix that the sparsity pattern on which it is
built has changed, an inherently risky procedure. The no-argument code
- <class="member">reinit</code> function has therefore been removed to
- avoid confusion with the <code class="member">reinit</code> functions
- that take arguments. Instead, you should now use <code
- class="member">matrix=0</code> to simply set all elements of the
+ <code>reinit</code> function has therefore been removed to
+ avoid confusion with the <code>reinit</code> functions
+ that take arguments. Instead, you should now use <code>matrix=0</code> to simply set all elements of the
matrix to zero. If you want to notify a sparse matrix that its sparsity
- pattern has changed, use the <code
- class="member">reinit(SparsityPattern)</code> function.
+ pattern has changed, use the <code>reinit(SparsityPattern)</code> function.
<br>
(WB 2004/05/10)
</p>
<li> <p> Removed: All the vector and block vector classes as well as
- the <code class="class">FullMatrix</code> class (the latter
- through its <code class="class">Table</code> base class) had a
- member function <code class="member">clear</code> which simply
+ the <code>FullMatrix</code> class (the latter
+ through its <code>Table</code> base class) had a
+ member function <code>clear</code> which simply
resets all values of the vector or matrix to zero. It did not
change the size of the object, though. This was confusing,
since the standard C++ container classes implement the
- semantics that the <code class="member">clear</code> functions
+ semantics that the <code>clear</code> functions
delete all entries of the containers, i.e. resize it to zero,
- and we implemented similar semantics also for the <code
- class="class">SparseMatrix</code>, <code
- class="class">DoFHandler</code>, <code
- class="class">ConstraintMatrix</code> and various other
+ and we implemented similar semantics also for the <code>SparseMatrix</code>, <code>DoFHandler</code>, <code>ConstraintMatrix</code> and various other
classes.
<br>
- To avoid this confusion in the future, the <code
- class="member">clear</code> functions have been dropped from
+ To avoid this confusion in the future, the <code>clear</code> functions have been dropped from
the interface of the vector and full matrix classes, and the
remaining instances where deal.II classes have a function of
that name really mean that the object is reset to its virginal
state. To set all
elements of a matrix or vector to zero without changing its size, the
- recommended way is to use the more obvious notation <code
- class="member">vector=0</code> and <code
- class="member">matrix=0</code>. To
+ recommended way is to use the more obvious notation <code>vector=0</code> and <code>matrix=0</code>. To
reset the elements of a table over arbitrary objects, use
- <code class="member">Table<T>::reset_values()</code>.
+ <code>Table<T>::reset_values()</code>.
<br>
(WB 2004/05/10)
</p>
- <li> <p> Removed: The <code
- class="member">SparseLUDecomposition::reinit</code> and <code
- class="member">SparseMIC::reinit</code> functions without
+ <li> <p> Removed: The <code>SparseLUDecomposition::reinit</code> and <code>SparseMIC::reinit</code> functions without
argument had been deprecated before, and have now been removed.
<br>
(WB 2004/05/10)
</p>
- <li> <p> Changed: the template parameter of <code
- class="class">MGTransferPrebuilt</code> is now the complete vector
+ <li> <p> Changed: the template parameter of <code>MGTransferPrebuilt</code> is now the complete vector
type, not just the value type of the vector. This allows to operate
- on <code class="class">Vector</code> as well as on <code
+ on <code>Vector</code> as well as on <code
class="class">BlockVector</code>. Unfortunately, the untested class
- <code class="class">MGTransferBlock</code> underwent some more
+ <code>MGTransferBlock</code> underwent some more
changes without testing, such that it should be used with high
caution.
<br>
(GK 2004/04/01)
</p>
- <li> <p> Changed: The <code class="class">FiniteElement</code> classes had a
- function <code class="member">restrict</code> that returns the
+ <li> <p> Changed: The <code>FiniteElement</code> classes had a
+ function <code>restrict</code> that returns the
restriction matrix from children to the mother cell. Unfortunately,
<code>restrict</code> has become a keyword in recent standards of the C
language, and some C++ compilers have picked this up. The function has
therefore been renamed <code
class="member">get_restriction_matrix</code>, which also better
reflects what it is actually doing. To keep consistent, we have also
- rename the corresponding function <code
- class="member">prolongate</code> to <code
- class="member">get_prolongation_matrix</code>.
+ rename the corresponding function <code>prolongate</code> to <code>get_prolongation_matrix</code>.
<br>
(WB 2004/02/29)
</p>
<li> <p>
- Fixed and changed: The <code
- class="class">SolutionTransfer</code><code
- class="member">::(refine_)interpolate(const Vector &in, Vector
- &out)</code> functions now require the <code
- class="member">in</code> and <code class="member">out</code>
+ Fixed and changed: The <code>SolutionTransfer</code><code>::(refine_)interpolate(const Vector &in, Vector
+ &out)</code> functions now require the <code>in</code> and <code>out</code>
vectors being already of right sizes,
i.e. <code>in.size()=n_dofs_old</code> and
- <code>out.size()=n_dofs_refined</code>. Furthermore, the <code
- class="class">SolutionTransfer</code><code
- class="member">::(refine_)interpolate(const
+ <code>out.size()=n_dofs_refined</code>. Furthermore, the <code>SolutionTransfer</code><code>::(refine_)interpolate(const
vector<Vector> &all_in, vector<Vector>
&all_out)</code> now check that the number of in and output
vectors are the same, i.e.
</p>
<li> <p>
- Changed: The <code class="class">QProjector</code> has functions that
+ Changed: The <code>QProjector</code> has functions that
project a lower-dimensional quadrature formula onto all faces or
subfaces of a cell. In 3d, it now does this but also adds projections of
these quadrature formula onto the faces from the other side. We need
<li> <p> Moved and changed: The header file
<tt>include/numerics/dof_renumbering.h</tt> has been moved to the
directory <tt>include/dofs</tt>, where it logically
- belongs. Furthermore, the sorting parameter of the function <code
- class="class">DoFRenumbering</code><code
- class="member">::component_wise</code> has changed its meaning. See
+ belongs. Furthermore, the sorting parameter of the function <code>DoFRenumbering</code><code>::component_wise</code> has changed its meaning. See
the reference documentation for details.
<br>
(GK 2003/07/03)
<ol>
- <li> <p> New: After the documentation tool for <acronym>deal.II</acronym> has been
+ <li> <p> New: After the documentation tool for deal.II has been
changed to <a href="http://www.doxygen.org">Doxygen</a>, it is delivered in two
tar-files. Additional to the traditional source tarball, the preprocessed
documentation is available ready for reading with a web browser.
(WB 2004/04/12)
</p>
- <li> <p> New: <acronym>deal.II</acronym> is now able to interface to the
+ <li> <p> New: deal.II is now able to interface to the
<a href="http://www-users.cs.umn.edu/~karypis/metis/index.html"
target="_top">METIS</a> library to generate domain partitionings. This
is enabled if a METIS installation is detected, which either happens
(RH 2004/03/08)
</p>
- <li> <p> New: <acronym>deal.II</acronym> now comes with a complete set of
+ <li> <p> New: deal.II now comes with a complete set of
wrappers classes for <a href="http://www.mcs.anl.gov/petsc/"
target="_top">PETSc</a> vectors, matrices, linear solvers and
preconditioners. Many of the algorithms in deal.II have also been
simply forwards to the new program. In order to use the new
one, simply replace the line
<code><pre>
- $(PERL) $D/common/scripts/make_dependencies.pl ...
+ \$(PERL) \$D/common/scripts/make_dependencies.pl ...
</pre></code>
by
<code><pre>
- $D/common/scripts/make_dependencies ...
+ \$D/common/scripts/make_dependencies ...
</pre></code>
i.e. call the program directly without the perl interpreter and
without the file extension for a perl program.
<ol>
<li> <p>
- New: There is now a new <code class="class">PolynomialsP</code>
- class which is based on <code
- class="class">Polynomials::Monomial</code> and <code
- class="class">PolynomialSpace</code>. In contrast to the
- default ordering of the polynomials in <code
- class="class">PolynomialSpace</code>, (e.g. for degree=2) <i>1,
- x, x<sup>2</sup>, y, xy, y<sup>2</sup></i>, the <code
- class="class">PolynomialsP</code> class now gives the
+ New: There is now a new <code>PolynomialsP</code>
+ class which is based on <code>Polynomials::Monomial</code> and <code>PolynomialSpace</code>. In contrast to the
+ default ordering of the polynomials in <code>PolynomialSpace</code>, (e.g. for degree=2) <i>1,
+ x, x<sup>2</sup>, y, xy, y<sup>2</sup></i>, the <code>PolynomialsP</code> class now gives the
(natural?!) ordering <i>1, x, y, xy, x<sup>2</sup>,
y<sup>2</sup></i>.
<br>
</p>
<li> <p>
- New: The classes <code class="class">PolynomialSpace</code> and
- <code class="class">TensorProductPolynomials</code> now have
- new <code class="member">set_numbering</code> functions which
+ New: The classes <code>PolynomialSpace</code> and
+ <code>TensorProductPolynomials</code> now have
+ new <code>set_numbering</code> functions which
allow to change the ordering of the polynomials. The ordering
and the indices of the polynomials kann be checked by using the
- new <code class="member">output_indices</code> functions.
+ new <code>output_indices</code> functions.
<br>
(RH 2004/03/11)
</p>
- <li> <p> New: The class <code
- class="class">PolynomialsBDM</code> implements BDM polynomials in
+ <li> <p> New: The class <code>PolynomialsBDM</code> implements BDM polynomials in
two dimensions on the unit square. It was implemented as is
according to some urgent need, but should be suitable to be fit
- into a <code class="class">FiniteElement</code> similar to
+ into a <code>FiniteElement</code> similar to
Raviart/Thomas.
<br>
(GK 2004/01/05)
</p>
- <li> <p> New: Objects of type <code class="class">Polynomial</code>
+ <li> <p> New: Objects of type <code>Polynomial</code>
can now be added to and subtracted from each other through
- operators <code class="member">+=</code> and <code
- class="member">-=</code>.
+ operators <code>+=</code> and <code>-=</code>.
<br>
(GK 2003/12/16)
</p>
- <li> <p> New: There is now a class <code
- class="class">QuadratureSelector</code> that allows to select a
+ <li> <p> New: There is now a class <code>QuadratureSelector</code> that allows to select a
quadrature formula based on a string argument and possibly a
number indicating the order of the formula.
<br>
(Ralf B. Schulz 2003/10/29)
</p>
- <li> <p> Fixed: The constructor of the <code class="class">QGauss</code> class
+ <li> <p> Fixed: The constructor of the <code>QGauss</code> class
computed positions and weights of quadrature points in long double accuracy.
However, on machines where long double is the same as double, it
never reached the requested accuracy, in effect leading to an infinite loop.
(WB 2003/09/19)
</p>
- <li> <p> New: The <code class="class">Function</code> class now
+ <li> <p> New: The <code>Function</code> class now
exports the value of its template argument through the static
- member variable <code class="member">dimension</code>.
+ member variable <code>dimension</code>.
<br>
(WB 2003/09/15)
</p>
- <li> <p> Changed: The <code
- class="member">ParameterHandler::declare_entry</code> function
+ <li> <p> Changed: The <code>ParameterHandler::declare_entry</code> function
now allows to redeclare an entry that has already been
declared. This can be used to override a default value
previously set.
(WB 2003/09/03)
</p>
- <li> <p> Improved: The <code
- class="member">ParameterHandler::declare_entry</code> function now takes an
+ <li> <p> Improved: The <code>ParameterHandler::declare_entry</code> function now takes an
additional parameter (defaulting to the empty string) that can be used
to document the intent of a parameter. This string, together with the
- default value of an entry, is written to the output by the <code
- class="member">ParameterHandler::print_parameters</code> function that
+ default value of an entry, is written to the output by the <code>ParameterHandler::print_parameters</code> function that
can be used to generate a virginial parameter file, or one that contains
the settings of all parameters used in a computation.
<br>
(WB 2003/08/13)
</p>
- <li> <p> Changed: The <code
- class="member">ParameterHandler::declare_entry</code> previously
+ <li> <p> Changed: The <code>ParameterHandler::declare_entry</code> previously
returned a value indicating whether the just-declared entry didn't
already existed and that the default value matches the given
pattern. However, this value could only always be true since these two
(WB 2003/08/13)
</p>
- <li> <p> Improved: <code class="class">Logstream</code>::<code
- class="member">depth_console</code>, <code
- class="class">Logstream</code>::<code class="member">depth_file</code>, <code
- class="class">Logstream</code>::<code
- class="member">log_execution_time</code> and <code
- class="class">Logstream</code>::<code
- class="member">log_time_differences</code> return the previous value.
+ <li> <p> Improved: <code>Logstream</code>::<code>depth_console</code>, <code>Logstream</code>::<code>depth_file</code>, <code>Logstream</code>::<code>log_execution_time</code> and <code>Logstream</code>::<code>log_time_differences</code> return the previous value.
<br>
(GK 2003/06/22)
</p>
<h3>lac</h3>
<ol>
- <li> <p> Improved: The matrix-vector operations of <code
- class="class">SparseMatrix</code> accept arguments of type <code
- class="class">BlockVector</code>.
+ <li> <p> Improved: The matrix-vector operations of <code>SparseMatrix</code> accept arguments of type <code>BlockVector</code>.
<br>
(GK/2004/03/31)
</p>
- <li> <p> Fixed: The <code class="class">SparseMatrix</code> iterator classes
+ <li> <p> Fixed: The <code>SparseMatrix</code> iterator classes
had various interesting bugs when rows of the matrix were completely
empty. These should now be fixed.
<br>
(WB 2004/03/30)
</p>
- <li> <p> New: The <code class="class">SparsityPattern</code> class now also
+ <li> <p> New: The <code>SparsityPattern</code> class now also
has an iterator class that allows to walk over all nonzero entries of a
sparsity pattern.
<br>
(WB 2004/03/29)
</p>
- <li> <p> New: The iterator classes into <code
- class="class">SparseMatrix</code> have been rearranged and extended, so
+ <li> <p> New: The iterator classes into <code>SparseMatrix</code> have been rearranged and extended, so
that it is now also possible to write to individual matrix entries
through these iterators.
<br>
(WB 2004/03/29)
</p>
- <li> <p> New: The <code class="class">Vector</code> and <code
- class="class">BlockVector</code> classes now have member functions
- <code class="member">is_non_negative</code> that check whether a vector
+ <li> <p> New: The <code>Vector</code> and <code>BlockVector</code> classes now have member functions
+ <code>is_non_negative</code> that check whether a vector
has no negative entries.
<br>
(WB 2004/02/29)
</p>
- <li> <p> Fixed: The <code
- class="class">SolverMinRes</code> class had a nasty bug where we were
+ <li> <p> Fixed: The <code>SolverMinRes</code> class had a nasty bug where we were
inadvertently copying vectors; this could also have led to a memory
corruption bug. This is now fixed.
<br>
(WB 2004/02/26)
</p>
- <li> <p> New: There is now a function <code
- class="class">FullMatrix::add_scaled</code>. It replaces the old
- function <code class="class">FullMatrix::add</code> which did the same,
+ <li> <p> New: There is now a function <code>FullMatrix::add_scaled</code>. It replaces the old
+ function <code>FullMatrix::add</code> which did the same,
but had a name that was incompatible with respective functions in the
other matrix classes.
<br>
(WB 2004/02/23)
</p>
- <li> <p> New: <code class="class">FullMatrix</code> has new functions <code
- class="member">add</code> and ,<code
- class="member">Tadd</code>
+ <li> <p> New: <code>FullMatrix</code> has new functions <code>add</code> and ,<code>Tadd</code>
allowing to add to a selected block of the matrix.
<br>
(GK 2004/02/12)
</p>
- <li> <p> New: The <code
- class="class">Vector</code> class now has operators to compare for
+ <li> <p> New: The <code>Vector</code> class now has operators to compare for
equality and inequality.
<br>
(WB 2004/02/09)
</p>
- <li> <p> New: The <code
- class="member">SparseMatrix::operator()</code> generated an assertion
+ <li> <p> New: The <code>SparseMatrix::operator()</code> generated an assertion
failure if the requested entry in the matrix isn't there. This has been
changed so that it actually throws an exception instead, also in
optimized mode.
(WB 2004/02/06)
</p>
- <li> <p> New: There is now a function <code
- class="member">SparseMatrix::frobenius_norm</code> that computes the
+ <li> <p> New: There is now a function <code>SparseMatrix::frobenius_norm</code> that computes the
Frobenius norm of a sparse matrix.
<br>
(WB 2004/02/06)
</p>
- <li> <p> Changed: In matrix-vector operations of the <code
- class="class">Full/SparseMatrix</code> classes, source and destination
+ <li> <p> Changed: In matrix-vector operations of the <code>Full/SparseMatrix</code> classes, source and destination
cannot be the same. We now also check that this is indeed the case.
<br>
(WB 2004/01/26)
</p>
- <li> <p> Improved: Initialization routines of class <code
- class="class">SparseMatrix</code> have an additional parameter
+ <li> <p> Improved: Initialization routines of class <code>SparseMatrix</code> have an additional parameter
controlling the storage of diagonal entries.
<br>
(GK 2003/11/18)
</p>
<li> <p> New:
- <code class="class">SolverFGMRES</code> implements the flexible
+ <code>SolverFGMRES</code> implements the flexible
GMRES method with varying preconditioner from the right. It is
- also accessible in <code
- class="class">SolverSelector</code> by choosing <tt>fgmres</tt>.
+ also accessible in <code>SolverSelector</code> by choosing <tt>fgmres</tt>.
<br>
(GK 2003/10/07)
</p>
- <li> <p> Changed: The <code class="class">SparseDirectMA27</code>
+ <li> <p> Changed: The <code>SparseDirectMA27</code>
class used to store a pointer to the sparsity pattern of the
matrix. It now releases this as soon as it doesn't need it any
more.
</p>
<li> <p> New: Some of the member matrix-vector functions of the
- <code class="class">BlockSparseMatrix</code> class that
- previously could only be used with arguments of type <code
- class="class">BlockVector</code> can now also be used with the
- usual <code class="class">Vector</code> class provided the
+ <code>BlockSparseMatrix</code> class that
+ previously could only be used with arguments of type <code>BlockVector</code> can now also be used with the
+ usual <code>Vector</code> class provided the
block matrix has only one block row or column.
<br>
(WB 2003/09/09)
</p>
- <li> <p> Fixed: <code class="class">FullMatrix</code>::<code
- class="member">copy_from</code> didn't compile when copying
+ <li> <p> Fixed: <code>FullMatrix</code>::<code>copy_from</code> didn't compile when copying
from a sparse matrix. This is now fixed.
<br>
(Ralf B. Schulz 2003/09/04)
</p>
- <li> <p> New: The classes <code class="class">FullMatrix</code> and
- <code class="class">PreconditionBlockJacobi</code> have a <code
- class="class">const_iterator</code>.
+ <li> <p> New: The classes <code>FullMatrix</code> and
+ <code>PreconditionBlockJacobi</code> have a <code>const_iterator</code>.
<br>
(GK 2003/07/18)
</p>
<h3>deal.II</h3>
<ol>
- <li> <p> Improved: The <code
- class="member">DoFTools::compute_Cuthill_McKee</code> function
+ <li> <p> Improved: The <code>DoFTools::compute_Cuthill_McKee</code> function
needs to build a sparsity pattern for its operations, and uses
- the <code
- class="member">DoFHandler::max_couplings_per_dof</code>
+ the <code>DoFHandler::max_couplings_per_dof</code>
function for this. However, the estimates returned by the
latter function are rather bad in 3d, leading to excessive
memory allocation in the Cuthill McKee algorithm in 3d. This is
(WB 2004/05/18)
</p>
- <li> <p> Improved: <code class="class">Triangulation</code> has
- functions <code class="member">n_faces</code> and <code
- class="member">n_active_faces</code>, globally as well as by level,
- similar to <code class="member">n_cells</code>.
+ <li> <p> Improved: <code>Triangulation</code> has
+ functions <code>n_faces</code> and <code>n_active_faces</code>, globally as well as by level,
+ similar to <code>n_cells</code>.
<br>
(GK 2004/05/18)
</p>
<li> <p>
New: Added support for <a href="http://www.geuz.org/gmsh/"
- target="_top">gmsh</a> mesh format in <code
- class="member">GridIn::read_msh</code>.
+ target="_top">gmsh</a> mesh format in <code>GridIn::read_msh</code>.
<br>
(Luca Heltai 2004/04/21)
</p>
<li> <p>
- New: The function <code
- class="member">GridGenerator::cylinder_shell</code> generates a domain
+ New: The function <code>GridGenerator::cylinder_shell</code> generates a domain
of the type which the name suggests.
<br>
(WB 2004/04/19)
</p>
<li> <p>
- Changed: The <code
- class="member">KellyErrorEstimator::estimate</code> function takes an
+ Changed: The <code>KellyErrorEstimator::estimate</code> function takes an
additional parameter that lets it only compute error indicators for a
certain subdomain. This is meant to allow for a better parallelization
of efforts in parallel programs.
</p>
<li> <p>
- Changed: <code
- class="class">MGTransferSelect</code> uses target components
- correctly. Unfortunately, the untested class <code
- class="class">MGTransferBlock</code> does not work anymore. Since its
+ Changed: <code>MGTransferSelect</code> uses target components
+ correctly. Unfortunately, the untested class <code>MGTransferBlock</code> does not work anymore. Since its
usefulness was not clear anyway, this state may continue for a while.
<br>
(GK 2004/04/01)
</p>
<li> <p>
- New: There is now a new <code class="class">FE_Poly</code>
- class which is templatized for polynomial spaces like <code
- class="class">TensorProductPolynomials</code>, <code
- class="class">PolynomialSpace</code> or <code
- class="class">PolynomialsP</code>. Many finite element classes
+ New: There is now a new <code>FE_Poly</code>
+ class which is templatized for polynomial spaces like <code>TensorProductPolynomials</code>, <code>PolynomialSpace</code> or <code>PolynomialsP</code>. Many finite element classes
are now derived from this class and the implementation of all
common functionality is now moved from these finite element
- classes to <code class="class">FE_Poly</code>.
+ classes to <code>FE_Poly</code>.
<br>
(RH 2004/03/18)
</p>
- <li> <p> New: The new function <code
- class="member">MatrixTools::local_apply_boundary_values</code> folds
+ <li> <p> New: The new function <code>MatrixTools::local_apply_boundary_values</code> folds
boundary value information into local matrices and vectors before they
are written into the global matrix and vector. This way, the final call
- to <code class="member">MatrixTools::apply_boundary_values</code> can
+ to <code>MatrixTools::apply_boundary_values</code> can
be avoided.
<br>
(WB 2004/03/16)
</p>
- <li> <p> New: There are now functions <code
- class="member">ConstraintMatrix::distribute_local_to_global</code> that
+ <li> <p> New: There are now functions <code>ConstraintMatrix::distribute_local_to_global</code> that
take a local matrix or vector and distribute it to a global one, but
taking care of constrained degrees of freedom; in that case, the
respective entries are already distributed to the final place in the
- global matrix or vector. That way, the final call to the <code
- class="member">ConstraintMatrix::condense</code> function can be
+ global matrix or vector. That way, the final call to the <code>ConstraintMatrix::condense</code> function can be
avoided.
<br>
(WB 2004/03/15)
</p>
- <li> <p> New: The new functions <code
- class="member">SparsityPattern::partition</code>, <code
- class="member">GridTools::partition_triangulation</code>, <code
- class="member">DoFTools::get_subdomain_association</code>, <code
- class="member">DoFTools::count_dofs_with_subdomain_association</code>,
- <code class="member">GridTools::get_subdomain_association</code>, <code
- class="member">GridTools::count_cells_with_subdomain_association</code>,
- and <code class="member">DoFRenumbering::subdomain_wise</code> can now
+ <li> <p> New: The new functions <code>SparsityPattern::partition</code>, <code>GridTools::partition_triangulation</code>, <code>DoFTools::get_subdomain_association</code>, <code>DoFTools::count_dofs_with_subdomain_association</code>,
+ <code>GridTools::get_subdomain_association</code>, <code>GridTools::count_cells_with_subdomain_association</code>,
+ and <code>DoFRenumbering::subdomain_wise</code> can now
be used to generate partitions of a triangulation and its associated
degrees of freedom suitable for parallel computations with PETSc.
<br>
(WB 2004/03/08)
</p>
- <li> <p> Improved: When eliminating nodes from a matrix using the <code
- class="member">ConstraintMatrix::condense</code> functions, the
+ <li> <p> Improved: When eliminating nodes from a matrix using the <code>ConstraintMatrix::condense</code> functions, the
diagonal entry was set to one. It is now set to an entry that more
resembles the size of the other diagonal entries, so that we don't run
into scaling problems for applications that have very large or small
(WB 2004/03/02)
</p>
- <li> <p> Changed: The classes <code class="class">DataOut*</code> and <code
- class="class">KellyErrorEstimator</code> have been generalized to take
+ <li> <p> Changed: The classes <code>DataOut*</code> and <code>KellyErrorEstimator</code> have been generalized to take
more and different vector types as input parameters. In particular,
they now take normal and block vectors over doubles and floats, as well
as PETSc vectors if PETSc support is detected during configuration of
(WB 2004/03/01)
</p>
- <li> <p> Changed: The template parameter of the functions in the <code
- class="class">GridRefinement</code> class have been changed. Where they
- previously denoted the type over which the <code
- class="class">Vector</code> class is to be templated, they now mean the
+ <li> <p> Changed: The template parameter of the functions in the <code>GridRefinement</code> class have been changed. Where they
+ previously denoted the type over which the <code>Vector</code> class is to be templated, they now mean the
actual vector class. Thus, they can be any other template class as long
as there are suitable operations defined over them. In addition,
the documentation stated that they must be vectors of floats; this
<li> <p>
New: The function
- <class="class">FETools</code>::<class="member">project_dg</code>
+ <code>FETools::project_dg</code>
performs <i>L<sup>2</sup></i>-projections between finite element spaces
of different degrees on the same mesh.
<br>
(GK 2003/11/28)
</p>
-
- <li> <p>
- Improved: <code class="class">FiniteElementData</code> has a function
- <class="member">tensor_degree()</code>, returning the degree of the
- polynomial space suitable for choosing a tensor product quadrature
- formula.
- <br>
- (GK 2003/11/28)
- </p>
-
- <li> <p>
- New: Long requested but never implemented before in the
- library: there is now a function <code
- <class="class">GridTool</code>::<class="member">find_active_cell_around_point</code>
+<code>FiniteElementData</code> has a function>tensor_degree()</code>, returning the degree of thesuitable for choosing a tensor product quadratureimplemented before in theis now a function <code>GridTool</code>::<code>find_active_cell_around_point</code>
that, given a point, finds the active cell in which this point
lies.
<br>
</p>
<li> <p>
- New: <code class="class">MGCoarseGridHouseholder</code>
+ New: <code>MGCoarseGridHouseholder</code>
implements a coarse grid solver using QR-factorization.
<br>
(GK 2003/10/17)
</p>
<li> <p>
- Fixed: The <code
- class="member">FEFaceValuesBase::boundary_form</code>
+ Fixed: The <code>FEFaceValuesBase::boundary_form</code>
function was declared but not implemented. This is now fixed.
<br>
(Jörg R. Weimar 2003/10/22)
</p>
<li> <p>
- Improved: The <code
- class="member">MatrixCreator::create_mass_matrix</code>
+ Improved: The <code>MatrixCreator::create_mass_matrix</code>
functions are now templatized also on the template argument of
- the <code class="class">SparseMatrix</code> class. This allows
- invoking this function for <code
- class="class">SparseMatrix<double></code> and <code
- class="class">SparseMatrix<float></code> objects.
+ the <code>SparseMatrix</code> class. This allows
+ invoking this function for <code>SparseMatrix<double></code> and <code>SparseMatrix<float></code> objects.
<br>
(RH 2003/10/22)
</p>
<li> <p>
- New: There is now also a function <code
- class="member">MGDoFCellAccessor::neighbor_child_on_subface</code>
- that returns the result of the <code
- class="member">CellAccessor::neighbor_child_on_subface</code>
+ New: There is now also a function <code>MGDoFCellAccessor::neighbor_child_on_subface</code>
+ that returns the result of the <code>CellAccessor::neighbor_child_on_subface</code>
function but converts it so that one can also access MGDoF
data.
<br>
</p>
<li> <p>
- New: There are now functions <code
- class="member">CellAccessor::neighbor_child_on_subface</code> and <code
- class="member">DoFCellAccessor::neighbor_child_on_subface</code>
- that should be called instead of using <code
- class="member">GeometryInfo::child_cell_on_face</code> in most cases.
+ New: There are now functions <code>CellAccessor::neighbor_child_on_subface</code> and <code>DoFCellAccessor::neighbor_child_on_subface</code>
+ that should be called instead of using <code>GeometryInfo::child_cell_on_face</code> in most cases.
<br>
(WB 2003/10/17)
</p>
<li> <p>
- New: <code class="class">GridGenerator</code> has a new
- function <code class="member">subdivided_hyper_rectangle</code>
+ New: <code>GridGenerator</code> has a new
+ function <code>subdivided_hyper_rectangle</code>
which generates a rectangle with given corner points and possibly
different numbers of subdivisions in different directions.
Use it, e.g., to generate a domain of 1*4 length units
</p>
<li> <p>
- Improved: The 3d grid reordering code in the <code
- class="class">GridReordering</code> class now uses an algorithm
+ Improved: The 3d grid reordering code in the <code>GridReordering</code> class now uses an algorithm
that is linear in the number of elements. The old code was
exponential, so this is a vast improvement.
<br>
</p>
<li> <p>
- Improved: <code class="class">GridOut</code> has a an improved
- functionality for <code class="member">write_eps</code>
+ Improved: <code>GridOut</code> has a an improved
+ functionality for <code>write_eps</code>
to color the grid according to the refinement level.
A corresponding option is included in
- <code class="class">GridOutFlags::Eps<2></code>.
+ <code>GridOutFlags::Eps<2></code>.
<br>
(Joerg Weimar 2003/09/09)
</p>
- <li> <p> New: The <code class="class">TriaAccessor</code>::<code
- class="member">point_inside</code> function is now also
+ <li> <p> New: The <code>TriaAccessor</code>::<code>point_inside</code> function is now also
implemented in 3d.
<br>
(Joerg Weimar, WB 2003/09/04)
</p>
- <li> <p> New: The <code class="class">TriaAccessor</code>::<code
- class="member">recursively_set_material_id</code> function sets
+ <li> <p> New: The <code>TriaAccessor</code>::<code>recursively_set_material_id</code> function sets
the material id of the present cell and of all its children,
grandchildren, etc to the given value.
<br>
(WB 2003/09/04)
</p>
- <li> <p> New: The new <code class="class">FETools</code>::<code
- class="member">get_fe_from_name</code> function can do the
- reverse of the <code class="class">FiniteElement</code>::<code
- class="member">get_name</code> function: it takes a string and
+ <li> <p> New: The new <code>FETools</code>::<code>get_fe_from_name</code> function can do the
+ reverse of the <code>FiniteElement</code>::<code>get_name</code> function: it takes a string and
parses it to regenerate a finite element from it. Useful for
parsing finite element names from input files.
<br>
(WB 2003/07/08)
</p>
- <li> <p> New: The <code class="class">DataOut_DoFData</code>::<code
- class="member">merge_patches</code> now takes a second
+ <li> <p> New: The <code>DataOut_DoFData</code>::<code>merge_patches</code> now takes a second
parameter that indicates a shift for each vertex of the given
patches to be merged. This is sometimes nice if one wants to
generate "exploded" views of a collection of subdomains. It is
also templatized on the first argument, so can merge in some
- other <code class="class">DataOut_DoFData</code> that create
+ other <code>DataOut_DoFData</code> that create
the same type of patches but are otherwise different.
<br>
(WB 2003/06/30)
</p>
- <li> <p> Fixed: The <code class="class">FETools</code>::<code
- class="member">extrapolate</code> function operates on patches
+ <li> <p> Fixed: The <code>FETools</code>::<code>extrapolate</code> function operates on patches
of cells, but didn't check whether the grid is at least refined
once everywhere. If this was not the case, it would generate
wrong results. It now checks for this, and if the grid has
</p>
<li> <p>
- Improved: <code class="class">FEFaceValuesBase</code> has a new
- function <code class="member">orientation</code> accessing a unique
+ Improved: <code>FEFaceValuesBase</code> has a new
+ function <code>orientation</code> accessing a unique
and consistent orientation for each face.
<br>
(GK 2003/06/23)
</p>
<li> <p>
- New: Finite elements got a function <code
- class="member">get_interpolation_matrix</code>, with which they can
+ New: Finite elements got a function <code>get_interpolation_matrix</code>, with which they can
compute interpolations between different finite elements. Most will use
this to compute interpolations between finite elements of the same kind
- but different polynomial degrees. The <code
- class="member">FETools::get_interpolation_matrix</code> makes use of
+ but different polynomial degrees. The <code>FETools::get_interpolation_matrix</code> makes use of
this function if it implements the desired interpolation, and falls back
to the old algorithm if this is not the case.
<br>
</p>
<li> <p>
- New: Finite elements got a function <code
- class="member">get_name</code>, which can be used to identify a finite
+ New: Finite elements got a function <code>get_name</code>, which can be used to identify a finite
element by its name.
<br>
(WB 2003/06/09)
</p>
<li> <p>
- New: Raviart-Thomas elements are now implemented in the <code
- class="class">FE_RaviartThomas</code> class.
+ New: Raviart-Thomas elements are now implemented in the <code>FE_RaviartThomas</code> class.
<br>
(WB 2003/06/09)
</p>
</ol>
-<hr>
-Last update $Date$
-</body>
-</html>
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
- "http://www.w3.org/TR/REC-html40/frameset.dtd">
-<html>
- <head>
- <link href="../screen.css" rel="StyleSheet">
- <title>The deal.II news page</title>
- <meta name="author" content="the deal.II authors">
- <meta name="keywords" content="deal.II"></head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<body>
-
-
-<h2>Changes after Version 5.0</h2>
-
-<p>
-This is the list of changes made after the release of
-<acronym>deal.II</acronym> version 5.0. It is subdivided into changes
-made to the three sub-libraries <a href="#base">base</a>,
-<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
-changes to the <a href="#general">general infrastructure,
-documentation, etc</a>.
-</p>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_5_0_and_5_1 Changes between Version 5.0 and 5.1
<p>
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the author. Regular
contributor's names are abbreviated by WB (Wolfgang Bangerth), GK
(Guido Kanschat), RH (Ralf Hartmann).
<li> <p> Changed: The call <code
class="class">MGTransferBlock</code>::<code
class="member">build_matrices</code> and to the same function in
- derived classes receaves a <code class="class">DoFHandler</code> as
+ derived classes receaves a <code>DoFHandler</code> as
an additional argument. It is needed to prebuild the transfer
between vectors and multigrid vectors, since the loop over all cells
is to slow.
<li> <p>
Improved: The documentation generated by Doxygen now states the header
- file defining a class. Furthermore, all <acronym>deal.II</acronym>
+ file defining a class. Furthermore, all deal.II
exceptions are listed as classes and will soon be found in the module
<tt>Exceptions</tt>.
<br>
</p>
<li> <p>
- New: The <code class="member">
+ New: The <code>
TableHandler::write_tex</code> now accepts the additional boolean
- argument <code class="member">with_header</code> which is set to
+ argument <code>with_header</code> which is set to
true by default and tells the function whether to add the latex
- header and footer (i.e. the \documentclass{...},
- \begin{document} and \end{document} stuff) to the table.<br>
+ header and footer (i.e. the \\documentclass{...},
+ \\begin{document} and \\end{document} stuff) to the table.<br>
In addition to this, there are two new members in the above class:
- <code class="member"> TableHandler::tex_set_table_caption</code> and
- <code class="member"> TableHandler::tex_set_table_label</code> to
+ <code> TableHandler::tex_set_table_caption</code> and
+ <code> TableHandler::tex_set_table_label</code> to
add a caption and a label to the tex generated table.
<br>
(Luca Heltai 2004/10/29)
</p>
<li> <p>
- New: a class template <code class="class">VectorSlice</code>
+ New: a class template <code>VectorSlice</code>
allows access to consecutive portions of a vector.
<br>
(GK 2004/09/16)
</p>
<li> <p>
- New: Class <code class="class">TableIndices</code> now has
+ New: Class <code>TableIndices</code> now has
operators that check for equality and inequality of objects.
<br>
(WB 2004/07/28)
</p>
<li> <p>
- New: A class <code class="class">PointerComparison</code> for comparing
+ New: A class <code>PointerComparison</code> for comparing
pointers that may or may not be of the same type.
<br>
(WB 2004/06/22)
</p>
<li> <p>
- New: A class <code class="class">PreconditionLU</code> which
+ New: A class <code>PreconditionLU</code> which
provides a wrapper to the complete LU decomposition
preconditioner of PETSc. Furthermore a class
- <code class="class">SolverPreOnly</code> was implemented. It
+ <code>SolverPreOnly</code> was implemented. It
is a wrapper for the PETSc solver type KSPPREONLY, which
only applies the preconditioner. In conjunction with
- <code class="class">PreconditionLU</code> this provides a
+ <code>PreconditionLU</code> this provides a
simple direct solver, which could be used for small to medium
sized problems on a single processor machine.
<br>
</p>
<li> <p>
- Improved: <code class="member">VectorTools::point_difference</code>
+ Improved: <code>VectorTools::point_difference</code>
used to use an algorithm to find the cell the given point is in that
was linear in the total number of active cells. It has been rewritten
to use
- <code class="member">GridTools::find_active_cell_around_point</code>
+ <code>GridTools::find_active_cell_around_point</code>
which is only logarithmic in its complexity.
<br>
(WB 2004/07/07)
<li> <p>
Removed: Block matrix iterators used to have a function
- <code class="member">it->index()</code> that returned something like
+ <code>it->index()</code> that returned something like
the position within a row. However, this was fragile, and has been
removed. If you want an ordering of elements within a row, use the
- <code class="member">operator <</code> to compare iterators.
+ <code>operator <</code> to compare iterators.
<br>
(WB 2004/07/07)
</p>
</p>
<li> <p>
- Improved: The <code class="class">SparseDirectMA27</code> class can now
+ Improved: The <code>SparseDirectMA27</code> class can now
handle float as well as double input matrices and vectors.
<br>
(WB 2004/06/23)
</p>
<li> <p>
- Improved: The <code class="class">CompressedSparsityPattern</code>
+ Improved: The <code>CompressedSparsityPattern</code>
class used one of the C++ standard containers to store the column
indices of nonzero entries in a sparse matrix. This proved to be
inefficient since it requires the allocation of 20 bytes each time an
</p>
<li> <p>
- Fixed: <code class="member">BlockSparseMatrix::clear()</code> did not
+ Fixed: <code>BlockSparseMatrix::clear()</code> did not
do what it was supposed to do: it emptied the individual blocks and
removed them, but it still kept the number of blocks
unchanged. Subsequent accesses to these blocks, or to their information
<li> <p>
New: In analogy to the PETSc vector classes, the PETSc matrix classes
- now also have member functions <code class="member">local_range</code>,
- <code class="member">in_local_range</code>, and <code
+ now also have member functions <code>local_range</code>,
+ <code>in_local_range</code>, and <code
class="member">local_size</code>.
<br>
(WB 2004/06/02)
<li> <p>
New: Parallel PETSc matrix and vector classes now have member functions
- <code class="member">get_mpi_communicator</code> that returns the MPI
+ <code>get_mpi_communicator</code> that returns the MPI
communicator object these objects operate on.
<br>
(WB 2004/06/02)
Changed: The PETSc linear solver classes now take a constant, rather
than a nonconstant reference to the MPI communicator to be used. This
prevents some unnecessary compiler problems in conjunction with the new
- <code class="member">get_mpi_communicator</code> function.
+ <code>get_mpi_communicator</code> function.
<br>
(WB 2004/06/02)
</p>
<ol>
<li> <p>
- Improved: <code class="class">GeometryInfo</code> has two new
- fields <code class="member">unit_normal_direction</code> and
- <code class="member">unit_normal_orientation</code>,
+ Improved: <code>GeometryInfo</code> has two new
+ fields <code>unit_normal_direction</code> and
+ <code>unit_normal_orientation</code>,
indicating the direction of the unit normal vector for each
face of the reference cell.
<br>
(WB 2004/11/12)
</p>
- <li> <p> Fixed: The <code class="class">GridGenerator</code>::<code
+ <li> <p> Fixed: The <code>GridGenerator</code>::<code
class="member">cylinder</code> function in 3d assigned the
wrong boundary value to the top and bottom part of the cylinder
if the half length of the cylinder was not equal to 1. This is
</p>
<li> <p>
- Improved: Now the <code class="class">FE_Q</code> class supports hanging node
+ Improved: Now the <code>FE_Q</code> class supports hanging node
constraints for elements of arbitrary polynomial degree also in
3D.
<br>
</p>
<li> <p>
- Improved: The <code class="class">CylinderBoundary</code>
+ Improved: The <code>CylinderBoundary</code>
represented the hull of a circular tubes along the x-axis. It
is now extended to allow for circular tubes also along the y-
and z-axis.
</p>
<li> <p>
- Fixed: The <code class="class">ConstraintMatrix</code> class had some
+ Fixed: The <code>ConstraintMatrix</code> class had some
algorithms that were linear in the number of constraints. Since these
functions had to be called for each constraint, this resulted in a
quadratic behavior. To make things worse, these algorithms traversed
</p>
<li> <p>
- New: The <code class="class">GridOut</code>::<code
+ New: The <code>GridOut</code>::<code
class="member">write_gnuplot</code> function now supports
curved boundaries also for <code>dim==3</code>.
<br>
Fixed: The documentation of the <code
class="member">Triangulation</code> class mentioned that no
places in the library use or touch the user pointers. That is
- wrong, the <code class="member">SolutionTransfer</code> class
+ wrong, the <code>SolutionTransfer</code> class
actually does. This is now properly documented.
<br>
(WB 2004/09/15)
</p>
<li> <p>
- New: The <code class="member">MatrixTools::apply_boundary_values</code>
+ New: The <code>MatrixTools::apply_boundary_values</code>
that works on block matrices and vectors is now templatized over the
number type, i.e. it also works for float matrices and vectors.
<br>
</p>
<li> <p>
- New: The new <code class="member">FEValuesBase::get_cell</code>
+ New: The new <code>FEValuesBase::get_cell</code>
function returns the current cell, i.e. the latest cell the
- <code class="class">FEValues</code> object was reinited with.
+ <code>FEValues</code> object was reinited with.
<br>
(RH 2004/06/22)
</p>
that function in these cases, since we are lacking fundamental pieces
of information, but the cases where this applies and the strategies to
work with this problem anyway are now well documented in the
- documentation of the <code class="class">MatrixTools</code> class.
+ documentation of the <code>MatrixTools</code> class.
<br>
(WB 2004/06/07)
</p>
<li> <p>
- Fixed: The <code class="member">GridGenerator::cylinder_shell</code>
+ Fixed: The <code>GridGenerator::cylinder_shell</code>
function generated cells were all inside-out, i.e. had negative
Jacobians. In usual finite element computations this simply leads to
all components of the linear system being negated, so it is not
</p>
</ol>
-<hr>
-Last update $Date$
-</body>
-</html>
+
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
- <link href="../screen.css" rel="StyleSheet">
- <title>The deal.II news page</title>
- <meta name="copyright" content="Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 by the deal.II Authors">
- <meta name="date" content="$Date$">
- <meta name="keywords" content="deal.II"></head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-</head>
-<body>
-
-
-<h2>Changes after Version 5.1</h2>
-
-<p>
-This is the list of changes made after the release of
-<acronym>deal.II</acronym> version 5.1. It is subdivided into changes
-made to the three sub-libraries <a href="#base">base</a>,
-<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
-changes to the <a href="#general">general infrastructure,
-documentation, etc</a>.
-</p>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_5_1_and_5_2 Changes between Version 5.1 and 5.2
<p>
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the author. Regular
contributor's names are abbreviated by WB (Wolfgang Bangerth), GK
(Guido Kanschat), RH (Ralf Hartmann).
Changed: The class <code
class="class">MGCoarseGridLACIteration</code> lost two template
arguments. Since the matrix and preconditioner are now stored
- in form of <code class="class">PointerMatrix</code> objects,
+ in form of <code>PointerMatrix</code> objects,
handling of the class is much simpler, in particular when
exchanging preconditioners.
<br>
requires an additional argument of type <code
class="class">VectorMemory<Vector<number> ></code>
providing space for auxiliary vectors. Since the entries are
- now of type <code class="class">PointerMatrixBase</code>, even
+ now of type <code>PointerMatrixBase</code>, even
matrices with blocks of different types can be constructed.
<br>
(GK 2005/03/21)
</p>
<li> <p>
- Changed: The <code class="class">GeometryInfo</code>::<code
+ Changed: The <code>GeometryInfo</code>::<code
class="member">vertices_adjacent_to_line</code> function has
- been renamed to <code class="class">GeometryInfo</code>::<code
+ been renamed to <code>GeometryInfo</code>::<code
class="member">line_to_cell_vertices</code> to be named
analogous to the <code
class="member">face_to_cell_vertices</code>, <code
</p>
<li> <p>
- Changed: <code class="class">DoFTools</code>::<code
+ Changed: <code>DoFTools</code>::<code
class="member">make_flux_sparsity_pattern</code>, <code
class="class">MGTools</code>::<code
class="member">make_flux_sparsity_pattern</code> and similar
functions in these classes do not receive arguments of type
- <code class="class">FullMatrix<double></code>
+ <code>FullMatrix<double></code>
anymore. Instead, they get a <code
class="class">Table<2,DoFTools::Coupling></code>, which
contains more meaningful enums.
</p>
<li> <p>
- Changed: <code class="class">Multigrid</code>::<code
+ Changed: <code>Multigrid</code>::<code
class="member">Multigrid</code> receives an argument
determining the type of multigrid cycle instead of the minimum
and maximum levels. The latter were rarely used anyway and can
- be modified by <code class="member">set_minlevel()</code> and
- <code class="member">set_maxlevel()</code>
+ be modified by <code>set_minlevel()</code> and
+ <code>set_maxlevel()</code>
<br>
(GK 2005/03/09)
</p>
<ol>
<li> <p>
- New: Class <code class="class">PathSearch</code> allows to find
+ New: Class <code>PathSearch</code> allows to find
a file in a sequence of directories and by appending suffixes. The class
generates the complete file name including directory prefix and suffix
such that it can be used for subsequently opening the file.
</p>
<li> <p>
- New: A function <code class="member">
+ New: A function <code>
deal_II_exceptions::disable_abort_on_exception</code> now allows
to disable program abortion when an assertion fails. This is used
in regression tests.
</p>
<li> <p>
- Improved: The <code class="class">QProjector</code> now has
- functions <code class="class">project_to_face</code> and <code
+ Improved: The <code>QProjector</code> now has
+ functions <code>project_to_face</code> and <code
class="class">project_to_subface</code> returning a <code
class="class">Quadrature</code> object
<br>
<li> <p>
Changed: Some of the dimension independent functions in the <code
class="class">DataOutInterface</code> class have been moved into the
- <code class="class">DataOutBase</code> class that does not depend on any
+ <code>DataOutBase</code> class that does not depend on any
dimension template parameters. Since the latter is a base class of the
former, there should be no problems for application programs.
<br>
</p>
<li> <p>
- Improved: The class <code class="class">Quadrature</code> has a new
+ Improved: The class <code>Quadrature</code> has a new
constructor generating the <tt>dim</tt>-dimensional tensor product of a
one-dimensonal formula directly.
<br>
</p>
<li> <p>
- New: The <code class="class">Polynomials::Lagrange</code> class
+ New: The <code>Polynomials::Lagrange</code> class
allows generation of Lagrange interpolation polynomials for
arbitrary point sets. In order to get better interpolation for
higher order polynomials, <code
</p>
<li> <p>
- New: The <code class="class">QAnisotropic</code> class allows
+ New: The <code>QAnisotropic</code> class allows
generation of quadrature rules of different order in each
space dimension.
<br>
</p>
<li> <p>
- New: The <code class="class">Tensor</code> classes now
+ New: The <code>Tensor</code> classes now
have member functions that compute the Frobenius norm and its
square. There are also global <code>operator*</code> functions
that compute the contraction over a pair of indices of tensors.
</p>
<li> <p>
- New: The <code class="member">DataOutBase</code> class now
+ New: The <code>DataOutBase</code> class now
allows to write data in a new intermediate format that
basically dumps the raw information available in patches.
<br>
</p>
<li> <p>
- New: The <code class="member">DataOutReader</code> class allows
+ New: The <code>DataOutReader</code> class allows
to read data back in from a file into which it has been written
using intermediate format. From there, it can then be converted
into any of the supported graphics formats.
</p>
<li> <p>
- New: There is a new class <code class="class">SymmetricTensor</code>
+ New: There is a new class <code>SymmetricTensor</code>
that provides storage and operations for symmetric tensors.
<br>
(WB, 2005/03/28)
</p>
<li> <p>
- New: Class <code class="class">Subscriptor</code> receives a
+ New: Class <code>Subscriptor</code> receives a
text argument allowing to identify the violating pointer more
easily. The additional feature is being incorporated into <code
class="class">SmartPointer</code> constructors throughout the
</p>
<li> <p>
- New: Class <code class="class">FunctionParser</code>. Wrapper
+ New: Class <code>FunctionParser</code>. Wrapper
class for the fparser library (see
<a href="http://warp.povusers.org/FunctionParser/">
http://warp.povusers.org/FunctionParser/</a>).
virtual abstract functions but no virtual destructor. This caused
warnings with some compilers, and is generally bad practice
anyway. This is now fixed. The same holds with respect to the class
- <code class="class">DataOutInterface</code>.
+ <code>DataOutInterface</code>.
<br>
(WB, 2005/02/20)
</p>
</p>
<li> <p>
- Fixed: <code class="class">SparsityPattern</code>::<code
+ Fixed: <code>SparsityPattern</code>::<code
class="member">block_write</code> neither wrote the number of
columns of the pattern, nor the flag for optimizing the
- diagonal, and <code class="class">SparsityPattern</code>::<code
+ diagonal, and <code>SparsityPattern</code>::<code
class="member">block_read</code> did not attempt to read this
data. Both is fixed now.
<br>
</p>
<li> <p>
- Improved: <code class="class">SparseDirectUMFPACK</code> now
+ Improved: <code>SparseDirectUMFPACK</code> now
has the complete interface of a preconditioner
class. Therefore, it can be used in iterative solvers and in
multigrid smoothers.
</p>
<li> <p>
- Fixed: The <code class="class">PETScWrappers::MPI::SparseMatrix</code>
+ Fixed: The <code>PETScWrappers::MPI::SparseMatrix</code>
class had functions that allow to take a pre-existing sparsity pattern
as the basis for entry allocation. These functions had an option to
allow pre-setting these entries in the underlying data structures, but
</p>
<li> <p>
- New: The <code class="class">ProductSparseMatrix</code>
+ New: The <code>ProductSparseMatrix</code>
implements the product of two rectangular sparse matrices with
- the same <code class="member">value_type</code>
+ the same <code>value_type</code>
<br>
(GK, 2005/03/11)
</p>
<li> <p>
- New: The <code class="class">PreconditionRichardson</code>
+ New: The <code>PreconditionRichardson</code>
implements a Richardson preconditioner.
<br>
(GK, 2005/03/10)
</p>
- <li> <p> Fixed: The <code class="class">BlockSparseMatrix</code>
+ <li> <p> Fixed: The <code>BlockSparseMatrix</code>
class had no local typedef <code
class="member">value_type</code> like all other classes, which
made it a little awkward to use in some places. This has now
(WB, 2005/03/03)
</p>
- <li> <p> Fixed: The <code class="class">PETScWrappers</code>::<code
+ <li> <p> Fixed: The <code>PETScWrappers</code>::<code
class="member">MatrixBase</code> class documented that adding
or setting a value that hasn't been in the sparsity pattern
before will lead to an exception being thrown. This is of
<br> (WB, 2005/03/03)
</p>
- <li> <p> New: The <code class="class">SparseMatrix</code> iterators
- had no <code class="member">operator ></code>, only an <code
+ <li> <p> New: The <code>SparseMatrix</code> iterators
+ had no <code>operator ></code>, only an <code
class="member">operator <</code>. The missing operator is
now implemented. The same holds for the <code
class="class">FullMatrix</code> class.
<br> (WB, 2005/03/01)
</p>
- <li> <p> Fixed: The <code class="class">SparseMatrix</code>
+ <li> <p> Fixed: The <code>SparseMatrix</code>
iterators could not be compared using <code
class="member">operator <</code>: the compiler complained
that a private member was accessed. This is now fixed.
<li> <p> Removed: The class <code
class="class">FiniteElementBase</code> has been removed and all its
- functions are now in <code class="class">FiniteElement</code>.
+ functions are now in <code>FiniteElement</code>.
<br>
(GK, 2005/08/25)
</p>
- <li> <p> New: class <code class="class">DoFTools</code> now has two
- functions <code class="member">compute_row_length_vector</code>, one
+ <li> <p> New: class <code>DoFTools</code> now has two
+ functions <code>compute_row_length_vector</code>, one
for equations and one for systems. These give a much finer estimate
for the size of the sparsity pattern required than <code
class="class">DoFHandler</code>::<code
<li> <p>
Remove: Due to the reimplementation of the 3d reordering
- algorithm in <code class="class">GridReordering</code> two
- years ago, the <code class="member">CellData::rotate</code>
+ algorithm in <code>GridReordering</code> two
+ years ago, the <code>CellData::rotate</code>
function got obsolete. <code
class="member">CellData::rotate</code> is now removed.
<br>
<li> <p>
Fixed: It was possible to compare iterators into different
- <code class="class">DoFHandler</code> objects for equality and
+ <code>DoFHandler</code> objects for equality and
inequality as long as the underlying triangulation object was
the same. This doesn't make much sense, however, and even
sometimes declared to iterators equal if only they had the same
</p>
<li> <p>
- New: The <code class="member">DataOutStack::add_data_vector</code>
+ New: The <code>DataOutStack::add_data_vector</code>
function now also allows to give only a single name even if the data is
vector-valued. It then makes up names for the individual components by
adding numbers to the name, just like the <code
</p>
<li> <p>
- New: The <code class="class">DataOutStack</code> class can now also be
+ New: The <code>DataOutStack</code> class can now also be
used to stack two-dimensional time or parameter dependent data into a 3d
output.
<br>
</p>
<li> <p>
- New: Function <code class="class">FETools</code>::<code
+ New: Function <code>FETools</code>::<code
class="member">compute_face_embedding_matrices</code> allows for
automatic computation of embedding matrices on faces under the sole
assumption that the coarse grid space is embedded into the fine
</p>
<li> <p>
- Improved: All <code class="class">GridIn</code>::<code
+ Improved: All <code>GridIn</code>::<code
class="member">read_*</code> functions now call <code
class="class">GridReordering</code>::<code
class="member">invert_all_cells_of_negative_grid</code>. This
way, also misoriented grids are represented in the right
- orientation within <acronym>deal.II</acronym>.
+ orientation within deal.II.
<br>
(RH 2005/07/06)
</p>
Improved: The function <code
class="class">DoFTools</code>::<code
class="member">count_dofs_per_component</code> and its
- counterpart in <code class="class">MGTools</code> got an
+ counterpart in <code>MGTools</code> got an
additional argument. This argument allows to count the degrees
of freedom of nonprimitive vector valued elements only once,
instead of in every component. Although this argument defaults
</p>
<li> <p>
- Improved: The <code class="class">GeometryInfo</code>::<code
+ Improved: The <code>GeometryInfo</code>::<code
class="member">child_cell_on_face</code>, <code
class="member">face_to_cell_vertices</code> and <code
class="member">face_to_cell_lines</code> now have an additional
</p>
<li> <p>
- Changed: The method <code class="class">FETools</code>::<code
+ Changed: The method <code>FETools</code>::<code
class="member">lexicographic_to_hierarchic_numbering</code> now
- takes a <code class="class">FiniteElementData</code> instead of
- a <code class="class">FE_Q</code> object. Now this function can
- also be called by the <code class="class">FE_Q</code>
+ takes a <code>FiniteElementData</code> instead of
+ a <code>FE_Q</code> object. Now this function can
+ also be called by the <code>FE_Q</code>
constructor which avoids code duplication.
<br>
(RH, 2005/06/13)
</p>
<li> <p>
- New: The method <code class="member">create_mass_matrix</code>
- in class <code class="class">MatrixCreator</code> can now handle
+ New: The method <code>create_mass_matrix</code>
+ in class <code>MatrixCreator</code> can now handle
vector valued finite elements. A similar change was applied
- to <code class="member">create_right_hand_side</code> and
- <code class="member">create_boundary_right_hand_side</code>
- in <code class="class">VectorTools</code>. These two changes
- now make the <code class="member">project</code> function work also
+ to <code>create_right_hand_side</code> and
+ <code>create_boundary_right_hand_side</code>
+ in <code>VectorTools</code>. These two changes
+ now make the <code>project</code> function work also
for Raviart-Thomas elements and other vector valued FEs. This
is very useful, if some initial conditions have to be specified.
<br>
</p>
<li> <p>
- New: The <code class="class">DataOut</code> class
+ New: The <code>DataOut</code> class
now supports Eulerian Mappings. If a solution is computed
on a deformed mesh, the output file generated by the DataOut
now shows the solution also on the deformed mesh. This
is an option and requires the mapping to be specified as
- additional parameter to <code class="member">build_patches</code>.
+ additional parameter to <code>build_patches</code>.
<br>
(Oliver Kayser-Herold, 2005/05/31)
</p>
<li> <p>
- New: The <code class="class">MappingQ1Eulerian</code> class can
+ New: The <code>MappingQ1Eulerian</code> class can
now cope with different vector types for the Euler vector.
This is useful if it should be used with the PETSc wrapper
classes. The desired vector type can be specified as template
</p>
<li> <p>
- New: The <code class="class">FE_RaviartThomasNodal</code>
+ New: The <code>FE_RaviartThomasNodal</code>
implements Raviart-Thomas elements using function values in
Gauss quadrature points on edges and in the interior for its
node values. The implementation is restricted to Cartesian mesh
</p>
<li> <p>
- Improved: The <code class="member">Mapping::transform_*</code>
- functions accept <code class="class">VectorSlice</code> instead
- of <code class="class">Vector</code>, thus allowing more flexibility.
+ Improved: The <code>Mapping::transform_*</code>
+ functions accept <code>VectorSlice</code> instead
+ of <code>Vector</code>, thus allowing more flexibility.
<br>
(GK, 2005/05/24)
</p>
<li> <p>
- New: The <code class="member">MatrixTools::apply_boundary_values</code>
+ New: The <code>MatrixTools::apply_boundary_values</code>
function now also works for PETSc sequential and parallel matrices.
<br>
(WB, 2005/05/05)
</p>
<li> <p>
- Improved: The function <code class="class">GridIn</code>::<code
+ Improved: The function <code>GridIn</code>::<code
class="member">read</code> now searches for files using the
mechanism provided by the class <code
class="class">PathSearch</code>. Furthermore, a library of input
</p>
<li> <p>
- Fixed: The <code class="class">DataOut</code> class did not work
- properly if the <code class="member">DataOut::first_cell</code> and
- <code class="member">DataOut::next_cell</code> functions were
+ Fixed: The <code>DataOut</code> class did not work
+ properly if the <code>DataOut::first_cell</code> and
+ <code>DataOut::next_cell</code> functions were
overloaded and cell data was to be output; in that case, data from the
wrong cells was written out. This is now fixed. In contrast to this,
nodal data was never affected.
</p>
<li> <p>
- New: The new <code class="class">GeometryInfo</code>::<code
+ New: The new <code>GeometryInfo</code>::<code
class="member">line_to_cell_vertices</code> function maps line
vertex numbers to cell vertex numbers.
<br>
</p>
<li> <p>
- New: The new <code class="class">GeometryInfo</code>::<code
+ New: The new <code>GeometryInfo</code>::<code
class="member">face_to_cell_lines</code> function maps face
line numbers to cell line numbers.
<br>
</p>
<li> <p>
- New: The new <code class="class">GeometryInfo</code>::<code
+ New: The new <code>GeometryInfo</code>::<code
class="member">face_to_cell_vertices</code> function maps face
vertex numbers to cell vertex numbers.
<br>
</p>
<li> <p>
- Changed: The <code class="class">Triangulation<2></code>::<code
+ Changed: The <code>Triangulation<2></code>::<code
class="member">execute_refinement</code> function has been
re-implemented to accommodate future developments. This change
results in different ordering and indexing of lines and
vertices. This leads to a change in the ordering of vertices in
- output files generated by <code class="class">GridOut</code>
+ output files generated by <code>GridOut</code>
for refined grids.
<br>
(RH, 2005/03/09)
</p>
<li> <p>
- Fixed: The class <code class="class">MGDoFHandler</code> had trouble
+ Fixed: The class <code>MGDoFHandler</code> had trouble
when it encountered a triangulation that had unused vertices, something
that happens when one coarsens an existing triangulation. In
that case, it would throw unjustified exceptions. This is now
</p>
<li> <p>
- Fixed: The class <code class="class">Triangulation::RefinementListener</code> had only
+ Fixed: The class <code>Triangulation::RefinementListener</code> had only
virtual abstract functions but no virtual destructor. This caused
warnings with some compilers, and is generally bad practice
anyway. This is now fixed.
</p>
<li> <p>
- New: Function <code class="class">FETools</code>::<code
+ New: Function <code>FETools</code>::<code
class="member">compute_embedding_matrices</code> allows for
automatic computation of embedding matrices under the sole
assumption that the coarse grid space is embedded into the fine
</p>
</ol>
-<hr>
-Last update $Date$
-</body>
-</html>
+*/
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
- <link href="../screen.css" rel="StyleSheet">
- <title>The deal.II news page</title>
- <meta name="copyright" content="Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 by the deal.II Authors">
- <meta name="date" content="$Date$">
- <meta name="keywords" content="deal.II"></head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-</head>
-<body>
-
-
-<h2>Changes between versions 5.2 and 6.0</h2>
-
-<p>
-This is the list of changes made after the release of
-<acronym>deal.II</acronym> version 5.2. It is subdivided into changes
-made to the three sub-libraries <a href="#base">base</a>,
-<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
-changes to the <a href="#general">general infrastructure,
-documentation, etc</a>.
-</p>
+// ---------------------------------------------------------------------
+// $Id$
+//
+// Copyright (C) 2013, 2014 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE at
+// the top level of the deal.II distribution.
+//
+// ---------------------------------------------------------------------
+
+/**
+ * @page changes_between_5_2_and_6_0 Changes between Version 5.2 and 6.0
<p>
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the author. Regular
contributor's names are abbreviated by WB (Wolfgang Bangerth), GK
(Guido Kanschat), RH (Ralf Hartmann).
</p>
+
<a name="incompatible"></a>
<h3 style="color:red">Incompatibilities</h3>
</p>
<li> <p>Changed: When new multigrid transfer classes were introduced,
- the existing class <code class="class">MGTransferSelect</code> was
+ the existing class <code>MGTransferSelect</code> was
moved to the new header file
<code>multigrid/mg_transfer_component</code>. It also received a new
- base class <code class="class">MGTransferComponent</code>.
+ base class <code>MGTransferComponent</code>.
<br>
(GK 2007/04/26)
</p>
functions which are related to faces like <code
class="member">begin_line</code> in 2D and 3D or <code
class="member">begin_quad</code> in 3D. Again, the same applies
- to <code class="member">last_*</code> and <code
+ to <code>last_*</code> and <code
class="member">end_*</code>.
<br>
The respective functions in <code
function has been changed accordingly. For backward
compatibility there is now a new <code
class="member">Triangulation::create_triangulation_compatibility</code>
- function which takes <code class="class">CellData</code> in the
+ function which takes <code>CellData</code> in the
old vertex ordering. However, as this function might not be
supported forever users are advised to change their code to the
new numbering scheme and to use the <code
for example,
to the extraction of the information, which child of a neighbor is behind
a given subface. However, this information is supplied by various
- functions in <code class="class">GeometryInfo</code>. As a rule-of-thumb:
+ functions in <code>GeometryInfo</code>. As a rule-of-thumb:
if you want to use non-standard meshes, all occurrences of
<tt>face_orientation</tt> have to be supplemented by <tt>face_flip</tt>
and <tt>face_rotation</tt>.
<br> In order to reduce the impact of possible bugs, the grid is still given to
- <code class="class">GridReordering</code>, which now returns the original
+ <code>GridReordering</code>, which now returns the original
connectivity if the reordering was not possible.
<br> A more detailed document concerning these topics will be available
in the future.
Improved: If you do have a PETSc installation
and have set the <code>PETSC_DIR</code> and
<code>PETSC_ARCH</code> environment variables but do not wish
- <acronym>deal.II</acronym> to be configured for PETSc use, you
+ deal.II to be configured for PETSc use, you
should specify <code>--with-petsc=no</code> as a flag during
configuration.
<br>
(Luca Heltai 2007/08/29)
- <li> <p> Improved: <code class="class">FunctionDerivative</code> is now
- derived from <code class="class">AutoDerivativeFunction</code> and implements
+ <li> <p> Improved: <code>FunctionDerivative</code> is now
+ derived from <code>AutoDerivativeFunction</code> and implements
gradients as well, giving you automatic second derivatives of a function.
<br>
(GK 2007/08/02)
(WB 2006/11/10)
</p>
- <li> <p> Extended: The <code class="class">QGaussLobatto</code> quadrature
+ <li> <p> Extended: The <code>QGaussLobatto</code> quadrature
rule computes Legendre-Gauss-Lobatto nodes and quadrature weights.
<br>
(Florian Prill 2006/11/02)
(WB 2006/07/28)
</p>
- <li> <p> New: <code class="class">GeometryInfo</code> offers several new
+ <li> <p> New: <code>GeometryInfo</code> offers several new
functions, <code>is_inside_unit_cell</code> with an epsilon parameter to
specify allowable offsets from the actual unit cell,
<code>distance_to_unit_cell</code> returning the infinity norm of the
(Ralf B. Schulz 2006/05/10)
</p>
- <li> <p> Improved: <code class="class">DataOutBase</code>::<code
+ <li> <p> Improved: <code>DataOutBase</code>::<code
class="member">OutputFormat</code> has a new value <tt>none</tt>,
writing no output at all. This way, the writing of output files can be
controlled more easily from parameter files.
(GK 2006/04/14)
</p>
- <li> <p> Improved: <code class="class">VectorSlice</code> has new functions
- <code class="member">begin()</code> and <code class="member">end()</code>,
+ <li> <p> Improved: <code>VectorSlice</code> has new functions
+ <code>begin()</code> and <code>end()</code>,
returning the corresponding vector iterators.
<br>
(GK 2006/03/31)
(WB 2006/03/14)
</p>
- <li> <p> Improved: The function <code class="class">Subscriptor</code>::<code
+ <li> <p> Improved: The function <code>Subscriptor</code>::<code
class="member">list_subscribers</code> logs all current subscribers of an
object to <tt>deallog</tt>.
<br>
<li> <p>Fixed: Writing a denormal "NaN" through <code
class="class">LogStream</code> objects such as
- <code class="member">deallog</code> erroneously printed zero, rather
+ <code>deallog</code> erroneously printed zero, rather
than "nan". This is now fixed.
<br>
(Luca Heltai, WB 2006/03/07)
</p>
- <li> <p>Improved: The <code class="class">TableBase</code> base class of all
- the <code class="class">Table</code> classes had an
- <code class="member">>operator()</code> that takes a <code>TableIndices</code> object
+ <li> <p>Improved: The <code>TableBase</code> base class of all
+ the <code>Table</code> classes had an
+ <code>>operator()</code> that takes a <code>TableIndices</code> object
that represents the entire set of indices at once. However, due to C++
name lookup rules, this operator wasn't accessible through the
- <code class="class">Table</code> class without explicitly specifying the base class
+ <code>Table</code> class without explicitly specifying the base class
name. This is now fixed by also providing a similar
- <code class="member">>operator()</code> in the derived classes.
+ <code>>operator()</code> in the derived classes.
<br>
(WB 2006/02/21)
</p>
- <li> <p>Fixed: The <code class="class">QGauss</code> constructor
+ <li> <p>Fixed: The <code>QGauss</code> constructor
hangs on x86 linux systems when deal.II is run from inside
MATLAB. The reason is that while the processor offers long
double accuracy, MATLAB switches off support for that inside
(Christian Kamm, WB 2006/02/21)
</p>
- <li> <p>Fixed: The <code class="member">ParameterHandler::get_integer</code>
+ <li> <p>Fixed: The <code>ParameterHandler::get_integer</code>
had an erroneous check that the value given for a parameter really
represented an integer. This check always succeeded, even in face of an
error, and a zero value was returned every time the value in the
(WB 2006/02/17)
</p>
- <li> <p>Improved: The <code class="class">ComponentSelect</code> class can
+ <li> <p>Improved: The <code>ComponentSelect</code> class can
now also handle the case that one wants to select multiple vector
components at once, not only a single one.
<br>
(WB 2006/02/12)
</p>
- <li> <p>Improved: A new function <code class="class">TableBase</code>::<code
+ <li> <p>Improved: A new function <code>TableBase</code>::<code
class="member">fill</code>, filling the whole table with the same
element has been introduced.
<br>
(GK 2006/01/18)
</p>
- <li> <p>Improved: <code class="class">DataOutBase</code> now writes binary
+ <li> <p>Improved: <code>DataOutBase</code> now writes binary
files for OpenDX.
<br>
(GK 2006/01/18)
New: There are now new <code
class="member">get_n_mpi_processes</code> and <code
class="member">get_this_mpi_process</code> functions in the
- <code class="class">Utilities::System</code> namespace. In case
+ <code>Utilities::System</code> namespace. In case
of a code not running in parallel, they simply return 1 and 0,
respectively.
<br>
<ol>
<li> <p>Changed: The <code
class="class">CompressedBlockSparsityPattern</code> has been renamed to
- <code class="class">BlockCompressedSparsityPattern</code> to be
+ <code>BlockCompressedSparsityPattern</code> to be
consistent, since the "block" part builds on the "compressed sparsity
pattern", not the other way around. The old name remains as a typedef,
but its use is deprecated.
(WB 2007/06/17)
</p>
- <li> <p>New: The <code class="class">CompressedSetSparsityPattern</code>
+ <li> <p>New: The <code>CompressedSetSparsityPattern</code>
class is an alternative to the <code
class="class">CompressedSparsityPattern</code> class that appears to be
better suited for problems that have many entries per row. There is also
(Oliver Kayser-Herold, WB 2007/06/03)
</p>
- <li> <p>Fixed: The <code class="class">SolverBicgstab</code> class
+ <li> <p>Fixed: The <code>SolverBicgstab</code> class
did not handle hitting on the solution early very
gracefully (it threw an exception). This is now fixed.
<br>
(Roger Young 2007/03/07)
</p>
- <li> <p>Fixed: The <code class="member">SparseDirectMA27</code> class allows
+ <li> <p>Fixed: The <code>SparseDirectMA27</code> class allows
to run the sparse direct solver as a separate program (the
<code>detached_ma27</code> program) rather than as part of the current
program in order to be able to run several instances of it in parallel
(WB 2007/02/09)
</p>
- <li> <p>Improved: A simple <code class="member">print_formatted</code>
- function has been added to <code class="class">SparseMatrixEZ</code>.
+ <li> <p>Improved: A simple <code>print_formatted</code>
+ function has been added to <code>SparseMatrixEZ</code>.
<br>
(Moritz Allmaras 2007/02/08)
</p>
- <li> <p>Fixed: The <code class="class">SparseDirectMA27</code>
+ <li> <p>Fixed: The <code>SparseDirectMA27</code>
class works for symmetric matrices and had a check to make sure the
matrix is indeed symmetric. However, the check compared entries for
equality, something one should not do for floating point numbers. It now
(WB 2006/12/21)
</p>
- <li> <p>Fixed: The <code class="member">FullMatrix::invert</code>
+ <li> <p>Fixed: The <code>FullMatrix::invert</code>
function would return wrong results if one tried to invert a
matrix of dimension smaller than 5 in situ. This is now fixed.
<br>
<li> <p>New: The class <code
class="class">PointerMatrixVector</code> implements the functions
- <code class="member">vmult</code> and <code
+ <code>vmult</code> and <code
class="member">Tvmult</code> for a <i>1xn</i>-matrix represented by
a single vector.
<br>
(GK 2006/09/17)
</p>
- <li> <p>Improved: The class <code class="class">SolverCG</code> can
+ <li> <p>Improved: The class <code>SolverCG</code> can
now estimate the condition number of the linear system using <code
class="class">TridiagonalMatrix</code> and LAPACK.
<br>
(GK 2006/09/06)
</p>
- <li> <p>New: the class <code class="class">TridiagonalMatrix</code>
+ <li> <p>New: the class <code>TridiagonalMatrix</code>
has been introduced together with its basic methods, including an
eigenvalue solver for the symmetric case (LAPACK).
<br>
<li> <p> Improved: PETSc 2.3.1 (<i>build 16</i>) is now supported by the
linear preconditioner classes. The new PETSc functions
- <code class="member">PCFactorSetXXX</code> are used.<br>
+ <code>PCFactorSetXXX</code> are used.<br>
(Florian Prill, 2006/08/04)
</p>
- <li> <p>New: The class <code class="class">TransposeMatrix</code>
- modeled after <code class="class">PointerMatrix</code> swaps the
- <code class="member">vmult</code> functions such that its effect is
+ <li> <p>New: The class <code>TransposeMatrix</code>
+ modeled after <code>PointerMatrix</code> swaps the
+ <code>vmult</code> functions such that its effect is
the transpose of the matrix it points to.
<br>
(GK 2006/07/07)
(WB 2006/06/16)
</p>
- <li> <p>Improved: <code class="class">PointerMatrixAux</code> now has a
+ <li> <p>Improved: <code>PointerMatrixAux</code> now has a
default constructor and a function for setting the <code
class="class">VectorMemory</code> object.
<br>
(WB 2006/03/30)
</p>
- <li> <p> Improved: <code class="class">BlockSparsityPattern</code> can be
+ <li> <p> Improved: <code>BlockSparsityPattern</code> can be
initialized directly using the vector generated by
- <code class="class">DoFTools</code>::<code
+ <code>DoFTools</code>::<code
class="member">compute_row_length_vector</code>.
<br>
(GK 2006/03/30)
class="member">equ</code> functions which assign <tt>this</tt>
matrix to the linear combination of one, two or three
matrices. Also there is now a new <code
- class="class">Vector</code>::<code class="member">equ</code>
+ class="class">Vector</code>::<code>equ</code>
function for three vectors.
<br>
(RH 2006/02/21)
<li> <p>
Fixed: The <code
class="class">SolverMinRes</code> class did not work
- with the <code class="class">BlockVector</code> class.
+ with the <code>BlockVector</code> class.
This is now fixed.
<br>
(Luca Heltai 2006/02/19)
</p>
<li> <p>
- Improved: <code class="class">BlockMatrixArray</code>::<code
+ Improved: <code>BlockMatrixArray</code>::<code
class="member">enter_aux</code> allows using matrices without
adding vector multiplication by using <code
class="class">PointerMatrixAux</code>.
</p>
<li> <p>
- New: The class <code class="class">PointerMatrixAux</code> was
+ New: The class <code>PointerMatrixAux</code> was
introduced for use with matrix classes lacking the adding
vector multiplication functions. It implements these by using
its own auxiliary vector.
</p>
<li> <p>
- Improved: The <code class="class">FilteredMatrix</code> class
- was able to filter only the <code class="class">SparseMatrix</code>
+ Improved: The <code>FilteredMatrix</code> class
+ was able to filter only the <code>SparseMatrix</code>
matrix class.
A new (faster) version is now in its place with the same interface
that is able to perform such a filter on anything that provides
class might allow reusing temporary vectors, and thus reduce
the overhead of repeatedly allocating and freeing
memory. However, almost all instances of using these classes
- used the <code class="class">PrimitiveVectorMemory</code>
+ used the <code>PrimitiveVectorMemory</code>
class. The solver class have now been changed so that if one
omits the respective argument, they fall back to using such a
memory object. Also, all example programs that did not
</p>
<li> <p>
- Fixed: The <code class="class">SparseMatrix</code> iterators had a
+ Fixed: The <code>SparseMatrix</code> iterators had a
problem when one wrote code like <code>iterator->value()=0</code>
(i.e. with a zero integer, rather than a floating point number on the
right), in that that opened up a second conversion sequence and the
</p>
<li> <p>
- New: Now the class <code class="class">SparseILU</code> supports
- also the <code class="member">Tvmult</code> method. This feature
- allows the straightforward use of <code class="class">SparseILU</code>
+ New: Now the class <code>SparseILU</code> supports
+ also the <code>Tvmult</code> method. This feature
+ allows the straightforward use of <code>SparseILU</code>
as a multigrid smoother within the framework.
<br>
(Oliver Kayser-Herold 2005/09/15)
(WB 2007/02/20)
</p>
- <li> <p>New: Added function <code class="class">GridGenerator</code>::<code
+ <li> <p>New: Added function <code>GridGenerator</code>::<code
class="member">hyper_cube_with_cylindrical_hole</code> that produces
a square with a circular hole in the middle in 2d, and extrudes it
along the z-direction between 0 and L.
(Luca Heltai 2007/02/15)
</p>
- <li> <p>Workaround: The class <code class="class">GridOut</code>::<code
+ <li> <p>Workaround: The class <code>GridOut</code>::<code
class="member">write_msh</code> produces a mesh which can be visualized
in the Gmsh reader. A bug in Gmsh prevented the boundary indicator to
be properly visualized. The boundary indicator was added to the
</p>
- <li> <p>Fixed: The function <code class="class">DoFTools</code>::<code
+ <li> <p>Fixed: The function <code>DoFTools</code>::<code
class="member">distribute_cell_to_dof_vector</code> produced
wrong results if the vector into which the result is to be
stored contained nonzero values. This is now fixed.
(WB 2007/02/09)
</p>
- <li> <p>Fixed: <code class="class">MatrixCreator</code>::<code
- class="member">create_mass_matrix</code> and <code class="member">
+ <li> <p>Fixed: <code>MatrixCreator</code>::<code
+ class="member">create_mass_matrix</code> and <code>
create_laplace_matrix</code> computed wrong values for the right
hand sides. This has been fixed.
<br>
especially for higher order elements. This change corresponds
to an extension of the intermediate format for graphics.
<br>
- Fixed: Using the given <code class="class">Mapping</code> to
+ Fixed: Using the given <code>Mapping</code> to
obtain function values in <code
class="class">DataOut</code>::<code
class="member">build_patches()</code> also fixes a bug for
- <code class="class">FE_RaviartThomas</code> and <code
+ <code>FE_RaviartThomas</code> and <code
class="class">FE_ABF</code>elements, which need to evaluate the
function values on the real (mapped) cell.
<br>
<li> <p> Fixed: On faces with wrong <code>face_orientation</code> the dofs
have to reordered in order to be combined with the correct shape
functions. This is only relevant for continuous elements in 3D. At least for
- <code class="class">FE_Q</code> and systems of <code
+ <code>FE_Q</code> and systems of <code
class="class">FE_Q</code> this works now, for other finite elements the
reordering vector still has to be implemented.
<br>
</p>
<li> <p>
- Fixed: The <code class="class">Triangulation</code>::<code
+ Fixed: The <code>Triangulation</code>::<code
class="member">execute_coarsening_and_refinement</code> function has to
discard coarsening flags in 2d and 3d if a neighbor of a flagged cell is
refined or will be refined, in order to avoid that we end up with
</p>
<li> <p>
- Fixed: The <code class="class">Triangulation</code>::<code class="member">
+ Fixed: The <code>Triangulation</code>::<code>
MeshSmoothing</code> flag <code>patch_level_1</code> wrongly produced cells
on level 0 during <code>coarsening_and_refinement</code>, which is now fixed.
<br>
</p>
<li> <p>
- Extended: There is now a new <code class="class">Triangulation</code>
- ::<code class="member">MeshSmoothing</code> flag <code>coarsest_level_1</code>
+ Extended: There is now a new <code>Triangulation</code>
+ ::<code>MeshSmoothing</code> flag <code>coarsest_level_1</code>
which ensures that after <code>coarsening_and_refinement</code> there are no
cells on level 0, i.e. the coarsest level is 1, if the triangulation had
<code>coarsest_level_1</code> already before.
</p>
<li> <p>
- Extended: The <code class="class">GridIn</code> class can now
+ Extended: The <code>GridIn</code> class can now
read in tecplot files in ASCII format (block and point format,
ordered and unstructured grids, format specifiers acccording to
Tecplot 10 and younger versions). At the moment the
class="class">GridTools</code>::<code
class="member">delete_duplicated_vertices</code> that deletes
duplicate vertices which can occur if structured grids are read
- into <acronym>deal.II</acronym>, leading to unwanted interior
+ into deal.II, leading to unwanted interior
boundaries. In order to reduce the effort of the quadratic
algorithm, a list of vertices to be considered can be supplied
if available.
(Yaqi Wang 2006/11/15, 2006/12/29)
</p>
- <li> <p> Fixed: Corrected <code class="member">clone</code> method
- of <code class="class">FE_DGQ</code> class for non-equidistant
+ <li> <p> Fixed: Corrected <code>clone</code> method
+ of <code>FE_DGQ</code> class for non-equidistant
support points.
<br>
(Florian Prill 2006/10/31)
</p>
<li> <p>
- New: The <code class="class">ConstraintMatrix</code> class did not
+ New: The <code>ConstraintMatrix</code> class did not
allow that one degree of freedom was constrained against another DoF
that was itself constrained. However, this is necessary for the
implementation of hp methods and is now allowed. Arbitrarily long chains
</p>
<li> <p>
- Extended: The <code class="member">VectorTools::project</code> functions
+ Extended: The <code>VectorTools::project</code> functions
are now also implemented for 1d.
<br>
(WB 2006/08/08)
</p>
<li> <p>
- New: The new function <code class="class">FiniteElementBase</code>::<code
+ New: The new function <code>FiniteElementBase</code>::<code
class="member">n_dofs_per_object</code> returns either
<code>dofs_per_vertex</code>, <code>dofs_per_line</code>,
<code>dofs_per_quad</code>, ..., depending on the explicitly
</p>
<li> <p>
- New: Function <code class="class">VectorTools</code>::<code
+ New: Function <code>VectorTools</code>::<code
class="member">create_point_source_vector</code> to calculate the projection
of a Dirac pulse on the base functions. This models a point source as
used in the calculations of Green's functions and can also be used to
</p>
<li> <p>
- Changed: The old version of <code class="class">GridTools</code>::<code
+ Changed: The old version of <code>GridTools</code>::<code
class="member">find_active_cell_around_point</code> has been replaced
by a wrapper function for backward compatibility. The wrapper calls the
new version of this function, and it is highly recommended to use the new
</p>
<li> <p>
- Improved: The functions <code class="class">VectorTools</code>::<code
- class="member">point_value</code> and <code class="class">VectorTools</code>::<code
+ Improved: The functions <code>VectorTools</code>::<code
+ class="member">point_value</code> and <code>VectorTools</code>::<code
class="member">point_difference</code> now can also use arbitrary
- mappings, using the new <code class="class">GridTools</code>::<code
+ mappings, using the new <code>GridTools</code>::<code
class="member">find_active_cell_around_point</code> algorithm.
<br>
(Ralf B. Schulz, 2006/05/11)
</p>
<li> <p>
- New: There is a new function <code class="class">FiniteElement</code>::<code
+ New: There is a new function <code>FiniteElement</code>::<code
class="member">face_to_equivalent_cell_index</code> that can
convert a face index of a degree of freedom into a
corresponding cell index.
</p>
<li> <p>
- New: There are now functions <code class="class">VectorTools</code>::<code
+ New: There are now functions <code>VectorTools</code>::<code
class="member">point_value</code> that evaluate the value of a
finite element function at a given point inside the domain.
<br>
(WB 2006/03/06)
</p>
- <li> <p> Improved: <code class="class">GridOut</code> now has functions for
+ <li> <p> Improved: <code>GridOut</code> now has functions for
declaring and parsing parameters in a <code
class="class">ParameterHandler</code>, like used in <code
class="class">DataOut_Interface</code> for a long time.
</p>
<li> <p>
- Improved: The <code class="class">Triangulation</code>, <code
+ Improved: The <code>Triangulation</code>, <code
class="class">PersistentTriangulation</code>, <code
class="class">DoFHandler</code>, <code
class="class">hp::DoFHandler</code> and <code
of the library. This way multiple creation and storage of <code
class="class">MappingQ1</code> objects can be avoided.
<br>
- Similar to <code class="class">StaticMappingQ1</code>::<code
+ Similar to <code>StaticMappingQ1</code>::<code
class="member">mapping</code> there is now also an object <code
class="class">hp::StaticMappingQ1</code>::<code
class="member">mapping_collection</code> of type <code
</p>
<li> <p>
- New: There is now a <code class="class">GridOut</code>::<code
+ New: There is now a <code>GridOut</code>::<code
class="member">write_gmsh</code> function to write in the gmsh
format. It has the same features of the write_ucd one.
<br>
</p>
<li> <p>
- Changed: The <code class="class">hp::FECollection</code>::<code
+ Changed: The <code>hp::FECollection</code>::<code
class="member">get_fe</code>, <code
class="class">hp::QCollection</code>::<code
class="member">get_quadrature</code> and <code
class="class">hp::MappingCollection</code>::<code
class="member">get_mapping</code> functions are now renamed to
- the standard <code class="member">operator[]</code>
+ the standard <code>operator[]</code>
function. Similarly, the <code
class="class">FECollection</code>::<code
class="member">n_finite_elements</code>, <code
class="member">n_quadratures</code> and <code
class="class">MappingCollection</code>::<code
class="member">n_mappings</code> functions are now renamed to
- the standard <code class="member">size()</code> function.
+ the standard <code>size()</code> function.
<br>
(RH 2006/02/10)
</p>
<li> <p>
- Improved: <code class="class">GridGenerator</code>::<code
+ Improved: <code>GridGenerator</code>::<code
class="member">half_hyper_ball</code> now is implemented also
in three dimensions, and the boundary now is colored with 0 and one
respectively on the curved and plane.
</p>
<li> <p>
- Improved: <code class="class">FiniteElementData</code> and
- <code class="class">FiniteElement</code> now support the
+ Improved: <code>FiniteElementData</code> and
+ <code>FiniteElement</code> now support the
concept of blocks along with components. See the glossary for
the difference.
<br>
</p>
<li> <p>
- Fixed: The <code class="class">MGDoFHandler</code>::<code
+ Fixed: The <code>MGDoFHandler</code>::<code
class="member">distribute_dofs</code> and <code
class="member">renumber</code> functions could not handle
coarsened grids (unused vertices, faces and cells). This is now
</p>
<li> <p>
- Fixed: We had a bug in <code class="member">DataOut::build_patches</code>
+ Fixed: We had a bug in <code>DataOut::build_patches</code>
that, when used in multithreaded mode, caused an exception to be
thrown. In particular, this happened when the step-14 program was run on
dual processor machines and the library was compiled for
class="member">GridTools::delete_unused_vertices</code>
function. Previously a <tt>private</tt> function in <code
class="class">GridIn</code> it has now been moved to and made
- <tt>public</tt> in <code class="class">GridTools</code>.
+ <tt>public</tt> in <code>GridTools</code>.
<br>
(RH 2005/09/28)
</p>
</p>
</ol>
-<hr>
-Last update $Date$
-</body>
-</html>
+
+*/
* @page changes_between_6_0_and_6_1 Changes between Version 6.0 and 6.1
<p>
-This is the list of changes made between the release of
-deal.II version 6.0 and version 6.1. It is subdivided into changes
+This is the list of changes made between the deal.II releases listed above.
made to the three sub-libraries <a href="#base">base</a>,
<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
changes to the <a href="#general">general infrastructure,
* @page changes_between_6_1_and_6_2 Changes between Version 6.1 and 6.2
<p>
-This is the list of changes made between the release of
-deal.II version 6.1 and version 6.2. It is subdivided into changes
+This is the list of changes made between the deal.II releases listed above.
made to the three sub-libraries <a href="#base">base</a>,
<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
changes to the <a href="#general">general infrastructure,
* @page changes_between_6_2_0_and_6_2_1 Changes between Version 6.2.0 and 6.2.1
<p>
-This is the list of changes made between the release of
-deal.II version 6.2.0 and version 6.2.1:
+This is the list of changes made between the deal.II releases listed above.
</p>
* @page changes_between_6_2_and_6_3 Changes between Version 6.2 and 6.3
<p>
-This is the list of changes made between the release of
-deal.II version 6.2 and version 6.3. It is subdivided into changes
+This is the list of changes made between the deal.II releases listed above.
made to the three sub-libraries <a href="#base">base</a>,
<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
changes to the <a href="#general">general infrastructure,
* @page changes_between_6_3_0_and_6_3_1 Changes between Version 6.3.0 and 6.3.1
<p>
-This is the list of changes made between the release of
-deal.II version 6.3.0 and version 6.3.1:
+This is the list of changes made between the deal.II releases listed above.
</p>
<p>
* @page changes_between_6_3_and_7_0 Changes between Version 6.3 and 7.0
<p>
-This is the list of changes made between the release of
-deal.II version 6.3.0 and that of version 7.0.0. It is subdivided into changes
+This is the list of changes made between the deal.II releases listed above.
made to the three sub-libraries <a href="#base">base</a>,
<a href="#lac">lac</a>, and <a href="#deal.II">deal.II</a>, as well as
changes to the <a href="#general">general infrastructure,
* @page changes_between_7_0_and_7_1 Changes between Version 7.0 and 7.1
<p>
-This is the list of changes made between the release of
-deal.II version 7.0.0 and that of 7.1.0.
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the author.
</p>
* @page changes_between_7_1_and_7_2 Changes between Version 7.1 and 7.2
<p>
-This is the list of changes made between the release of
-deal.II version 7.1.0 and that of 7.2.0.
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the author.
</p>
* @page changes_between_7_2_and_7_3 Changes between Version 7.2 and 7.3
<p>
-This is the list of changes made between the release of
-deal.II version 7.2.0 and that of 7.3.0.
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the author.
</p>
* @page changes_between_7_3_and_8_0 Changes between Version 7.3 and 8.0
<p>
-This is the list of changes made between the release of
-deal.II version 7.3.0 and that of 8.0.0.
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the authors.
</p>
* @page changes_between_8_0_and_8_1 Changes between Version 8.0 and 8.1
<p>
-This is the list of changes made between the release of
-deal.II version 8.0.0 and that of 8.1.0.
+This is the list of changes made between the deal.II releases listed above.
All entries are signed with the names of the author.
</p>