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

#include <elementMaps.hh>

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

Public Member Functions

virtual MapTriangle2dclone () 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...
 
 MapTriangle2d (char *map, const Real scX, const Real scY)
 Constructor. More...
 
 MapTriangle2d (const MapTriangle2d &map)
 Copy constructor. More...
 
Real2d operator() (const Real x, const Real y) const
 Application operator. More...
 
virtual bool straight () const
 
virtual ~MapTriangle2d ()
 

Protected Member Functions

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

Private Attributes

ucharmap_
 Parsed formula for the map. More...
 
const Real scx_
 Right border of the x parameter domain. More...
 
const Real scy_
 Right border of the y parameter domain. More...
 
uint sz_
 Length of the parsed formula. More...
 

Detailed Description

A 2D element map for a triangle.

The map is specified by a formula. For easier construction of the element map, the parameter domain for the formula is a rectangle $[0,a] \times [0,b]$. The left side of the rectangle is degenerated into a point using a Duffy transformation.

Definition at line 615 of file elementMaps.hh.

Constructor & Destructor Documentation

◆ MapTriangle2d() [1/2]

concepts::MapTriangle2d::MapTriangle2d ( char *  map,
const Real  scX,
const Real  scY 
)

Constructor.

The values of scX and scY are only for the map, they are not needed by the user for mapping a point from the reference element onto the real element.

Parameters
mapThe element map for this triangle as a string, x and y are the allowed variables, the first and the second component are separated by a comma.
scXThe range of x is [0, scX].
scYThe range of y is [0, scY].

◆ MapTriangle2d() [2/2]

concepts::MapTriangle2d::MapTriangle2d ( const MapTriangle2d map)

Copy constructor.

◆ ~MapTriangle2d()

virtual concepts::MapTriangle2d::~MapTriangle2d ( )
virtual

Member Function Documentation

◆ clone()

virtual MapTriangle2d* concepts::MapTriangle2d::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::MapTriangle2d::info ( std::ostream &  os) const
protectedvirtual

Returns information in an output stream.

Reimplemented from concepts::Map2d.

◆ jacobian()

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

Returns the Jacobian in a 2D linear map.

Implements concepts::MappingTriangle2d.

◆ 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::MapTriangle2d::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 637 of file elementMaps.hh.

◆ straight()

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

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

Definition at line 37 of file elementMaps.hh.

Member Data Documentation

◆ map_

uchar* concepts::MapTriangle2d::map_
private

Parsed formula for the map.

Definition at line 648 of file elementMaps.hh.

◆ scx_

const Real concepts::MapTriangle2d::scx_
private

Right border of the x parameter domain.

Definition at line 654 of file elementMaps.hh.

◆ scy_

const Real concepts::MapTriangle2d::scy_
private

Right border of the y parameter domain.

Definition at line 657 of file elementMaps.hh.

◆ sz_

uint concepts::MapTriangle2d::sz_
private

Length of the parsed formula.

Definition at line 651 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