# Method¶

Phonopy calculates group velocity of phonon as follows:

$\begin{split}\mathbf{v}_\mathrm{g}(\mathbf{q}\nu) = & \nabla_\mathbf{q} \omega(\mathbf{q}\nu) \\ =&\frac{\partial\omega(\mathbf{q}\nu)}{\partial \mathbf{q}} \\ =&\frac{1}{2\omega(\mathbf{q}\nu)}\frac{\partial[\omega(\mathbf{q}\nu)]^2}{\partial \mathbf{q}} \\ =&\frac{1}{2\omega(\mathbf{q}\nu)}\left<\mathbf{e}(\mathbf{q}\nu)\biggl| \frac{\partial D(\mathbf{q})} {\partial \mathbf{q}}\biggl|\mathbf{e}(\mathbf{q}\nu)\right>,\end{split}$

where the meanings of the variables are found at Formulations.

# Finite difference method¶

In the previous versions, group velocity was calculated using finite difference method:

$\mathbf{v}_\mathrm{g}(\mathbf{q}\nu) = \frac{1}{2\omega(\mathbf{q}\nu)}\left<\mathbf{e}(\mathbf{q}\nu)\biggl| \frac{\partial D(\mathbf{q})} {\partial \mathbf{q}}\biggl|\mathbf{e}(\mathbf{q}\nu)\right> \simeq \frac{1}{2\omega(\mathbf{q}\nu)} \left<\mathbf{e}(\mathbf{q}\nu)\biggl| \frac{\Delta D(\mathbf{q})} {\Delta \mathbf{q}}\biggl|\mathbf{e}(\mathbf{q}\nu)\right>.$

Group velocity calculation with the finite difference method is still able to be activated using GV_DELTA_Q tag or -gv_delta_q option. $$\Delta\mathbf{q} = (\Delta q_x, \Delta q_y, \Delta q_z)$$ is described in Cartesian coordinated in reciprocal space. In the implementation, central difference is employed, and $$+\Delta q_\alpha$$ and $$-\Delta q_\alpha$$ are taken to calculate group velocity, where $$\alpha$$ is the Cartesian index in reciprocal space. $$\Delta q_\alpha$$ is specified in the unit of reciprocal space distance ($$\mathrm{\AA}^{-1}$$ for the default case) by --gv_delta_q option or GV_DELTA_Q tag.