Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes
concepts::Edge2d Class Reference

A 1D cell: edge in 2D. More...

#include <cell1D.hh>

Inheritance diagram for concepts::Edge2d:
Inheritance graph
[legend]
Collaboration diagram for concepts::Edge2d:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual Real3d center () const
 Returns the center of the cell.
Real2d chi (Real xi) const
 The element map.
virtual Edge2dchild (uint i)
 Returns a child.
virtual const Edge2dchild (uint i) const
 Returns a pointer to the ith child.
virtual Edge2dclone () const
 Returns a copy of itself.
virtual Edge2dclone (Edge &cntr, MappingEdge2d *map) const
Edgeconnector () const
 Returns the connector (topology)
Z2dir ()
 Access to the direction of the normal vector.
Z2 dir () const
 Returns if the normal vector is right or left pointing.
 Edge2d (Edge &cntr, const MappingEdge2d &map, const Z2 dir=0)
 Constructor.
virtual concepts::Real3d elemMap (const Real3d &xi) const
 Element map from point local coordinates in 3D.
virtual concepts::Real3d elemMap (const Real xi) const
 Element map from point local coordinates in 1D.
virtual concepts::Real3d elemMap (const Real2d &xi) const
 Element map from point local coordinates in 2D.
bool hasChildren () const
 Returns true if there is a least one child.
Real2d jacobian (Real x) const
 Returns the Jacobian.
Real jacobianDeterminant (const Real x) const
 Returns the determinant of the Jacobian.
uchar level () const
 Returns the level of the cell.
const MappingEdge2dmap () const
Real2d n0 (Real x) const
 Returns the normal vector on a point of the edge.
void swapdir ()
 Swaps the normal direction.
virtual Real3d vertex (const uint i) const
 Returns the coordinates of the ith vertex.
virtual ~Edge2d ()

Protected Member Functions

 Edge2d (Edge &cntr, MappingEdge2d *map, const Z2 dir, const uint l, const uint i)
 Protected copy constructor.
virtual std::ostream & info (std::ostream &os) const
 Returns information in an output stream.

Protected Attributes

Edgecntr_
 Reference to the edge (topology)
Z2 dir_
 Direction of the normal vector.
uint i_
 Index of the element (ie. left or right child)
uint l_
 Level of the element.
MappingEdge2dmap_
 Pointer to the element map.

Private Attributes

Edge2dchld_
 Pointer to the first child.
Edge2dlnk_
 Pointer to a sibling.

Detailed Description

A 1D cell: edge in 2D.

Author:
Kersten Schmidt, 2006

Definition at line 148 of file cell1D.hh.


Constructor & Destructor Documentation

concepts::Edge2d::Edge2d ( Edge cntr,
const MappingEdge2d map,
const Z2  dir = 0 
)

Constructor.

Parameters:
cntrThe edge which should be represented
mapElement map of the edge
dirdirection of the normal vector when looking along direction of the edge (from first vertex to second) dir = 0 : Right normal dir = 1 : Left normal
virtual concepts::Edge2d::~Edge2d ( ) [virtual]
concepts::Edge2d::Edge2d ( Edge cntr,
MappingEdge2d map,
const Z2  dir,
const uint  l,
const uint  i 
) [protected]

Protected copy constructor.

Parameters:
cntrThe edge which should be represented
mapElement map of the edge
dirdirection of the normal vector
lLevel
iIndex (0 or 1), ie. the left or right child

Member Function Documentation

virtual Real3d concepts::EdgeNd::center ( ) const [virtual, inherited]

Returns the center of the cell.

Implements concepts::Cell1.

Real2d concepts::Edge2d::chi ( Real  xi) const

The element map.

Maps a point from the unit intervall [0,1] onto the element.

Returns:
Point in 2D in physical coordinates.
Parameters:
xi$\in [0,1]$
virtual const Edge2d* concepts::Edge2d::child ( uint  i) const [virtual]

Returns a pointer to the ith child.

Children are not created if they do not already exist, instead 0 is returned.

Implements concepts::EdgeNd.

virtual Edge2d* concepts::Edge2d::child ( uint  i) [virtual]

Returns a child.

If no children exist, two new children are created. The edge is cut in the middle.

Parameters:
iIndex of the child to be returned.

Implements concepts::EdgeNd.

virtual Edge2d* concepts::Edge2d::clone ( ) const [virtual]

Returns a copy of itself.

virtual Edge2d* concepts::Edge2d::clone ( Edge cntr,
MappingEdge2d map 
) const [inline, virtual]

Definition at line 198 of file cell1D.hh.

Here is the call graph for this function:

Edge& concepts::EdgeNd::connector ( ) const [inline, virtual, inherited]

Returns the connector (topology)

Implements concepts::Cell1.

Definition at line 41 of file cell1D.hh.

Z2 concepts::Edge2d::dir ( ) const [inline]

Returns if the normal vector is right or left pointing.

Definition at line 205 of file cell1D.hh.

Z2& concepts::Edge2d::dir ( ) [inline]

Access to the direction of the normal vector.

Definition at line 207 of file cell1D.hh.

virtual concepts::Real3d concepts::Edge2d::elemMap ( const Real  coord_local) const [virtual]

Element map from point local coordinates in 1D.

Reimplemented from concepts::Cell.

virtual concepts::Real3d concepts::Edge2d::elemMap ( const Real2d coord_local) const [virtual]

Element map from point local coordinates in 2D.

Reimplemented from concepts::Cell.

virtual concepts::Real3d concepts::Edge2d::elemMap ( const Real3d coord_local) const [virtual]

Element map from point local coordinates in 3D.

Reimplemented from concepts::Cell.

bool concepts::Cell::hasChildren ( ) const [inline, inherited]

Returns true if there is a least one child.

Reimplemented in concepts::Quad2d, and concepts::InfiniteRect2d.

Definition at line 48 of file cell.hh.

Here is the call graph for this function:

virtual std::ostream& concepts::Edge2d::info ( std::ostream &  os) const [protected, virtual]

Returns information in an output stream.

Reimplemented from concepts::EdgeNd.

Real2d concepts::Edge2d::jacobian ( Real  x) const

Returns the Jacobian.

Parameters:
x$\in [0,1]$
Real concepts::Edge2d::jacobianDeterminant ( const Real  x) const [inline, virtual]

Returns the determinant of the Jacobian.

See also:
jacobian

Implements concepts::EdgeNd.

Definition at line 184 of file cell1D.hh.

Here is the call graph for this function:

uchar concepts::Edge2d::level ( ) const [inline]

Returns the level of the cell.

Definition at line 202 of file cell1D.hh.

const MappingEdge2d* concepts::Edge2d::map ( ) const [inline]

Definition at line 193 of file cell1D.hh.

Real2d concepts::Edge2d::n0 ( Real  x) const

Returns the normal vector on a point of the edge.

void concepts::Edge2d::swapdir ( ) [inline]

Swaps the normal direction.

Definition at line 209 of file cell1D.hh.

virtual Real3d concepts::EdgeNd::vertex ( const uint  i) const [virtual, inherited]

Returns the coordinates of the ith vertex.

Implements concepts::Cell1.


Member Data Documentation

Pointer to the first child.

The children are stored in a linked list.

Definition at line 242 of file cell1D.hh.

Edge& concepts::EdgeNd::cntr_ [protected, inherited]

Reference to the edge (topology)

Definition at line 52 of file cell1D.hh.

Direction of the normal vector.

Definition at line 224 of file cell1D.hh.

uint concepts::Edge2d::i_ [protected]

Index of the element (ie. left or right child)

Definition at line 221 of file cell1D.hh.

uint concepts::Edge2d::l_ [protected]

Level of the element.

Definition at line 218 of file cell1D.hh.

Pointer to a sibling.

Definition at line 237 of file cell1D.hh.

Pointer to the element map.

Definition at line 216 of file cell1D.hh.


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

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)