#include "AnT.hpp"

#define mu    parameters[0]
#define a     parameters[1]
#define s     parameters[2]
#define X     currentState[0]
#define Y     currentState[1]
#define Z     currentState[2]

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

  return true;
}

#undef mu
#undef a
#undef s
#undef X
#undef Y
#undef Z

extern "C" { void connectSystem () { ODE_Proxy::systemFunction = rikitake; } }


