
The alternative gridloop1 code (1)
static PyObject *gridloop1(PyObject *self, PyObject *args)
{
PyArrayObject *a, *xcoor, *ycoor;
PyObject *func1, *arglist, *result;
int nx, ny, i;
double **app;
double *ap, *xp, *yp;
/* arguments: a, xcoor, ycoor, func1 */
/* parsing without checking the pointer types: */
if (!PyArg_ParseTuple(args, "OOOO", &a, &xcoor, &ycoor, &func1))
{ return NULL; }
NDIMCHECK(a, 2); TYPECHECK(a, PyArray_DOUBLE);
nx = a->dimensions[0]; ny = a->dimensions[1];
NDIMCHECK(xcoor, 1); DIMCHECK(xcoor, 0, nx);
TYPECHECK(xcoor, PyArray_DOUBLE);
NDIMCHECK(ycoor, 1); DIMCHECK(ycoor, 0, ny);
TYPECHECK(ycoor, PyArray_DOUBLE);
CALLABLECHECK(func1);


