anchor.diff:  
     real(kind = xp), dimension(:), allocatable :: m
     real(kind = xp), dimension(:, :), allocatable :: r, v, a
  +  real(kind = xp) :: dt
     integer :: iter = 0
     integer :: dump_freq = 1
     integer :: maxiter = 10000
  
positive.code:      !-------------------------
       ! Compute acceleration
       !-------------------------
  
       call compute_force(m, r, a)
  
       call integration(v, a, dt/2)
       call integration(r, v, dt)
  
       if (mod(dump_freq, iter) == 0) then
          call write_dump(5, r, v, npoints)
  
negative.code:   close(unit=10)
  
    !---------------------------------------------
    ! Compute initial speeds, accelerations
    !---------------------------------------------
    call initial_speeds(r, v)
    call compute_force(m, r, a)
  
    !---------------------------------------------
    ! Loop over time
  