common.title

Overview
Service overview
Terms of service

Privacy policy

Contact

Sign in
Sign up
common.title

The Truncation procedure of DMRG

Gaurav Singh

2021/12/03 13:57

#Tensor Networks #DMRG #SVD #Quantum Many Body Systems

In the last article on DMRG we gave an introduction to quantum many body systems and how we try to work on low energy physics using some intuitive algorithms like NRG (Numerical Renormalization Group) and it's powerful modification the DMRG algorithm (Density Matrix Renormalization Group).

\newcommand{\ket}[1]{\left|{#1}\right\rangle} \newcommand{\bra}[1]{\left\langle{#1}\right|}

The DMRG uses the idea of truncating the large system into basis states rather than energies or eigenstates. We start with two blocks having D basis sets and try to add one site to each block which has d dimensional basis. The resultant new blocks being in states iA \ket{i}_A and iB\ket {i}_B both being Dd dimensional. The idea is to truncate the new blocks into one with smaller basis set so as to slow down the exponential growth of the algorithm. Let's recap how we tried to create the blocks for the DMRG procedure.

We started with two blocks A and B with basis dimension D(considering these are large blocks). Now we add two sites, one to the block A and another to block B with a basis dimension d and try to make a superblock out of it A..B. This block has a dimension Dd. The state for the super block being:

ψ=aAσAσBaBψaAσAσBaB \ket{\psi} = \sum_{a_A {\sigma}_A {\sigma}_B a_B} {\psi} \ket{a}_A \ket{\sigma}_A \ket{\sigma}_B \ket{a}_B

The above equation can be rewritten in combined basis format as : ψ=iA,jBψiAjBiAjB \ket{\psi} = \sum_{i_A,j_B} {\psi}_{i_A j_B} \ket{i}_A \ket{j}_B

Now the deal is, if we try to trace out the A part or the B part of the bipartite system and continue the procedure, we get an exponential growth in the number of basis dimensions which is not at all feasible. So in order to tackle this issue we try to truncate out the new blocks and create a reduced Hilbert Space of D dimension. Thus having a state having least deviation from the real ground state. In this way after partial trace of the superblock we are always left with a Dd dimension sub system on each stage and we are able to reduce the exponential explosion of the dimensions.

Now the question is how do we truncate the subsystem so as to get an approximately close state. You must be aware of the famous SVD (Singular Value Decomposition) where we represent a given matrix in the form: A=UDV A = UDV^{\dagger}

where U and V are orthogonal matrices and D being a diagonal matrix with r singular values which represent the rank of the given matrix. In the approximation algorithm of the SVD we try to create a matrix MM' which is approximately close to matrix MM where the Frobenius distance between the matrices is pretty low. FA,B=trace(AB)(AB)F_{A,B} = \sqrt{trace(A-B)*(A-B)'}

What we are trying to achieve is to minimize the distance between the state ψ\psi which is the state of the new block A and the approximate state ψ\psi' over the state space of the superblock by achieving one with dimension D. The new state being: ψ=iA,jBψiAjBiAjB \ket{\psi}' = \sum_{i_A,j_B} {\psi}_{i_A j_B}' \ket{i}_A \ket{j}_B

ψψ2=ijψij2|| \ket{\psi} - \ket{\psi'}||^2 = \sum_{ij} |{\psi}_{ij}'|^2

Here the 2-norm distance between the two states is equivalent to Frobenius norm of the matrix ψij{\psi}_{ij} due to the orthonormal nature of the iandj\ket{i} and \ket{j}.

The reduction of the dimension bases Dd to D will be performed by the minimization of the Frobenious norm of the above given matrix using SVD and Schmidt decomposition. The combined state being: ψ=i,jψijiAjB \ket{\psi} = \sum_{i,j} {\psi}_{i j} \ket{i}_A \ket{j}_B

iA{\ket{i}_A} and jB{\ket{j}_B} are orthonormal basis sets of the blocks A and B with dimensions m and n respectively. We can recreate the above equation using SVD which comes out to be :

ψ=i,jx=1min(m,n)UiaSaaVjaiAjB \ket{\psi} = \sum_{i,j} \sum_{x=1}^{min(m,n)} U_{ia}S_{aa}V^{\dagger}_{ja} \ket{i}_A \ket{j}_B

Combining the orthonormnal matrix UU and the orthogonal vector set i\ket{i} and the matrix VV^{\dagger} and the orthogonal vector set j\ket{j} we get the final equation as: ψ=x=1min(m,n)SaaAaB \ket{\psi} = \sum_{x=1}^{min(m,n)} S_{a} \ket{a}_A \ket{a}_B

Here the sets aA{\ket{a}_A} and aB{\ket{a}_B} acting as bases of block A and B are orthonormal due to the orthonormal properties of the UU and VV matrices.

Now we make the use of the Schmidt decomposition to create a new basis set: ψ=x=1n(Xi)uiAviB \ket{\psi} = \sum_{x=1}^{n} \sqrt(X_i) \ket{u_i}_A \ket{v_i}_B where X_i are eigenvalues of the subsystems A and B (Partial traces).

For us to get the sub system of the block A we do a partial trace over the density matrix of the above state which comes out to be: ρA=x=1nXiuiAuiA \rho_A = \sum_{x=1}^{n} X_i \ket{u_i}_A \bra{u_i}_A

Now we take the rr' eigenvalues with maximum eigenvalues where rr' will be equivalent to D and try to create the basis for the reduced Hilbert Space and thus try to reduce the basis dimension from Dd to D. This helps in resolving the issue of exponential growth of the states. Thus using the approximation method of SVD and Schmidt decomposition we are able to come to a state which is very close to the real ground state.

In the next article we will be looking into how this DMRG links to the Tensor Networks.

© 2024, blueqat Inc. All rights reserved