[Pw_forum] Dynamical matrix diagonalization: rdiagh vs rdiaghg

Paolo Giannozzi paolo.giannozzi at uniud.it
Tue Jul 2 17:27:34 CEST 2013


On Tue, 2013-07-02 at 06:48 -0700, Alexandr Fonari wrote:

> However, in Gamma code (I realize its deprecated

it's not (yet) "deprecated", it is just an old piece of code 
that has many limitations and few (or maybe zero) users

> Can someone explain the differences between two resulting 
> sets of eigenvectors?

it's plain linear algebra. In one case, you solve 
C*v=\omega M*v, where C_{\alpha i,\beta j} is the matrix of
force constants; M_{\alpha i,\beta j} is the matrix of masses,
in the base of (orthonormal) displacement modes "u" as used in 
the code. If modes are the displacement of a single atom
along a single cartesian component, the matrix M is diagonal.

In the other case, you solve D*w=\omega w, in cartesian axis;
D_{\alpha i,\beta j}=C_{\alpha i,\beta j}/sqrt{m_i}/sqrt{m_j}
is the dynamical matrix. 

Apart from phases, the only difference once you bring the v
vectors in cartesian axis should be a factor sqrt{m_i}

P.
-- 
 Paolo Giannozzi, Dept. Chemistry&Physics&Environment, 
 Univ. Udine, via delle Scienze 208, 33100 Udine, Italy
 Phone +39-0432-558216, fax +39-0432-558222 




More information about the users mailing list