aboutsummaryrefslogtreecommitdiff
path: root/math/interp/usernote
diff options
context:
space:
mode:
Diffstat (limited to 'math/interp/usernote')
-rw-r--r--math/interp/usernote118
1 files changed, 118 insertions, 0 deletions
diff --git a/math/interp/usernote b/math/interp/usernote
new file mode 100644
index 00000000..55483022
--- /dev/null
+++ b/math/interp/usernote
@@ -0,0 +1,118 @@
+ Using the Sequential One Dimensional Interpolation Routines
+ A Quick Note for Programmers
+
+
+I. GENERAL NOTES:
+
+ 1. Defines are found in file interpdef.h. The routines
+ are in library interplib.a.
+
+ 2. All pixels are assumed to be good. Except for routine
+ arbpix.
+
+ 3. This is for uniformly spaced data -- thus for the i-th
+ data value, y[i], the corresponding x[i] = i by assumption.
+
+ 4. All x references are assumed to land in the closed interval
+ 1 <= x <= NPTS, where NPTS is the number of points in the
+ data array. If x is outside this range, the result is
+ not specified.
+
+ 5. A storage area and work space array must be provided.
+ It is of type real and the size is 2 * NPTS + SZ_ASI
+
+
+
+II. PROCEDURES:
+
+
+ **** Subroutine to select the interpolator type
+ *
+ * interpolator_type = clginterp (param)
+ *
+ * char param[ARB]
+ *
+ * The parameter prompt string is sent to the CL and the
+ * routine evaluates the returned string to select one of the
+ * interpolator types given in interpdef.h. The input string
+ * may be one of the following with possible abbreviations:
+ * nearest
+ * linear
+ * 3rd order poly
+ * 5th order poly
+ **** cubic spline
+
+
+ **** Subroutine to replace INDEF's with interpolated values.
+ *
+ * arbpix (datain, n, dataout, interpolator_type)
+ *
+ * real datain[ARB] # data_in array
+ * int n # number of points in data_in
+ * real dataout[ARB] # array out, may not be same as
+ * # data_in
+ * int interpolator_type
+ *
+ * The interpolator type can be set to:
+ *
+ * IT_NEAREST nearest neighbor
+ * IT_LINEAR linear interpolation
+ * IT_POLY3 interior polynomial 3rd order
+ * IT_POLY5 interior polynomial 5th order
+ **** IT_SPLINE3 cubic natural spline
+
+
+ **** Subroutine to set interpolator type.
+ *
+ * asiset(coeff,interpolator_type)
+ *
+ * real coeff[ARB] # work + storage array, dimension
+ * # 2 * NPTS + SZ_ASI
+ **** int interpolator_type # see above
+
+
+ **** Subroutine to fit interpolator to data.
+ *
+ * asifit (datain, npts, coeff)
+ *
+ * real datain[ARB] # data array
+ * int npts # number of points in data array
+ **** real coeff[ARB] # work+storage area dim 2*npts + SZ_ASI
+
+
+ **** Subroutine to return interpolated value after fitting.
+ *
+ * real asival (x, coeff)
+ *
+ * real x
+ **** real coeff[ARB]
+
+
+ **** Subroutine to evaluate an ordered sequence of values.
+ *
+ * asieva (x, y, n, coeff)
+ *
+ * real x[ARB] # input array of x values
+ * real y[ARB] # output array of interpolated values
+ * int n # number of x values
+ **** real coeff[ARB]
+
+
+ **** Subroutine to evaluate derivatives at a point.
+ *
+ * asider (x, derivs, nder, coeff)
+ *
+ * real x
+ * real derivs[ARB] # output array containing derivatives
+ * # derivs[1] is function value
+ * int nder # input: nder - 1 derivatives are evaluated
+ **** real coeff[ARB]
+
+
+ **** Subroutine to integrate the interpolated data.
+ *
+ * real asigrl (a, b, coeff)
+ *
+ * real a # lower limit
+ * real b # upper limit
+ **** real coeff[ARB]