Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Difference between Trans and PairExcitation file #146

Open
SuHang980715 opened this issue May 3, 2023 · 11 comments
Open

Difference between Trans and PairExcitation file #146

SuHang980715 opened this issue May 3, 2023 · 11 comments

Comments

@SuHang980715
Copy link

Hi, when I read the guide file of HPhi, I found that there were two files Trans (sec. 4.5) and Pair Excitation (sec. 4.17). But both of them included the terms c_{i, \sigma_1} c_{j, \sigma_2}^{\dagger} or its Hermition conjugate terms. So could I ask about the difference between them? Thanks!

@tmisawa
Copy link
Contributor

tmisawa commented May 8, 2023

Trans is used for specifying the hopping parameters in Hamiltonians.
PairExcitation is used for specifying the pair excitations, i.e., two-body dynamical Green functions.
For details of the pair excitations and the dynamical Green functions, please see sec. 5.4.
The form of the pair excitations is defined in Eq. 5.18.

http://issp-center-dev.github.io/HPhi/manual/master/en/html/algorithm/DynamicalGreen_en.html

@SuHang980715
Copy link
Author

OK thanks. So if I want to calculate dynamical Green functions in expert mode, how should I do?
Now, my "calcmod.def" file is written as:

CalcType 2
CalcModel 4
ReStart 0
CalcSpec 0
CalcEigenVec 0
InitialVecType 0
InputEigenVec 0
OutputEigenVec 1
InputHam 0
OutputHam 0
OutputExVec 1

It seems that I need to change "CalcSpec" to a nonzero integer, however, in the userguide, it told me to "input something", which makes me confused.

Mainly, my aim is to get suspectibility for a spin model, and maybe such a dynamical Green Function could give me some information. But I'm not sure if it is in imaginary-time representation. Could you give some suggestions about this by using HPhi?

@k-yoshimi
Copy link
Contributor

In the expert mode, the spectrum function can be calculated by following steps.

  1. Calculate the ground (target) state by running HPhi (Please set OutputEigenVec 1 in namelist.def ).
  2. Define excitation operators in PairExcitation/SingleExcitation files.
  3. Add input file name of PairExcitation/SingleExcitation and SpectrumVec in namelist.def.
    Here, the file name specified by SpectrumVec is the output file of the target eigen state obtained by step 1 which corresponds to $\Phi_0$ in http://issp-center-dev.github.io/HPhi/manual/master/en/html/algorithm/DynamicalGreen_en.html.
  4. Set CalcSpec 1 in "calcmod.def".
  5. Define frequencies (corresponding to z in eq.5.16 in http://issp-center-dev.github.io/HPhi/manual/master/en/html/algorithm/DynamicalGreen_en.html) by setting OmegaMin , OmegaMax, NOmega, OmegaIm in "modpara.def".
  6. Calculate spectrum function by running HPhi.
Memo: List of Related files
- namelist.def
   - PairExcitation, SingleExcitation, SpectrumVec 
- Input file specified by CalcMod in namelist.def (ex. calcmod.def)
  - OutputEigenVec, CalcSpec
- Input file specified by ModPara in namelist.def (ex. modpara.def)
  - OmegaMin, OmegaMax, NOmega, OmegaIm

Mainly, my aim is to get suspectibility for a spin model, and maybe such a dynamical Green Function could give me some information. But I'm not sure if it is in imaginary-time representation. Could you give some suggestions about this by using HPhi?

In HPhi, both real and Matsubara frequency representation can be treated by setting `OmegaMin,OmegaMax``, ``NOmega``, ``OmegaIm`` in "modpara.def". Please see the manual (here).

I think that checking input files for expert mode and output files by using standard mode is helpful.
The tutorial using standard mode is written here.

@SuHang980715
Copy link
Author

Thanks for your response, which is very helpful for me. And for pairexcitation part, I have a naive question about that: should I add some coefficients when defining it? I mean, could I only define the coefficient as 1 for all terms? Thanks for your nice again.

@k-yoshimi
Copy link
Contributor

As described here, you can set coefficients as you do. In this example, for simplicity, 1 is set to all excitation operators.

@SuHang980715
Copy link
Author

Thanks for your nice suggestions. I found that I need to input a |Φ0> here (http://issp-center-dev.github.io/HPhi/manual/master/en/html/algorithm/DynamicalGreen_en.html). Does this mean that I could only calculate the dynamical Green Function at zero temperature? Because for finite-T case, I think I need to input all of target vector to get the results.

@k-yoshimi
Copy link
Contributor

Yes, the example is the case for T=0. If you want to calculate dynamical Green functions at finite temperature exactly, all eigen vectors and values are needed. However, as an approximation, with increasing the number of eigenstates, the dynamic Green's functions approach to exact ones. If $\beta(\epsilon_n -\mu)$ is sufficiently larger than 1, the Boltzmann factor becomes almost 0. Then, you can obtain almost exact dynamical Green functions.

@SuHang980715
Copy link
Author

Thank for your nice help. And for static susceptibility, is this possible to be calculated by HPhi? (at finite temperature), because I'm not sure about this.

@SuHang980715
Copy link
Author

And could I ask about that: are there any ways to get all of eigenvectors in expert mode? Because I think it is enough to me, to some extent.

@tmisawa
Copy link
Contributor

tmisawa commented May 11, 2023

By specifying CalcType=2 and OutputEigenVec=1 in calcmod.def,
you can do full diagonalization and obtain all eigenvectors.

http://issp-center-dev.github.io/HPhi/manual/master/en/html/filespecification/expertmode_en/CalcMod_file_en.html

@SuHang980715
Copy link
Author

SuHang980715 commented May 19, 2023

Sorry for late reply, I have set them, however, I still did not obtain all eigenvectors.
This is my calcmod.def file:

CalcType 2
CalcModel 4
ReStart 0
CalcSpec 0
CalcEigenVec 0
InitialVecType 0
InputEigenVec 0
OutputEigenVec 1
InputHam 0
OutputHam 0
OutputExVec 0

And, this is my namelist.def file

     ModPara  modpara.def
     LocSpin  locspn.def
       Ising  ising.def
       Trans  trans.def
    OneBodyG  greenone.def
    TwoBodyG  greentwo.def
     CalcMod  calcmod.def
   PairExcitation  pair.def
 SpectrumVec  zvo_eigenvec_0

I use this command to run HPhi:

HPhi -e namelist.def

How should I do to obtain all eigenvectors? Could you give more suggestions about this? Thanks very much~~

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants