neumannTraceSpace3d.hh
Go to the documentation of this file.
72 // quad_lvl(const UnderlyingQuad* quad,const concepts::Level<3> level,uint k) :level(level), quad(quad), k(k) {
79 // // With this ordering a finer Edge is followed by at most 2 coarse edge where the finer edge is a child of one of them
256 bool buildElements_(concepts::HashMap<concepts::Sequence<UnderlyingElement> >& uelm, const concepts::BoundaryConditions* bc);
259 //method reconstruct all child edges belonging to a coarse edge and writes information into the coarsetochld_map
273 // void prepareIrregularElements_(concepts::HashMap<concepts::Sequence<UnderlyingElement> >& irregular_uelm);
276 // void buildIrregularElements_(concepts::HashMap<concepts::Sequence<UnderlyingElement> >& irregular_uelm,
290 Real weight_(bool first,const concepts::Z2 dir, const uint nUelm, const concepts::Attribute attrb) const;
virtual std::ostream & info(std::ostream &os) const
Returns the underlying 3D elements of the given edge if existing.
concepts::HashMap< hp3D::NeumannTraceElement3d< Real > * > quads_
Map from key of (topological) quad to the element.
Definition: neumannTraceSpace3d.hh:242
bool activeQuad_(const concepts::Set< uint > &quadAttr, const concepts::Connector2 &quad)
Definition: neumannTraceSpace3d.hh:294
NeumannTraceSpace3d(const concepts::SpaceOnCells< Real > &spc, const concepts::Set< uint > faceAttr, concepts::FacetteTraceType< concepts::FaceNormalVectorRule >::traceTypes=concepts::FacetteTraceType< concepts::FaceNormalVectorRule >::FIRST, const concepts::FaceNormalVectorRule &normalVectorRule=concepts::FaceNormalVectorRule(), bool emptyElm=true)
Constructor.
Class FacetteTraceType holding the information about the TraceType, i.e.
Definition: facetteTraceTypes.hh:34
concepts::ElementAndFacette< concepts::Quad > UnderlyingQuad
Definition: neumannTraceSpace3d.hh:66
void test_(const concepts::ElementWithCell< Real > &elm, F condition)
Test if not implemented elements have edges w.r.t.
virtual Scan * scan() const
Returns a scanner to iterate over the elements of the space TODO: why is this not working.
Definition: neumannTraceSpace3d.hh:203
concepts::Scan< hp2D::Element< Real > > Scan
Definition: neumannTraceSpace3d.hh:63
An abstract class for scanning a mesh (a set of cells) or a space (a set of elements).
Definition: scannerConnectors.hh:29
concepts::ElementAndFacette< hp3D::Element< Real > > UnderlyingElement
Definition: neumannTraceSpace3d.hh:64
Sequence with operations, output operator, and method of the particular element types.
Definition: sequence.hh:39
virtual uint nelm() const
Returns the number of NeumannTraceElements in the Space.
Definition: neumannTraceSpace3d.hh:198
Definition: hashMap.hh:19
concepts::Joiner< hp2D::Element< Real > *, 1 > * elm_
Linked list of the elements.
Definition: neumannTraceSpace3d.hh:239
bool buildElements_(concepts::HashMap< concepts::Sequence< UnderlyingElement > > &uelm, const concepts::BoundaryConditions *bc)
A the NeumannTrace space of a given 3D - Finite Element space.
Definition: neumannTraceSpace3d.hh:61
concepts::FacetteTraceTypes< concepts::FaceNormalVectorRule > trTypes_
Mapping from Attributes to a given EdgeTracetype.
Definition: neumannTraceSpace3d.hh:249
virtual uint dim() const
Returns the dimension of the underlying Finite Element Space.
Definition: neumannTraceSpace3d.hh:193
Real weight_(bool first, const concepts::Z2 dir, const uint nUelm, const concepts::Attribute attrb) const
Consider the outwards pointing normalvector evaluations of a neumantrace basis function u.
void reconstruct_(concepts::HashMap< concepts::Sequence< UnderlyingElement > > &irregular_uelm, concepts::HashMap< concepts::Sequence< UnderlyingQuad > > &nodeMap, concepts::HashMap< concepts::Sequence< UnderlyingQuad > >::const_iterator iterNode, concepts::Set< uint > &buildedEdges, concepts::HashMap< concepts::Sequence< UnderlyingQuad > > &coarsetochld_map)
NeumannTraceSpace3d(concepts::SpaceOnCells< Real > &spc, const concepts::FacetteTraceTypes< concepts::FaceNormalVectorRule > &fttypes, bool emptyElm=true)
Constructor.
Container for an element and one facette (edge or face).
Definition: element.hh:113
Class for defining rules in which direction the normal vector should point for created faces from hex...
Definition: normalVector.hh:129