FEDEM Solver  R8.0
Source code of the dynamics solver
Static Public Member Functions | Static Private Member Functions | List of all members
FFaVolume Class Reference

#include <FFaVolume.H>

Static Public Member Functions

static void tetVolume (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4, double &vol)
 
static void wedVolume (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4, const FaVec3 &v5, const FaVec3 &v6, double &vol)
 
static void hexVolume (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4, const FaVec3 &v5, const FaVec3 &v6, const FaVec3 &v7, const FaVec3 &v8, double &vol)
 
static double tetCenter (FaVec3 &v1, FaVec3 &v2, FaVec3 &v3, FaVec3 &v4, FaVec3 &vc)
 
static double wedCenter (FaVec3 &v1, FaVec3 &v2, FaVec3 &v3, FaVec3 &v4, FaVec3 &v5, FaVec3 &v6, FaVec3 &vc)
 
static double hexCenter (FaVec3 &v1, FaVec3 &v2, FaVec3 &v3, FaVec3 &v4, FaVec3 &v5, FaVec3 &v6, FaVec3 &v7, FaVec3 &v8, FaVec3 &vc)
 
static void tetMoment (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4, FFaTensor3 &vm)
 
static void wedMoment (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4, const FaVec3 &v5, const FaVec3 &v6, FFaTensor3 &vm)
 
static void hexMoment (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4, const FaVec3 &v5, const FaVec3 &v6, const FaVec3 &v7, const FaVec3 &v8, FFaTensor3 &vm)
 

Static Private Member Functions

static double tetVolume (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4)
 
static double pyrVolume (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4, const FaVec3 &v5)
 
static double pyrCenter (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4, const FaVec3 &v5, FaVec3 &vc)
 
static FFaTensor3 pyrMoment (const FaVec3 &v1, const FaVec3 &v2, const FaVec3 &v3, const FaVec3 &v4)
 

Detailed Description

Class with static functions for calculation of volume, volume center and volume moment (inertia) for tetrahedron, wedge and hexahedron object.

Member Function Documentation

◆ hexCenter()

double FFaVolume::hexCenter ( FaVec3 v1,
FaVec3 v2,
FaVec3 v3,
FaVec3 v4,
FaVec3 v5,
FaVec3 v6,
FaVec3 v7,
FaVec3 v8,
FaVec3 vc 
)
static

◆ hexMoment()

void FFaVolume::hexMoment ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4,
const FaVec3 v5,
const FaVec3 v6,
const FaVec3 v7,
const FaVec3 v8,
FFaTensor3 vm 
)
static

◆ hexVolume()

void FFaVolume::hexVolume ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4,
const FaVec3 v5,
const FaVec3 v6,
const FaVec3 v7,
const FaVec3 v8,
double &  vol 
)
static

◆ pyrCenter()

double FFaVolume::pyrCenter ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4,
const FaVec3 v5,
FaVec3 vc 
)
staticprivate

◆ pyrMoment()

FFaTensor3 FFaVolume::pyrMoment ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4 
)
staticprivate

◆ pyrVolume()

double FFaVolume::pyrVolume ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4,
const FaVec3 v5 
)
staticprivate

◆ tetCenter()

double FFaVolume::tetCenter ( FaVec3 v1,
FaVec3 v2,
FaVec3 v3,
FaVec3 v4,
FaVec3 vc 
)
static

Calculation of volume center. The input vertices are then shifted such that they become relative to the computed volume center. The volume of the object is retured.

◆ tetMoment()

void FFaVolume::tetMoment ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4,
FFaTensor3 vm 
)
static

Calculation of volume moments (inertias). The input vertices are here assumed to be relative to the objects volume center. The moments are computed as a sum of pyramid and tetrahedron contributions, where the first vertex is at the volume center and the four/three other vertices are on a face.

◆ tetVolume() [1/2]

double FFaVolume::tetVolume ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4 
)
staticprivate

Private methods.

◆ tetVolume() [2/2]

void FFaVolume::tetVolume ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4,
double &  vol 
)
static

Volume calculation. The volume of an object is computed as a sum of tetrahedron and pyramid contributions to account for possibly warped faces.

◆ wedCenter()

double FFaVolume::wedCenter ( FaVec3 v1,
FaVec3 v2,
FaVec3 v3,
FaVec3 v4,
FaVec3 v5,
FaVec3 v6,
FaVec3 vc 
)
static

◆ wedMoment()

void FFaVolume::wedMoment ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4,
const FaVec3 v5,
const FaVec3 v6,
FFaTensor3 vm 
)
static

◆ wedVolume()

void FFaVolume::wedVolume ( const FaVec3 v1,
const FaVec3 v2,
const FaVec3 v3,
const FaVec3 v4,
const FaVec3 v5,
const FaVec3 v6,
double &  vol 
)
static

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