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

Hello, I have a question about the number of iterations for precision. #180

Open
shuailiu199966 opened this issue Aug 22, 2024 · 3 comments

Comments

@shuailiu199966
Copy link

In the model below, I set Lanczos_max to 8000, but it still doesn't converge. What could be the reason for this? How should I resolve this issue? In regular training, is it better to have a larger Lanczos_max? Does it affect the runtime?
calcmod.txt
greenone.txt
greentwo.txt
interAll.txt
kitaev-heisenberg_137513.txt
locspn.txt
modpara.txt
namelist.txt
Ztrans.txt

@ultimatile
Copy link
Contributor

Please try to remove the line PreCG in the modpara file or try CalcType 0 (using the Lanczos method) in the calcmod file. In my trials, 309 steps were required to finish with the CG method without PreCG 1, while 308 steps were needed with the Lanczos method. I've also changed to exct 2 for the CG case, so the result may change when exct is 1.
The final ground state energy is -52.6784168749754542 for both methods.

@shuailiu199966
Copy link
Author

What is the purpose of the PreCG parameter, and why does it have such a big impact?

@tmisawa
Copy link
Contributor

tmisawa commented Aug 22, 2024

PreCG is a parameter for switching on the preconditioning of the CG method.
For details of the preconditioning, please take a look at the sec. 3.3 in the HPhi paper.

https://www.sciencedirect.com/science/article/pii/S001046552400016X?via%3Dihub

In general, preconditioning is effective when the diagonal term of Hamiltonian is large (see Fig. 5),
as when Ising interactions (S_iz*S_jz) are large.
However, in other cases, the preconditioning may delay convergence,
so it is usually safe to turn preconditioning off.

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