Class which holds information about the mesh hierarchy and how the point in the reference cell changes from level to level. More...

#include <meshRelations.hh>

Inheritance diagram for concepts::RelativeCells:
concepts::OutputOperator

Public Member Functions

bool child (const PointInCell< 2 > P, PointInCell< 2 > &T) const
 Child connector and associate point. More...
 
PointInCell< 2 > coarsestCell (const PointInCell< 2 > P) const
 
PointInCell< 2 > finestCell (const PointInCell< 2 > P) const
 
bool parent (const PointInCell< 2 > P, PointInCell< 2 > &T) const
 Parent connector and associate point. More...
 
void rebuildCells ()
 Rebuild the list of lowest level cells. More...
 
 RelativeCells (std::vector< const Connector * > cells)
 Constructor. More...
 

Protected Member Functions

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

Private Member Functions

bool edgeChild_ (const Edge *cntr, const Real2d xi, PointInCell< 2 > &P) const
 
bool edgeParent_ (const Edge *cntr, const Real2d xi, uint i, Real2d &Txi) const
 
bool quadChild_ (const Quad *cntr, const Real2d xi, PointInCell< 2 > &P) const
 
bool quadParent_ (const Quad *cntr, const Real2d xi, uint i, Real2d &Txi) const
 

Private Attributes

concepts::Sequence< const Connector * > cells_
 List of lowest level cells. More...
 
std::map< const Connector *, uint > childNo_
 
std::map< const Connector *, const Connector * > parents_
 

Detailed Description

Class which holds information about the mesh hierarchy and how the point in the reference cell changes from level to level.

Only for edges, which are subdivided in the middle, and quadrilaterals, which are subdivided in four or two congruent quads.

Definition at line 60 of file meshRelations.hh.

Constructor & Destructor Documentation

◆ RelativeCells()

concepts::RelativeCells::RelativeCells ( std::vector< const Connector * >  cells)

Constructor.

Parameters
cellsList of coarse cells

Member Function Documentation

◆ child()

bool concepts::RelativeCells::child ( const PointInCell< 2 >  P,
PointInCell< 2 > &  T 
) const

Child connector and associate point.

Parameters
Pconnector and point in reference cell
Tchild connector and associate point in reference cell
Returns
true ok, false no child

◆ coarsestCell()

PointInCell<2> concepts::RelativeCells::coarsestCell ( const PointInCell< 2 >  P) const

◆ edgeChild_()

bool concepts::RelativeCells::edgeChild_ ( const Edge cntr,
const Real2d  xi,
PointInCell< 2 > &  P 
) const
private

◆ edgeParent_()

bool concepts::RelativeCells::edgeParent_ ( const Edge cntr,
const Real2d  xi,
uint  i,
Real2d Txi 
) const
private

◆ finestCell()

PointInCell<2> concepts::RelativeCells::finestCell ( const PointInCell< 2 >  P) const

◆ info()

virtual std::ostream& concepts::RelativeCells::info ( std::ostream &  os) const
inlineprotectedvirtual

Returns information in an output stream.

Reimplemented from concepts::OutputOperator.

Definition at line 90 of file meshRelations.hh.

◆ parent()

bool concepts::RelativeCells::parent ( const PointInCell< 2 >  P,
PointInCell< 2 > &  T 
) const

Parent connector and associate point.

Parameters
Pconnector and point in reference cell
Tparent connector and associate point in reference cell
Returns
true ok, false no parent

◆ quadChild_()

bool concepts::RelativeCells::quadChild_ ( const Quad cntr,
const Real2d  xi,
PointInCell< 2 > &  P 
) const
private

◆ quadParent_()

bool concepts::RelativeCells::quadParent_ ( const Quad cntr,
const Real2d  xi,
uint  i,
Real2d Txi 
) const
private

◆ rebuildCells()

void concepts::RelativeCells::rebuildCells ( )

Rebuild the list of lowest level cells.

Member Data Documentation

◆ cells_

concepts::Sequence<const Connector*> concepts::RelativeCells::cells_
mutableprivate

List of lowest level cells.

Definition at line 95 of file meshRelations.hh.

◆ childNo_

std::map<const Connector*, uint> concepts::RelativeCells::childNo_
mutableprivate

Definition at line 100 of file meshRelations.hh.

◆ parents_

std::map<const Connector*, const Connector*> concepts::RelativeCells::parents_
mutableprivate

Definition at line 98 of file meshRelations.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