4.2.3. ModParaファイル¶
--------------------
Model_Parameters 0
--------------------
HPhi_Cal_Parameters
--------------------
CDataFileHead zvo
CParaFileHead zqp
--------------------
Nsite 16
Ncond 16
2Sz 0
Lanczos_max 1000
initial_iv 12
exct 1
LanczosEps 14
LanczosTarget 2
LargeValue 12
NumAve 5
ExpecInterval 20
ファイル形式¶
以下のように行数に応じ異なる形式をとります。
- 1 - 5行: ヘッダ(何が書かれても問題ありません)。
- 6行: [string01] [string02]
- 7 - 8行: ヘッダ(何が書かれても問題ありません)
- 9行以降: [string01] [int01]
各項目の対応関係は以下の通りです。
\([\)string01\(]\)
形式 : string型 (固定)
説明 : キーワードの指定を行います。
\([\)string02\(]\)
形式 : string型 (空白不可)
説明 : アウトプットファイルのヘッダを指定します。
\([\)int01\(]\)
形式 : int型 (空白不可)
説明 : キーワードでひも付けられるパラメータを指定します。
使用ルール¶
本ファイルを使用するにあたってのルールは以下の通りです。
- 9行目以降ではキーワードを記載後、半角空白を開けた後に整数値を書きます。
- 行数固定で読み込みを行う為、パラメータの省略はできません。
キーワード¶
以下、共通パラメータと各手法毎に必要なパラメータを記載します。
共通パラメータ¶
CDataFileHead
形式 : string型 (空白不可)
説明 : アウトプットファイルのヘッダ。例えば、一体のGreen関数の出力ファイル名がxxx_Lanczos_cisajs.datとして出力されます(xxxに
CDataFileHead
で指定した文字が記載)。Nsite
形式 : int型 (自然数)
説明 : サイト数を指定する整数。
Ncond
形式 : int型 (自然数)
説明 : 伝導電子数を指定する整数。グランドカノニカルの場合には使用されません。
2Sz
形式 : int型 (自然数)
説明 : \(2S_z\)を指定する整数。グランドカノニカルの場合には使用されません。電子系、近藤格子模型で\(S_z\)保存の計算を行う場合には
Ncond
を指定する必要があります。initial_iv
形式 : int型 (整数)
説明 : 初期条件のベクトルを与えます。
Lanczos法, CG法
カノニカル集団かつ
initial_iv
\(\geq 0\)の場合ノンゼロの成分が指定されます。
initial_iv
\(< 0\)の場合
乱数のシードが指定され、全ての成分に対して係数がランダムに与えられます。なお、グランドカノニカルの場合は初期状態として多くの状態を持つよう、こちらの様式が適用されます。
TPQ法
乱数のシードが指定され、全ての成分に対して係数がランダムに与えられます。
初期ベクトル設定の詳細については、アルゴリズム を参照ください。
CalcHS
形式 : int型 (自然数)
説明 :
CalcHS=1
で量子数を指定したときのヒルベルト空間生成が高速化されます(詳細は http://issp-center-dep.github.io/HPhi/develop/tips.pdfを参照)。 デフォルトの値は1で、高速化アルゴリズムが使用されます。
Lanczos法で使用するパラメータ¶
exct
形式 : int型 (自然数)
説明 : Lanczos法で求める固有ベクトルの番号を指定する整数。 例えば、1なら基底状態のベクトル、2なら第一励起状態のベクトルを求めます。
Lanczos_max
形式 : int型 (自然数)
説明 : Lanczosステップを行う回数の最大値を与えます。 指定した精度内で収束した場合には、これより短い回数で終了します。 この回数以内で収束しない場合はエラー終了します。 再計算を行う場合には、
Lanczos_max
の最大数を過去のステップ数よりも大きくする必要があります。LanczosEps
形式 : int型 (自然数)
説明 : Lanczos法の収束判定条件を指定する整数。 一つ前のステップの固有値との相対誤差が, \(10^{- {\rm LanczosEps}}\)以下になった場合に収束したと判定します。
LanczosTarget
形式 : int型 (自然数)
説明 : 何番目の固有値でランチョスの収束判定を行うかを指定する整数。1なら基底状態。2なら第一励起状態を示します。
CG法で使用するパラメータ¶
exct
形式 : int型 (自然数)
説明 : 求める固有ベクトルの本数を指定します。
Lanczos_max
形式 : int型 (自然数)
説明 : CG法を行う際のステップ数の最大値を与えます。 指定した精度内で収束した場合には、これより短い回数で終了します。 この回数以内で収束しない場合はエラー終了します。 再計算を行う場合には、
Lanczos_max
の最大数を過去のステップ数よりも大きくする必要があります。LanczosEps
形式 : int型 (自然数)
説明 : 残差ベクトルの2-ノルムが \(10^{- {\rm LanczosEps}/2}\)以下になった場合に収束したと判定します。
TPQ法で使用するパラメータ¶
Lanczos_max
形式 : int型 (自然数)
説明 : TPQ法の総ステップ数を与えます。 再計算を行う場合には、
Lanczos_max
の最大数を過去のステップ数よりも大きくする必要があります。LargeValue
形式 : double型 (実数)
説明 : TPQで使用する\(l-\hat{H}/N_{s}\)の\(l\)を指定する整数。
NumAve
形式 : int型 (自然数)
説明 : 独立なrunを何回行うかを指定する整数。
ExpecInterval
形式 : int型 (自然数)
説明 : 相関関数の計算を何回のTPQステップおきに行うかの指定する整数。 頻度を上げると計算コストが増大するので注意してください。
動的グリーン関数の計算で使用するパラメータ¶
OmegaOrg
形式 : complex型 (複素数)
説明 : 動的グリーン関数を計算する際の振動数\(\omega\)の中心点を指定します。 スペース区切りで実部、虚部の順に指定し、虚部がない場合は実数として扱います。
OmegaIm
形式 : double型 (実数)
説明 : 動的グリーン関数を計算する際の振動数\(\omega\)の中心点の虚部を指定します。 中心点
OmegaOrg
が指定されている場合はOmegaOrg
に虚部OmegaIm
を加えます。OmegaMax
形式 : complex型 (複素数)
説明 : 動的グリーン関数を計算する際の振動数\(\omega\)の終点を指定します。 終点は
OmegaOrg
\(+\)OmegaMax
で与えられます。 スペース区切りで実部、虚部の順に指定し、虚部がない場合は実数として扱います。OmegaMin
形式 : complex型 (複素数)
説明 : 動的グリーン関数を計算する際の振動数\(\omega\)の始点を指定します。 終点は
OmegaOrg
\(+\)OmegaMin
で与えられます。 スペース区切りで実部、虚部の順に指定し、虚部がない場合は実数として扱います。NOmega
形式 : int型 (自然数)
説明 : 動的グリーン関数を計算する際の振動数の刻み幅\(\Delta \omega = (\)
OmegaMax
-OmegaMin
\()/N_{\omega}\)を与えるための整数。振動数は\(z_n=\)OmegaOrg
\(+\)OmegaMin
\(+ \Delta \omega \times n\)で与えられます。
実時間発展法で使用するパラメータ¶
Lanczos_max
形式 : int型 (自然数)
説明 : 実時間発展法の総ステップ数を与えます。 再計算を行う場合には、
Lanczos_max
の最大数を過去のステップ数よりも大きくする必要があります。ExpandCoef
形式 : int型 (自然数)
説明 : 微小時間\(\Delta t\)に対して実時間発展を行う際の
\[\exp\left(-i \hat{\cal H} \Delta t \right) = \sum_{n=0}^{N}\frac{1}{n!}\left(-i \hat{\cal H} \Delta t \right)^n\]
に対する展開次数\(N\)を与えます。
ExpecInterval
形式 : int型 (自然数)
説明 : 相関関数の計算を行う際のステップ間隔を指定する整数。 頻度を上げると計算コストが増大するので注意してください。
OutputInterval
形式 : int型 (自然数)
説明 : 時間発展中の波動関数を出力するステップ間隔を指定する整数。 (
CalcMod
ファイルでOutputEigenVec=1
にすると有効になります)