dune-localfunctions  2.2.0
Public Types | Public Member Functions
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:
GeometryGeometry for the local to global transformation.
RFField 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:
geometryThe geometry object to use for adaption.
vertexOrderThe 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 ( const Geometry &  ,
const VertexOrder &  ,
  ... 
)
inherited

create a finite element from a geometry and 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 VertexOrder &  ,
  ... 
)
inherited

create a finite element from a vertex ordering

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 (   ...)
inherited

create a finite element


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