A 2D element map for a triangle. More...

#include <elementMaps.hh>

Inheritance diagram for concepts::VertexTriangle2d:
concepts::MappingTriangle2d concepts::Map2d concepts::OutputOperator

Public Member Functions

virtual VertexTriangle2dclone () const
 Creates a clone of itself and returns it. More...
 
virtual MapReal2d jacobian (const Real x, const Real y) const
 Returns the Jacobian in a 2D linear map. More...
 
virtual Real jacobianDeterminant (const Real x, const Real y) const
 Returns true if the resulting triangle has curved edges. More...
 
virtual MapReal2d jacobianInverse (const Real x, const Real y) const
 Returns the inverse of the Jacobian in a 2D linear map. More...
 
Real2d operator() (const Real x, const Real y) const
 Application operator. More...
 
virtual bool straight () const
 Returns true if the resulting triangle has straight edges. More...
 
 VertexTriangle2d (const VertexTriangle2d &map)
 Copy constructor. More...
 
 VertexTriangle2d (Real2d vtx0, Real2d vtx1, Real2d vtx2)
 Constructor. More...
 
virtual ~VertexTriangle2d ()
 

Protected Member Functions

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

Private Attributes

MapReal2d jacobian_
 Jacobian. More...
 
Real2d vtx0_
 Vertices of the triangle. More...
 
Real2d vtx1_
 
Real2d vtx2_
 

Detailed Description

A 2D element map for a triangle.

The map is specified by the three vertices.

Author
Philipp Frauenfelder, 2001.
Examples
meshes.cc.

Definition at line 557 of file elementMaps.hh.

Constructor & Destructor Documentation

◆ VertexTriangle2d() [1/2]

concepts::VertexTriangle2d::VertexTriangle2d ( Real2d  vtx0,
Real2d  vtx1,
Real2d  vtx2 
)

Constructor.

Takes the three physical corners of the triangle and computes the element map: $F_K : S \rightarrow K$ with $\vec x = F_K(\xi) = B \cdot \vec \xi + \vec b$, where $\vec b = \mbox{vtx0}$ and $B = [ (\mbox{vtx1} - \vec b) (\mbox{vtx2} - \mbox{vtx1}) ]$.

◆ VertexTriangle2d() [2/2]

concepts::VertexTriangle2d::VertexTriangle2d ( const VertexTriangle2d map)

Copy constructor.

◆ ~VertexTriangle2d()

virtual concepts::VertexTriangle2d::~VertexTriangle2d ( )
virtual

Member Function Documentation

◆ clone()

virtual VertexTriangle2d* concepts::VertexTriangle2d::clone ( ) const
virtual

Creates a clone of itself and returns it.

This clone function implements a virtual constructor (cf. Stroustrup p. 424).

Implements concepts::MappingTriangle2d.

◆ info()

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

Returns information in an output stream.

Reimplemented from concepts::Map2d.

◆ jacobian()

virtual MapReal2d concepts::VertexTriangle2d::jacobian ( const Real  x,
const Real  y 
) const
inlinevirtual

Returns the Jacobian in a 2D linear map.

Implements concepts::MappingTriangle2d.

Definition at line 580 of file elementMaps.hh.

◆ jacobianDeterminant()

virtual Real concepts::MappingTriangle2d::jacobianDeterminant ( const Real  x,
const Real  y 
) const
virtualinherited

Returns true if the resulting triangle has curved edges.

In this case the integration routines have to take into account that the Jacobian is changing. Otherwise, the Jacobian is a constant. Returns determinant of the Jacobian

◆ jacobianInverse()

virtual MapReal2d concepts::MappingTriangle2d::jacobianInverse ( const Real  x,
const Real  y 
) const
virtualinherited

Returns the inverse of the Jacobian in a 2D linear map.

◆ operator()()

Real2d concepts::VertexTriangle2d::operator() ( const Real  x,
const Real  y 
) const
inlinevirtual

Application operator.

Maps the point from the parameter domain $\{(\xi,\eta) : 0 \leq \eta \leq \xi \leq 1\}$ onto a triangle in the 2D physical space.

Implements concepts::MappingTriangle2d.

Definition at line 584 of file elementMaps.hh.

◆ straight()

virtual bool concepts::VertexTriangle2d::straight ( ) const
inlinevirtual

Returns true if the resulting triangle has straight edges.

In this case the integration routines simplify since the Jacobian is constant.

Reimplemented from concepts::Map2d.

Definition at line 578 of file elementMaps.hh.

Member Data Documentation

◆ jacobian_

MapReal2d concepts::VertexTriangle2d::jacobian_
private

Jacobian.

Definition at line 603 of file elementMaps.hh.

◆ vtx0_

Real2d concepts::VertexTriangle2d::vtx0_
private

Vertices of the triangle.

Definition at line 601 of file elementMaps.hh.

◆ vtx1_

Real2d concepts::VertexTriangle2d::vtx1_
private

Definition at line 601 of file elementMaps.hh.

◆ vtx2_

Real2d concepts::VertexTriangle2d::vtx2_
private

Definition at line 601 of file elementMaps.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich