#include "AnT.hpp"

#define a     parameters[0]
#define b     parameters[1]
#define c     parameters[2]
#define X     currentState[0]
#define Y     currentState[1]
#define Z     currentState[2]

bool roessler (const Array<real_t>& currentState,
	       const Array<real_t>& parameters,
	       Array<real_t>& rhs)
{
  rhs[0] = -(Y + Z);
  rhs[1] = X + a * Y;
  rhs[2] = b + Z * (X - c);

  return true;
}

#undef a
#undef b
#undef c
#undef X
#undef Y
#undef Z

extern "C" {

void connectSystem ()
{
  ODE_Proxy::systemFunction = roessler;
}

}


