-
Notifications
You must be signed in to change notification settings - Fork 28
Description
First, in the script provided by HPhi (samples/tutorial_4.3/spinchain_example.py), the dynamic spin structure factor of the Heisenberg model is calculated. In lines 78 and 79 of this script, the data is passed to the pair.def file as follows:
f.write('%i 0 %i 0 0 %f %f\n' % (j, j, wr, wi))
f.write('%i 1 %i 1 0 %f %f\n' % (j, j, -wr, -wi))
However, why is it written this way instead of:
f.write('%i 0 %i 0 1 %f %f\n' % (j, j, wr, wi))
f.write('%i 1 %i 1 1 %f %f\n' % (j, j, -wr, -wi))
After all, 0: C_{i sigma1} C_{j sigma2}^\dagger and 1: C_{i sigma1}^\dagger C_{j sigma2}.
Second, when calculating the DSSF, what is the difference between the Lanczos method and the CG method? Also, how does the role of Lanczos_max differ between these two methods?
I noticed that when I set Lanczos_max = 5000, the Lanczos method performs exactly 5000 iterations, whereas the CG method does not—it seems to check for convergence and terminate early if satisfied.