Modules

Finite element access/FEValues classes

Finite elements
Collaboration diagram for Finite element access/FEValues classes:

Modules

 Handling vector valued problems

Detailed Description

The classes in this module are used when one wants to assemble matrices or vectors. They link finite elements, quadrature objects, and mappins: the finite element classes describe a finite element space on a unit cell (i.e. the unit line segment, square, or cube [0,1]^d), the quadrature classes describe where quadrature points are located and what weight they have, and the mapping classes describe how to map a point from the unit cell to a real cell and back. Since integration happens at quadrature points on the real cell, and needs to know their location as well as the values and gradients of finite element shape functions at these points. The FEValues class coordinates getting this information. For integrations on faces (for example for integration on the boundary, or interfaces between cells), the FEFaceValues class offers similar functionality as the FEValues class does for cells. Finally, the FESubfaceValues class offers the possibility to ingrate on parts of faces if the neighboring cell is refined and the present cell shares only a part of its face with the neighboring cell. If vector-valued elements are used, the FEValues and related classes allow access to all vector components; if one wants to pick individual components, there are extractor classes that make this task simpler, as described in the Handling vector valued problems module.

The last member of this group, the UpdateFlags enumeration, is used as an optimization: instead of letting the FEValues class compute every possible piece of data relating to a given finite element on a cell, you have to specify up front which information you are actually interested in. The UpdateFlags enumeration is used to offer symbolic names denoting what you want the FEValues class to compute.

All these classes are used in all tutorial programs from step-3 onward, and are described there in significant detail.

The actual workings of the FEValues class and friends is complicated because it has to be general yet efficient. The page on The interplay of UpdateFlags, Mapping and FiniteElement in FEValues attempts to give an overview of how this works.


deal.II documentation generated on Tue Mar 15 2011 18:45:23 by doxygen 1.7.3