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

How shall we deal with metallic system of which HOMO-LUMO gap == 0? #18

Open
changsuc opened this issue Nov 10, 2022 · 3 comments
Open

Comments

@changsuc
Copy link

Hi Zhi-Hao,
Thank you for your powerful package. Recently, I performed some tests on metallic systems using libdmet. The log file warns that "WARNING degenerate HOMO-LUMO, assign fractional occupation, xx electrons assigned to xx orbitals". I have some questions here:

  1. How to deal with the gapless system? By setting a finite beta parameter?
  2. What is the proper range of beta, for example, 1000?
  3. I wonder the role of beta. Does beta only allows fractional occupation and help the convergence of HF, or it turn on the finite temperature DMET where nbath will be larger than nimp?
@zhcui
Copy link
Member

zhcui commented Nov 10, 2022

Thanks for considering the package.

Regarding your questions:

  1. In general, the functions for metallic systems are in the experimental stage, be careful about the results. I would like to use smearing (i.e., beta) for the mean-field.
  2. Depending on the gap of the system, 1/beta should be comparible to the gap (if your system is close to a metal). 1000 is a reasonable choice.
  3. beta is only for mean-field. The nbath is still fixed as nimp since we use SVD to get bath orbitals.

@changsuc
Copy link
Author

Zhi-Hao, thank you a lot for your quick response. I checked my calculation carefully that the results of scf calculation in PySCF step still has a gap. Somehow in DMET calculation rho, Mu, res = dmet.HartreeFock(Lat, vcor, Filling, Mu, beta=beta, ires=True, symm=True) (where vcor is still zeros in the first cycle) the system becomes gapless after transferring from AO to LO.
I think I had made something wrong while I had not figured it out yet.

@changsuc
Copy link
Author

I will keep you updated if I found what happened.

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

2 participants