source: PSPA/parmelaPSPA/trunk/spln2.f @ 315

Last change on this file since 315 was 12, checked in by lemeur, 12 years ago

parmela pspa initial

File size: 1.5 KB
Line 
1      SUBROUTINE SPLN2 (N,X,Y,C,V) 
2c------------------------------------------------------------------------
3c
4      include 'param_sz.h'
5c
6      dimension x(nspl),y(nspl),c(nsplc),v(5)
7c------------------------------------------------------------------------
8      V(5)=2.0 
9      LIM=N-1   
10C                  -----------------------------------------------------   
11C                  DETERMINE IN WHICH INTERVAL THE INDEPENDENT 
12C                  VARIABLE,V(1),LIES. 
13C                  -----------------------------------------------------   
14      DO 10 I=2,LIM
1510    IF(V(1).LT.X(I)) GO TO 20 
16      I=N   
17      IF(V(1).GT.X(N)) V(5)=3.0 
18      GO TO 30 
1920    IF(V(1).LT.X(1)) V(5) =1.0   
20C                  -----------------------------------------------------   
21C                  Q IS THE SIZE OF THE INTERVAL CONTAINING V(1).   
22C                  -----------------------------------------------------   
23C                  Z IS A LINEAR TRANSFORMATION OF THE INTERVAL
24C                  ONTO (0,1) AND IS THE VARIABLE FOR WHICH
25C                  THE COEFFICIENTS WERE COMPUTED BY SPLN1. 
26C                  -----------------------------------------------------   
27   30 Q=X(I)-X(I-1) 
28      Z=(V(1)-X(I-1))/Q
29      V(2)=((Z*C(3*I-3)+C(3*I-4))*Z+C(3*I-5))*Z+Y(I-1) 
30      V(3)=((3.*Z*C(3*I-3)+2.0*C(3*I-4))*Z+C(3*I-5))/
31      V(4)=(6.*Z*C(3*I-3)+2.0*C(3*I-4))/(Q*Q)   
32      RETURN   
33      END   
34c++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*
Note: See TracBrowser for help on using the repository browser.