mirror of
https://github.com/Cantera/cantera.git
synced 2025-02-25 18:55:29 -06:00
23 lines
527 B
Fortran
Executable File
23 lines
527 B
Fortran
Executable File
SUBROUTINE SPLINT(XA,YA,Y2A,N,X,Y)
|
|
implicit double precision (a-h,o-z)
|
|
DIMENSION XA(N),YA(N),Y2A(N)
|
|
KLO=1
|
|
KHI=N
|
|
1 IF (KHI-KLO.GT.1) THEN
|
|
K=(KHI+KLO)/2
|
|
IF(XA(K).GT.X)THEN
|
|
KHI=K
|
|
ELSE
|
|
KLO=K
|
|
ENDIF
|
|
GOTO 1
|
|
ENDIF
|
|
H=XA(KHI)-XA(KLO)
|
|
IF (H.EQ.0.) PAUSE 'Bad XA input.'
|
|
A=(XA(KHI)-X)/H
|
|
B=(X-XA(KLO))/H
|
|
Y=A*YA(KLO)+B*YA(KHI)+
|
|
* ((A**3-A)*Y2A(KLO)+(B**3-B)*Y2A(KHI))*(H**2)/6.d0
|
|
RETURN
|
|
END
|