Google
 

Trailing-Edge - PDP-10 Archives - decuslib20-02 - decus/20-0026/dacfi.doc
There are 2 other files named dacfi.doc in the archive. Click here to see a list.
SUBROUTINE DACFI

PURPOSE
   TO INTERPOLATE FUNCTION VALUE Y FOR A GIVEN ARGUMENT VALUE
   X USING A GIVEN TABLE (ARG,VAL) OF ARGUMENT AND FUNCTION
   VALUES.

USAGE
   CALL DACFI (X,ARG,VAL,Y,NDIM,EPS,IER)

DESCRIPTION OF PARAMETERS
   X	  - DOUBLE PRECISION ARGUMENT VALUE SPECIFIED BY INPUT.
   ARG	  - DOUBLE PRECISION INPUT VECTOR (DIMENSION NDIM) OF
	    ARGUMENT VALUES OF THE TABLE (POSSIBLY DESTROYED).
   VAL	  - DOUBLE PRECISION INPUT VECTOR (DIMENSION NDIM) OF
	    FUNCTION VALUES OF THE TABLE (DESTROYED).
   Y	  - RESULTING INTERPOLATED DOUBLE PRECISION FUNCTION
	    VALUE.
   NDIM   - AN INPUT VALUE WHICH SPECIFIES THE NUMBER OF
	    POINTS IN TABLE (ARG,VAL).
   EPS	  - SINGLE PRECISION INPUT CONSTANT WHICH IS USED AS
	    UPPER BOUND FOR THE ABSOLUTE ERROR.
   IER	  - A RESULTING ERROR PARAMETER.

REMARKS
   (1) TABLE (ARG,VAL) SHOULD REPRESENT A SINGLE-VALUED
       FUNCTION AND SHOULD BE STORED IN SUCH A WAY, THAT THE
       DISTANCES ABS(ARG(I)-X) INCREASE WITH INCREASING
       SUBSCRIPT I. TO GENERATE THIS ORDER IN TABLE (ARG,VAL),
       SUBROUTINES DATSG, DATSM OR DATSE COULD BE USED IN A
       PREVIOUS STAGE.
   (2) NO ACTION BESIDES ERROR MESSAGE IN CASE NDIM LESS
       THAN 1.
   (3) INTERPOLATION IS TERMINATED EITHER IF THE DIFFERENCE
       BETWEEN TWO SUCCESSIVE INTERPOLATED VALUES IS
       ABSOLUTELY LESS THAN TOLERANCE EPS, OR IF THE ABSOLUTE
       VALUE OF THIS DIFFERENCE STOPS DIMINISHING, OR AFTER
       (NDIM-1) STEPS (THE NUMBER OF POSSIBLE STEPS IS
       DIMINISHED IF AT ANY STAGE INFINITY ELEMENT APPEARS IN
       THE DOWNWARD DIAGONAL OF INVERTED-DIFFERENCES-SCHEME
       AND IF IT IS IMPOSSIBLE TO ELIMINATE THIS INFINITY
       ELEMENT BY INTERCHANGING OF TABLE POINTS).
       FURTHER IT IS TERMINATED IF THE PROCEDURE DISCOVERS TWO
       ARGUMENT VALUES IN VECTOR ARG WHICH ARE IDENTICAL.
       DEPENDENT ON THESE FOUR CASES, ERROR PARAMETER IER IS
       CODED IN THE FOLLOWING FORM
	IER=0 - IT WAS POSSIBLE TO REACH THE REQUIRED
		ACCURACY (NO ERROR).
	IER=1 - IT WAS IMPOSSIBLE TO REACH THE REQUIRED
		ACCURACY BECAUSE OF ROUNDING ERRORS.
	IER=2 - IT WAS IMPOSSIBLE TO CHECK ACCURACY BECAUSE
		NDIM IS LESS THAN 2, OR THE REQUIRED ACCURACY
		COULD NOT BE REACHED BY MEANS OF THE GIVEN
		TABLE. NDIM SHOULD BE INCREASED.
	IER=3 - THE PROCEDURE DISCOVERED TWO ARGUMENT VALUES
		IN VECTOR ARG WHICH ARE IDENTICAL.

SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
   NONE

METHOD
   INTERPOLATION IS DONE BY CONTINUED FRACTIONS AND INVERTED-
   DIFFERENCES-SCHEME. ON RETURN Y CONTAINS AN INTERPOLATED
   FUNCTION VALUE AT POINT X, WHICH IS IN THE SENSE OF REMARK
   (3) OPTIMAL WITH RESPECT TO GIVEN TABLE. FOR REFERENCE, SEE
   F.B.HILDEBRAND, INTRODUCTION TO NUMERICAL ANALYSIS,
   MCGRAW-HILL, NEW YORK/TORONTO/LONDON, 1956, PP.395-406.