chrono::ChVariablesBody Class Referenceabstract
Description
Specialized class for representing a 6-DOF 3D rigid body, with mass matrix and associated variables.
This is an abstract class, specialized for example in ChVariablesBodyOwnMass and ChVariablesBodySharedMass.
#include <ChVariablesBody.h>
Inheritance diagram for chrono::ChVariablesBody:
Collaboration diagram for chrono::ChVariablesBody:
Public Member Functions | |
ChVariablesBody & | operator= (const ChVariablesBody &other) |
Assignment operator: copy from other object. | |
virtual double | GetBodyMass () const =0 |
Get the mass associated with translation of body. | |
virtual ChMatrix33 & | GetBodyInertia ()=0 |
Access the 3x3 inertia matrix. | |
virtual const ChMatrix33 & | GetBodyInertia () const =0 |
virtual ChMatrix33 & | GetBodyInvInertia ()=0 |
Access the 3x3 inertia matrix inverted. | |
virtual const ChMatrix33 & | GetBodyInvInertia () const =0 |
void * | GetUserData () |
void | SetUserData (void *mdata) |
Public Member Functions inherited from chrono::ChVariables | |
ChVariables (unsigned int dof) | |
ChVariables & | operator= (const ChVariables &other) |
Assignment operator: copy from other object. | |
void | SetDisabled (bool mdis) |
Deactivates/freezes the variable (these variables won't be modified by the system solver). | |
bool | IsDisabled () const |
Check if the variables have been deactivated (these variables won't be modified by the system solver). | |
bool | IsActive () const |
Check if these variables are currently active. More... | |
unsigned int | GetDOF () const |
The number of scalar variables in the vector qb (dof=degrees of freedom). | |
ChVectorRef | State () |
Get a reference to the differential states encapsulated by these variables. More... | |
ChVectorRef | Force () |
Get a reference to the generalized force corresponding to these variables. More... | |
virtual void | ComputeMassInverseTimesVector (ChVectorRef result, ChVectorConstRef vect) const =0 |
Compute the product of the inverse mass matrix by a given vector and store in result. More... | |
virtual void | AddMassTimesVector (ChVectorRef result, ChVectorConstRef vect) const =0 |
Compute the product of the mass matrix by a given vector and increment result. More... | |
virtual void | AddMassTimesVectorInto (ChVectorRef result, ChVectorConstRef vect, const double ca) const =0 |
Add the product of the mass submatrix by a given vector, scaled by ca, to result. More... | |
virtual void | AddMassDiagonalInto (ChVectorRef result, const double ca) const =0 |
Add the diagonal of the mass matrix, as a vector scaled by ca, to result. More... | |
virtual void | PasteMassInto (ChSparseMatrix &mat, unsigned int start_row, unsigned int start_col, const double ca) const =0 |
Write the mass submatrix for these variables into the specified global matrix at the offsets of each variable. More... | |
void | SetOffset (unsigned int moff) |
Set offset in the global state vector. More... | |
unsigned int | GetOffset () const |
Get offset in the global state vector. | |
virtual void | ArchiveOut (ChArchiveOut &archive_out) |
virtual void | ArchiveIn (ChArchiveIn &archive_in) |
Additional Inherited Members | |
Protected Attributes inherited from chrono::ChVariables | |
unsigned int | offset |
offset in global q state vector (needed by some solvers) | |
unsigned int | ndof |
number of degrees of freedom (number of contained scalar variables) | |
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/solver/ChVariablesBody.h
- /builds/uwsbel/chrono/src/chrono/solver/ChVariablesBody.cpp