[Pw_forum] Dynamical matrix diagonalization: rdiagh vs rdiaghg

Alexandr Fonari af3_pw_forum at yahoo.com
Tue Jul 2 15:48:16 CEST 2013


Dear PW_forum community,

My question is about two different ways of assembling and diagonalizing of the dynamical matrix (consider Gamma point for simplicity). In the PH code dynamical matrix is assembled and diagonalized in rigid.f90 using dyndiag and cdiagh2 subroutines, respectively (for G-point is rdiagh). As arguments cdiagh2 routine takes hermitian matrix H (everything is clear here).
However, in Gamma code (I realize its deprecated, but still) in dyndiar subroutine, besides the dynamical matrix itself, also the overlap matrix consisting of ionic masses is defined. Diagonalization is performed using rdiaghg subroutine (from PW tree), which takes as arguments both symmetric (real Hermitian) matrix and overlap matrix.

Can someone explain the differences between two resulting sets of eigenvectors? (eigenvalues seem to be in the range of numerical accuracy)
Is there a way one can recover one eigenvector set from another one?

thanks a lot,
Alexandr

===
Alexandr Fonari,
graduate student,
Georgia Institute of Technology.




More information about the users mailing list