Dear Mr. Troyer,
I want to estimate how much memory and CPU time the program need to run fulldiag and sparcediag.
1) As I understood, in fulldiag, the main limitation is memory, which have to store the matrix, which is diagonalized. Am I right?
2) What about sparcediag? Does the program also store the matrix, or just generate its elements? Do you think it is possible to find few lowest eigenvalues for the Hubbard model on the 18 sites, with 9 particles (say 4 spins up and 5 down)?
3) Is it possible to have a degeneracy of eigenvalue in sparcediag?
4) How to extract column of eigenvalues from h5-file after running fulldiag?
Thank you in advance, Volodymyr Derzhko
On Dec 12, 2011, at 8:53 PM, Volodymyr Derzhko wrote:
Dear Mr. Troyer,
I want to estimate how much memory and CPU time the program need to run fulldiag and sparcediag.
- As I understood, in fulldiag, the main limitation is memory, which have to store the matrix, which is diagonalized. Am I right?
No, the memory to store the dense matrix of all eigenvectors.
- What about sparcediag? Does the program also store the matrix, or just generate its elements? Do you think it is possible to find few lowest eigenvalues for the Hubbard model on the 18 sites, with 9 particles (say 4 spins up and 5 down)?
It needs memory for the sparse Hamiltonian matrix and a few vectors. In your specific example the Hilbert space size is 25 million elements. WHat is your model? a chain? or another lattice?
This size is easily possible writing a dedicated code that calculates the matrix on the fly but is pushing the limits of workstations if you store the full matrix. You will need to try
- Is it possible to have a degeneracy of eigenvalue in sparcediag?
No, not at the moment.
- How to extract column of eigenvalues from h5-file after running fulldiag?
Look at the tutorials, they show a few examples that plot the spectra and need the eigenvalues for that
Matthias
Dear Mr Troyer,
Thank you for your answer.
It needs memory for the sparse Hamiltonian matrix and a few vectors. In your specific example the Hilbert space size is 25 million elements. WHat is your model? a chain? or another lattice?
I know how to write it in the term of graph, i.e. without any translation symmetries. The elementary cell consists of two sites, but there are hopping elements to first-, second- and third-nearest neighbours. Moreover, in order to calculate thermodynamical quantities, I need to have degeneracy of energy level as well as its value, which is impossible in sparcediag.
Thank you for help!
Sincerely yours, Volodymyr Derzhko
On Dec 13, 2011, at 8:39 PM, Volodymyr Derzhko wrote:
Dear Mr Troyer,
Thank you for your answer.
It needs memory for the sparse Hamiltonian matrix and a few vectors. In your specific example the Hilbert space size is 25 million elements. WHat is your model? a chain? or another lattice?
I know how to write it in the term of graph, i.e. without any translation symmetries. The elementary cell consists of two sites, but there are hopping elements to first-, second- and third-nearest neighbours. Moreover, in order to calculate thermodynamical quantities, I need to have degeneracy of energy level as well as its value, which is impossible in sparcediag.
If it has such long range hopping and no translational symmetry then this is too big for either of the codes and you need to write a program just for this model.
Matthias Troyer
comp-phys-alps-users@lists.phys.ethz.ch