The density matrix renormalization group (DMRG) is a numerical variational technique devised to obtain the low-energy physics of quantum many-body systems with high accuracy. As a variational method, DMRG is an efficient algorithm that attempts to find the lowest-energy matrix product state wavefunction of a Hamiltonian. It was invented in 1992 by Steven R. White and it is nowadays the most efficient method for 1-dimensional systems.
The first application of the DMRG, by Steven R. White and Reinhard Noack, was a toy model: to find the spectrum of a spin 0 particle in a 1D box. This model had been proposed by Kenneth G. Wilson as a test for any new renormalization group method, because they all happened to fail with this simple problem. The DMRG overcame the problems of previous renormalization group methods by connecting two blocks with the two sites in the middle rather than just adding a single site to a block at each step as well as by using the density matrix to identify the most important states to be kept at the end of each step. After succeeding with the toy model, the DMRG method was tried with success on the quantum Heisenberg model.
The main problem of quantum many-body physics is the fact that the Hilbert space grows exponentially with size. In other words if one considers a lattice, with some Hilbert space of dimension
d
dN
N
After a warmup cycle, the method splits the system into two subsystems, or blocks, which need not have equal sizes, and two sites in between. A set of representative states has been chosen for the block during the warmup. This set of left blocks + two sites + right blocks is known as the superblock. Now a candidate for the ground state of the superblock, which is a reduced version of the full system, may be found. It may have a rather poor accuracy, but the method is iterative and improves with the steps below.
The candidate ground state that has been found is projected into the Hilbert subspace for each block using a density matrix, hence the name. Thus, the relevant states for each block are updated.
Now one of the blocks grows at the expense of the other and the procedure is repeated. When the growing block reaches maximum size, the other starts to grow in its place. Each time we return to the original (equal sizes) situation, we say that a sweep has been completed. Normally, a few sweeps are enough to get a precision of a part in 1010 for a 1D lattice.
A practical implementation of the DMRG algorithm is a lengthy work. A few of the main computational tricks are these:
The DMRG has been successfully applied to get the low energy properties of spin chains: Ising model in a transverse field, Heisenberg model, etc., fermionic systems, such as the Hubbard model, problems with impurities such as the Kondo effect, boson systems, and the physics of quantum dots joined with quantum wires. It has been also extended to work on tree graphs, and has found applications in the study of dendrimers. For 2D systems with one of the dimensions much larger than the other DMRG is also accurate, and has proved useful in the study of ladders.
The method has been extended to study equilibrium statistical physics in 2D, and to analyze non-equilibrium phenomena in 1D.
The DMRG has also been applied to the field of quantum chemistry to study strongly correlated systems.
Let us consider an "infinite" DMRG algorithm for the
S=1
DMRG is a renormalization-group technique because it offers an efficient truncation of the Hilbert space of one-dimensional quantum systems.
To simulate an infinite chain, starting with four sites. The first is the block site, the last the universe-block site and the remaining are the added sites, the right one is added to the universe-block site and the other to the block site.
The Hilbert space for the single site is
ak{H}
\{|S,Sz\rangle\}\equiv\{|1,1\rangle,|1,0\rangle,|1,-1\rangle\}
Sx
Sy
Sz
ak{H}b
\{|wi\rangle\}
i:1...\dim(ak{H}b)
ak{H}B
\{|ui\rangle\}
HB
S | |
xB |
S | |
yB |
S | |
zB |
ak{H}l
\{|ti\rangle\}
S | |
xl |
S | |
yl |
S | |
zl |
ak{H}r
\{|si\rangle\}
S | |
xr |
S | |
yr |
S | |
zr |
ak{H}U
\{|ri\rangle\}
HU
S | |
xU |
S | |
yU |
S | |
zU |
At the starting point all four Hilbert spaces are equivalent to
ak{H}
Sx
Sy
Sz
HB=HU=0
The ingredients are the four block operators and the four universe-block operators, which at the first iteration are
3 x 3
3 x 3
HSB=-J\sum\langle
S | |
xi |
S | |
xj |
+S | |
yi |
S | |
yj |
+S | |
zi |
S | |
zj |
These operators live in the superblock state space:
ak{H}SB=ak{H}B ⊗ ak{H}l ⊗ ak{H}r ⊗ ak{H}U
\{|f\rangle=|u\rangle ⊗ |t\rangle ⊗ |s\rangle ⊗ |r\rangle\}
|1000...0\rangle\equiv|f1\rangle=|u1,t1,s1,r1\rangle\equiv|100,100,100,100\rangle
|0100...0\rangle\equiv|f2\rangle=|u1,t1,s1,r2\rangle\equiv|100,100,100,010\rangle
The Hamiltonian in the DMRG form is (we set
J=-1
HSB=HB+HU+\sum\langle
S | |
xi |
S | |
xj |
+S | |
yi |
S | |
yj |
+S | |
zi |
S | |
zj |
The operators are
(d*3*3*d) x (d*3*3*d)
d=\dim(ak{H}B)\equiv\dim(ak{H}U)
\langlef|HB|f'\rangle\equiv\langleu,t,s,r|HB ⊗ I ⊗ I ⊗ I|u',t',s',r'\rangle
S | |
xB |
S | |
xl |
=S | |
xB |
I ⊗ IS | |
xl |
⊗ II ⊗ II=S | |
xB |
⊗
S | |
xl |
⊗ I ⊗ I
At this point you must choose the eigenstate of the Hamiltonian for which some observables is calculated, this is the target state . At the beginning you can choose the ground state and use some advanced algorithm to find it, one of these is described in:
This step is the most time-consuming part of the algorithm.
If
|\Psi\rangle=\sum\Psii,j,k,w|ui,tj,sk,rw\rangle
|\Psi\rangle
Form the reduced density matrix
\rho
(d*3) x (d*3)
\rhoi,j;i',j'\equiv\sumk,w\Psii,j,k,w
* | |
\Psi | |
i',j',k,w |
\rho
m x (d*3)
T
m
m
e\alpha
\rho
T
m
Pm\equiv\sum
m | |
\alpha=1 |
e\alpha
1-Pm\cong0
Form the
(d*3) x (d*3)
HB-l=HB ⊗ I+S
xB |
⊗
S | |
xl |
+S | |
yB |
⊗
S | |
yl |
+S | |
zB |
⊗
S | |
zl |
S | |
xB-l |
=I ⊗
S | |
xl |
Hr-U=I ⊗ HU+S
xr |
⊗
S | |
xU |
+S | |
yr |
⊗
S | |
yU |
+S | |
zr |
⊗
S | |
zU |
S | |
xr-U |
=S | |
xr |
⊗ I
Now, form the
m x m
T
The algorithm stops successfully when the observable converges to some value.
The success of the DMRG for 1D systems is related to the fact that it is a variational method within the space of matrix product states (MPS). These are states of the form
|\Psi\rangle=
\sum | |
s1 … sN |
s1 | |
\operatorname{Tr}(A |
…
sN | |
A |
)|s1 … sN\rangle
where
s1 … sN
In quantum chemistry application,
si
si=|00\rangle,|10\rangle,|01\rangle,|11\rangle
s1 | |
A |
si
sN | |
A |
sN
s1 | |
A |
\ldots
sN | |
A |
N
The matrices in the MPS ansatz are not unique, one can, for instance, insert
B-1B
si | |
A |
si+1 | |
A |
si | |
\tilde{A} |
=
si | |
A |
B-1
si+1 | |
\tilde{A} |
=
si+1 | |
BA |
\sum | |
si |
si | |
\left(\tilde{A} |
\right)\dagger
si | |
\tilde{A} |
=I
i
\sum | |
si |
si | |
\tilde{A} |
si | |
\left(\tilde{A} |
\right)\dagger=I
i
N
The goal of the DMRG calculation is then to solve for the elements of each of the
si | |
A |
In 2004 the time-evolving block decimation method was developed to implement real-time evolution of matrix product states. The idea is based on the classical simulation of a quantum computer. Subsequently, a new method was devised to compute real-time evolution within the DMRG formalism - See the paper by A. Feiguin and S.R. White https://arxiv.org/abs/cond-mat/0502475.
In recent years, some proposals to extend the method to 2D and 3D have been put forward, extending the definition of the matrix product states. See this paper by F. Verstraete and I. Cirac, https://arxiv.org/abs/cond-mat/0407066.