Compiling and running
After downloading you can compile DMRG++ code with:
$ cd dmrgpp/src $ perl configure.pl < ../TestSuite/inputs/model2.spec $ make
and run it with
$ cp ../TestSuite/inputs/input2.inp . $ ./dmrg -f ../TestSuite/inputs/input2.inp
After it finishes, data will be saved in data2.txt. You can run
grep Energy data2.txt
to obtain the energies for all steps of the algorithm.
Obtaining Static Observables
Observables can be obtained post-processing by compiling and running the observer code:
$ make observe $ ./observe -f input2.inp -o cc
The output will be a n times n/2 matrix for <c+i cj> in i, and j. Other possibilities include nn for <ni nj> correlations, and szsz for spin-z correlations.
Where to find more documentation
There's plenty of documentation for DMRG++.
- The introducing paper arXiv:0902.3185 published in Computer Physics Communications 180 (2009) 1572-1578. Some things are out-of-date but the overall structure and philosophy of the code is the same.
- The DMRG++ manual. This is incomplete but it will be updated as there's interest.
The best way to obtain it is to
$ cd dmrgpp/doc $ pdflatex manual.tex
to obtain manual.pdf. As an alternative, there is an online copy also. - The implmentation of the SU(2) symmetry in DMRG++ is described in arXiv:1003.1919
- This March Meeting 2010 talk has a focus on SU(2) symmetries but describes other parts of the implementation as well.
- Further info is given on parts of this talk I gave at Sandia National Laboratories on Oct. 2010.
- Files that have literate programming generated documentation are here.
- There is also this paper on time evolution using DMRG++.
Website News
18 Wednesday, May 18, 2001 Open positions available7 Thursday, April 7, 2011 Website for DMRG++ has been redone using CSS.