elementMaps.hh
InverseVertexQuadSector2d(const InverseVertexQuadSector2d &v)
virtual InverseVertexQuadSector2d * clone() const
std::ostream & info(std::ostream &os) const
Returns information in an output stream.
Definition: elementMaps.hh:26
virtual MappingParallelEdge2d * clone() const
Virtual copy constructor.
virtual Real2d operator()(const Real t) const
Application operator.
virtual Real2d operator()(Real x, Real y) const
Application operator.
virtual Real curvature(const Real t, uint n=0) const
Returns the n-th derivative of the curvature.
In existant 2D element map for an edge the direction in the edge are inversed.
Definition: elementMaps.hh:179
bool straight() const
returns true if the mapping is straight, i.e. the radius equals zero.
Real2d sector_p_[4]
Sector points, namely vtx0~vtx3, using to decide the sector number.
Definition: elementMaps.hh:1014
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual Real2d operator()(const Real x, const Real y) const =0
Application operator.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
const Real2d xi_(const Real x, const Real y) const
Returns the parameter in the original mapping.
Definition: elementMaps.hh:974
MappingParallelEdge2d(const MappingEdge2d &edgemap, const Real d)
Constructor.
MappingQuadEdge2d(const MappingQuad2d &map, const uint edge)
Constructor for a real edge.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
Real3d operator()(Real x, Real y) const
Returns a point in 3D mapped from the unit square onto the element in the original mesh.
Definition: elementMaps.hh:1056
virtual MapReal2d jacobian(const Real x, const Real y) const
Returns the Jacobian in a 2D linear map.
virtual Real2d operator()(const Real t) const
Application operator.
virtual MapTriangle2d * clone() const
Creates a clone of itself and returns it.
ParabelMappingEdge2d(const ParabelMappingEdge2d &edgemap)
Copy Constructor.
virtual MapReal2d jacobianInverse(const Real x, const Real y) const
Returns the inverse of the Jacobian in a 2D linear map.
virtual ~InverseVertexQuadSector2d()
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
EllipseMappingEdge2d * part(const Real t0, const Real t1) const
Returns a new object of an element map for a rectangular part of the reference cell defined by the tw...
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
MappingStraightEdge2d(const Real2d vtx0, const Real2d vtx1)
Constructor.
virtual InverseMappingEdge2d * clone() const
Virtual copy constructor.
virtual Real jacobianDeterminant(const Real x, const Real y) const
Returns determinant of the Jacobian.
virtual VertexTriangle2d * clone() const
Creates a clone of itself and returns it.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual MappingQuad2d * part(const Real2d x0, const Real2d y0) const
Returns a new object of an element map for a rectangular part of the reference cell defined by the tw...
virtual MappingEdge2d * edge(const uint edge) const
Returns a copy of the edge mapping of one edge.
Definition: elementMaps.hh:916
A 2D element map for a quadrilateral given by a the four vertices.
Definition: elementMaps.hh:818
virtual Real2d operator()(const Real t) const
Application operator.
PartMappingQuad2d(const PartMappingQuad2d &map)
Copy Constructor.
virtual MappingEdge2d * edge(const uint edge) const
Returns a copy of the edge mapping of one edge.
EllipseMappingEdge2d(const EllipseMappingEdge2d &edgemap)
Copy Constructor.
virtual Real curvature(const Real t, const uint n=0) const
Returns the n-th derivative of the curvature.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual ~VertexQuad2d()
virtual Real2d n0(const Real t) const
MappingQuadEdge2d(const MappingQuad2d &map, const Real2d xi0, const Real2d xi1)
Constructor for an locally straight edge inside the quad.
CircleMappingEdge2d(const Real r, const Real2d vtx0, const Real2d vtx1)
Constructor.
virtual Real2d derivative(const Real t, const uint n=1) const
Returns the n-th derivative.
virtual bool is_inpatch(const Real2d x) const
virtual Real2d derivative(const Real t, const uint n=1) const
Returns the n-th derivative.
const MappingEdge2d & map() const
Returns the edge to which this edge is parallel.
Definition: elementMaps.hh:444
virtual MapReal2d jacobian(const Real2d x) const
virtual Real2d operator()(const Real t) const
Application operator.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
#define conceptsAssert(cond, exc)
Assert that a certain condition is fulfilled.
Definition: exceptions.hh:394
CircleMappingEdge2d(const Real2d vtx0, const Real2d vtxm, const Real2d vtx1)
Constructor.
virtual PartMappingEdge2d * clone() const
Virtual copy constructor.
InverseVertexQuadSector2d(const Sequence< Real2d > x)
Constructor.
virtual CircleMappingEdge2d * clone() const
Virtual copy constructor.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual Real2d derivative(const Real t, const uint n=1) const =0
Returns the n-th derivative.
virtual Real2d derivative(const Real t, const uint n=1) const
Returns the n-th derivative.
virtual Real2d operator()(const Real t) const
Application operator.
virtual Real lineElement(const Real x, const uint edge) const
Returns factor of differential element integrating over an edge.
CircleMappingEdge2d(const Real2d center, const Real r, const Real angle0, const Real angle1)
Constructor.
VertexTriangle2d(Real2d vtx0, Real2d vtx1, Real2d vtx2)
Constructor.
PartMappingQuad2d(const MappingQuad2d &map, const Real2d xi0, const Real2d xi1)
Constructor.
virtual Real2d normal(const Real t) const
Returns the right normal vector, length is that of the derivative.
CircleMappingEdge2d(const CircleMappingEdge2d &edgemap)
Copy Constructor.
virtual MapReal2d jacobian(const Real x, const Real y) const
Returns the jacobian of the element map.
virtual Real curvature(const Real t, uint n=0) const
Returns the n-th derivative of the curvature.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
EllipseMappingEdge2d(const Real2d center, const Real a, const Real b, const Real angle0, const Real angle1)
virtual ~MapQuad2d()
virtual MappingEdge2d * inverse() const
Returns the mapping of the edge in inverse direction.
virtual MapReal2d hessian(uint i, const Real x, const Real y) const =0
Returns the Hessian in a 2D linear map.
virtual Real2d derivative(const Real t, const uint n=1) const
Returns the n-th derivative.
virtual Real jacobianDeterminant(const Real x, const Real y) const
Returns true if the resulting triangle has curved edges.
BlendingQuad2d(const MappingEdge2d *edgemap0, const MappingEdge2d *edgemap1, const MappingEdge2d *edgemap2, const MappingEdge2d *edgemap3=0, const Real2d *vtx0=0, const Real2d *vtx1=0, const Real2d *vtx2=0, const Real2d *vtx3=0)
Constructor.
EllipseMappingEdge2d(const Real2d center, const Real a, const Real b, const Real2d vtx0, const Real2d vtx1)
Constructor.
InverseMappingEdge2d(const MappingEdge2d &edgemap)
Constructor.
virtual ~MapTriangle2d()
virtual PartMappingQuad2d * clone() const
Virtual copy constructor.
virtual MappingTriangle2d * clone() const =0
Creates a clone of itself and returns it.
virtual EllipseMappingEdge2d * inverse() const
Returns the mapping of the edge in inverse direction.
virtual MapReal2d jacobian(const Real x, const Real y) const
Returns the Jacobian in a 2D linear map.
2D element map for an ellipsoidal arc (not skewed)
Definition: elementMaps.hh:338
virtual Real2d operator()(Real x, Real y) const
Returns a point in 2D mapped from the unit square [0,1]2 onto the element in the original mesh.
virtual ~VertexTriangle2d()
virtual Real2d operator()(const Real t) const
Application operator.
virtual MappingQuadEdge2d * inverse() const
Returns the mapping of the edge in inverse direction.
Definition: elementMaps.hh:492
virtual ParabelMappingEdge2d * clone() const
Virtual copy constructor.
virtual Real2d operator()(const Real t) const
Application operator.
virtual Real2d operator()(const Real t) const =0
Application operator.
virtual MapReal2d jacobian(const Real x, const Real y) const
Returns the Jacobian in a 2D linear map.
Definition: elementMaps.hh:580
virtual Real lineElement(const Real x, const uint edge) const
Returns factor of differential element integrating over an edge.
VertexTriangle2d(const VertexTriangle2d &map)
Copy constructor.
A 2D element map for a quadrilateral given by a formula.
Definition: elementMaps.hh:756
virtual EllipseMappingEdge2d * clone() const
Virtual copy constructor.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual Real2d operator()(Real x, Real y) const
Returns a point in 2D mapped from the unit square [0,1]2 onto the element in the original mesh.
Definition: elementMaps.hh:779
virtual MapReal2d jacobian(const Real x, const Real y) const =0
Returns the Jacobian in a 2D linear map.
virtual Real2d derivative(const Real t, const uint n=1) const
Returns the n-th derivative.
Sequence with operations, output operator, and method of the particular element types.
Definition: sequence.hh:39
MapTriangle3d(const char *map, Real scX, Real scY)
Constructor.
virtual Real2d derivative(const Real t, const uint n=1) const
Returns the n-th derivative.
virtual Real curvature(const Real t, uint n=0) const
Returns the n-th derivative of the curvature.
virtual bool straight() const
Returns true if the resulting triangle has straight edges.
Definition: elementMaps.hh:578
virtual MapReal2d jacobian(const Real x, const Real y) const =0
Returns the Jacobian in a 2D linear map.
virtual Real2d operator()(Real x, Real y) const =0
Returns a point in 2D mapped from the unit square [0,1]2 onto the element in the original mesh.
const Real2d lderiv_(const Real t) const
Definition: elementMaps.hh:508
virtual Real curvature(const Real t, const uint n=0) const
Returns the n-th derivative of the curvature.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual MappingStraightEdge2d * edge(const uint edge) const
Returns a copy of the edge mapping of one edge.
Real2d operator()(const Real x, const Real y) const
Application operator.
Definition: elementMaps.hh:637
virtual VertexQuad2d * part(const Real2d x0, const Real2d y0) const
Returns a new object of an element map for a rectangular part of the reference cell defined by the tw...
Real len_[4]
Length of Edges, used for computation of the line elements.
Definition: elementMaps.hh:855
~BlendingQuad2d()
virtual MappingEdge2d * edge(const uint edge) const
Returns a copy of the edge mapping of one edge.
Definition: elementMaps.hh:731
virtual MapReal2d jacobianInverse(const Real x, const Real y) const
Returns the inverse of the Jacobian in a 2D linear map.
MappingStraightEdge2d(const MappingStraightEdge2d &edgemap)
Copy Constructor.
virtual MappingQuadEdge2d * clone() const
Virtual copy constructor.
Real2d vtx_[4]
helper vectors, vtx_0=vtx0, vtx_1,3=vtx1,3-vtx0, vtx2= -vtx1+vtx2-vtx3
Definition: elementMaps.hh:1016
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual PartMappingEdge2d * inverse() const
Returns the mapping of the edge in inverse direction.
virtual bool is_inregion(const Real2d x) const
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
void construct_(const Real2d vtx0, const Real2d vtx1, const Real2d vtx2, const Real2d vtx3)
used in construtor, calculate values and assign to private variables
MappingQuadEdge2d(const MappingQuadEdge2d &edgemap)
Copy Constructor.
Real2d operator()(const Real x, const Real y) const
Application operator.
Definition: elementMaps.hh:584
MappingParallelEdge2d(const MappingParallelEdge2d &edgemap)
Copy Constructor.
Real2d n0(const Real t) const
Returns the normalised right normal vector.
Definition: elementMaps.hh:107
MapTriangle2d(char *map, const Real scX, const Real scY)
Constructor.
InverseVertexQuadSector2d(const Real2d vtx0, const Real2d vtx1, const Real2d vtx2, const Real2d vtx3)
Constructor.
MapQuad2d(const char *map, Real scX, Real scY, Real2d org=Real2d(0.0, 0.0), Real stretch=1.0)
Constructor.
const Real s_(const Real t) const
Returns the parameter s on the parabel arc.
virtual Real2d operator()(const Real2d x) const
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
const Real t_(const Real t) const
Returns the parameter in the original mapping.
Definition: elementMaps.hh:167
std::unique_ptr< const MappingEdge2d > edgemap_
Edge to which this edge is parallel.
Definition: elementMaps.hh:452
virtual MapReal2d hessian(uint i, const Real x, const Real y) const
Returns the Hessian in a 2D linear map.
virtual MapReal2d hessian(uint i, const Real x, const Real y) const
Returns the Hessian in a 2D linear map.
const Real2d x0_
Parameter of the lower left vertex in the reference cell of the original map.
Definition: elementMaps.hh:967
virtual Real2d derivative(const Real t, const uint n=1) const
Returns the n-th derivative.
virtual MappingStraightEdge2d * clone() const
Virtual copy constructor.
virtual MapReal2d jacobian(const Real x, const Real y) const
Returns the Jacobian in a 2D linear map.
virtual MapReal2d jacobian(const Real x, const Real y) const
Returns the Jacobian in a 2D linear map.
PartMappingEdge2d * part(const Real t0, const Real t1) const
Returns a new object of an element map for a rectangular part of the reference cell defined by the tw...
const Real2d d_
Vector from the lower left to the upper right vertex in the reference cell of original map.
Definition: elementMaps.hh:971
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual Real lineElement(const Real x, const uint edge) const
Returns factor of differential element integrating over an edge.
std::ostream & info(std::ostream &os) const
Returns information in an output stream.
Definition: elementMaps.hh:36
A 2d inverse mapping from a sector to reference element.
Definition: elementMaps.hh:987
virtual Real2d operator()(const Real t) const
Application operator.
const UnitNd< 2 > v_
Direction of the aperture and clockwise by 90 degree rotated vector.
Definition: elementMaps.hh:402
2D element map for an edge parallel to another one.
Definition: elementMaps.hh:421
ParabelMappingEdge2d * part(const Real t0, const Real t1) const
Returns a new object of an element map for a rectangular part of the reference cell defined by the tw...
virtual MapReal2d hessian(uint i, const Real x, const Real y) const
Returns the Hessian in a 2D linear map.
void operator=(const MapTriangle3d &)
Private assignement operator.
virtual MappingStraightEdge2d * inverse() const
Returns the mapping of the edge in inverse direction.
Definition: elementMaps.hh:229
virtual MappingEdge2d * inverse() const
Returns the mapping of the edge in inverse direction.
Definition: elementMaps.hh:188
MappingEdge2d * part(const Real t0, const Real t1) const
Returns a new object of an element map for a rectangular part of the reference cell defined by the tw...
MapTriangle3d(Real3d vtx0, Real3d vtx1, Real3d vtx2)
Constructor.
Real2d xi_
First vertex and direction of the edge in local coordinates.
Definition: elementMaps.hh:501
MappingParallelEdge2d * part(const Real t0, const Real t1) const
Returns a new object of an element map for a rectangular part of the reference cell defined by the tw...
void lincomb(const Point< F, dim > &a, const Point< F, dim > &b, const F ca=1.0, const F cb=1.0)
Assign the vector the linear combination of a and b.
virtual MapReal2d inverseLaplace(const Real x, const Real y) const
NEW:
A 2D element map for an edge of a straight line.
Definition: elementMaps.hh:218
ParabelMappingEdge2d(const Real2d vtx0, const Real2d vtx1, const Real2d cusp, const Real2d ap)
Constructor.
const Real2d lcoord_(const Real t) const
Definition: elementMaps.hh:504
PartMappingEdge2d(const PartMappingEdge2d &edgemap)
Copy Constructor.
2D element map for an edge as part of an quad.
Definition: elementMaps.hh:465
MappingEdge2d(const Real2d vtx0, const Real2d vtx1)
Constructor.
virtual MapReal2d hessian(uint i, const Real x, const Real y) const
Returns the Hessian in a 2D linear map.
virtual MappingEdge2d * part(const Real t0, const Real t1) const
Returns a new object of an element map for a rectangular part of the reference cell defined by the tw...
MappingStraightEdge2d * part(const Real t0, const Real t1) const
Returns a new object of an element map for a rectangular part of the reference cell defined by the tw...
MapQuad2d(const char *map, Real scX, Real scY, Real2d org, Real2d scaling)
virtual Real2d operator()(Real x, Real y) const
Returns a point in 2D mapped from the unit square [0,1]2 onto the element in the original mesh.
VertexQuad2d(Real2d vtx0, Real2d vtx1, Real2d vtx2, Real2d vtx3)
Constructor.
PartMappingEdge2d(const MappingEdge2d &edgemap, const Real t0, const Real t1)
Constructor.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual MappingEdge2d * inverse() const
Returns the mapping of the edge in inverse direction.
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
virtual Real2d derivative(const Real t, const uint n=1) const
Returns the n-th derivative.