code: def get_group_velocity(q,  # q-point
                         dynamical_matrix,
                         q_length=None,  # finite distance in q
                         symmetry=None,
                         frequency_factor_to_THz=VaspToTHz):
      
  
      gv = GroupVelocity(dynamical_matrix,
                         q_length=q_length,
                         symmetry=symmetry,
                         frequency_factor_to_THz=frequency_factor_to_THz)
      gv.set_q_points([q])
      return gv.get_group_velocity()[0]
docs: If frequencies and eigenvectors are supplied they are used
      instead of calculating them at q-point (but not at q+dq and q-dq).
  
      reciprocal lattice has to be given as
      [[a_x, b_x, c_x],
       [a_y, b_y, c_y],
       [a_z, b_z, c_z]]