traces.hh
DirichletElementFormula(const BoundaryConditions bc)
Definition: traces.hh:181
bool build_(const Quad< Real > *elm, F condition)
Builds elements for the edges w.r.t.
bool compute_(const Edge2d *cell, const Boundary b, const Real p, const Real t, F &val) const
Definition: traces.hh:216
TraceSpace(const concepts::SpaceOnCells< Real > &spc, const concepts::CellConditions *cc=0, enum traceTypes type=FIRST, const concepts::EdgeNormalVectorRule normalVectorRule=concepts::EdgeNormalVectorRule())
A cell in a mesh consist of topological information (neighbours, connectivity, orientation) and geome...
Definition: cell.hh:39
concepts::Joiner< hp1D::BaseElement< Real > *, 1 > * elm_
Linked list of the elements.
Definition: traces.hh:136
#define conceptsAssert(cond, exc)
Assert that a certain condition is fulfilled.
Definition: exceptions.hh:394
concepts::ElementAndFacette< hp2D::Element< Real > > UnderlyingElement
Definition: traces.hh:55
void test_(const concepts::ElementWithCell< Real > &elm, F condition)
Test if not implemented elements have edges w.r.t.
bool compute_(const Edge2d *cell, const Boundary b, const P &p, const Real t, F &val) const
Definition: traces.hh:226
F compute_(const Element< G > &elm, const P &p, const Real t) const
Definition: traces.hh:199
concepts::HashMap< concepts::Sequence< UnderlyingElement > > uelm_
Map from key of (topological) edge to the underlying 2D elements.
Definition: traces.hh:139
virtual DirichletElementFormula< F, G > * clone() const
Virtual copy constructor.
Definition: traces.hh:190
virtual ~TraceSpace()
Interface for a formula defined element by element.
Definition: elementFormula.hh:35
virtual F operator()(const ElementWithCell< G > &elm, const Real p, const Real t=0.0) const
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
An abstract class for scanning a mesh (a set of cells) or a space (a set of elements).
Definition: scannerConnectors.hh:29
void constructType_(enum traceTypes type, const concepts::EdgeNormalVectorRule &normalVectorRule)
Base class for defining rules in which direction the normal vector should point for created edges fro...
Definition: normalVector.hh:31
Sequence with operations, output operator, and method of the particular element types.
Definition: sequence.hh:39
virtual void recomputeShapefunctions()
Recompute shape functions, e.g.
enum boundaryTypes type() const
Returns the type of the boundary condition.
Definition: boundary.hh:74
const concepts::Sequence< UnderlyingElement > uelm(const concepts::Edge edge) const
Returns the underlying 2D elements.
Definition: traces.hh:104
Definition: cellConditions.hh:125
Definition: hashMap.hh:19
virtual const Cell & cell() const =0
Returns the cell on which the element is built.
const concepts::HashMap< concepts::Sequence< UnderlyingElement > > uelm() const
Returns the mapping from the key of (topological) edge to the underlying 2D elements.
Definition: traces.hh:117
TraceSpace(concepts::SpaceOnCells< Real > &spc, const concepts::CellConditions *cc=0, enum traceTypes type=FIRST, const concepts::EdgeNormalVectorRule normalVectorRule=concepts::EdgeNormalVectorRule())
Constructor.
virtual Scan * scan() const
Returns a scanner to iterate over the elements of the space.
Definition: traces.hh:97
Exception class to express that an inquired element is not in the domain.
Definition: exceptions.hh:24
TraceSpace(const concepts::SpaceOnCells< Real > &spc, const concepts::Set< uint > edgeAttr, enum traceTypes type=FIRST, const concepts::EdgeNormalVectorRule &normalVectorRule=concepts::EdgeNormalVectorRule())
Constructor.
Container for an element and one facette (edge or face).
Definition: element.hh:113
virtual std::ostream & info(std::ostream &os) const
concepts::HashMap< hp1D::Element< Real > * > edges_
Map from key of (topological) edge to the element.
Definition: traces.hh:142