Class documentation of Concepts

Loading...
Searching...
No Matches
concepts::MappingQuad2d Class Referenceabstract

#include <elementMaps.hh>

Inheritance diagram for concepts::MappingQuad2d:
concepts::Map2d concepts::OutputOperator concepts::BlendingQuad2d concepts::MapQuad2d concepts::PartMappingQuad2d concepts::VertexQuad2d

Public Member Functions

virtual Real2d operator() (Real x, Real y) const =0
 
virtual Real jacobianDeterminant (const Real x, const Real y) const
 Returns determinant of the Jacobian.
 
virtual MapReal2d jacobian (const Real x, const Real y) const =0
 Returns the Jacobian in a 2D linear map.
 
virtual MapReal2d jacobianInverse (const Real x, const Real y) const
 Returns the inverse of the Jacobian in a 2D linear map.
 
virtual MapReal2d hessian (uint i, const Real x, const Real y) const =0
 
virtual MapReal2d inverseLaplace (const Real x, const Real y) const
 
virtual Real lineElement (const Real x, const uint edge) const
 
virtual MappingEdge2dedge (const uint edge) const
 
virtual MappingQuad2dpart (const Real2d x0, const Real2d y0) const
 
virtual MappingQuad2dclone () const =0
 Returns a copy of the map.
 
virtual bool straight () const
 

Protected Member Functions

virtual std::ostream & info (std::ostream &os) const
 Returns information in an output stream.
 

Detailed Description

A 2D element map for a quadrilateral. The reference element is the unit square.

Author
Philipp Frauenfelder, 2002.

Definition at line 667 of file elementMaps.hh.

Member Function Documentation

◆ clone()

virtual MappingQuad2d * concepts::MappingQuad2d::clone ( ) const
pure virtual

◆ edge()

virtual MappingEdge2d * concepts::MappingQuad2d::edge ( const uint  edge) const
inlinevirtual

Returns a copy of the edge mapping of one edge. The edge mappings are directed counter-clockwise, i.e. for the lower edge from the left lower vertex to the right lower one.

Parameters
edgenumber of edge, i.e. 0 - lower, 1 - right, 2 - upper, 3 - left

Reimplemented in concepts::VertexQuad2d, concepts::BlendingQuad2d, and concepts::PartMappingQuad2d.

Definition at line 731 of file elementMaps.hh.

◆ hessian()

virtual MapReal2d concepts::MappingQuad2d::hessian ( uint  i,
const Real  x,
const Real  y 
) const
pure virtual

Returns the Hessian in a 2D linear map

Parameters
icoordinate (0 = x, 1 = y)

Implemented in concepts::MapQuad2d, concepts::VertexQuad2d, concepts::BlendingQuad2d, and concepts::PartMappingQuad2d.

◆ info()

virtual std::ostream & concepts::MappingQuad2d::info ( std::ostream &  os) const
protectedvirtual

Returns information in an output stream.

Reimplemented from concepts::Map2d.

Reimplemented in concepts::MapQuad2d, concepts::VertexQuad2d, concepts::BlendingQuad2d, and concepts::PartMappingQuad2d.

◆ inverseLaplace()

virtual MapReal2d concepts::MappingQuad2d::inverseLaplace ( const Real  x,
const Real  y 
) const
virtual

NEW:

Returns the 2nd partial derivatives of the inverse Mapping that maps from a mappingQuad2D to the reference Quad. This inverse is called $\phi^{-1}=(\phi_1^{-1} , \phi_2^{-1})$. The function returns a 2x2 matrix of the following form:

dxdx phi_1^{-1} dydy phi_1^{-1}

dxdx phi_2^{-1} dydy phi_2^{-1}

◆ jacobian()

virtual MapReal2d concepts::MappingQuad2d::jacobian ( const Real  x,
const Real  y 
) const
pure virtual

Returns the Jacobian in a 2D linear map.

Implemented in concepts::MapQuad2d, concepts::VertexQuad2d, concepts::BlendingQuad2d, and concepts::PartMappingQuad2d.

◆ lineElement()

virtual Real concepts::MappingQuad2d::lineElement ( const Real  x,
const uint  edge 
) const
virtual

Returns factor of differential element integrating over an edge.

The factor is either $\sqrt{J_{11}^2+J_{21}^2}$ or $\sqrt{J_{12}^2+J_{22}^2}$.

The routine exists explicitly because it is more efficient to implement it than to use jacobian itself, i.e. for affine elements the line element is constant.

Parameters
xlocal variable on edge (in [0,1]), stands for $\xi_1$ or $\xi_2$
edgenumber of edge, i.e. 0: $\xi_2 = 0$, 1: $\xi_1 = 1$, 2: $\xi_2 = 1$, 3: $\xi_1 = 0$

Reimplemented in concepts::VertexQuad2d, and concepts::BlendingQuad2d.

◆ operator()()

virtual Real2d concepts::MappingQuad2d::operator() ( Real  x,
Real  y 
) const
pure virtual

Returns a point in 2D mapped from the unit square [0,1]2 onto the element in the original mesh.

Returns
$F_K(x,y)$

Implemented in concepts::MapQuad2d, concepts::VertexQuad2d, concepts::BlendingQuad2d, and concepts::PartMappingQuad2d.

◆ part()

virtual MappingQuad2d * concepts::MappingQuad2d::part ( const Real2d  x0,
const Real2d  y0 
) const
virtual

Returns a new object of an element map for a rectangular part of the reference cell defined by the two points.

Reimplemented in concepts::VertexQuad2d.

◆ straight()

virtual bool concepts::Map2d::straight ( ) const
inlinevirtualinherited

Reimplemented in concepts::VertexTriangle2d.

Definition at line 37 of file elementMaps.hh.


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