Reference documentation for deal.II version GIT relicensing-426-g7976cfd195 2024-04-18 21:10:01+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
Changes between Version 3.2 and 3.3

This is the list of changes made between the deal.II releases listed above. All entries are signed with the names of the author.

General

  1. New: Output for Tecplot has been added. It can be used by choosing output format «tecplot».
    (Benjamin Shelton Kirk 2002/01/29)

  2. New: configuration detects whether the compiler has the include file <ostream>. Most files in the library then include this file over <iostream> to save compile time.
    (WB 2002/01/25)

  3. Fixed: All example and test programs as well as a number of large applications have been checked against the memory checker "purify". Only three memory leaks were found and fixed. We believe that no major leaks exist in the library any more.
    (WB 2001/12/07)

  4. New: Output for OpenDX has been added. It can be used by choosing output format «dx» (not yet for grid output). The data format is very basic now, but it is planned to improve this to make use of the excellent capabilities of OpenDX.

    Additionally, a directory contrib/dx has been added, containing visual programs for OpenDX. Programs for the existing output of data as a single vector are found in the subdirectory single.
    (GK 2001/12/07)

  5. Fixed: Previously, the $(INCLUDE) variable in Makefiles included the values of the $INCLUDE environment variable. This is not desirable, since the compiler evaluates that variable anyway and the Makefile variable has -I prefixed to all paths while the environment variable has not.
    (WB 2001/11/29)

  6. Removed: the option to generate printable documentation was removed. Since this comprised approximately 2000 pages and since we believe that the online documentation is rather good, this is probably no big loss.
    (WB 2001/11/29)

  7. New: example program step-12. Discontinuous Galerkin discretization.
    (RH 2001/11/21)

  8. New: deal.II now uses a file config.h for most global preprocessor defines, instead of an overly long list of compiler flags given on the command line.
    (WB 2001/10/27)

  9. Changed: If available, the library now uses the C++ standard classes istringstream and ostringstream over the old classes i/ostrstream. The ./configure script finds out whether the new classes exist, or whether the backward compatibility classes are to be used.
    (WB 2001/10/25)

  10. New: the ./configure script now recognizes gcc3.1 (i.e. presently prereleases of it) and sets compilation flags accordingly.
    (WB 2001/10/25)

base

  1. Fixed: For Mac OS X, the file base/source/log.cc needed to include sys/time.h in addition to sys/resource.h.
    (Alexis Herault, WB 2002/01/28)

  2. Fixed: Private definitions of the copy constructor and assignment operator of the ParameterHandler class are now included in order to inhibit the (unintentional) use of default copy constructors.
    (RH 2002/01/22)

  3. Improved: The cut-off functions Functions::CutOffFunctionLinfty, Functions::CutOffFunctionW1, and Functions::CutOffFunctionCinfty can be vector-valued now and optionally only a single componente can be selected.
    (GK 2002/01/10)

  4. New: the deal_II_exceptions::set_additional_assert_output function allows to set additional output to be printed upon triggering an Assert() call. This is helpful for parallel applications where you only see the text of the message but do not know from which cluster node it stems.
    (WB 2002/01/10)

  5. Changed: when an assertion fails in the Assert() function, the program is usually aborted. Don't abort it any more if there is an active C++ exception somewhere since we would lose its message if we 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 Assert() calls, since they often are follow-ups of the first one.
    (WB 2002/01/09)

  6. New: ExcFileNotOpen can be used after initializing an fstream object. This allows to avoid some cryptic ExcIOs.
    (GK 2001/12/18)

  7. Changed: The OutputStyle enum used to indicate the output format has been moved into the ParameterHandler class.
    (WB 2001/11/30)

  8. Fixed: In the ParameterHandler class, we leaked 8 or 12 bytes of memory per declared parameter. This is now fixed.
    (WB 2001/11/28)

  9. New: Functions::CutOffFunctionCinfty, Functions::CutOffFunctionW1, and Functions::CutOffFunctionLinfty implement functions with support in an arbitrary ball and differentiability as indicated by their name
    (GK 2001/10/24)

  10. Fixed: The DataOutBase::EpsFlags class forgot to declare the reverse grey scale function as one possible input for the color function for the ParameterHandler class. This is now possible.
    (WB 2001/10/10)

lac

  1. Improved: all sparsity pattern classes have a function exists, allowing you to check whether a certain index pair has been allocated in the pattern.
    (GK 2002/02/01)

  2. Fixed: Allocation of temporary vectors in FilteredMatrix::allocate_tmp_vector is now faster since it does no more copy the value of the template vector.
    (WB 2001/11/22)

  3. Fixed: The FilteredMatrix::allocate_tmp_vector function had a bug with block vectors.
    (WB 2001/11/22)

  4. Improved: reinit function of Vector and BlockVector allows use of a vector with different number type.
    (GK 2001/11/21)

  5. Fixed: when checking for convergence in linear solvers in SolverControl::check, 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 allowed iteration, this led to a failure notice of the linear solver, rather than to a success message. This is now fixed.
    (WB 2001/11/19)

  6. New: the SparseDirectMA27/47 classes now provide access to Mutex locks for external synchronisation.
    (WB 2001/11/14)

  7. Fixed: an error in the definition of the SolverMinRes::solve function prevented its compilation under some circumstances.
    (WB 2001/11/14)

  8. Fixed: upon breakdown, the SolverBicgstab forgot to increment the iteration counter for the breakdown cycle. This is now fixed.
    (WB 2001/11/14)

  9. Improved: class SolverGMRES accepts a parameter in AdditionalData, allowing for right preconditioning.
    (GK 2001/11/09)

  10. Fixed: class SparsityPattern can handle rows of length zero now. For quadratic matrices, these rows are changed to length one, since a diagonal element must be stored.
    (GK 2001/10/11)

  11. New: The BlockVector now has a full-fledged random access iterator type, working in exactly the same way as the iterators of the C++ standard containers.
    (WB 2001/09/28)

  12. New: Vector::operator * is now templatized, allowing for scalar products of vectors with different underlying types.
    (WB 2001/09/27)

deal.II

  1. Changed: The classes FEQ1-FEQ4, FEDG_Q1FEDG_Q4 as well as the files with their definitions, fe/fe_lib.lagrange.h and fe/fe_lib.dg.h 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 FE_Q and FE_DGQ, respectively.
    (GK 2002/02/01)

  2. New: The FilteredIterator class provides a view on ranges of iterators by iterating over only those objects that satisfy a certain predicate.
    (WB 2002/01/07)

  3. Improved: It is now possible to read in unconnected domains through the GridIn class, since renumbering the cells now also works for these domains.
    (Michael Stadler 2001/12/14)

  4. Improved: Both functions VectorTools::compute_mean_value take ingoing and outgoing vector types as template arguments. This allows applying them to BlockVector.
    (GK 2001/12/07)

  5. New: GridGenerator has a function cylinder for cylinders in three space dimensions. Accoridngly, a class CylinderBoundary has been created.
    (GK 2001/12/07)

  6. New: FiniteElement::has_support_on_face allows to check whether a shape function has non-zero values on a certain face of a cell.
    (GK 2001/12/04)

  7. Changed: The IteratorState 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, you now have to prefix it by IteratorState::.
    (WB 2001/11/30)

  8. Changed: The NormType enum used to indicate the norm the VectorTools::integrate_difference function shall integrate is moved from the global namespace into the VectorTools class. You therefore have to prefix the members of this enum by the respective class name.
    (WB 2001/11/29)

  9. Fixed: The functions Mapping::transform_unit_to_real_cell leaked some memory. This is now fixed.
    (RH, WB 2001/11/28)

  10. Fixed: The DoFHandler class had a memory leak. This is now fixed. Likewise for the MGDoFHandler class.
    (WB 2001/11/28)

  11. Fixed: The GridRefinement::refine function failed when the threshold was zero. This is now fixed.
    (RH 2001/11/26)

  12. Fixed: The MappingQ<dim>::transform_real_to_unit_cell function failed on a very unusual cell. This is now fixed.
    (RH 2001/11/26)

  13. New: The new CellAccessor<dim>::neighbor_of_coarser_neighbor function returns where to find the present cell from a coarser neighbor.
    (RH 2001/11/21)

  14. Fixed: The GridRefinement::refine_fixed_fraction function sometimes had problems when indicators vary over several orders of magnitude, due to roundoff. This is now fixed.
    (WB 2001/11/05)

  15. New: DoFTools::extract_subdomain_dofs selects those degrees of freedom which are located on cells with a specified subdomain id.
    (WB 2001/10/27)

  16. New: Cells now have an additional property subdomain_id 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 cell->subdomain_id() and cell->set_subdomain_id(new_id). The subdomain ids are unsigned integers, so should be sufficiently large also for larger numbers of subdomains.
    (WB 2001/10/27)

  17. Fixed: the GridGenerator::hyper_rectangle function was broken in 3d.
    (WB 2001/10/26)

  18. Improved: Both functions DataOut_DoFData::add_data_vector accepts BlockVector as argument.
    (GK 2001/10/12)

  19. Improved: Both functions VectorTools::integrate_difference take ingoing and outgoing vector types as template arguments. This allows applying them to BlockVector and of outputting a vector of doubles suitable for DataOut.
    (GK 2001/10/12)

  20. Fixed: Functions creating sparsity patterns for DG elements in DoFTools get the pattern type as template argument, too..
    (GK 2001/10/01)

  21. Fixed: the iterator category template base class of grid iterators was incorrectly set.
    (WB 2001/09/28)