Skip to content

exact diagonalization routines for the 1-d Ising model (and other Hamiltonians)

Notifications You must be signed in to change notification settings

semodi/ed_ising

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ed_ising

Exact diagonalization procedures for the Ising model (can be easily extended to other 1d - Hamiltonians).

Sebastian Dick; Dec 2016

How-to

  • add desired hamiltonian terms to ed_hamiltonian.cpp and adjust the global variables accordingly
  • adjust the input file ed_config_readable.dat to include your desired parameters and symmetries (so far only non-negative integers possible)
  • switch to /Source and run make, make build_dict and make ed_update, this will create the required executables
  • the loop in the script run.sh controls the number of computed momenta. If there is no translational symmetry, make sure to set the upper limit to 1
  • execute run.sh
  • eigenvalues are stored in out.dat

Dependencies

This program uses the linear algebra package Armadillo, which is available as open source, using the Mozilla Public License (MPL) 2.0. and can be downloaded at http://arma.sourceforge.net. For more information please see:

Conrad Sanderson and Ryan Curtin. Armadillo: a template-based C++ library for linear algebra. Journal of Open Source Software, Vol. 1, pp. 26, 2016.

To-do:

  • Combine ising, build_dict and ed_update into one program, and integrate the loop that is now located in run.sh into main().
  • Parallel computation with OpenMP. A first step would be to parallelize the computation for different momentum eigenvalues. Eventually parallel comp. should be possible even if no translational symmetry is present.

About

exact diagonalization routines for the 1-d Ising model (and other Hamiltonians)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages