自己エネルギー計算の実装について
実行プログラム
hsfp0_sc
: QSGW計算で使用。はエルミート化される。off-diagonal を含めた自己エネルギーを計算する。hsfp0
: スペクトル関数, 準粒子寿命計算で使用。はエルミート化されず、自己エネルギーの対角成分(複素数)のみを計算。
並列化
以下のMPI並列化が実装されている。
- 点: 第一還元ゾーン中のk点数。
- 点: 第一ゾーン中のk点数
GWinput
のn1n2n3
で指定した量 - 並列: hsfp0_scのみ, との振動数での畳み込み積分における並列化
TIP
並列は並列に比べ効率が悪いためデフォルトでは使用されない。使用する場合は--nwpara=XX
を実行時引数に指定する。
自己エネルギー(相関)の計算
以下の計算を行う。
についての積分(との畳み込み)を数値的にどのように計算するか。が問題となる。実の近傍にはの極があり, 実軸上の数値計算を困難としている。 これを計算する方法として、解析接続を用いる手法、周回積分を用いる手法が知られている。ecaljでは後者を使用している。 複素数に拡張した空間で, 以下のような周回積分を考える。より上の積分値はゼロとなる。この経路はの極を避けるようにしている。
よって, 虚軸積分寄与と留数の寄与から実軸積分が計算できる。