第一原理計算ソフトを使っていて、ほぼ確実に出会うのが計算途中のエラーである。 入力ファイルに誤りがないことをしっかりと確認してもエラーが出る場合は、次のように対処する。
もしそれでも解決しない場合は、がんばって解決しようとするより別の第一原理計算ソフトの使用をした方が早い。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Error in routine cdiaghg (218):
problems computing cholesky
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
行列の対角化のさいに、何らかの特異点が生じているためにエラーが発生する。 バンドが多いときに起こりやすい。 以下のことを順番に行い、エラーが消えるか確認する。
$ mpirun -n 32 pw.x -ndiag 1 < case.scf.in > case.scf.out
以上のようにしても解決しない場合は、複数の対処法を組み合わせる。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Error in routine cdiaghg (460):
S matrix not positive definite
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
次のときに起こりやすいエラーです
次のようにして解決します。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Error in routine c_bands (1):
too many bands are not converged
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
NSCF計算でバンドが多いときに発生しやすい。
対策方法
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
task # 18
from phq_readin : error # 1
DFPT with the Blochl correction is not implemented
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
テトラヘドロン法でSCF計算をしたあと、フォノン計算をしたときに発生する。 フォノン計算で使うテトラヘドロン法のプログラムがXML形式にしか対応していないためである。
対策方法
プログラムをコンパイルしなおしてXMLを使えるようにする。
$ ./configure --enable-xml $ make pw ph
参考
https://lists.quantum-espresso.org/pipermail/developers/2017-October/001760.html