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