# TOMS661 Interpolation of Scattered Data in 3D

TOMS661 is a FORTRAN77 library which interpolates scattered 3D data, also known as "qshep3d", by Robert Renka.

TOMS661 takes a set of data values WDAT(XDAT,YDAT,ZDAT), where the points (XDAT,YDAT,ZDAT) are "scattered" in 3D, and constructs an interpolating function W(X,Y,Z) which matches the given data and extends smoothly through 3D space.

TOMS661 is ACM Transactions on Mathematical Software Algorithm number 661. The original text of any ACM TOMS algorithm is available through ACM: http://www.acm.org/pubs/calgo or NETLIB: http://www.netlib.org/toms/index.html

### Languages:

TOMS661 is available in a FORTRAN77 version and a FORTRAN90 version.

### Related Data and Programs:

RBF_INTERP_ND, a FORTRAN77 library which defines and evaluates radial basis interpolants to multidimensional data.

TOMS660, a FORTRAN77 library which takes scattered 2D data and produces an interpolating function F(X,Y).

Robert Renka

### Reference:

1. Robert Renka,
Algorithm 661: QSHEP3D, Quadratic Shepard method for trivariate interpolation of scattered data,
ACM Transactions on Mathematical Software,
Volume 14, 1988, pages 151-152.

### List of Routines:

• QSHEP3 defines a smooth trivariate interpolant of scattered 3D data.
• QS3VAL evaluates the interpolant function Q(X,Y,Z) created by QSHEP3.
• QS3GRD computes the value and gradient of the interpolant function.
• GETNP3 finds the closest node to a given point.
• GIVENS constructs a Givens plane rotation.
• ROTATE applies a Givens rotation to two vectors.
• SETUP3 sets up the weighted least-squares fit of the data.
• STORE3 sets up a data structure for N scattered nodes in 3D.

You can go up one level to the FORTRAN77 source codes.

Last revised on 27 January 2012.