V3FIT
VMEC2000
Sources
Splines
splints.f
1
FUNCTION
splints (x)
2
USE
vspline
3
USE
vmec_input,
ONLY
: isnodes
4
IMPLICIT NONE
5
C-----------------------------------------------
6
C D u m m y A r g u m e n t s
7
C-----------------------------------------------
8
REAL
(rprec) x
9
C-----------------------------------------------
10
C L o c a l P a r a m e t e r s
11
C-----------------------------------------------
12
REAL
(rprec),
PARAMETER
:: c1o6 = 1._dp/6._dp
13
C-----------------------------------------------
14
C L o c a l V a r i a b l e s
15
C-----------------------------------------------
16
INTEGER
:: klo, khi, k
17
REAL
(rprec) :: h, a, a2, b, b2, h2, y26lo, y26hi, yx, splints
18
C-----------------------------------------------
19
20
klo = 1
21
khi = isnodes
22
23
1
CONTINUE
24
IF
(khi - klo .gt. 1)
THEN
25
k = (khi + klo)/2
26
IF
(sknots(k) .gt. x)
THEN
27
khi = k
28
ELSE
29
klo = k
30
ENDIF
31
GOTO
1
32
ENDIF
33
34
h = sknots(khi) - sknots(klo)
35
a = sknots(khi) - x
36
b = x - sknots(klo)
37
h2 = h*h
38
a2 = a*a
39
b2 = b*b
40
y26lo = c1o6*y2stark(klo)
41
y26hi = c1o6*y2stark(khi)
42
yx = (a*(ystark(klo)+(a2-h2)*y26lo)+b*(ystark(khi)+(b2-h2)*y26hi))
43
1 /h
44
splints = yx
45
46
END FUNCTION
splints
Generated on Thu Mar 5 2020 15:49:27 for V3FIT by
1.8.17