anchor.diff:      double precision, intent(in), optional :: alpha
   
       integer :: i, start, n
  -    integer :: cell_idx
  +    integer :: cell_idx, n_effective
       double precision :: local_v(3), omega(3,3), vec(3)
       double precision :: sin_alpha, cos_alpha
       integer :: thread_id
  
positive.code: 
      double precision :: te
  
      integer :: i, start, n
      integer :: cell_idx, count
      integer :: cell(3)
      double precision :: local_v(3), local_kin
  
negative.code:        n = cells% cell_count(cell_idx)
         count = count + 1
  
         n_effective = 0
         local_v = 0
         local_kin = 0
         do i = start, start + n - 1
            if (particles%species(i) > 0) then
               local_v = local_v + particles% vel(:, i)
               n_effective = n_effective + 1
            end if
         end do
         local_v = local_v / n
         do i = start, start + n - 1
            if (particles%species(i) > 0) then
               local_kin = local_kin + sum((particles% vel(:, i)-local_v)**2)
            end if
         end do
         local_kin = local_kin / dble(3*(n_effective-1))
         te = te + local_kin
  
         if (do_tz) then
  