#include "AnT.hpp"

#define v parameters[0]

#define D_0(i) D<0>(currentState,cellIndex,i,deltaX)
#define D_00(i) D<0,0>(currentState,cellIndex,i,deltaX)

#define u currentState[cellIndex][0]

bool burgers ( const CellularState& currentState,
	       const Array<real_t>& parameters,
	       int cellIndex,
	       real_t deltaX,
	       StateCell& rhs)
{
  rhs[0] = - u * D_0(0) + v * D_00(0);
  return true;
}

#undef u

#undef D_0
#undef D_00

#undef v

extern "C" { void connectSystem () { PDE_1d_Proxy::systemFunction = burgers; }}

