1 FUNCTION torflux_deriv (x)
3 USE vmec_main,
ONLY: zero
4 USE vmec_input,
ONLY: lrfp, tf => aphi
8 REAL(rprec),
INTENT(IN) :: x
9 REAL(rprec) :: torflux_deriv
10 REAL(rprec),
EXTERNAL :: polflux_deriv, piota
17 IF (piota(x) .eq. zero) stop
'piota(x) = 0!'
18 torflux_deriv = polflux_deriv(x)/piota(x)
23 DO i = ubound(tf,1), lbound(tf,1), -1
24 torflux_deriv = x*torflux_deriv + i*tf(i)
29 END FUNCTION torflux_deriv
31 FUNCTION polflux_deriv (x)
33 USE vmec_input,
ONLY: lrfp
37 REAL(rprec),
INTENT(IN) :: x
38 REAL(rprec) :: tf, polflux_deriv
39 REAL(rprec),
EXTERNAL :: torflux, torflux_deriv, piota
53 polflux_deriv = piota(tf)*torflux_deriv(x)
57 END FUNCTION polflux_deriv
64 REAL(rprec),
INTENT(IN) :: x
65 REAL(rprec) :: torflux, h, xi
66 REAL(rprec),
EXTERNAL :: torflux_deriv
74 torflux = torflux + torflux_deriv(xi)
76 torflux = torflux-0.5_dp*(torflux_deriv(0._dp)+torflux_deriv(x))
87 REAL(rprec),
INTENT(IN) :: x
88 REAL(rprec) :: polflux, h, xi
89 REAL(rprec),
EXTERNAL :: polflux_deriv
96 polflux = polflux + polflux_deriv(xi)
98 polflux = polflux-0.5_dp*(polflux_deriv(0._dp)+polflux_deriv(x))