VMPS++
Loading...
Searching...
No Matches
Derivation of the CGC related coefficients
CGC for DMRG

CGC for DMRG

MP

1 Definition and notation for CGC

Clebsch-Gordon coefficients describe the coupling of irreps of a group. For SU(2) the irreps are labeled by the spin quantum number j, for U(1) the irreps are labeled by an integer n for the amount of particles for example. The CGC depend on three irreps: the two ordered (first j1 and second j2) irreps to couple and the total irrep j.

Cm1,m2mj1,j2j (1)

For U(1), this simply requires n1+n2=n. Hence the CGc for U(1) are symmetric in n1 and n2 but not for other permutations. For SU(2) the symmetry relations can be found on wikipedia.

2 6j, 9j and recoupling symbols

CGC can be multiplied to give recoupling coefficients which are related to Wigner 3nj-symbols. The 6j-symbol is related to the recoupling of three irreps:

[j1j2j12j3jj23]δjj=mi,mikCm1,m2m12j1,j2j12Cm2,m3m23j2,j3j23Cm1,m23mj1,j23jCm12m3mj12j3j (2)

In the first column the CGC share the first irrep and in the second column they share the second irrep. The second and third irrep from the CGC in the first column and first row build the first irrep from the CGC in the second column. The second and thir irreps from the CGC from the first column and second row build the third irreps of the CGC in the second column. It is worthwhile to have this visual structure to identify if the sum over four CGC forms a recoupling coeff or not. The []-symbol is the recoupling coeff which is related to the 6j-symbol (curly brackets):

{j1j2j12j3jj23}=(-1)j1+j2+j3+j1(2j12+1)(2j23+1)[j1j2j12j3jj23] (3)

The same quantities exist for four irreps. The recoupling coeff is:

[j1j2j12j3j4j34j13j24j]=mi,mikCm1,m2m12j1,j2j12Cm3,m4m34j3,j4j34Cm12,m34mj12,j34jCm1,m3m13j1,j3j13Cm2,m4m24j2,j4j24Cm13,m24mj13,j24j (4)

Notice, that: in the first column the CGC shares the first irrep, in the second column they share the second irrep and in the third column they share the third irrep. Between the first and second column one can draw a cross from j2<-->j2 and j3<-->j3. In the last column the first and second irrep of each CGC comes from the third irrep in the CGC in the same row but from the first or second column respectively. All m are summed beside the last one from the CGC in the third column. It is worthwhile to have this visual structure to identify if the sum over six CGC forms a recoupling coeff or not. The 9j-symbol is defined as:

{j1j2j12j3j4j34j13j24j}=1(2j12+1)(2j34+1)(2j13+1)(2j24+1)[j1j2j12j3j4j34j13j24j] (5)

3 Wigner-Eckart

For a tensor operator Om[k] the following holds:

j1,m1|Om[k]|j2,m2=Cm2mm1j2kj1j1O[k]j2 (6)

This is convention also used by Mc Culloch. The CGC is build so that the first irrep is the ket, the second irrep is the operator irrep and the total irrep is the bra. For U(1) this means ket+op=bra.

For an operator with k=0 (scalar operator), the CGC part is δj2j1δm2m1, so that the reduced matrix elements are the same as the normal matrix elements. If the trace however is calculated from the reduced matrix elements, one needs to take into account that 2j1+1 copies of the reduced matrix elements appear:

trO=j(2j+1)jO[0]j (7)

This coefficients is called coeff_dot in the implementation. It appears at every situation, where one obtains a scalar quantity. E.g. when contracting the left and right environment to obtain an expectation value.

3.1 Product of tensor operators

The product of two operators Om1[k1] and Sm2[k2] gives rise to different irreducible tensor operators by the definition:

[O[k1]×S[k2]]m[k]=m1,m2Cm1m2mk1k2kOm1[k1]Sm2[k2] (8)

One can obtain the reduced matrix elements of the product directly from the reduced matrix elements of the individual operators. To see this, one inserts in Eq. (8) the CGC as defined in the Wigner-Eckart theorem for all operators, namely Om1[k1], Sm2[k2] and [O[k1]×S[k2]]m[k]. Therefore, one sandwiches the equation with j1,mj1||j2mj2 and introduces an identity j3mj3|j3mj3j3mj3| for the operator product on the right side of Eq. (8). For clearness it is worthwile to omit the reduced matrix elements because they factor out. The CGC part reads then:

Cmj2mkmj1j2kj1=mk1,mk2,mj3Cmk1mk2mkk1k2kCmj3mk1mj1j3k1j1Cmj2mk1mj3j2k1j3 (9)

The CGC at the left side can be brought to the right side by multiplying with Cmj2mkmJ1j2kJ1 and summing over mj2 and mk. This gives δj1J1δmj1mJ1 for the left side and for right side:

δj1J1δmj1mJ1=mk1,mk2,mj3,mj2,mkCmj2mk1mj3j2k1j3Cmk1mk2mkk1k2kCmj2mkmj1j2kj1Cmj3mk2mj1j3k2j1 (10)

This equation does not fit the definition of the recouple coeff in Eq. (2). To reach this, one has to interchange k1 and k2 in the CGC Cmk1mk2mkk1k2k. This leads to a an additional phase factor (-1)k1+k2-k. Afterwards, one can perform the sum over the m quantum numbers to obtain a recouple coeff as in Eq. (2).

δj1J1δmj1mJ1=(-1)k1+k2-k[j2k1j3k2j1k]δj1J1δmj1mJ1=(-1)k1+k2-k(-1)j2+k1+k2+j1(2j3+1)(2k+1){j2k1j3k2j1k}δj1J1δmj1mJ1 (11)

For the sign, one finds:

(-1)k1+k2-k-k+k+j2+k1+k2+j1=(-1)2(k1+k2-k)(-1)k+j2+j1=(-1)k+j2+j1, (12)

because k1, k2 and k fulfil the triangle condition. In summary, the coefficient for the product is:

j1[O[k1]×S[k2]]m[k]j2=j3(-1)k+j2+j1(2j3+1)(2k+1){j2k1j3k2j1k}j1O[k1]j3j3S[k2]j2 (13)

The corresponding coefficient is called coeff_prod.

3.2 Adjoint of tensor operators

The adjoint of tensor operators can be defined with respect to the metric defined in Eq. (8) when coupling two operators of rank k to a singlet operator (k=0). The corresponding CGC is Cm1m20kk0=(-1)k-m12k+1δm1,-m2. The adjoint tensor operator is therefore:

Om[k]=(-1)k-m(O-m[k]) (14)

The Wigner Eckart theorem gives:

j1m1|Om[k]|j2m2=Cm2mm1j2kj1j1O[k]j2 (15)

The reduced matrix elements of the adjoint are related to the original one. The factor is obtained when applying the Wigner Eckart theorem for Eq. (14):

Cm2mm1j2kj1=(-1)k-mCm1,-mm2j1kj2 (16)

Interchanging j1 and j2 at the right side leads to the factor 2j2+12j1+1(-1)k-m and to the subtitution m1 to -m1 and m2 to -m2 in the CGC at the right. The sign (-1)k-m cancels and after reverting all signs of the CGC at the right, the two CGC are identical. Reverting all signs give another sign (-1)j1+k-j2 so that the corresponding coeff reads:

j1O[k]j2=(-1)j1+k-j22j2+12j1+1(-1)k-mj2O[k]j1* (17)

The corresponding coefficient is called coeff_adjoint in the implementation. Notice that O[k]=(-1)2kO[k].

3.3 Spin operator

3.4 Fermionic operators

4 Convention for MPS, MPO and environments

For an MPS, we choose the following convention for the CGC:

Aijσ=AijσCmimσmjiσj (18)

This is different from the convention by Mc Culloch. For U(1) it corresponds to i+σ=j. i is the left index from A and j the right index.

For an MPO, we choose the following convention for the CGC:

Wab[k]σ1σ2=Wab[k]σ1σ2Cmσ2mkmσ1σ2kσ1Cmamkmbakb (19)

For U(1) it corresponds to a+b=j and σ2+k=σ1. a is the left index from W and b the right index. σ2 points in the direction of the ket MPS while σ1 into the direction of the bra.

For the left environment we have:

Lija=LijaCmimamjiaj (20)

For U(1) it corresponds to i+a=j. i is pointing to the ket layer, j is pointing to the bra layer.

For the right environment we have:

Rija=RijaCmimamjiaj (21)

For U(1) it corresponds to i+a=j. i is pointing to the ket layer, j is pointing to the bra layer.

5 Algorithms

5.1 Sweep and reshape

] Reshaping is is the combination of two indices into a super index. This is essentially an isometry which maps the basis states from the two indices into one. The reshaping process is not unique and a convention is neccesary. E.g. without any symmetries a isometry Πiσk could be chosen as Πiσk=1 if k=i+dim(i)σ and Πiσk=0 otherwise. For symmetric tensors, the isometry should map on proper irreps of the syymetry. The combination of two irreps into the tensor product is exactly the definition for the CGC, so that the isometry Π needs to be proportional to the CGC.

For a right sweep, we want to left-normalize the A-tensor. Hence the incoming index i get combined with the physical index σ. The symmetry part of isometry Π is chosen as Π=Cmimσmkiσk. We have ΠΠ=1 since:

mimσCmimσmkiσkCmimσmkiσk=1 (22)

is a orthonormality condition for the CGC. Furthermore in the calculation ΠA, the CGC drop out for the same reason. Hence there is no extra factor for a right sweep step (left-normalization step).

Aijσ=A~j(iσ) (23)

There is also no extra factor when checking for the left-nomalize condition.

For a left sweep, we want to right-normalize the A-tensor. Hence the outgoing index j get combined with the physical index σ. The symmetry part of isometry Π is chosen as ΠCmkmσmjkσj. We have ΠΠ1 but:

mjmσCmkmσmjkσjCmkmσmjkσj=2j+12k+1 (24)

This can be seen when changing the indices k and j in both CGC which leads to the factor 2j+12k+1(-1)σ-mσ. The phase factor drops out because it appears twice. The CGC after the interchange multiply to one. A proper normalized Π is in fact an isometry: Π=2k+12j+1Cmkmσmjkσj. When calculating ΠA, one encounters the same equation as above so there is a factor for the left sweep:

Aijσ=2j+12i+1A~i(σj) (25)

This factor is called coeff_leftSweep in the implementation. Notice that for the inverse reshaping process, one needs the inverse of this factor. This factor has no different name but simply coeff_leftSweep is called with reversed quantum numbers. When checking for the right-normalize condition one encounters also Eq. (24). Hence one has to encounter the factor from the CGC when checking the right-normalize condition:

σjAijσAijσ2j+12i+1 (26)

This factor is called coeff_rightOrtho in the implementation.

5.2 Update L

For updating the left environment, we have the following equation:

𝑳bl(l+1)=σl,σl,al𝑩σl(l)𝑳al(l)𝑨σl(l)Walblσlσl(l) (27)

Inserting all the CGC for the tensors, the CGC part of this equation reads:

Cmi,mamjiaj=mσ1,mσ2,mi,ma,mj,mkCmj,mσ1mjj,σ1jCmi,mamjiajCmi,mσ2mii,σ2iCmσ2,mkmσ1σ2,kσ1Cma,mkmaa,ka (28)

We can multiply this equation with Cmi,mamJiaJ and sum over mi and ma. The left hand side is then δjJδmjmJ and the right side becomes:

δjJδmjmJ=mσ1,mσ2,mi,ma,mj,mk,mi,maCmi,mσ2mii,σ2iCma,mkmaa,kaCmi,mamjiajCmi,mamjiajCmσ2,mkmσ1σ2,kσ1Cmj,mσ1mJj,σ1J=[iσ2iakajσ1j]δjJδmjmJ (29)

Which is easily obtained when analysing that the visual structure fits the requirements for the recoupling coeff in Eq. (4). This coeffecient is called coeff_buildL.

5.3 Update R

The update of the right environment is similar. Collecting all the CGC for the tensors, the CGC part reads:

Cmi,mamjiaj=mσ1,mσ2,mj,mk,mi,maCmj,mσ1mjj,σ1jCmi,mamjiajCmi,mσ2mii,σ2iCmσ2,mkmσ1σ2,kσ1Cma,mkmaa,ka (30)

We can multiply this equation with Cmi,mamJiaJ and sum over mi and ma. The left hand side is then δjJδmjmJ and the right side becomes:

δjJδmjmJ=mσ1,mσ2,mi,ma,mj,mk,mi,maCmi,mσ2mii,σ2iCma,mkmaa,kaCmi,mamJiaJCmi,mamjiajCmσ2,mkmσ1σ2,kσ1Cmj,mσ1mjj,σ1j (31)

This is not the correct structure for a recoupling coeff. But the following steps will convert this into the form of Eq. (4). Notice, that I will use coordinates (i,j) to refer to the CGC in this equation where i is the row and j is the column.

  1. 1.

    interchange i and i for (0,0). This gives a factor (-1)σ2+mσ22i+12i+1. Furthermore mi and mi goes into -mi and -mi.

  2. 2.

    interchange j and j for (1,2). This gives a factor (-1)σ1+mσ12j+12j+1. Furthermore mj and mj goes into -mj and -mj.

  3. 3.

    interchange a and a for (0,1). This gives a factor (-1)k+mk2a+12a+1. Furthermore ma and ma goes into -ma and -ma.

  4. 4.

    Flip all signs of the m quantum numbers for the CGC in (0,0), (1,1), (1,2) and (0,1). This gives four phase factors: (-1)i+σ2-i, (-1)σ2+k-σ1, (-1)j+σ1-j and (-1)a+k-a.

  5. 5.

    The signs (-1)σ2+mσ2, (-1)σ1+mσ1, (-1)k+mk and (-1)σ2+k-σ1 gives in total +1. This can be seen when noting that mσ1=mσ2+mk (because of the corresponding CGC) and (-1)2(j+mj)=1 for any j and mj which belong together.

  6. 6.

    All m-dependent factors disappear and the sum over the resulting CGC give a recoupling coeff:

    [iσ2iakajσ1j] (32)

    together with the factor:

    (-1)i+σ2-i(-1)j+σ1-j(-1)a+k-a(2i+1)(2j+1)(2a+1)(2i+1)(2j+1)(2a+1) (33)
  7. 7.

    Convert the recoupling coeff to a 9j-symbol by Eq. (5). Interchange the first and the last column of the 9j-symbol. This gives a phase factor given by the sum af all quantum numbers in the 9j-symbol. Converting back to a recoupl coeff giv the final coefficient used for the update of the right environment:

    2j+12j+1[iσ2iakajσ1j] (34)

    This coefficient is called coeff_buildR in the implementation.

5.4 Apply Heff

For the effective Hamiltonian the CGC part reads:

Cmj,mσ1mjj,σ1j=mσ1,mσ2,mi,ma,mj,mkCmi,mamjiajCmi,mamjiajCmi,mσ2mii,σ2iCmσ2,mkmσ1σ2,kσ1Cma,mkmaa,ka (35)

We can multiply this equation with Cmj,mσ1mJj,σ1J and sum over mj and mσ1. The left hand side is then δjJδmjmJ and the right side becomes:

δjJδmjmJ=mσ1,mσ2,mi,ma,mj,mk,mi,maCmi,mσ2mii,σ2iCma,mkmaa,kaCmi,mamjiajCmi,mamjiajCmσ2,mkmσ1σ2,kσ1Cmj,mσ1mJj,σ1J=[iσ2iakajσ1j]δjJδmjmJ (36)

Which is easily obtained when analysing that the visual structure fits the requirements for the recoupling coeff in Eq. (4). This coeffecient is called coeff_HPsi. It is identical to coeff_buildL.

5.5 MPS product

The product of two MPS is obtained by the product over the auxiliary space and the combination of σ1 and σ2 to a combined index σ. The CGC part of this operation reads:

Cmi,mσmji,σj=mσ1,mσ2,miCmi,mσ1mii,σ1iCmi,mσ2mji,σ2jCmσ1mσ2mσσ1σ2σ (37)

Again we bring the CGC from the left side to the right side by using a orthonormality equation for the CGC and obtain:

δjJδmjmJ=mσ1,mσ2,mi,mi,mσCmi,mσ1mii,σ1iCmi,mσ2mji,σ2jCmi,mσmJi,σJCmσ1mσ2mσσ1σ2σ=[iσ1iσ2jσ]δjJδmjmJ (38)

The recoupl coeff is related to the 6j-symbol and this coefficient for the product of two A-tensors is called coeff_Apair in the implementation. Notice, that this is different to coeff_prod (Eq. (13)). This is because of our convention for the A-tensors.

5.6 MPO product

Multiplying two MPOs means the product in the auxiliary space and the tensor product in the physical space. Since our convention for the auxiliary indices is the same as for the MPS, the coefficient for the product in the auxiliary space is exactly coeff_Apair. The tensor product in the physical space is identical to coeff_tensorProd (which is not included in the doc yet) since the convention for the physical part of the MPO is Cmσ2,mkmσ1σ2,kσ1 which is as for normal tensor operators (Eq. (6)). The total coefficient is simply the product of both.

5.7 MPO times MPS

For this operation, the structure is completely identical to the action of the effective Hamiltonian. This is due to our definition of the CGC structure of the environment. The coefficient is therefore identical to coeff_HPsi. In the implementation, it has an extra name: coeff_AW.

6 Todo

  1. 1.

    Add graphical visualizations of the different contractions.

  2. 2.

    Describe the local operators and their reduced matrix elements.

  3. 3.

    Describe the tensor product of tensor operators for the coefficient coeff_tensorProd.

  4. 4.

    Think about recoupling of five irreps and 12j-symbols. What is problem here?