anchor.diff:  
     integer, parameter :: block_length = 8
     integer :: n_blocks
  -  type(correlator_t) :: msd
  +  type(correlator_t) :: msd, omega_acf, oacf
     integer(HID_T) :: correlator_group, group
  +
  +  double precision :: unit_r(3), omega(3), rel_v(3), norm_xy
   
     double precision :: g(3) !gravity
     logical :: fixed, on_track, stopped, N_in_front, dimer, N_type
  
positive.code:         call elem_vx% append(vx% data, i, i*tau)
          call elem_vx_count% append(vx% count, i, i*tau)
          call vx% reset()
       end if
  
       com_pos = ( colloids%pos(:,1)+colloids%image(:,1)*solvent_cells%edges + &
            colloids%pos(:,2)+colloids%image(:,2)*solvent_cells%edges)
  
       if ((.not. fixed) .and. (.not. on_track)) then
          call msd%add(i-i_release-1, correlate_block_distsq, xvec=com_pos)
       end if
  
       call varia%tic()
  
negative.code:   double precision :: kin_e, temperature
    integer, dimension(N_species) :: n_solvent, catalytic_change, bulk_change
    type(h5md_element_t) :: n_solvent_el, catalytic_change_el, bulk_change_el
    type(h5md_element_t) :: omega_el
  
    double precision :: colloid_pos(3,2)
    double precision :: com_pos(3)
  