-
Python and Julia codes of exact diagonalization
-
Use sparse matrices
-
Sz conserved / Sz nonconserved
-
Sz conserved case: algorithm based on titpack2 and HPhi
-
Use the snoob function for finding the next higher number after a given number that has the same number of 1-bits (down spins)
-
See also HPhi tips HPhi tips (mirror)
-
For related bitwise operations, see Count bits Anothr count bits
-
Use two-dimensional search
-
Without generating matrix elements to save memory (test version, not so efficient...)
-
Use scipy.sparse.linalg.LinearOperator for Python
-
Use LinearMap for Julia
-
-
-
1D J1-J2 Heisenberg model
-
See, for example, numerical results in DOI:10.1016/0375-9601(92)90823-5 DOI:10.1103/PhysRevB.54.R9612
-
See also analytical results in DOI:10.1063/1.1664978 DOI:10.1063/1.1664979 DOI:10.1103/PhysRevB.25.4925
-
-
2D J1-J2 Heisenberg model on a square lattice
-
See, for example, numerical results in DOI:10.1103/PhysRevLett.63.2148 DOI:10.1051/jp1:1996236
-
See also DOI:10.1016/j.cpc.2018.08.014 (spin correlations at J2=0)
-
-
Papers
-
Codes / Lecture notes
-
Anders W. Sandvik http://physics.bu.edu/~sandvik/vietri/index.html http://physics.bu.edu/~sandvik/vietri/vietri.pdf http://physics.bu.edu/~sandvik/vietri/dia.pdf
- Use a bisectional search instead of making a 2D search list
- Implementation may be easier with momentum conservation
-
Frank Pollmann http://tccm.pks.mpg.de/?page_id=871 https://www.pks.mpg.de/~frankp/comp-phys/ https://www.pks.mpg.de/~frankp/comp-phys/exact_diagonalization_conserve.py
-
Guillaume Roux http://lptms.u-psud.fr/wiki-cours/index.php/Lectures_on_Exact_Diagonalization http://lptms.u-psud.fr/membres/groux/Test/ED/ED_Lecture1.html http://lptms.u-psud.fr/membres/groux/Test/ED/ED_Lecture2.html
-
Alexander Wietek https://github.com/alexwie/ed_basics
- State search by a python built-in function index() for list (np.where for numpy array)
-
Glen Evenbly https://www.tensors.net/exact-diagonalization
-
Ryan Levy https://ryanlevy.github.io/physics/Heisenberg1D-ED/
-
Junya Otsuki (in Japanese) http://www.physics.okayama-u.ac.jp/~otsuki/lecture/CompPhys2/eigen/spin.html
-