# ncl_c_dsgrid3d man page

c_dsgrid3d — primary double precision C entry for 3D gridding

## Function Prototype

```
double *c_dsgrid3d(int, double [], double [], double [], double [],
int, int, int, double [], double [], double [], int *);
```

## Synopsis

```
double *c_dsgrid3d(int n, double x[], double y[], double z[],
double u[], int nx, int ny, int nz, double xo[],
double yo[], double zo[], int *ier);
```

## Description

- n
- The number of input data points.
- x
- An array containing the X coordinates of the input data points.
- y
- An array containing the Y coordinates of the input data points.
- z
- An array containing the Z coordinates of the input data points.
- u
- An array of size n containing the functional values of the input data points. That is, z[m] is the value of the input function at coordinate (x[m],y[m],z[m]), for 0 <= m < n.
- nx
- The number of X values in the output grid.
- ny
- The number of Y values in the output grid.
- nz
- The number of Z values in the output grid.
- xo
- An array of size nx containing the X coordinates of the output data grid. The values in xo must be increasing, but need not be equally spaced.
- yo
- An array of size ny containing the Y coordinates of the output data grid. The values in yo must be increasing, but need not be equally spaced.
- zo
- An array of size nz containing the Z coordinates of the output data grid. The values in zo must be increasing, but need not be equally spaced.
- ier
- An error return value. If *ier is returned as 0, then no errors were detected. If *ier is non-zero, then refer to the man page for dsgrid_errors.

## Usage

c_dsgrid3d returns a pointer to a linear array of data that is the interpolated grid stored in row-major order. That is, if out is declared as

double *out;

and we set:

out = *c_dsgrid3d(n, x, y, z, u, nx, ny, nz, xo, yo, zo, ier);

then out[nz*ny*i + nz*j + k] is the interpolated function value at coordinate point (xo[i],yo[j],zo[k]) for 0 <= i < nx, 0 <= j < ny, and 0 <= k < nz. The space for out is allocated internal to c_dsgrid3d and is nx*ny*nz doubles in size.

## Access

To use c_dsgrid3d, load the NCAR Graphics library ngmath.

## See Also

dsgrid, dsgrid_params, c_dsseti, c_dsgeti, c_dssetrd, c_dsgetrd, c_dssetc, c_dsgetc.

Complete documentation for Dsgrid is available at URL

http://ngwww.ucar.edu/ngdoc/ng/ngmath/d…

## Copyright

Copyright (C) 2000

University Corporation for Atmospheric Research

The use of this Software is governed by a License Agreement.