logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

CSA3XS - cubic spline approximation, expanded entry for three-dimensional input

Access

       To use CSA3XS, load the NCAR Graphics library ngmath.

Description

       NI          (integer,input)  The number of input data points. It must be that NI .gt. 3 and, depending on
                   the size of KNOTS below, NI may have to be larger.

       XI          (real, input) An array containing the X - Y - Z coordinates of the input data points.  XI  is
                   dimensioned  for  3  x  NI.   XI(1,L)  is  the X coordinate, XI(2,L) is the Y coordinate, and
                   XI(2,L) is the Z coordinate for the input domain for L=1,NI.

       UI          (real, input) An array dimensioned for NI containing function values at the input XI  values,
                   that  is,  UI(L)  is  the value of the input function at XI(L) for L=1,NI.  through the input
                   function values.

       WTS         (real, input) An array dimensioned for NI containing weights for the UI values at  the  input
                   XI  values,  that  is,  WTS(L)  is a weight for the value of UI(L) for L=1,NI.  If you do not
                   desire to weight the input UI values, then set WTS(1) to -1.  The weights in  the  WTS  array
                   are  relative  and  may be set to any non-negative value.  When CSA3XS is called, the weights
                   are summed and the individual weights are normalized so that the weight sum is unity.

       KNOTS       (integer, input) The number of knots to be used in  constructing  the  approximation  spline.
                   KNOTS  is  dimensioned  for 3 and provides the number of knots to be used in the X, Y, and  Z
                   directions.  Both KNOTS(I) must be at least 4 for I=1,3.  The larger the  values  for  KNOTS,
                   the closer the approximated curve will come to passing through the input function values.

       SMTH        (real,  input)  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      (integer, input) An array dimensioned for 3 that specifies, for each coordinate,  whether you
                   want functional values (=0), first derivative values (=1), or second derivative values (=2).

       NXO         (integer, input) The number of X coordinate values in the output grid.

       NYO         (integer, input) The number of Y coordinate values in the output grid.

       NZO         (integer, input) The number of Z coordinate values in the output grid.

       XO          (real, input) An array dimensioned for NXO containing the X coordinates of the output spline.

       YO          (real, input) An array dimensioned for NYO containing the Y coordinates of the output spline.

       ZO          (real, input) An array dimensioned for NZO containing the Z coordinates of the output spline.

       UO          (real,  output)  An  array dimensioned for NXO x NYO x NZO containing the calculated function
                   values for the output function.  UO(I,J,K) is the  calculated  functional  value  at  (XO(I),
                   YO(J), ZO(K)) for I=1,NXO and J=1,NYO and K=1,NZO.

       NWRK        (integer,  input)  The  size of the WORK array.  NWRK must be at least NK * (NK+3) where NK =
                   KNOTS(1) * KNOTS(2) * KNOTS(3).

       WORK        (real, input) A work array dimensioned for NWRK.

       IER         (integer, output) 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 csagrid_errors for details.

Name

       CSA3XS - cubic spline approximation, expanded entry for three-dimensional input

See Also

       csagrid, csa3s, csa3ls, csa3lxs

       Complete documentation for Csagrid is available at URL
       http://ngwww.ucar.edu/ngdoc/ng/ngmath/csagrid/csahome.html

Synopsis

       CALL CSA3XS (NI, XI, UI, WTS, KNOTS, SMTH, NDERIV,
                    NXO, ,NYO, NZO, XO, YO, ZO, UO, NWRK,
                    WORK, IER)

Usage

       CSA3XS  is  called  to  find  an  approximating cubic spline for three-dimensional input data.  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 CSA3S.

See Also