Skip to content

Commit 614c097

Browse files
committed
Merge branch 'develop'
2 parents 41a03d8 + b497bbd commit 614c097

25 files changed

+684
-416
lines changed

doc/en/chap01_en.tex

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ \subsection{Contributors}
5757
\label{subsec:contributors}
5858
This software was developed by the following contributors.
5959
\begin{itemize}
60+
\item{ver.2.0.2 (released on 2017/7/5)}
61+
\item{ver.2.0.1(released on 2017/6/20)}
6062
\item{ver.2.0 (released on 2017/4/11)}
6163
\item{ver.1.2 (released on 2016/11/14)}
6264
\item{ver.1.1 (released on 2016/5/13)}

doc/en/chap02_en.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ \subsection{Using \texttt{HPhiconfig.sh}}
103103
and obtain an executable \verb|HPhi| in the \verb|src/| directory;
104104
you should add this directory to the \verb|$PATH|.
105105

106-
106+
If SSE2 is available in your system, please add \verb|-DHAVE_SSE2| as an option of CMake.
107107

108108
\begin{screen}
109109
\Large

doc/en/chap04_en.tex

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1109,6 +1109,25 @@ \subsubsection{Use rules}
11091109
5: Input and output both components of triangular diagonal matrix and a restart vector.\\
11101110
}
11111111

1112+
\item \verb|OutputHam|
1113+
1114+
{\bf Type :} {Int (default value: 0)}
1115+
1116+
{\bf Description :} {Full Diag)Select the mode of outputting Hamiltonian:\\
1117+
0: not output Hamiltonian.\\
1118+
1: output Hamiltonian.\\
1119+
}
1120+
1121+
\item \verb|InputHam|
1122+
1123+
{\bf Type :} {Int (default value: 0)}
1124+
1125+
{\bf Description :} {(Full Diag)Select the mode of inputting Hamiltonian:\\
1126+
0: not input Hamiltonian.\\
1127+
1: input Hamiltonian.\\
1128+
}
1129+
1130+
11121131
\end{itemize}
11131132

11141133
\newpage
@@ -3578,6 +3597,73 @@ \subsubsection{Parameters}
35783597

35793598
\end{itemize}
35803599

3600+
\newpage
3601+
\subsection{ham.dat}
3602+
\label{Subsec:ham}
3603+
(For the FullDiag method) When \verb$OutputHam=1$ in the \verb$CalcMod$ file, the Hamiltonian calculated by $\HPhi$ is outputted by the MatrixMarket format. The recalculation by using this file can be down when \verb$InputHam=1$ in the \verb$CalcMod$ file.
3604+
An example of the file format is as follows.\\
3605+
3606+
\begin{minipage}{12.5cm}
3607+
\begin{screen}
3608+
\begin{verbatim}
3609+
%%%%MatrixMarket matrix coordinate complex hermitian
3610+
28 28 56
3611+
1 1 1.000000 0.000000
3612+
2 1 0.500000 0.000000
3613+
3 2 0.500000 0.000000
3614+
4 3 0.500000 0.000000
3615+
5 4 0.500000 0.000000
3616+
6 5 0.500000 0.000000
3617+
7 6 0.500000 0.000000
3618+
7 7 1.000000 0.000000
3619+
3620+
\end{verbatim}
3621+
\end{screen}
3622+
\end{minipage}
3623+
3624+
\subsubsection{File name}
3625+
\begin{itemize}
3626+
\item \#\#\_ham.dat
3627+
\end{itemize}
3628+
\#\# indicates [string02] in a ModPara file.
3629+
3630+
\subsubsection{File format}
3631+
\begin{itemize}
3632+
\item Line 1: Header
3633+
\item Line 2: $[$int01$]$~~$[$int02$]$~~$[$int03$]$
3634+
\item Lines3-:$[$int04$]$~~$[$int05$]$~~$[$double01$]$~~$[$double02$]$
3635+
\end{itemize}
3636+
3637+
\subsubsection{Parameters}
3638+
\begin{itemize}
3639+
3640+
\item $[$int01$]$
3641+
3642+
{\bf Type :} Int
3643+
3644+
{\bf Description :} Number of rows of Hamiltonian.
3645+
3646+
\item $[$int02$]$
3647+
3648+
{\bf Type :} Int
3649+
3650+
{\bf Description :} Number of columns of Hamiltonian.
3651+
3652+
\item $[$int03$]$
3653+
3654+
{\bf Type :} Int
3655+
3656+
{\bf Description :} Number of nonzero elements of Hamiltonian.
3657+
3658+
\item $[$double01$]$, $[$double02$]$
3659+
3660+
{\bf Type :} Double
3661+
3662+
{\bf Description :} The value of Hamiltonian; $[$double01$]$ and $[$double02$]$ represent real and imaginary part of the Hamiltonian, respectively.
3663+
3664+
\end{itemize}
3665+
3666+
35813667
\newpage
35823668
\subsection{cisajs.dat}
35833669
\label{Subsec:cgcisajs}

doc/en/chap06_en.tex

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ \chapter{Acknowledgement}
88
the user interface in the program for variational Monte Carlo developed by Mr. Tahara.
99
A part of the user interface in $\HPhi$ is based on his original codes.
1010
We would also like to express our thanks for the support of the ``{\it Project for advancement of software usability in materials science}"
11-
of The Institute for Solid State Physics, The University of Tokyo, for the development of $\HPhi$ ver. 0.1 - ver. 2.0.
11+
of The Institute for Solid State Physics, The University of Tokyo, for the development of $\HPhi$ ver. 0.1 - ver. \input{../../src/include/version_major.h}.\input{../../src/include/version_miner.h}.\input{../../src/include/version_patch.h}.
12+
1213

1314
Dr. Yuichi Motoyama and Dr. Yasuyuki Kato found and reported bugs.
1415
We acknowledge their kindness and carefulness.

doc/jp/chap01_jp.tex

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ \subsection{開発貢献者}
4949
\label{subsec:developers}
5050
本ソフトウェアは以下の開発貢献者により開発されています。
5151
\begin{itemize}
52+
\item{ver.2.0.2 (2017/7/5 リリース)}
53+
\item{ver.2.0.1(2017/6/20 リリース)}
5254
\item{ver.2.0 (2017/4/11リリース)}
5355
\item{ver.1.2 (2016/11/14リリース)}
5456
\item{ver.1.1 (2016/5/13リリース)}

doc/jp/chap02_jp.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,7 @@ \subsection{cmakeを使う場合}
157157
実行後、buildフォルダ直下にsrcフォルダが作成され、HPhiがsrcフォルダ内に作成されます。
158158
なお、コンパイラを変更しコンパイルし直したい場合には、都度buildフォルダごと削除を行った上で、新規に上記作業を行うことをお薦めします。
159159

160+
SSE2が使用出来る場合には、cmakeでのコンパイル時\verb$-DHAVE_SSE2$を付け加えてください.
160161

161162
\label{Sec:HowToInstall}
162163
\section{ディレクトリ構成}

doc/jp/chap04_jp.tex

Lines changed: 124 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1029,6 +1029,31 @@ \subsubsection{使用ルール}
10291029
から選択することが出来ます。}
10301030
}
10311031

1032+
\item \verb|OutputHam|
1033+
1034+
{\bf 形式 :} {int型 (デフォルト値 0)}
1035+
1036+
{\bf 説明 :} {
1037+
{
1038+
(FullDiag) ハミルトニアンの出力モードを指定します。\\
1039+
0: 出力なし\\
1040+
1: 出力あり\\
1041+
から選択することが出来ます。}
1042+
}
1043+
1044+
\item \verb|InputHam|
1045+
1046+
{\bf 形式 :} {int型 (デフォルト値 0)}
1047+
1048+
{\bf 説明 :} {
1049+
{
1050+
(FullDiag) ハミルトニアンの入力モードを指定します。\\
1051+
0: 入力なし\\
1052+
1: 入力あり\\
1053+
から選択することが出来ます。}
1054+
}
1055+
1056+
10321057

10331058
\end{itemize}
10341059

@@ -3531,63 +3556,136 @@ \subsubsection{パラメータ}
35313556

35323557

35333558
\newpage
3534-
\subsection{cisajs.dat}
3535-
\label{Subsec:cgcisajs}
3536-
OneBodyGで指定された一体グリーン関数$\langle c_{i\sigma_1}^{\dagger}c_{j\sigma_2}\rangle$の計算結果を出力します。以下にファイル例を記載します。
3559+
\subsection{phys.dat}
3560+
\label{Subsec:phys}
3561+
(FullDiagでのみ出力)全対角法で計算したエネルギーと物理量を出力します。エネルギーの低い基底エネルギーから順に出力されます。以下にファイル例を記載します。\\
3562+
\begin{minipage}{12.5cm}
3563+
\begin{screen}
3564+
\begin{verbatim}
3565+
<H> <N> <Sz> <S2> <D>
3566+
-4.814170 0.000000 0.000000 -0.000000 0.590568
3567+
-3.796850 0.000000 0.000000 1.333333 0.423804
3568+
3569+
14.489622 0.000000 0.000000 0.000000 2.550240
3570+
14.852520 0.000000 0.000000 0.000000 2.329157
3571+
\end{verbatim}
3572+
\end{screen}
3573+
\end{minipage}
3574+
3575+
\subsubsection{ファイル名}
3576+
\begin{itemize}
3577+
\item {カノニカル:} \#\#\_phys\_Nup\_\$\$Ndown\%\%.dat
3578+
\item {グランドカノニカル:} \#\#\_phys.dat
3579+
\end{itemize}
3580+
\#\#はModParaファイル内の[string02]で指定されるヘッダ、\$\$はNup、\%\%はNdownを表します。
3581+
3582+
\subsubsection{ファイル形式}
3583+
1行目はヘッダで、2行目以降は以下のファイル形式で記載されます。
3584+
\begin{itemize}
3585+
\item $[$double01$]$ $[$double02$]$ $[$double03$]$ $[$double04$]$ $[$double05$]$
3586+
\end{itemize}
3587+
\subsubsection{パラメータ}
3588+
\begin{itemize}
3589+
3590+
\item $[$double01$]$
3591+
3592+
{\bf 形式 :} double型
3593+
3594+
{\bf 説明 :} エネルギーの期待値$\langle H\rangle$
3595+
3596+
\item $[$double02$]$
3597+
3598+
{\bf 形式 :} double型
3599+
3600+
{\bf 説明 :} 粒子数の期待値$\langle \hat{n}\rangle$
3601+
3602+
\item $[$double03$]$
3603+
3604+
{\bf 形式 :} double型
3605+
3606+
{\bf 説明 :} スピンのz成分の期待値$\langle S_z\rangle$
3607+
3608+
\item $[$double04$]$
3609+
3610+
{\bf 形式 :} double型
3611+
3612+
{\bf 説明 :} スピンの2乗の期待値$\langle {\bm S}^2\rangle$
3613+
3614+
\item $[$double05$]$
3615+
3616+
{\bf 形式 :} double型
3617+
3618+
{\bf 説明 :} ダブロン
3619+
$\frac{1}{N_s} \sum_{i}\langle n_{i\uparrow}n_{i\downarrow}\rangle$ (ただし$N_s$はサイト数)。
3620+
3621+
3622+
\end{itemize}
3623+
3624+
3625+
\newpage
3626+
\subsection{ham.dat}
3627+
\label{Subsec:ham}
3628+
(FullDiagでのみ出力) \verb$CalcMod$ファイルで\verb$OutputHam=1$の場合に、HΦ内部で計算されたハミルトニアンをMatrixMarket形式で出力します。\verb$CalcMod$ファイルで\verb$InputHam=1$とすると、定義ファイル一式と本ファイルを読み込み、再計算することができます。以下にファイル例を記載します。
35373629

35383630
\begin{minipage}{12.5cm}
35393631
\begin{screen}
35403632
\begin{verbatim}
3541-
0 0 0 0 0.4452776740 0.0000000000
3542-
0 1 0 1 0.4452776740 0.0000000000
3543-
1 0 1 0 0.5000000000 0.0000000000
3544-
1 1 1 1 0.5000000000 0.0000000000
3545-
2 0 2 0 0.4452776740 0.0000000000
3546-
2 1 2 1 0.4452776740 0.0000000000
3547-
3 0 3 0 0.5000000000 0.0000000000
3548-
3 1 3 1 0.5000000000 0.0000000000
3633+
%%%%MatrixMarket matrix coordinate complex hermitian
3634+
28 28 56
3635+
1 1 1.000000 0.000000
3636+
2 1 0.500000 0.000000
3637+
3 2 0.500000 0.000000
3638+
4 3 0.500000 0.000000
3639+
5 4 0.500000 0.000000
3640+
6 5 0.500000 0.000000
3641+
7 6 0.500000 0.000000
3642+
7 7 1.000000 0.000000
35493643
35503644
\end{verbatim}
35513645
\end{screen}
35523646
\end{minipage}
35533647

35543648
\subsubsection{ファイル名}
35553649
\begin{itemize}
3556-
\item{Lanczos法:} \#\#\_cisajs.dat
3557-
\item{TPQ法:} \#\#\_cisajs\_set??step\%\%.dat
3558-
\item{全対角化法、LOBCG法:} \#\#\_cisajs\_eigen{\&\&}.dat
3559-
\end{itemize}
3560-
\#\#はModParaファイル内の[string02]で指定されるヘッダ、??はTPQ法計算時のrunの番号、\%\%はTPQ法でのステップ数、\&\&は固有値の番号を表します。
3650+
\item \#\#\_ham.dat
3651+
\end{itemize}
3652+
\#\#はModParaファイル内の[string02]で指定されるヘッダを表します。
35613653

35623654

35633655
\subsubsection{ファイル形式}
35643656
\begin{itemize}
3565-
\item $[$int01$]$~~$[$int02$]$~~$[$int03$]$~~$[$int04$]$~~$[$double01$]$~~$[$double02$]$
3657+
\item 1行:ヘッダ
3658+
\item 2行:$[$int01$]$~~$[$int02$]$~~$[$int03$]$
3659+
\item 3行-:$[$int04$]$~~$[$int05$]$~~$[$double01$]$~~$[$double02$]$
35663660
\end{itemize}
35673661
\subsubsection{パラメータ}
35683662
\begin{itemize}
35693663

3570-
\item $[$int01$]$, $[$int03$]$
3664+
\item $[$int01$]$
35713665

35723666
{\bf 形式 :} int型
35733667

3574-
{\bf 説明 :} サイト番号を指定する整数。$[$int01$]$$i$サイト、$[$int03$]$$j$サイトを表します
3668+
{\bf 説明 :} Hamiltonianの行数
35753669

3576-
\item $[$int02$]$, $[$int04$]$
3670+
\item $[$int02$]$
35773671

35783672
{\bf 形式 :} int型
35793673

3580-
{\bf 説明 :} スピンを指定する整数。$[$int02$]$$\sigma_1$$[$int03$]$$\sigma_2$に対応します。\\
3581-
0: アップスピン\\
3582-
1: ダウンスピン\\
3583-
を表します。
3674+
{\bf 説明 :} Hamiltonianの列数。
3675+
3676+
\item $[$int03$]$
3677+
3678+
{\bf 形式 :} int型
3679+
3680+
{\bf 説明 :} Hamiltonianの非零の要素数。
35843681

35853682
\item $[$double01$]$, $[$double02$]$
35863683

35873684
{\bf 形式 :} double型
35883685

3589-
{\bf 説明 :} $\langle c_{i\sigma_1}^{\dagger}c_{j\sigma_2}\rangle$の値を表します。\\
3590-
$[$double01$]$が実部、$[$double02$]$が虚部を表します。\\
3686+
{\bf 説明 :} Hamiltonianの値を表します。\\
3687+
$[$double01$]$が実部、$[$double02$]$が虚部を表します。
3688+
35913689
\end{itemize}
35923690

35933691
\newpage

doc/jp/chap06_jp.tex

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@ \chapter{謝辞}
99
インタフェースに関するコードの一部分はmVMCのものを使用しています。
1010
この場を借りて、お二人に感謝します。
1111

12-
$\HPhi$ ver.0.1 - ver.2.0 は、
12+
$\HPhi$ ver.0.1 - ver. \hspace{-0.2cm}\input{../../src/include/version_major.h}
13+
\hspace{-0.2cm}.\input{../../src/include/version_miner.h}
14+
\hspace{-0.2cm}.\input{../../src/include/version_patch.h}は、
1315
東京大学物性研究所 ソフトウェア高度化プロジェクト(2015年度, 2016年度)
1416
の支援を受け開発されました。この場を借りて感謝します。
1517

src/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ add_definitions(-D_HPhi)
1111
add_definitions(-DDSFMT_MEXP=19937)
1212
add_definitions(-D_HPhi)
1313

14-
set(SOURCES PowerLanczos.c CG_EigenVector.c CalcByFullDiag.c CalcByLOBPCG.c CalcByLanczos.c CalcByTPQ.c FileIO.c FirstMultiply.c HPhiMain.c HPhiTrans.c Lanczos_EigenValue.c Lanczos_EigenVector.c CalcSpectrum.c CalcSpectrumByBiCG.c CalcSpectrumByLanczos.c CalcSpectrumByTPQ.c CalcSpectrumByFullDiag.c SingleEx.c SingleExHubbard.c PairEx.c PairExHubbard.c PairExSpin.c Multiply.c bisec.c bitcalc.c check.c CheckMPI.c dSFMT.c diagonalcalc.c expec_cisajs.c expec_cisajscktaltdc.c expec_totalspin.c global.c lapack_diag.c log.c makeHam.c matrixlapack.c mltply.c mltplySpin.c mltplyHubbard.c mltplyMPIHubbard.c mltplyMPISpin.c output.c output_list.c phys.c readdef.c sz.c vec12.c xsetmem.c ErrorMessage.c LogMessage.c ProgressMessage.c wrapperMPI.c mltplyMPIBoost.c splash.c expec_energy_flct.c time.c mltplyHubbardCore.c mltplySpinCore.c mltplyMPIHubbardCore.c mltplyMPISpinCore.c )
14+
set(SOURCES PowerLanczos.c CG_EigenVector.c CalcByFullDiag.c CalcByLOBPCG.c CalcByLanczos.c CalcByTPQ.c FileIO.c FirstMultiply.c HPhiMain.c HPhiTrans.c Lanczos_EigenValue.c Lanczos_EigenVector.c CalcSpectrum.c CalcSpectrumByBiCG.c CalcSpectrumByLanczos.c CalcSpectrumByTPQ.c CalcSpectrumByFullDiag.c SingleEx.c SingleExHubbard.c PairEx.c PairExHubbard.c PairExSpin.c Multiply.c bisec.c bitcalc.c check.c CheckMPI.c dSFMT.c diagonalcalc.c expec_cisajs.c expec_cisajscktaltdc.c expec_totalspin.c global.c lapack_diag.c log.c makeHam.c matrixlapack.c mltply.c mltplySpin.c mltplyHubbard.c mltplyMPIHubbard.c mltplyMPISpin.c input.c output.c output_list.c phys.c readdef.c sz.c vec12.c xsetmem.c ErrorMessage.c LogMessage.c ProgressMessage.c wrapperMPI.c mltplyMPIBoost.c splash.c expec_energy_flct.c time.c mltplyHubbardCore.c mltplySpinCore.c mltplyMPIHubbardCore.c mltplyMPISpinCore.c )
1515

1616
set(SOURCES_STDFACE StdFace/ChainLattice.c StdFace/FCOrtho.c StdFace/HoneycombLattice.c StdFace/Kagome.c StdFace/Ladder.c StdFace/Orthorhombic.c StdFace/Pyrochlore.c StdFace/SquareLattice.c StdFace/StdFace_main.c StdFace/StdFace_ModelUtil.c StdFace/TriangularLattice.c StdFace/Wannier90.c)
1717

src/CalcByFullDiag.c

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
/* You should have received a copy of the GNU General Public License */
1515
/* along with this program. If not, see <http://www.gnu.org/licenses/>. */
1616
#include "CalcByFullDiag.h"
17+
#include "input.h"
1718
#include "wrapperMPI.h"
1819
#include "CalcTime.h"
1920
/**
@@ -31,7 +32,14 @@ int CalcByFullDiag(
3132
{
3233
fprintf(stdoutMPI, "%s", cLogFullDiag_SetHam_Start);
3334
StartTimer(5100);
34-
makeHam(&(X->Bind));
35+
if(X->Bind.Def.iInputHam==FALSE){
36+
makeHam(&(X->Bind));
37+
}
38+
else if(X->Bind.Def.iInputHam==TRUE){
39+
fprintf(stdoutMPI, "%s", cLogFullDiag_InputHam_Start);
40+
inputHam(&(X->Bind));
41+
fprintf(stdoutMPI, "%s", cLogFullDiag_InputHam_End);
42+
}
3543
StopTimer(5100);
3644
fprintf(stdoutMPI, "%s", cLogFullDiag_SetHam_End);
3745

src/ErrorMessage.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ char *cErrOutputMode="Error in %s\n OutputMode: \n 0: calc one body green functi
4545
char *cErrCalcEigenVec="Error in %s\n CalcEigenVec: \n 0: Lanczos+CG method,\n 1: Lanczos method.\n";
4646
char *cErrOutputHam="Error in %s\n OutputHam: \n 0: not output Hamiltonian,\n 1: output Hamiltonian.\n";
4747
char *cErrOutputHamForFullDiag="Error in %s\n OutputHam is only defined for FullDiag mode, CalcType=2.\n";
48+
char *cErrInputHam="Error in %s\n InputHam: \n 0: not input Hamiltonian,\n 1: input Hamiltonian.\n";
49+
char *cErrInputOutputHam="Error in %s\n OutputHam=1 and InputHam=1.\n";
4850
char *cErrCalcModel="Error in %s\n CalcModel: \n 0: Hubbard, 1: Spin, 2: Kondo, 3: HubbardGC, 4: SpinGC, 5:KondoGC.\n";
4951
char *cErrFiniteTemp="Error in %s\n FlgFiniteTemperature: Finite Temperature, 1: Zero Temperature.\n";
5052
char *cErrSetIniVec="Error in %s\n InitialVecType: \n 0: complex type,\n 1: real type.\n";

0 commit comments

Comments
 (0)