chrono::fea::ChRotUtils Namespace Reference

Description

Utility functions for rotations in 3D and their derivatives.

Adapted from the MBDyn library

Functions

template<class T1 , class T2 >
void RotCo (const int cid, const T1 &phi, const ChVector<> &p, T2 *const cf)
 
template<class T1 , class T2 >
void CoeffA (const T1 &phi, const ChVector<> &p, T2 *const coeff)
 
template<class T1 , class T2 >
void CoeffB (const T1 &phi, const ChVector<> &p, T2 *const coeff)
 
template<class T1 , class T2 >
void CoeffC (const T1 &phi, const ChVector<> &p, T2 *const coeff)
 
template<class T1 , class T2 >
void CoeffD (const T1 &phi, const ChVector<> &p, T2 *const coeff)
 
template<class T1 , class T2 >
void CoeffE (const T1 &phi, const ChVector<> &p, T2 *const coeff)
 
template<class T1 , class T2 >
void CoeffF (const T1 &phi, const ChVector<> &p, T2 *const coeff)
 
template<class T1 , class T2 >
void CoeffCStar (const T1 &phi, const ChVector<> &p, T2 *const coeff, T2 *const coeffs)
 
template<class T1 , class T2 >
void CoeffEStar (const T1 &phi, const ChVector<> &p, T2 *const coeff, T2 *const coeffs)
 

Variables

const int COEFF_A = 1
 
const int COEFF_B = 2
 
const int COEFF_C = 3
 
const int COEFF_D = 4
 
const int COEFF_E = 5
 
const int COEFF_F = 6
 
const int COEFF_C_STAR = 1
 
const int COEFF_E_STAR = 2
 
const double SerCoeff [6][9]
 
const double SerTrunc [6]
 
const double SerThrsh [6]
 

Variable Documentation

const double chrono::fea::ChRotUtils::SerCoeff[6][9]
Initial value:
= {
{1.,
-6., 120., -5040., 362880., -39916800., 6227020800., -1307674368000., 355687428096000.},
{2.,
-24., 720., -40320., 3628800., -479001600., 87178291200., -20922789888000., 6402373705728000.},
{6.,
-120., 5040., -362880., 39916800., -6227020800., 1307674368000., -355687428096000., 121645100408832000.},
{-12.,
180., -6720., 453600., -47900160., 7264857600., -1494484992000., 400148356608000., -135161222676480000.},
{-60.,
1260., -60480., 4989600., -622702080., 108972864000., -25406244864000., 7602818775552000., -2838385676206080000.},
{90.,
-1680., 75600., -5987520., 726485760., -124540416000., 28582025472000., -8447576417280000., 3122224243826688000.}}
const double chrono::fea::ChRotUtils::SerThrsh[6]
Initial value:
= {1.1,
1.3,
1.5,
1.6,
1.7,
1.8}
const double chrono::fea::ChRotUtils::SerTrunc[6]
Initial value:
= {9,
9,
9,
9,
9,
9}