momentOfInertia Class Reference

Calculates the inertia tensor and principal axes and moments of a polyhedra/cells/triSurfaces. Inertia can either be of the solid body or of a thin shell. More...

Static Public Member Functions

static void massPropertiesSolid (const pointField &pts, const triFaceList &triFaces, scalar density, scalar &mass, vector &cM, tensor &J)
 
static void massPropertiesShell (const pointField &pts, const triFaceList &triFaces, scalar density, scalar &mass, vector &cM, tensor &J)
 
static void massPropertiesSolid (const triSurface &surf, scalar density, scalar &mass, vector &cM, tensor &J)
 
static void massPropertiesShell (const triSurface &surf, scalar density, scalar &mass, vector &cM, tensor &J)
 
static tensor applyParallelAxisTheorem (scalar mass, const vector &cM, const tensor &J, const vector &refPt)
 
static tmp< tensorFieldmeshInertia (const polyMesh &mesh)
 
static tensor meshInertia (const polyMesh &mesh, label celli)
 

Detailed Description

Calculates the inertia tensor and principal axes and moments of a polyhedra/cells/triSurfaces. Inertia can either be of the solid body or of a thin shell.

Source files

Definition at line 52 of file momentOfInertia.H.

Member Function Documentation

◆ massPropertiesSolid() [1/2]

void massPropertiesSolid ( const pointField pts,
const triFaceList triFaces,
scalar  density,
scalar &  mass,
vector cM,
tensor J 
)
static

◆ massPropertiesShell() [1/2]

void massPropertiesShell ( const pointField pts,
const triFaceList triFaces,
scalar  density,
scalar &  mass,
vector cM,
tensor J 
)
static

Definition at line 188 of file momentOfInertia.C.

References triangle< Point, PointRef >::centre(), forAll, triangle< Point, PointRef >::mag(), and Foam::Zero.

Here is the call graph for this function:

◆ massPropertiesSolid() [2/2]

void massPropertiesSolid ( const triSurface surf,
scalar  density,
scalar &  mass,
vector cM,
tensor J 
)
static

Definition at line 244 of file momentOfInertia.C.

References forAll, PrimitivePatch< FaceList, PointField >::points(), List< T >::size(), and triFace().

Here is the call graph for this function:

◆ massPropertiesShell() [2/2]

void massPropertiesShell ( const triSurface surf,
scalar  density,
scalar &  mass,
vector cM,
tensor J 
)
static

Definition at line 264 of file momentOfInertia.C.

References forAll, PrimitivePatch< FaceList, PointField >::points(), List< T >::size(), and triFace().

Here is the call graph for this function:

◆ applyParallelAxisTheorem()

Foam::tensor applyParallelAxisTheorem ( scalar  mass,
const vector cM,
const tensor J,
const vector refPt 
)
static

Definition at line 284 of file momentOfInertia.C.

References Foam::I.

◆ meshInertia() [1/2]

Foam::tmp< Foam::tensorField > meshInertia ( const polyMesh mesh)
static

Definition at line 302 of file momentOfInertia.C.

References forAll, primitiveMesh::nCells(), tmp< T >::ref(), and tf.

Here is the call graph for this function:

◆ meshInertia() [2/2]

Foam::tensor meshInertia ( const polyMesh mesh,
label  celli 
)
static

Definition at line 320 of file momentOfInertia.C.

References polyMeshTetDecomposition::cellTetIndices(), forAll, polyMesh::points(), List< T >::size(), and Foam::Zero.

Here is the call graph for this function:

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