csa3lxs is called to find values for an approximating cubic spline for three-dimensional input data at a list of specified coordinates. csa3xs is called if you want to weight the input data values, calculate derivatives, or handle data sparse areas specially. If you do not want to do any of these three things, then use csa3ls.

**Note:** This function is only available in version 4.1.1 of
NCL. If your site is licensed for version 4.1, then you can get
version 4.1.1 for free. To get version 4.1.1 of NCAR Graphics
software, please contact your site representative. If you don't know
who your site representative is, then send email to ncarginf@ucar.edu or call (303)
497-1201.

function csa3lxs( xi[*] : float, yi[*] : float, zi[*] : float, ui[*] : float, wts[*] : float, knots[3] : integer smth[1] : float nderiv[3] : integer xo[*] : float yo[*] : float zo[*] : float )

*xi*- A one-dimensional array of any size containing the X coordinates of the input data points.
*yi*- A one-dimensional array of the same size as
*xi*containing the Y coordinates of the input data points. *zi*- A one-dimensional array of the same size as
*xi*and*yi*containing the Z coordinates of the input data points. *ui*- A one-dimensional array of the same size as
*xi*,*yi*, and*zi*containing the functional values at the input data coordinates given by*xi*,*yi*, and*zi*. That is*ui*[k] is the input function value at (*xi*[k],*yi*[k],*zi*[k]) for k=0 to dimsizes(*xi*)-1. - wts
- An array containing weights for the
*ui*values at the input*xi*,*yi*, and*zi*values. That is,*wts*(k) is a weight for the value of*ui*(k) for k=0,dimsizes(*xi*)-1. If you do not desire to weight the input*zi*values, then set*wts*to -1, and in that case*wts*can be a scalar. The weights in the*wts*array are relative and may be set to any non-negative value. When`csa3lxs`is called, the weights are summed and the individual weights are normalized so that the weight sum is unity. *knots*- The number of knots to be used in constructing the approximating
values.
*knots*(0),*knots*(1), and*knots*(2) must all be at least 4. The larger the value for*knots*, the closer the approximated surface will come to passing through the input function values. *smth*- A parameter that controls extrapolation into data sparse regions.
If
*smth*is zero, then nothing special is done in data sparse regions. A good first choice for*smth*is 1. *nderiv*- Specifies whether you want functional values (=0), first derivative values (=1), or second derivative values (=2) in each of the three coordinate directions.
*xo*- A one-dimensional array containing the X coordinates of a list
of points where functional values are desired.
*xo*can be a single point. *yo*- A one-dimensional array containing the Y coordinates of a list
of points where functional values are desired.
*yo*can be a single point. *zo*- A one-dimensional array containing the Z coordinates of a list
of points where functional values are desired.
*zo*can be a single point.

`csa3lxs` is in the
csagrid package
- a software package that
implements a cubic spline approximation algorithm to
fit a function to input data. The input for the approximation is
a set of randomly-spaced data. These data may be one-dimensional,
two-dimensional, or three-dimensional.

The general documentation for csagrid contains several complete examples for entries in the csagrid package.

begin ; ; Create the input arrays. ; xmin = -2. xmax = 2. ymin = -2. ymax = 2. zmin = -2. zmax = 2. nx = 21 ny = 21 nz = 21 ndata = 1000 xi = new(ndata,float) yi = new(ndata,float) zi = new(ndata,float) ui = new(ndata,float) do i=0,ndata-1 xi(i) = xmin + (xmax-xmin)*rand()/32767. yi(i) = ymin + (ymax-ymin)*rand()/32767. zi(i) = zmin + (zmax-zmin)*rand()/32767. ui(i) = xi(i)*xi(i) + yi(i)*yi(i) + zi(i)*zi(i) end do ; ; Calculate an approximation value for the first order partial ; with respect to X at a single point. ; knots = (/4,4,4/) wts = -1. smth = 0. nderiv = (/0,1,0/) xo = 1.5 yo = 1.0 zo = 0.5 uo = csa3lxs(xi,yi,zi,ui,wts,knots,smth,nderiv,xo,yo,zo) end

NG4.1 Home, Index, Examples, Glossary, Feedback, Ref Contents, Ref WhereAmI?