8 REAL*8 xi(3),xidot(3),firr(3),fd(3)
17 x(1,j) = ((fdot(1,j)*s + f(1,j))*s +x0dot(1,j))*s + x0(1,j)
18 x(2,j) = ((fdot(2,j)*s + f(2,j))*s +x0dot(2,j))*s + x0(2,j)
19 x(3,j) = ((fdot(3,j)*s + f(3,j))*s +x0dot(3,j))*s + x0(3,j)
20 xdot(1,j) = (fdot(1,j)*s1 + f(1,j))*s2 + x0dot(1,j)
21 xdot(2,j) = (fdot(2,j)*s1 + f(2,j))*s2 + x0dot(2,j)
22 xdot(3,j) = (fdot(3,j)*s1 + f(3,j))*s2 + x0dot(3,j)
33 CALL
xtrnlt(xi,xidot,firr,fd)
42 t0(i) = t0(i) + step(i)
45 df = fi(k,i) - firr(k)
48 at3 = 2.0d0*df + dt*sum
49 bt2 = -3.0d0*df - dt*(sum + fid)
51 x0(k,i) = xi(k) + (0.6d0*at3 + bt2)*dtsq12
52 x0dot(k,i) = xidot(k) + (0.75d0*at3 + bt2)*dt13
56 xdot(k,i) = x0dot(k,i)
60 f(k,i) = 0.5d0*firr(k)
61 fdot(k,i) = one6*fd(k)
65 d2(k,i) = (3.0d0*at3 + bt2)*dt2
71 ttmp =
tstep(firr,fd,d2(1,i),d3(1,i),etai)
76 IF (ttmp.GT.2.0*step(i))
THEN
77 ttmp = min(2.0*step(i),1.0d0)
78 ELSE IF (ttmp.LT.step(i))
THEN
85 IF (t0(i) + ttmp.GT.time)
THEN
91 tnew(i) = step(i) + t0(i)
97 IF (tnew(i).LT.time)
THEN
99 IF (iter.LT.10) go to 1
100 WRITE (6,20) i, time, step(i), firr
101 20
FORMAT (
' SMALL TIDAL STEP I T DT F ',i7,f7.1,1p,4e10.2)