FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

tetrahedron< Point, PointRef > Class Template Reference

A tetrahedron primitive. More...

#include <OpenFOAM/tetrahedron.H>


Detailed Description

template<class Point, class PointRef>
class Foam::tetrahedron< Point, PointRef >

A tetrahedron primitive.

Ordering of edges needs to be the same for a tetrahedron class, a tetrahedron cell shape model and a tetCell.

Source files

Definition at line 78 of file tetrahedron.H.

List of all members.

Public Types

enum  { nVertices = 4, nEdges = 6 }

Public Member Functions

 tetrahedron (const Point &a, const Point &b, const Point &c, const Point &d)
 Construct from points.
 tetrahedron (Istream &)
 Construct from Istream.
const Point &  a () const
 Return vertices.
const Point &  b () const
const Point &  c () const
const Point &  d () const
vector  Sa () const
 Return face normal.
vector  Sb () const
vector  Sc () const
vector  Sd () const
Point  centre () const
 Return centre (centroid)
scalar  mag () const
 Return volume.
Point  circumCentre () const
 Return circum-centre.
scalar  circumRadius () const
 Return circum-radius.
pointHit  containmentSphere (const scalar tol) const
 Return (min)containment sphere, i.e. the smallest sphere with.
void  gradNiSquared (scalarField &buffer) const
 Fill buffer with shape function products.
void  gradNiDotGradNj (scalarField &buffer) const
void  gradNiGradNi (tensorField &buffer) const
void  gradNiGradNj (tensorField &buffer) const

Friends

Istream &  operator>> (Istream &, tetrahedron &)
Ostream &  operator (Ostream &, const tetrahedron &)

Member Enumeration Documentation

anonymous enum
Enumerator:
nVertices 
nEdges 

Definition at line 89 of file tetrahedron.H.


Constructor & Destructor Documentation

tetrahedron ( const Point &   a,
const Point &   b,
const Point &   c,
const Point &   d  
) [inline]

Construct from points.

Definition at line 38 of file tetrahedronI.H.

tetrahedron ( Istream &   is  ) [inline]

Construct from Istream.

Definition at line 53 of file tetrahedronI.H.

References IOstream::check(), Istream::readBegin(), and Istream::readEnd().


Member Function Documentation

const Point & a (  ) const [inline]

Return vertices.

Definition at line 71 of file tetrahedronI.H.

const Point & b (  ) const [inline]

Definition at line 78 of file tetrahedronI.H.

const Point & c (  ) const [inline]

Definition at line 85 of file tetrahedronI.H.

const Point & d (  ) const [inline]

Definition at line 92 of file tetrahedronI.H.

vector Sa (  ) const [inline]

Return face normal.

Definition at line 99 of file tetrahedronI.H.

vector Sb (  ) const [inline]

Definition at line 106 of file tetrahedronI.H.

vector Sc (  ) const [inline]

Definition at line 113 of file tetrahedronI.H.

vector Sd (  ) const [inline]

Definition at line 120 of file tetrahedronI.H.

Point centre (  ) const [inline]

Return centre (centroid)

Definition at line 127 of file tetrahedronI.H.

scalar mag (  ) const [inline]

Return volume.

Definition at line 134 of file tetrahedronI.H.

Point circumCentre (  ) const [inline]

Return circum-centre.

Definition at line 141 of file tetrahedronI.H.

References b, Foam::magSqr(), and mu.

scalar circumRadius (  ) const [inline]

Return circum-radius.

Definition at line 158 of file tetrahedronI.H.

References Foam::mag().

Foam::pointHit containmentSphere ( const scalar   tol  ) const

Return (min)containment sphere, i.e. the smallest sphere with.

all points inside. Returns pointHit with:

  • hit : if sphere is equal to circumsphere (biggest sphere)
  • point : centre of sphere
  • distance : radius of sphere
  • eligiblemiss: false Tol (small compared to 1, e.g. 1E-9) is used to determine whether point is inside: mag(pt - ctr) < (1+tol)*radius.

Definition at line 44 of file tetrahedron.C.

References Foam::magSqr(), magSqr(), PointHit< Point >::rawPoint(), PointHit< Point >::setDistance(), PointHit< Point >::setHit(), PointHit< Point >::setMiss(), PointHit< Point >::setPoint(), and Foam::sqrt().

void gradNiSquared ( scalarField &   buffer  ) const

Fill buffer with shape function products.

Definition at line 249 of file tetrahedron.C.

References Foam::mag(), and magSqr().

void gradNiDotGradNj ( scalarField &   buffer  ) const

Definition at line 270 of file tetrahedron.C.

References Foam::mag().

void gradNiGradNi ( tensorField &   buffer  ) const

Definition at line 300 of file tetrahedron.C.

References Foam::mag(), and sqr().

void gradNiGradNj ( tensorField &   buffer  ) const

Definition at line 318 of file tetrahedron.C.

References Foam::mag().


Friends And Related Function Documentation

Istream& operator>> ( Istream &   ,
tetrahedron< Point, PointRef > &    
) [friend]
Ostream& operator ( Ostream &   ,
const tetrahedron< Point, PointRef > &    
) [friend]

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