Nbody6
 All Files Functions Variables
stepk.f
Go to the documentation of this file.
1  SUBROUTINE stepk(DT,DTN)
2 *
3 *
4 * Block time-steps.
5 * -----------------
6 *
7  include 'common6.h'
8  DATA one32 /0.03125/
9 * DATA ONE16,ONE32 /0.0625D0,0.03125/
10 *
11 *
12 * Truncate any large value to first block-step entry.
13  k = 1
14  IF (dt.GE.smax) go to 10
15 *
16 * Compare predicted step with discrete values decreasing by 1/32.
17  dt1 = dtk(1)
18  1 IF (dt1.GT.dt) THEN
19 * DT1 = DT1*ONE16
20 * K = K + 4
21  dt1 = dt1*one32
22  k = k + 5
23  go to 1
24  END IF
25 *
26 * Increase by 2 until predicted step is exceeded (then correct level).
27  4 IF (dt1.LT.dt) THEN
28  dt1 = 2.0d0*dt1
29  k = k - 1
30  go to 4
31  END IF
32  k = k + 1
33 *
34  10 dtn = dtk(k)
35 *
36  RETURN
37 *
38  END