Public Member Functions |
GeometryType | type () const |
| return the element type identifier
|
bool | affine () const |
| here we have always an affine geometry
|
int | corners () const |
| return the number of corners of this element. Corners are numbered 0...n-1
|
FieldVector< ctype, cdim > | corner (const int i) const |
| return i'th corner of the geometry
|
FieldVector< ctype, cdim > | center () const |
| return center of the geometry
|
void | print (std::ostream &ss, int indent) const |
| print internal data
|
void | make (FieldMatrix< ctype, 1, cdim > &__As) |
| constructor, makes element from position and direction vectors
|
FieldVector< ctype, cdim > | global (const FieldVector< ctype, 0 > &local) const |
| maps a local coordinate within reference element to global coordinate in element
|
FieldVector< ctype, 0 > | local (const FieldVector< ctype, cdim > &global) const |
| maps a global coordinate within the element to a local coordinate in its reference element
|
| SGeometry () |
| constructor with bool argument makes reference element if true, uninitialized else
|
ctype | volume () const |
| This dummy routine always returns 1.0.
|
ctype | integrationElement (const FieldVector< ctype, 0 > &local) const |
| This dummy routine always returns 1.0.
|
const FieldMatrix< ctype,
0, cdim > & | jacobianTransposed (const FieldVector< ctype, 0 > &local) const |
const FieldMatrix< ctype, cdim, 0 > & | jacobianInverseTransposed (const FieldVector< ctype, 0 > &local) const |
template<int cdim, class GridImp>
class Dune::SGeometry< 0, cdim, GridImp >
specialization for dim=0, this is a vertex
template<int cdim, class GridImp >
constructor with bool argument makes reference element if true, uninitialized else
Integration over a general element is done by integrating over the reference element and using the transformation from the reference element to the global element as follows:
where
is the local to global mapping and
is the integration element.
For a general map \form#129 involves partial derivatives of the map (surface element of
the first kind if \form#130, determinant of the Jacobian of the transformation for
,
for
).
For linear elements, the derivatives of the map with respect to local coordinates
do not depend on the local coordinates and are the same over the whole element.
For a structured mesh where all edges are parallel to the coordinate axes, the
computation is the length, area or volume of the element is very simple to compute.
Each grid module implements the integration element with optimal efficieny. This
will directly translate in substantial savings in the computation of finite element
stiffness matrices.
For this specialisation the integrationElement is always 1.