next up previous contents index
Next: 有効遮蔽媒質法(ESM法) Up: OpenMX Ver. 3.9 ユーザーマニュアル Previous: Wannier90とのインターフェース   Contents   Index

対角化のための数値的に厳密な低次スケーリング法

大規模計算のために数値的に厳密な低次スケーリング法がサポートされています [124]。 この方法の計算量は、$N$を基底関数の数とすると、1、2、3次元の系に対してそれぞれO( $N({\rm log}N)^2$)、O($N^2$)、O($N^{7/3}$)として増加します。 O($N$)法と異なり、本方法は低次のスケーリングにも関らず通常のO($N^3$)対角化法と同じく数値的に厳密な方法であり、 一つの理論的な枠組で絶縁体から金属にも適用可能です。 計算のデータ構造が適切に区分けされているため、図 51 に示すように大規模な並列処理に適しています。 しかし計算量の前因子が大きくなるため、並列計算において多数のCPUコアを使用した場合にのみに、この方法が有利になります。 多数のCPUコアを使って低次元の大規模系を計算する場合、この方法は適切な選択となるでしょう。 この方法を選択するには、キーワード「scf.EigenvalueSolver」を以下の様に指定します。

     scf.EigenvalueSolver     cluster2

本手法は、クラスター計算あるいはブリルアンゾーンでのサンプリングに対して$\Gamma $点だけが考慮された周期系のコリニアDFT計算に対してのみ サポートされています。全エネルギー計算ばかりでなく、力の計算も実装されていますので、幾何学構造の最適化を行うことができます。 しかし状態密度計算や波動関数の計算は実装されていません。周回積分の極の数 [74]は次のキーワードで設定します。

     scf.Npoles.ON2              90
収束に必要な極の数は系の大きさに依らずに、系のスペクトル半径に依存しています [124]。 電子温度が300K以上の場合には、100の極を用いれば全エネルギーと力は十分に収束します。 例として、「work」ディレクトリ中の入力ファイル「C60_LO.dat」を用いた計算を示します。
    % mpirun -np 8 openmx C60_LO.dat
  
10 に示すように、本法で計算された全エネルギーは、倍精度の範囲内で通常の対角化法とほぼ一致していますが、 一方、計算時間に関しては、従来法と比較し、非常に長い時間を要しています。 計算時間に関し、本法と通常の対角化法の交点は、系の次元にも依りますが並列処理に100個以上のコアを使う場合、 原子数で300程度であると推測されます。



Figure 51: DNAの対角化 (SCF計算)のOpenMP/MPIハイブリッド並列計算の速度向上比。 対角化には数値的に厳密な低次スケーリング法を使用。 速度向上比は$2T_2/T_p$として定義。$T_2$は2 MPIプロセスによる所要時間、 $T_p$は並列計算の所要時間。 これらの並列計算はAMDのOpteron クアッドコア・プロセッサ (2.3 GHz)からなるCRAY-XT5マシン上で実施。 電子温度を700Kとし、周回積分のための極の数は80。 比較のために、Householder法とQR法による通常の対角化法の並列計算の速度向上比も示す (シングルスレッドの場合)。 また低次スケーリング法および通常法に対して、矢印で示した点での所要時間も示す。
\includegraphics[width=14.0cm]{LO_Para.eps}


Table 10: 数値的に厳密な低次スケーリング法と通常の対角法の計算時間 (秒)。 どちらの場合も、8 MPIプロセスを用いてC$_{60}$分子の全エネルギーを計算。 入力ファイルは「work」ディレクトリの 「C60_LO.dat」。

Method Total energy (Hartree) Computational time (sec.)
Low-order -343.896238929370 69.759
Conventional -343.896238929326 2.784