CTITLESALMPAP -- POLY. INTERPOLATOR FOR NON-UNIFORM DATA C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** CABS SALMPAP - POLYNOMIAL INTERPOLATOR FOR NON-UNIFORM DATA C CSUBROUTINE SALMPAP C C SUBROUTINE SALMPAP(X,Y,XX,YY,ID) C C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991. C C ALL RIGHTS RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, C REPRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT THE C PRIOR CONSENT OF ATLANTIC RICHFIELD COMPANY. C CA AUTHOR DAVE THOMPSON CA DESIGNER DAVE THOMPSON CA LANGUAGE FORTRAN H CA SYSTEM S/370 C WRITTEN UNKNOWN CA CA PURPOSE OF PROGRAM: CA CA THIS SUBROUTINE PERFORMS POLYNOMIAL INTERPOLATION FOR NON- CA UNIFORMLY SAMPLED DATA. CA CA CALLING SEQUENCE: CA CA CALL SALMPAP (X,Y,XX,YY,ID) CA CA IN X R4 INDEPENDENT SAMPLE ARRAY OF LENGTH ID+1 (ALL CA VALUES MUST BE UNIQUE) CA IN Y R4 CORRESPONDING DEPENDENT SAMPLE ARRAY OF CA LENGTH ID + 1 CA IN XX R4 VALUE OF INDEPENDENT VARIABLE FOR WHICH CA DEPENDENT VALUE IS DESIRED CA OUT YY R4 INTERPOLATED VALUE OF DEPENDENT VARIABLE AT CA XX CA IN ID I4 DEGREE OF POLYNOMIAL INTERPOLATION CA CA CA CA SUBROUTINES CALLED: NONE CA EJECT CAEND C*********************************************************************** C C SUBROUTINE SALMPAP(X,Y,XX,YY,ID) IMPLICIT INTEGER (A-Z) C REAL X, XX, Y, YY, P DIMENSION X(*),Y(*) C N = ID + 1 YY = 0. C DO 120 I = 1, N P = Y(I) C DO 100 J = 1, N IF (J .NE. I) P = P * (XX - X(J) ) / (X(I) - X(J) ) 100 CONTINUE C YY = YY + P 120 CONTINUE C RETURN END