Skip to content

Latest commit

 

History

History
executable file
·
34 lines (24 loc) · 1.09 KB

File metadata and controls

executable file
·
34 lines (24 loc) · 1.09 KB

exactdiagg

Exact diagonalization to the quantum many-body problem using group theory and the Fock basis. Each Fock state is represented as a bitset. To generate the sparse matrix representation of a quantum operator O, when O is applied to a bitset, the resulting Fock states are indexed in the basis using hash table. The symmetry group G splits the original problem into #G independent and smaller problems. A basis of representants is used for each irrep of G while the larger full Fock basis is never used.

User-friendly Hamiltonian construction as in:

QOperator h;

h.Add(Create(i)*Destroy(i+1),-t);
H.Add(Create(i)*Destroy(i) * Create(i+L)*Destroy(i+L) ,U);

and symmetry group:

auto Gr=Z2_Group<L>( ReflectionOp<L> );
auto Geh=Z2_Group<L> ( ParticleHoleOp<L> );
auto T1=TranslationOp<L>(1);
auto Gt=CyclicGroupPow<L>(T1, L);

auto G=Gr.DirectProd(Geh);

External dependencies

Getting started

This project can be edited and build using the qtcreator IDE.