chrono::CompositeInertia Class Reference

Description

Utility class for calculating inertia properties of a composite body.

A composite body is a collection of sub-components, each specified through its mass, a centroidal frame, and its inertia tensor (w.r.t. the centroidal frame). New sub-components can be included in the composite body and optionally marked as "voids" (holes), by specifying:

  • the mass of the sub-component
  • a sub-component centroidal frame, relative to the composite reference frame; the location of this frame represents the sub-component COM location
  • the sub-component inertia tensor w.r.t. its centroidal frame

#include <ChMassProperties.h>

Public Member Functions

double GetMass () const
 Get the composite mass.
 
const ChVector3d & GetCOM () const
 Get the location of the COM.
 
ChMatrix33 GetInertia () const
 Get the inertia tensor w.r.t. More...
 
const ChMatrix33 & GetInertiaReference () const
 Get the inertia tensor w.r.t. the reference frame.
 
void AddComponent (const ChFrame<> &frame, double mass, const ChMatrix33<> &inertia, bool is_void=false)
 Include sub-component inertia properties. More...
 

Static Public Member Functions

static ChMatrix33 InertiaShiftMatrix (const ChVector3d &v)
 Utility function for calculating an inertia shift matrix from a given vector. More...
 

Member Function Documentation

◆ AddComponent()

void chrono::CompositeInertia::AddComponent ( const ChFrame<> &  frame,
double  mass,
const ChMatrix33<> &  inertia,
bool  is_void = false 
)

Include sub-component inertia properties.

Update the inertia properties of the composite object with the specified mass and inertia of a sub-component. A sub-component is

Parameters
framecentroidal frame of sub-component (relative to reference frame)
massmass of sub-component
inertiasub-component inertia tensor w.r.t. its centroidal frame
is_voidindicate if sub-component represents a material void

◆ GetInertia()

ChMatrix33 chrono::CompositeInertia::GetInertia ( ) const

Get the inertia tensor w.r.t.

a centroidal frame. The return 3x3 symmetric matrix represents the inertia tensor with respect to a centroidal frame of the composite, aligned with the axes of the reference frame.

◆ InertiaShiftMatrix()

ChMatrix33 chrono::CompositeInertia::InertiaShiftMatrix ( const ChVector3d &  v)
static

Utility function for calculating an inertia shift matrix from a given vector.

This matrix is used when applying the parallel axis theorem.


The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono/physics/ChMassProperties.h
  • /builds/uwsbel/chrono/src/chrono/physics/ChMassProperties.cpp