Page 1 of 1

About long-range interaction

Posted: 14 Jul 2021, 02:24
by steven_tao
Dear TeNPy community:

1. I am simulating the 1D long-range Ising chain with power-law interaction, could anyone tell me how set the long-range Ising Hamiltonian in TeNPy? If I want to calculate the half-chain entanglement using iDMRG, how I should cut the chain and how I choose the length of the chain? For the Ising chain with only nearest-neighbor interaction, we can set the chain length of two, then calculate the entanglement using iDMRG. But how to set it for the long-range chain? In addition, the TDVP can be used for the long-range case?


\(H_{IS} = \sum_{j>i}^L \frac{1}{(j-i)^\lambda} \sigma_i^z \sigma_j^z + h \sum_i \sigma_i^x\)


2. If this 1D long-range Ising chain is coupled to e.g., 1D XX model at the end chain of 1D Ising model, how we can we set the model in TeNPy ?

\(H_{XX} = J \sum_{i-j=1, j=L+1}^{2L} \tau_i^x \tau_j^x \),

\(H_{coupled} = J \sigma_L^x \tau_{L+1}^x \).



Thank you very much.

Re: About long-range interaction

Posted: 11 Aug 2021, 18:35
by Johannes
1.) The simplest/naive thing is to just use the usual add_coupling with increasingly longer range interaction |i-j| up to some finite cutoff.
Alternatively, the more clever/state of the art way would be to fit the powerlaw by a sum of exponentials, and then use `add_exponentially_decaying_interactions`. This gets the interactions correct to a much larger range with the same available MPO bond dimension.

In both cases, you eventually get an MPO with which you can run the usual iDMRG, with just a plain two-site unit cell; the interactions in the MPO will just be longer range.
The half-chain entanglement entropy is still a well-defined concept; I don't really get the question how to cut the chain?
Remeber, that the MPS unit cell having only 2 sites does not mean that the ground state lives on just two sites; cutting the chain cuts it in two half-infinite chains.

And yes, TDVP does formally work with arbitrary MPOs. However, I'm not completely sure whether you might need a very small dt to get things correct.
Same goes for the ExpMPOEvolution.

2. I'm not sure I understand the geometry you want. Finite systems? Infinite? Half-infinite?