Public Member Functions | Static Public Member Functions | List of all members
tetCell Class Reference

A tetrahedral cell primitive. More...

Inheritance diagram for tetCell:
Inheritance graph
[legend]
Collaboration diagram for tetCell:
Collaboration graph
[legend]

Public Member Functions

 tetCell ()
 
 tetCell (const label a, const label b, const label c, const label d)
 
 tetCell (std::initializer_list< label > list)
 
 tetCell (const FixedList< label, 4 > &list)
 
 tetCell (const labelUList &list, const FixedList< label, 4 > &indices)
 
template<unsigned AnyNum>
 tetCell (const FixedList< label, AnyNum > &list, const FixedList< label, 4 > &indices)
 
 tetCell (Istream &is)
 
Foam::triFace face (const label facei) const
 
label edgeFace (const label edgei) const
 
label edgeAdjacentFace (const label edgei, const label facei) const
 
Foam::edge edge (const label edgei) const
 
Foam::edge reverseEdge (const label edgei) const
 
pointField points (const UList< point > &meshPoints) const
 
cellShape shape () const
 
tetPointRef tet (const UList< point > &meshPoints) const
 
Foam::edge tetEdge (label edgei) const
 
cellShape tetCellShape () const
 
- Public Member Functions inherited from FixedList< label, 4 >
void writeEntry (const word &keyword, Ostream &os) const
 
 FixedList ()=default
 
 FixedList (const T &val)
 
 FixedList (const Foam::zero)
 
 FixedList (const T list[N])
 
 FixedList (const FixedList< T, N > &list)
 
 FixedList (FixedList< T, N > &&list)
 
 FixedList (std::initializer_list< T > list)
 
 FixedList (const UList< T > &list)
 
 FixedList (const FixedList< T, AnyNum > &list, const FixedList< label, N > &indices)
 
 FixedList (const UList< T > &list, const FixedList< label, N > &indices)
 
 FixedList (const SLList< T > &list)
 
 FixedList (Istream &is)
 
autoPtr< FixedList< T, N > > clone () const
 
const Tcdata () const noexcept
 
Tdata () noexcept
 
const char * cdata_bytes () const noexcept
 
char * data_bytes () noexcept
 
Tfirst () noexcept
 
const Tfirst () const noexcept
 
Tlast () noexcept
 
const Tlast () const noexcept
 
label fcIndex (const label i) const
 
const TfcValue (const label i) const
 
TfcValue (const label i)
 
label rcIndex (const label i) const
 
const TrcValue (const label i) const
 
TrcValue (const label i)
 
void checkStart (const label start) const
 
void checkSize (const label size) const
 
void checkIndex (const label i) const
 
bool uniform () const
 
label find (const T &val, label pos=0) const
 
label rfind (const T &val, label pos=-1) const
 
bool found (const T &val, label pos=0) const
 
void resize (const label n)
 
void resize_nocopy (const label n)
 
void setSize (const label n)
 
void fill (const T &val)
 
void fill (const Foam::zero)
 
void moveFirst (const label i)
 
void moveLast (const label i)
 
void swapFirst (const label i)
 
void swapLast (const label i)
 
void transfer (FixedList< T, N > &list)
 
Toperator[] (const label i)
 
const Toperator[] (const label i) const
 
void operator= (const T list[N])
 
void operator= (const UList< T > &list)
 
void operator= (const SLList< T > &list)
 
void operator= (std::initializer_list< T > list)
 
void operator= (const T &val)
 
void operator= (const Foam::zero)
 
void operator= (const FixedList< T, N > &list)
 
void operator= (FixedList< T, N > &&list)
 
iterator begin () noexcept
 
const_iterator begin () const noexcept
 
iterator end () noexcept
 
const_iterator end () const noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
const_reverse_iterator crbegin () const
 
const_reverse_iterator crend () const
 
void swap (FixedList< T, N > &other)
 
bool operator== (const FixedList< T, N > &list) const
 
bool operator!= (const FixedList< T, N > &list) const
 
bool operator< (const FixedList< T, N > &list) const
 
bool operator> (const FixedList< T, N > &list) const
 
bool operator<= (const FixedList< T, N > &list) const
 
bool operator>= (const FixedList< T, N > &list) const
 
IstreamreadList (Istream &is)
 
OstreamwriteList (Ostream &os, const label shortLen=0) const
 

Static Public Member Functions

static constexpr label nPoints () noexcept
 
static constexpr label nEdges () noexcept
 
static constexpr label nFaces () noexcept
 
static const Foam::faceListmodelFaces ()
 
static const Foam::edgeListmodelEdges ()
 
- Static Public Member Functions inherited from FixedList< label, 4 >
static const FixedList< T, N > & null ()
 
static std::streamsize size_bytes () noexcept
 
static std::streamsize byteSize ()
 
static constexpr bool empty () noexcept
 
static constexpr label size () noexcept
 
static constexpr unsigned max_size () noexcept
 

Additional Inherited Members

- Public Types inherited from FixedList< label, 4 >
typedef T value_type
 
typedef Tpointer
 
typedef Treference
 
typedef Titerator
 
typedef label size_type
 
typedef label difference_type
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
- Public Attributes inherited from FixedList< label, 4 >
const typedef Tconst_pointer
 
const typedef Tconst_reference
 
const typedef Tconst_iterator
 
- Protected Member Functions inherited from FixedList< label, 4 >
void writeEntry (Ostream &os) const
 

Detailed Description

A tetrahedral cell primitive.

It is important that the face/edge ordering is identical for a tetrahedron class, a tetrahedron cell shape model and a tetCell

Source files

Definition at line 60 of file tetCell.H.

Constructor & Destructor Documentation

◆ tetCell() [1/7]

tetCell ( )
inline

Definition at line 24 of file tetCellI.H.

◆ tetCell() [2/7]

tetCell ( const label  a,
const label  b,
const label  c,
const label  d 
)
inline

Definition at line 31 of file tetCellI.H.

References Foam::constant::physicoChemical::b, and Foam::constant::universal::c.

◆ tetCell() [3/7]

tetCell ( std::initializer_list< label >  list)
inlineexplicit

Definition at line 45 of file tetCellI.H.

◆ tetCell() [4/7]

tetCell ( const FixedList< label, 4 > &  list)
inline

Definition at line 51 of file tetCellI.H.

◆ tetCell() [5/7]

tetCell ( const labelUList list,
const FixedList< label, 4 > &  indices 
)
inline

Definition at line 58 of file tetCellI.H.

◆ tetCell() [6/7]

tetCell ( const FixedList< label, AnyNum > &  list,
const FixedList< label, 4 > &  indices 
)
inline

Definition at line 69 of file tetCellI.H.

◆ tetCell() [7/7]

tetCell ( Istream is)
inlineexplicit

Definition at line 78 of file tetCellI.H.

Member Function Documentation

◆ nPoints()

static constexpr label nPoints ( )
inlinestaticconstexprnoexcept

Definition at line 117 of file tetCell.H.

◆ nEdges()

static constexpr label nEdges ( )
inlinestaticconstexprnoexcept

Definition at line 123 of file tetCell.H.

Referenced by tetCell::edge(), tetCell::edgeAdjacentFace(), tetCell::edgeFace(), and tetCell::modelEdges().

Here is the caller graph for this function:

◆ nFaces()

static constexpr label nFaces ( )
inlinestaticconstexprnoexcept

Definition at line 129 of file tetCell.H.

Referenced by tetCell::edgeAdjacentFace(), tetCell::face(), and tetCell::modelFaces().

Here is the caller graph for this function:

◆ modelFaces()

const Foam::faceList & modelFaces ( )
static

Definition at line 57 of file tetCell.C.

References f(), and tetCell::nFaces().

Here is the call graph for this function:

◆ modelEdges()

const Foam::edgeList & modelEdges ( )
static

Definition at line 79 of file tetCell.C.

References Foam::constant::electromagnetic::e, and tetCell::nEdges().

Here is the call graph for this function:

◆ face()

Foam::triFace face ( const label  facei) const
inline

Definition at line 86 of file tetCellI.H.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, tetCell::nFaces(), and triFace().

Here is the call graph for this function:

◆ edgeFace()

Foam::label edgeFace ( const label  edgei) const
inline

Definition at line 106 of file tetCellI.H.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and tetCell::nEdges().

Here is the call graph for this function:

◆ edgeAdjacentFace()

Foam::label edgeAdjacentFace ( const label  edgei,
const label  facei 
) const
inline

Definition at line 126 of file tetCellI.H.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, tetCell::nEdges(), and tetCell::nFaces().

Here is the call graph for this function:

◆ edge()

Foam::edge edge ( const label  edgei) const
inline

Definition at line 163 of file tetCellI.H.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and tetCell::nEdges().

Referenced by tetCell::tetEdge().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ reverseEdge()

Foam::edge reverseEdge ( const label  edgei) const
inline

Definition at line 182 of file tetCellI.H.

References edge::reverseEdge().

Here is the call graph for this function:

◆ points()

Foam::pointField points ( const UList< point > &  meshPoints) const
inline

Definition at line 190 of file tetCellI.H.

◆ shape()

Foam::cellShape shape ( ) const

Foam::faceList Foam::tetCell::faces() const { Foam::faceList theFaces(tetCell::nFaces(), Foam::face(3));

label facei = 0; for (auto& f : theFaces) { f[0] = (*this)[modelFaces_[facei][0]]; f[1] = (*this)[modelFaces_[facei][1]]; f[2] = (*this)[modelFaces_[facei][2]]; ++facei; }

return theFaces; }

Foam::edgeList Foam::tetCell::edges() const { Foam::edgeList theEdges(tetCell::nEdges());

label edgei = 0; for (auto& e : theEdges) { e[0] = (*this)[modelEdges_[edgei][0]]; e[1] = (*this)[modelEdges_[edgei][1]]; ++edgei; }

return theEdges; }

Definition at line 135 of file tetCell.C.

References cellModel::ptr(), and cellModel::TET.

Here is the call graph for this function:

◆ tet()

Foam::tetPointRef tet ( const UList< point > &  meshPoints) const
inline

Definition at line 199 of file tetCellI.H.

◆ tetEdge()

Foam::edge tetEdge ( label  edgei) const
inline

Definition at line 176 of file tetCell.H.

References tetCell::edge().

Here is the call graph for this function:

◆ tetCellShape()

Foam::cellShape tetCellShape ( ) const

Definition at line 148 of file tetCell.C.


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