#ifndef __ODESYSTEM_H__ #define __ODESYSTEM_H__ /*************************************************************************** File: ODESystem.h Created: 09/04/2001 Author: Maxim Garber Computer Science Department University of North Carolina - Chapel Hill garber@cs.unc.edu Description: Base class representing and Ordinary Differential Equation system. Interfaces with the ODESolver. ----------------------------------------------------------------------------. Copyright 2001 Maxim Garber UNC Motion Planning Research Group *****************************************************************************/ #define ODE_TYPE float #include typedef std::vector ODEConfig; typedef ODEConfig::iterator ODEConfigIterator; class ODESystem { public: /*--------------------------------------------------------------------------- Constructor / Destructor ----------------------------------------------------------------------------*/ ODESystem(unsigned int dim): _dim(dim){}; ~ODESystem(){}; /*--------------------------------------------------------------------------- Dimension ----------------------------------------------------------------------------*/ unsigned int GetDimension(){return _dim;} /*--------------------------------------------------------------------------- Derivative ----------------------------------------------------------------------------*/ virtual void ODEDerivative(const ODEConfig& config, float time, ODEConfig& derivative) = NULL; private: // dimensions of the system const unsigned int _dim; }; #endif //__ODESYSTEM_H__