## Alternating Heisenberg coupling at infinite chain

How do I use this algorithm? What does that parameter do?
Yu-Jie Liu
Posts: 1
Joined: 03 May 2022, 13:52

### Alternating Heisenberg coupling at infinite chain

Hi,

I wanted to implement infinite DMRG to solve an alternating Heisenberg chain with nearest neighbour couplings J_ on the even and J on the odd sites. I created a CouplingModel class and used

Code: Select all

self.add_coupling([J_, J],0,"Sigmaz",0,"Sigmaz",[1])
self.add_coupling([J_,J], 0,"Sigmay",0,"Sigmay",[1])
Is this correct? I only specify the coupling strengths for the first two sites but my understanding is TeNPy will lift this to fill the entire chain.

Thanks,
Yu-Jie
Johannes
Posts: 316
Joined: 21 Jul 2018, 12:52
Location: UC Berkeley

### Re: Alternating Heisenberg coupling at infinite chain

Hi,
yes, that is correct. It works if the number of couplings is even (ie. odd number of sites for finite systems, even number of sites for infinite MPS) , otherwise it complains about incommensurate arrays for the expansion.
Inderpreet Kaur
Posts: 1
Joined: 25 Apr 2022, 13:47

### Re: Alternating Heisenberg coupling at infinite chain

Hi, I am very new to tenpy. I am sorry if answer to this question is already there but I could not find any particular solution anywhere. I need to incorporate alternate strengths in one term of the Hamiltonian and compute it's ground state using the finite matrix-product state (MPS) representation. If I consider even coupling and even number of sites, then for e.g., the following statement works fine: