19 #ifndef SURGSIM_PHYSICS_DEFORMABLEREPRESENTATION_H 20 #define SURGSIM_PHYSICS_DEFORMABLEREPRESENTATION_H 24 #include "SurgSim/Math/LinearSparseSolveAndInverse.h" 26 #include "SurgSim/Math/OdeEquation.h" 27 #include "SurgSim/Math/OdeSolver.h" 28 #include "SurgSim/Math/OdeState.h" 30 #include "SurgSim/Physics/Representation.h" 66 virtual void setInitialState(std::shared_ptr<SurgSim::Math::OdeState> initialState);
70 virtual const std::shared_ptr<SurgSim::Math::OdeState>
getCurrentState()
const;
74 virtual const std::shared_ptr<SurgSim::Math::OdeState>
getPreviousState()
const;
78 virtual const std::shared_ptr<SurgSim::Math::OdeState>
getFinalState()
const;
101 std::shared_ptr<SurgSim::Math::OdeSolver>
getOdeSolver()
const;
137 void update(
double dt)
override;
141 void applyCorrection(
double dt,
const Eigen::VectorBlock<SurgSim::Math::Vector>& deltaVelocity)
override;
163 virtual void transformState(std::shared_ptr<SurgSim::Math::OdeState> state,
186 bool m_previousHasExternalGeneralizedForce;
216 #endif // SURGSIM_PHYSICS_DEFORMABLEREPRESENTATION_H Wraps glewInit() to separate the glew opengl definitions from the osg opengl definitions only imgui n...
Definition: AddRandomSphereBehavior.cpp:36
The Representation class defines the base class for all physics objects.
Definition: Representation.h:53
Eigen::SparseMatrix< double > SparseMatrix
A sparse matrix.
Definition: SparseMatrix.h:32
Ode equation of 2nd order of the form with for initial conditions and a set of boundary conditions...
Definition: OdeEquation.h:54
The state of an ode of 2nd order of the form with boundary conditions.
Definition: OdeState.h:38
Eigen::Matrix< double, Eigen::Dynamic, 1 > Vector
A dynamic size column vector.
Definition: Vector.h:68
Definitions of small fixed-size square matrix types.
Definitions of small fixed-size vector types.
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > Matrix
A dynamic size matrix.
Definition: Matrix.h:65