Problem Definition

Classes, needed to define a problem. More...

Modules

Differential operators
Predefined standard differential operators to be used as building blocks.

Variables
Classes to define groups of variables.

Functionals
Classes for defining PDE problems in terms of variational functionals or weak formulations.

Finite Elements
Classes to define finite element spaces and functions on them.

Detailed Description

Classes, needed to define a problem.

This group of classes helps to define minimization problems or operator equations in finite element spaces. for this purpose one has to define a variational functional, or an operator in weak form, which maps certain variables to certain residual spaces (often dual spaces). Often one has to deal with systems of equations.

In order to set up a PDE problem, the following steps are usually required:

1. Obtain a grid and let a GridManager handle subsequent mesh refinements and prolongation.
2. Define suitable finite element spaces required for the discretization of the problem (see Finite Elements).
3. Define the variables ocurring in the problem. For equations (either scalar or vectorial), this will usually be only one. For systems of equations, there will be several variables (see Variables).
4. Define the variational functional (or the operator) and its derivatives (see Functionals and the VariationalFunctional concept).
5. Instantiate an assembler that can perform assembly of right hand sides and stiffness matrices (see Assembly).

The following tasks are supported by the following classes

• Standard FEM Spaces: DiscontinuousLagrangeMapper, ContinuousLagrangeMapper, NedelecMapper
• Definition of Spaces: FEFunctionSpace
• Definition of elementary properties of varibles: VariableDescription
• Grouping several variables and spaces together into a whole: VariableSetDescription via boost::fusion::vector
• Representation of such a group: VariableSet
• Representation of a single component: FunctionSpaceElement
• Definition of a functional/equation: VariationalFunctional