Simbody
Classes | Namespaces | Typedefs | Functions

MassProperties.h File Reference

These are utility classes for dealing with mass properties, particularly those messy inertias. More...

#include "SimTKcommon/Scalar.h"
#include "SimTKcommon/SmallMatrix.h"
#include "SimTKcommon/Orientation.h"
#include <iostream>

Go to the source code of this file.

Classes

class  SimTK::Inertia_< P >
 The physical meaning of an inertia is the distribution of a rigid body's mass about a particular point. More...
class  SimTK::UnitInertia_< P >
 A UnitInertia matrix is a unit-mass inertia matrix; you can convert it to an Inertia by multiplying it by the actual body mass. More...
class  SimTK::SpatialInertia_< P >
 A spatial inertia contains the mass, center of mass point, and inertia matrix for a rigid body. More...
class  SimTK::ArticulatedInertia_< P >
 An articulated body inertia (ABI) matrix P(q) contains the spatial inertia properties that a body appears to have when it is the free base body of an articulated multibody tree in a given configuration q. More...
class  SimTK::MassProperties_< P >
 This class contains the mass, center of mass, and inertia of a rigid body B. More...

Namespaces

namespace  SimTK
 

This is the top-level SimTK namespace into which all SimTK names are placed to avoid collision with other symbols.


Typedefs

typedef Vec< 2, Vec3 > SimTK::SpatialVec
 Spatial vectors are used for (rotation,translation) quantities and consist of a pair of Vec3 objects, arranged as a 2-vector of 3-vectors.
typedef Vec< 2, Vec< 3, float > > SimTK::fSpatialVec
 A SpatialVec that is always single (float) precision regardless of the compiled-in precision of Real.
typedef Vec< 2, Vec< 3, double > > SimTK::dSpatialVec
 A SpatialVec that is always double precision regardless of the compiled-in precision of Real.
typedef Row< 2, Row3 > SimTK::SpatialRow
 This is the type of a transposed SpatialVec; it does not usually appear explicitly in user programs.
typedef Row< 2, Row< 3, float > > SimTK::fSpatialRow
 A SpatialRow that is always single (float) precision regardless of the compiled-in precision of Real.
typedef Row< 2, Row< 3, double > > SimTK::dSpatialRow
 A SpatialRow that is always double precision regardless of the compiled-in precision of Real.
typedef Mat< 2, 2, Mat33 > SimTK::SpatialMat
 Spatial matrices are used to hold 6x6 matrices that are best viewed as 2x2 matrices of 3x3 matrices; most commonly for spatial and articulated body inertias and spatial shift matrices.
typedef Mat< 2, 2, Mat
< 3, 3, float > > 
SimTK::fSpatialMat
 A SpatialMat that is always single (float) precision regardless of the compiled-in precision of Real.
typedef Mat< 2, 2, Mat
< 3, 3, double > > 
SimTK::dSpatialMat
 A SpatialMat that is always double precision regardless of the compiled-in precision of Real.
typedef UnitInertia_< Real > SimTK::UnitInertia
 A unit inertia (gyration) tensor at default precision.
typedef UnitInertia_< float > SimTK::fUnitInertia
 A unit inertia (gyration) tensor at float precision.
typedef UnitInertia_< double > SimTK::dUnitInertia
 A unit inertia (gyration) tensor at double precision.
typedef Inertia_< Real > SimTK::Inertia
 An inertia tensor at default precision.
typedef Inertia_< float > SimTK::fInertia
 An inertia tensor at float precision.
typedef Inertia_< double > SimTK::dInertia
 An inertia tensor at double precision.
typedef MassProperties_< Real > SimTK::MassProperties
 Rigid body mass properties at default precision.
typedef MassProperties_< float > SimTK::fMassProperties
 Rigid body mass properties at float precision.
typedef MassProperties_< double > SimTK::dMassProperties
 Rigid body mass properties at double precision.
typedef SpatialInertia_< Real > SimTK::SpatialInertia
 A spatial (rigid body) inertia matrix at default precision.
typedef SpatialInertia_< float > SimTK::fSpatialInertia
 A spatial (rigid body) inertia matrix at float precision.
typedef SpatialInertia_< double > SimTK::dSpatialInertia
 A spatial (rigid body) inertia matrix at double precision.
typedef ArticulatedInertia_< Real > SimTK::ArticulatedInertia
 An articulated body inertia matrix at default precision.
typedef ArticulatedInertia_
< float > 
SimTK::fArticulatedInertia
 An articulated body inertia matrix at float precision.
typedef ArticulatedInertia_
< double > 
SimTK::dArticulatedInertia
 An articulated body inertia matrix at double precision.
typedef UnitInertia SimTK::Gyration
 For backwards compatibility only; use UnitInertia instead.

Functions

template<class P >
static std::ostream & SimTK::operator<< (std::ostream &o, const MassProperties_< P > &mp)
 Output a human-readable representation of a MassProperties object to the given output stream.

Detailed Description

These are utility classes for dealing with mass properties, particularly those messy inertias.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines