Revision dff3b5c68673d4d4c4c9f54c8ba110b8416098f2 authored by nitadori on 31 May 2020, 13:04:00 UTC, committed by GitHub on 31 May 2020, 13:04:00 UTC
Sorry, in the last commit I modified wrong part. In case !(JCL>N), SEMIX can be NaN.
1 parent 0b3202d
ffdot.f
SUBROUTINE FFDOT(I,ZMS,XS,VS,SS)
*
*
* Force & first derivative corrections.
* -------------------------------------
*
INCLUDE 'common6.h'
REAL*8 A(9),F1(3),F1DOT(3),XS(3),VS(3)
*
*
* Obtain force and first derivative due to body #J.
DO 15 K = 1,3
A(K) = XS(K) - X(K,I)
A(K+3) = VS(K) - XDOT(K,I)
15 CONTINUE
*
A(7) = 1.0/(A(1)*A(1) + A(2)*A(2) + A(3)*A(3))
A(8) = ZMS*A(7)*SQRT(A(7))
A(9) = 3.0*(A(1)*A(4) + A(2)*A(5) + A(3)*A(6))*A(7)
*
DO 20 K = 1,3
F1(K) = A(K)*A(8)
F1DOT(K) = (A(K+3) - A(K)*A(9))*A(8)
20 CONTINUE
*
* Subtract dominant contributions from F/2 and FDOT/6.
DO 25 K = 1,3
F(K,I) = F(K,I) - SS*0.5D0*F1(K)
FDOT(K,I) = FDOT(K,I) - SS*ONE6*F1DOT(K)
FI(K,I) = FI(K,I) - SS*F1(K)
FIDOT(K,I) = FIDOT(K,I) - SS*F1DOT(K)
25 CONTINUE
*
DE = SS*BODY(I)*ZMS*A(7)
ECOLL = ECOLL + DE
BE(3) = BE(3) + DE
*
RETURN
*
END
Computing file changes ...