Go to the documentation of this file.
70 m_(
dict.get<scalar>(
"mass")),
79 c_(
vector(-st(1, 5), st(0, 5), -st(0, 4))/m_),
116 return Ioc(m_,
c - c_);
147 is >> rbi.m_ >> rbi.c_ >> rbi.Ic_;
158 os << rbi.m_ <<
nl << rbi.c_ <<
nl << rbi.Ic_ <<
endl;
179 const scalar m12 = rbi1.
m() + rbi2.m();
180 const vector c12 = (rbi1.
m()*rbi1.
c() + rbi2.m()*rbi2.c())/m12;
186 rbi1.
Ic() + rbi1.
Icc(c12) + rbi2.Ic() + rbi2.Icc(c12)
203 (rbi.
Io() & av) + rbi.
m()*(rbi.
c() ^ lv),
204 rbi.
m()*lv - rbi.
m()*(rbi.
c() ^ av)
240 return 0.5*(v && (*
this & v));
246 inline void Foam::RBD::rigidBodyInertia::operator+=
dimensionedSymmTensor symm(const dimensionedSymmTensor &dt)
Creates a single block of cells from point coordinates, numbers of cells in each direction and an exp...
static constexpr const zero Zero
Global zero (0)
This class represents the linear and angular inertia of a rigid body by the mass, centre of mass and ...
Ostream & endl(Ostream &os)
Add newline and flush stream.
symmTensor Ioc() const
Return the difference between the inertia tensor of the rigid-body.
Templated 3D spatial tensor derived from MatrixSpace used to represent transformations of spatial vec...
dimensioned< typename typeOfMag< Type >::type > magSqr(const dimensioned< Type > &dt)
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
rigidBodyInertia()
Null constructor, initializes to zero.
scalar m() const
Return the mass of the rigid-body.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
dimensionedSymmTensor sqr(const dimensionedVector &dv)
symmTensor Icc(const vector &c) const
Return the difference between the inertia tensor of the rigid-body.
SpatialTensor< scalar > spatialTensor
SpatialTensor of scalars.
const symmTensor & Ic() const
Return the inertia tensor of the rigid-body about the centre of mass.
rigidBodyInertia transform(const spatialTransform &X, const rigidBodyInertia &I)
Return (^BX_A)^* I ^AX_B.
Tensor< Cmpt > T() const
Return non-Hermitian transpose.
const dimensionedScalar c
Speed of light in a vacuum.
SpatialVector< scalar > spatialVector
SpatialVector of scalars.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
scalar kineticEnergy(const spatialVector &v)
Return the kinetic energy of the body with the given velocity.
symmTensor Io() const
Return the inertia tensor of the rigid-body about the origin.
static const Identity< scalar > I
const vector & c() const
Return the centre of mass of the rigid-body.