81#include <fhsim/simobject/SimObject.h>
85class CMass :
public SimObject
89 CMass(std::string sSimObjectName, ISimObjectCreator* pCreator);
91#ifdef FH_VISUALIZATION
93 virtual void RenderInit(Ogre::Root*
const ogreRoot, ISimObjectCreator*
const creator);
96 virtual void RenderUpdate(
const double T,
const double*
const X);
100 virtual void OdeFcn(
const double dT,
const double*
const adX,
101 double*
const adXDot)
const;
103 virtual bool HasJacobians()
const override;
104 virtual void OdeJacobian(
double T,
const double* X,
double* J,
int nStates)
override;
105 virtual int GetJacobianSparsity(
int nStates,
int* rowPtr,
int* colIdx)
override;
107 virtual bool HasPortJacobians()
const override;
108 virtual void OutputPortJacobian(
const std::string& portName,
double T,
const double* X,
109 double* dPort_dX,
int portSize,
int nStates,
int index = -1)
override;
110 virtual void InputPortJacobian(
const std::string& portName,
double T,
const double* X,
111 double* dF_dInput,
int portSize,
int nStates)
override;
114 virtual const double*
Position(
const double dT,
const double*
const adX);
115 virtual const double*
Velocity(
const double dT,
const double*
const adX);
123#ifdef FH_VISUALIZATION
124 std::string m_sMaterial;
125 std::string m_sMeshName;
127 Ogre::Entity* m_pRenderEntity;
128 Ogre::SceneNode* m_pRenderNode;
129 Ogre::SceneManager* m_pSceneMgr;
Class containing a 3dof mass simObjec without gravity.
Definition CMass.h:19
virtual const double * Velocity(const double dT, const double *const adX)
Returns the current velocity state.
int m_IStateVel
The index of the velocity state.
Definition CMass.h:54
virtual const double * Position(const double dT, const double *const adX)
Returns the current position state.
virtual void OdeFcn(const double dT, const double *const adX, double *const adXDot) const
Calculates the state derivatives.
double m_dMass
The mass of the object.
Definition CMass.h:50
CMass(std::string sSimObjectName, ISimObjectCreator *pCreator)
The constructor sets the pointer to the output object and the parser object.
int m_IStatePos
The index of the position state.
Definition CMass.h:53
ISignalPort * m_pInForce
A pointer to the input force.
Definition CMass.h:52