Reference documentation for deal.II version 9.2.0
\(\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\}}\)
Modules | Namespaces | Classes
Utility functions and classes

This module simply collects a number of functions and classes that provide general tools for tasks that do not usually have much to do with finite element programs in particular, but happen to be required there just as well. More...

Collaboration diagram for Utility functions and classes:

Modules

 Memory handling
 This group has some basic classes and namespaces for memory handling. The Subscriptor and SmartPointer classes are used for counted memory handling, i.e. whenever a SmartPointer is set to point to an object, it increases a counter in that object; when the pointer is set to point elsewhere, it decreases it again. This way, one always knows how many users of an object there still are. While this is rarely useful in itself, it is used to generate an exception if an object is destroyed while a pointer somewhere is still pointing to it, as any access through that pointer at a later time would otherwise lead to access of invalid memory regions.
 
 Data storage primitives
 Here are a few simple classes that help in storage and viewing data. For example, the Table templates allow to use not only arrays of objects (for which one might want to use the std::vector class), but also two-dimensional (rectangular) tables of arbitrary objects, as well as higher-order analogs up to tables with (presently) seven indices.
 

Namespaces

 GeometricUtilities
 
 Utilities::MPI
 
 Utilities
 
 Utilities::System
 

Classes

class  JobIdentifier
 
class  Timer
 
class  TimerOutput
 

Detailed Description

This module simply collects a number of functions and classes that provide general tools for tasks that do not usually have much to do with finite element programs in particular, but happen to be required there just as well.