Continuous extension of a formula on edges, e.g. More...
#include <formula.hh>


Public Types | |
| typedef F | value_type |
Public Member Functions | |
| virtual H1Extension< F > * | clone () const |
| Virtual copy constructor. | |
| H1Extension (const concepts::ElementFormula< F > &frm, const concepts::Set< concepts::Attribute > attributes) | |
| Constructor. | |
| H1Extension (const concepts::ElementFormula< F > &frm) | |
| Constructor for extension from formula on edges. | |
| virtual F | operator() (const ElementWithCell< typename Realtype< F >::type > &elm, const Real p, const Real t=0.0) const =0 |
| Evaluates the formula. | |
| virtual F | operator() (const concepts::ElementWithCell< Real > &elm, const concepts::Real3d &p, const Real t=0.0) const |
| virtual F | operator() (const ElementWithCell< typename Realtype< F >::type > &elm, const Real3d &p, const Real t=0.0) const =0 |
| virtual F | operator() (const concepts::ElementWithCell< Real > &elm, const Real2d &p, const Real t=0.0) const |
| virtual F | operator() (const concepts::ElementWithCell< Real > &elm, const Real p, const Real t=0.0) const |
| virtual F | operator() (const ElementWithCell< typename Realtype< F >::type > &elm, const Real2d &p, const Real t=0.0) const =0 |
| virtual | ~H1Extension () |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Private Member Functions | |
| void | clear_ () const |
| Clear the temporary information (elmEdges_, cellEdges_). | |
| bool | compute_ (const hp2D::Quad< Real > *quad, const Real2d &p, const Real t, F &val) const |
Private Attributes | |
| const concepts::Set < concepts::Attribute > | attributes_ |
| Attributes of the cells taken into account. | |
| concepts::Sequence < concepts::Edge2d * > | cellEdges_ |
| List of the generated cells on the edges. | |
| concepts::HashMap< const concepts::Edge * > | edges_ |
| The last used edges. | |
| const concepts::ElementWithCell < Real > * | elm_ |
| The last used element. | |
| concepts::Array < concepts::ElementWithCell < Real > * > | elmEdges_ |
The last used elements on the edges of elm_. | |
| std::auto_ptr< const concepts::ElementFormula< F > > | frm_ |
| The formula on the edges. | |
| concepts::HashMap< F > | vtxValues_ |
| Values on the vertices. | |
Continuous extension of a formula on edges, e.g.
boundary or interface edges, to the interior.
The user has to ensure, that the data on the edges is given continuously. The name H1Extension is not fully appropiate, since the data on the edges could be continuous given, but need not be in
.
Definition at line 64 of file formula.hh.
typedef F concepts::ElementFormula< F, typename Realtype<F>::type >::value_type [inherited] |
Definition at line 31 of file elementFormula.hh.
| hp2D::H1Extension< F >::H1Extension | ( | const concepts::ElementFormula< F > & | frm | ) |
Constructor for extension from formula on edges.
Example of such an (element) formula is a the Dirichlet data.
Extension is continuous, if the mesh has no hanging nodes in the first layer around the edges of the given formula.
| frm | element formula on edges (hp2D::Edge) |
| hp2D::H1Extension< F >::H1Extension | ( | const concepts::ElementFormula< F > & | frm, |
| const concepts::Set< concepts::Attribute > | attributes | ||
| ) |
Constructor.
| frm | element formula on edges (hp2D::Edge) |
| attributes | attributes of the cells taken into account |
| virtual hp2D::H1Extension< F >::~H1Extension | ( | ) | [virtual] |
| void hp2D::H1Extension< F >::clear_ | ( | ) | const [private] |
Clear the temporary information (elmEdges_, cellEdges_).
| virtual H1Extension<F>* hp2D::H1Extension< F >::clone | ( | ) | const [inline, virtual] |
Virtual copy constructor.
Implements concepts::ElementFormula< F >.
Definition at line 98 of file formula.hh.
| bool hp2D::H1Extension< F >::compute_ | ( | const hp2D::Quad< Real > * | quad, |
| const Real2d & | p, | ||
| const Real | t, | ||
| F & | val | ||
| ) | const [private] |
| virtual std::ostream& hp2D::H1Extension< F >::info | ( | std::ostream & | os | ) | const [protected, virtual] |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
| virtual F concepts::ElementFormula< F, typename Realtype<F>::type >::operator() | ( | const ElementWithCell< typename Realtype<F>::type > & | elm, |
| const Real3d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [pure virtual, inherited] |
| virtual F hp2D::H1Extension< F >::operator() | ( | const concepts::ElementWithCell< Real > & | elm, |
| const concepts::Real3d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [virtual] |
| virtual F hp2D::H1Extension< F >::operator() | ( | const concepts::ElementWithCell< Real > & | elm, |
| const Real | p, | ||
| const Real | t = 0.0 |
||
| ) | const [virtual] |
| virtual F hp2D::H1Extension< F >::operator() | ( | const concepts::ElementWithCell< Real > & | elm, |
| const Real2d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [virtual] |
| virtual F concepts::ElementFormula< F, typename Realtype<F>::type >::operator() | ( | const ElementWithCell< typename Realtype<F>::type > & | elm, |
| const Real2d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [pure virtual, inherited] |
| virtual F concepts::ElementFormula< F, typename Realtype<F>::type >::operator() | ( | const ElementWithCell< typename Realtype<F>::type > & | elm, |
| const Real | p, | ||
| const Real | t = 0.0 |
||
| ) | const [pure virtual, inherited] |
Evaluates the formula.
| elm | Element |
| p | Point in space in local element coordinates |
| t | Point in time |
const concepts::Set<concepts::Attribute> hp2D::H1Extension< F >::attributes_ [private] |
Attributes of the cells taken into account.
No attributes means, that all cells are taken.
Definition at line 109 of file formula.hh.
concepts::Sequence<concepts::Edge2d*> hp2D::H1Extension< F >::cellEdges_ [mutable, private] |
List of the generated cells on the edges.
Definition at line 115 of file formula.hh.
concepts::HashMap<const concepts::Edge*> hp2D::H1Extension< F >::edges_ [mutable, private] |
The last used edges.
Definition at line 117 of file formula.hh.
const concepts::ElementWithCell<Real>* hp2D::H1Extension< F >::elm_ [mutable, private] |
The last used element.
Definition at line 111 of file formula.hh.
concepts::Array<concepts::ElementWithCell<Real>*> hp2D::H1Extension< F >::elmEdges_ [mutable, private] |
The last used elements on the edges of elm_.
Definition at line 113 of file formula.hh.
std::auto_ptr<const concepts::ElementFormula<F> > hp2D::H1Extension< F >::frm_ [private] |
The formula on the edges.
Definition at line 105 of file formula.hh.
concepts::HashMap<F> hp2D::H1Extension< F >::vtxValues_ [mutable, private] |
Values on the vertices.
Definition at line 119 of file formula.hh.