#ifndef UNRAVEL_HPP #define UNRAVEL_HPP #include #include #include #include #include using namespace std; #include "../AttractorKernel.hpp" class Unravel3D : public AttractorKernel { double * myParameters; double * vectorNew; double * vectorOld; void init(); public: Unravel3D(); Unravel3D(const unsigned int dimensions); // parameters are stored in a array of doubles // if you want to use other types, use the properties virtual double& parameter(const unsigned int index); virtual double*& parameters(); virtual unsigned int getNumberOfParameters(); // get properties of the attractor // such as the dimension // you should delete the void pointer if you used it virtual void * getProperty(const string identifier); virtual void setProperty(const string identifier, const void * value); // iterate his formula // vector pointers will be swapped! so new remains new and old remains old virtual void iterate(); // getter functions for teh resulta virtual double * & vector(); virtual double * & previousVector(); }; #endif // UNRAVEL_HPP