A 3D cell: triangle. More...
#include <cell2D.hh>


Classes | |
| struct | Index |
| Subclass of Quad2d representing its index. More... | |
Public Member Functions | |
| Real3d | center () const |
| Returns the center of the cell. | |
| Real3d | chi (Real xi, Real eta) const |
| The element map. | |
| virtual const Triangle3d * | child (uint i) const |
| Returns a child. | |
| virtual Triangle3d * | child (uint i) |
| Returns a child. | |
| Triangle3d * | clone (Triangle &cntr, MapTriangle3d *map) const |
| Returns a copy of itself. | |
| Triangle & | connector () const |
| Returns the triangle connector (topology) | |
| virtual Real3d | elemMap (const Real coord_local) const |
| Element map from point local coordinates in 1D. | |
| virtual Real3d | elemMap (const Real3d &coord_local) const |
| Element map from point local coordinates in 3D. | |
| Real3d | elemMap (const Real2d &coord_local) const |
| Element map from point local coordinates in 2D. | |
| bool | hasChildren () const |
| Returns true if there is a least one child. | |
| const MapTriangle3d * | map () const |
| Returns the element map. | |
| Triangle3d (Triangle &cntr, const MapTriangle3d &map) | |
| Constructor. | |
| Real3d | vertex (uint i) const |
| Returns the coordinates of the ith vertex. | |
| virtual | ~Triangle3d () |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Private Member Functions | |
| Triangle3d (Triangle &cntr, MapTriangle3d *map, const Index &key) | |
| Private constructor. | |
Private Attributes | |
| Triangle3d * | chld_ |
| Pointer to the first child. | |
| Triangle & | cntr_ |
| Reference to the triangle connector (topology) | |
| Index | idx_ |
| Index of this element. | |
| Triangle3d * | lnk_ |
| Pointer to a sibling. | |
| MapTriangle3d * | map_ |
| Pointer to the element map. | |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const Triangle3d::Index &i) |
A 3D cell: triangle.
If a triangle is subdivided, four new children are created.
| concepts::Triangle3d::Triangle3d | ( | Triangle & | cntr, |
| const MapTriangle3d & | map | ||
| ) |
Constructor.
Takes the connector cntr and the element map map and creates a cell.
| cntr | Topological information of the triangle |
| map | Element map of this triangle |
| virtual concepts::Triangle3d::~Triangle3d | ( | ) | [virtual] |
| concepts::Triangle3d::Triangle3d | ( | Triangle & | cntr, |
| MapTriangle3d * | map, | ||
| const Index & | key | ||
| ) | [private] |
Private constructor.
| Real3d concepts::Triangle3d::center | ( | ) | const [inline, virtual] |
Returns the center of the cell.
Implements concepts::Cell2.
Definition at line 707 of file cell2D.hh.

The element map.
Maps a corner from the unit square [0,1]2 onto the element. The three vertices are (0, 0), (1, 0) and (1, 1).
| xi | |
| eta | |
| virtual Triangle3d* concepts::Triangle3d::child | ( | uint | i | ) | [virtual] |
Returns a child.
If no children exist, four new children are created. The triangle is cut into four new triangles by joining the midpoints of its edges.
| i | Index of the child to be returned. |
Implements concepts::Cell2.
| virtual const Triangle3d* concepts::Triangle3d::child | ( | uint | i | ) | const [virtual] |
Returns a child.
If no children exist, none are created and 0 is returned.
| i | Index of the child to be returned. |
Implements concepts::Cell2.
| Triangle3d* concepts::Triangle3d::clone | ( | Triangle & | cntr, |
| MapTriangle3d * | map | ||
| ) | const [inline] |
| Triangle& concepts::Triangle3d::connector | ( | ) | const [inline, virtual] |
Returns the triangle connector (topology)
Implements concepts::Cell2.
| virtual Real3d concepts::Cell2::elemMap | ( | const Real3d & | coord_local | ) | const [inline, virtual, inherited] |
Element map from point local coordinates in 3D.
Reference element is 2D, third component is omitted.
Reimplemented from concepts::Cell.
Definition at line 100 of file cell.hh.

Element map from point local coordinates in 2D.
Implements concepts::Cell2.
Definition at line 701 of file cell2D.hh.

Element map from point local coordinates in 1D.
Reimplemented in concepts::Edge1d, and concepts::Edge2d.
| 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.

| virtual std::ostream& concepts::Triangle3d::info | ( | std::ostream & | os | ) | const [protected, virtual] |
Returns information in an output stream.
Implements concepts::Cell.
| const MapTriangle3d* concepts::Triangle3d::map | ( | ) | const [inline] |
| Real3d concepts::Triangle3d::vertex | ( | uint | i | ) | const [virtual] |
Returns the coordinates of the ith vertex.
Implements concepts::Cell2.
| std::ostream& operator<< | ( | std::ostream & | os, |
| const Triangle3d::Index & | i | ||
| ) | [friend] |
Triangle3d* concepts::Triangle3d::chld_ [private] |
Triangle& concepts::Triangle3d::cntr_ [private] |
Index concepts::Triangle3d::idx_ [private] |
Triangle3d* concepts::Triangle3d::lnk_ [private] |
MapTriangle3d* concepts::Triangle3d::map_ [private] |