5  REM T-CPL2, HEWLETT-PACKARD 36654A, 6/74; 7 PROGRAMS: T-CPL,T-CPL2,
6  REM TYPE-E,TYPE-K,TYPE-S,TYPE-T,TC-DAT.
10  DIM X[17],Y[17],Z[17]
15  DIM Z$[25]
17  READ Z$
20  READ N
30  MAT X=ZER[N]
40  MAT  READ X
50  MAT Y=ZER[N]
60  MAT  READ Y
70  MAT Z=ZER[N]
71  MAT  READ Z
74  PRINT "INPUT REFERENCE JUNCTION TEMPERATURE IN DEGREES C"
75  INPUT T
76  GOSUB 9000
77  V9=V
90  PRINT "INPUT MILLIVOLTAGE"
100  INPUT V7
101  PRINT 
103  V7=V7+V9
105  IF V7>Y[N] THEN 9110
107  IF V7<Y[1] THEN 9110
110  T5=X[1]
120  T6=X[N]
130  T=(T6-T5)/2+T5
140  GOSUB 9000
150  IF V>V7 THEN 200
160  IF V<V7 THEN 220
170  PRINT T;" DEGREES C"
175  PRINT 
180  GOTO 90
200  T6=T
205  GOTO 130
220  T5=T
225  GOTO 130
9000  REM *** START CUBIC SPLINE FIT SUBROUTINE ***
9010  I=1
9020  IF T-X[1]<0 THEN 9110
9030  IF T-X[1]=0 THEN 9150
9040  IF T-X[N]<0 THEN 9090
9050  IF T-X[N]=0 THEN 9150
9060  IF T-X[N]>0 THEN 9110
9070  IF T-X[I]<0 THEN 9140
9080  IF T-X[I]=0 THEN 9150
9090  I=I+1
9100  GOTO 9070
9110  PRINT V7,"OUT OF TABLE RANGE"'7" "'7
9120  GOTO 90
9130  I=N
9140  I=I-1
9150  T1=T-X[I]
9160  T2=T-X[I+1]
9170  P=T1*T2
9180  H=X[I+1]-X[I]
9190  D=(Y[I+1]-Y[I])/H
9200  S3=(Z[I+1]-Z[I])/H
9210  D2=Z[I]+T1*S3
9220  Q=(Z[I]+Z[I+1]+D2)/6
9230  V=Y[I]+T1*D+P*Q
9240  D1=D+(T1+T2)*Q+P*S3/6
9250  RETURN 
9260  REM *** END CUBIC SPLINE FIT SUBROUTINE ***
