33 #ifndef DART_INTEGRATION_INTEGRATOR_HPP_
34 #define DART_INTEGRATION_INTEGRATOR_HPP_
38 #include <Eigen/Dense>
41 namespace integration {
55 virtual void setConfigs(
const Eigen::VectorXd& _configs) = 0;
58 virtual void setGenVels(
const Eigen::VectorXd& _genVels) = 0;
Any class that uses an integrator should implement this interface.
Definition: Integrator.hpp:45
virtual Eigen::VectorXd getConfigs() const =0
Get configurations.
virtual void integrateConfigs(const Eigen::VectorXd &_genVels, double _dt)=0
Integrate configruations and store them in the system.
virtual void setGenVels(const Eigen::VectorXd &_genVels)=0
Set generalized velocities.
virtual Eigen::VectorXd getGenVels() const =0
Get generalized velocities.
virtual Eigen::VectorXd evalGenAccs()=0
Evaulate generalized accelerations.
IntegrableSystem()
Constructor.
Definition: Integrator.cpp:39
virtual void setConfigs(const Eigen::VectorXd &_configs)=0
Set configurations.
virtual void integrateGenVels(const Eigen::VectorXd &_genVels, double _dt)=0
Integrate generalized velocities and store them in the system.
virtual ~IntegrableSystem()
Destructor.
Definition: Integrator.cpp:44
class Integrator
Definition: Integrator.hpp:82
virtual ~Integrator()
Destructor.
virtual void integrate(IntegrableSystem *_system, double _dt)=0
Integrate the system with time step dt.
virtual void integratePos(IntegrableSystem *_system, double _dt)=0
Integrate velocity of the system with time step dt.
virtual void integrateVel(IntegrableSystem *_system, double _dt)=0
Integrate velocity of the system with time step dt.
Definition: BulletCollisionDetector.cpp:65