Dune::EdgeS0_5FiniteElementFactory< Geometry, RF > Struct Template Reference

Factory for EdgeS0_5FiniteElement objects. More...

#include <dune/localfunctions/whitney/edges0.5.hh>

Inheritance diagram for Dune::EdgeS0_5FiniteElementFactory< Geometry, RF >:
Inheritance graph

List of all members.

Public Types

typedef EdgeS0_5FiniteElement
< Geometry, RF > 
FiniteElement
 Type of the finite element.

Public Member Functions

template<class VertexOrder >
const FiniteElement make (const Geometry &geometry, const VertexOrder &vertexOrder)
 construct the factory
Finite element creation methods

Each finite element factory implementation must provide at least one of these methods. The signatures may be extended by additional parameters, but the parameters that are specified here should be given first and in the order specified here.

The return value of these functions is suitable for binding to a const reference -- it will either be an rvalue (in which case binding to a const reference will create a copy whose lifetime is the same as the reference itself), or it will be an lvalue (in which case the factory must guarantee that it will be valid until the factory is destroyed or something else happens that explicitly invalidates all created finite elements).

In any case, since global-valued finite element objects are copy-constructible, it is also possible to use the returned value to initialize a finite element object instead of a const reference.

const FiniteElement make (const Geometry &, const VertexOrder &,...)
 create a finite element from a geometry and a vertex ordering
const FiniteElement make (const Geometry &,...)
 create a finite element from a geometry
const FiniteElement make (const VertexOrder &,...)
 create a finite element from a vertex ordering
const FiniteElement make (const GeometryType &,...)
 create a finite element from a geometry type
const FiniteElement make (...)
 create a finite element

Detailed Description

template<class Geometry, class RF>
struct Dune::EdgeS0_5FiniteElementFactory< Geometry, RF >

Factory for EdgeS0_5FiniteElement objects.

Constructs EdgeS0_5FiniteElement objects given a geometry and a vertex ordering.

Template Parameters:
Geometry Geometry for the local to global transformation.
RF Field type of the range.

Member Typedef Documentation

template<class Geometry , class RF >
typedef EdgeS0_5FiniteElement<Geometry, RF> Dune::EdgeS0_5FiniteElementFactory< Geometry, RF >::FiniteElement

Type of the finite element.

Should be an implementation of FiniteElementIterface

Note:
May be an inline class instead of a typedef.

Reimplemented from Dune::FiniteElementFactoryInterface< Geometry, VertexOrder >.


Member Function Documentation

template<class Geometry , class RF >
template<class VertexOrder >
const FiniteElement Dune::EdgeS0_5FiniteElementFactory< Geometry, RF >::make ( const Geometry &  geometry,
const VertexOrder &  vertexOrder 
) [inline]

construct the factory

Parameters:
geometry The geometry object to use for adaption.
vertexOrder The global ordering of the vertices within the grid, used to determine orientation of the edges. This vertexOrder object must support codim=0.
Note:
The returned object stores the reference to the geometry passed here. Any use of the returned value after this references has become invalid results in undefined behaviour. The exception is that the destructor of this class may still be called. The information contained in the vertexOrder object is extracted and the object is no longer needed after the contructor returns. No reference to internal data of the factory is stored.
template<class Geometry , class VertexOrder >
const FiniteElement Dune::FiniteElementFactoryInterface< Geometry, VertexOrder >::make (   ...  )  [inherited]

create a finite element

template<class Geometry , class VertexOrder >
const FiniteElement Dune::FiniteElementFactoryInterface< Geometry, VertexOrder >::make ( const GeometryType &  ,
  ... 
) [inherited]

create a finite element from a geometry type

Note:
This signature should only be used when only the geometry type but not the full geometry or vertex ordering are needed.
template<class Geometry , class VertexOrder >
const FiniteElement Dune::FiniteElementFactoryInterface< Geometry, VertexOrder >::make ( const VertexOrder &  ,
  ... 
) [inherited]

create a finite element from a vertex ordering

template<class Geometry , class VertexOrder >
const FiniteElement Dune::FiniteElementFactoryInterface< Geometry, VertexOrder >::make ( const Geometry &  ,
  ... 
) [inherited]

create a finite element from a geometry

template<class Geometry , class VertexOrder >
const FiniteElement Dune::FiniteElementFactoryInterface< Geometry, VertexOrder >::make ( const Geometry &  ,
const VertexOrder &  ,
  ... 
) [inherited]

create a finite element from a geometry and a vertex ordering


The documentation for this struct was generated from the following file:

Generated on Fri Apr 29 2011 with Doxygen (ver 1.7.1) [doxygen-log,error-log].