Correlation function with infinite boundary conditions

How do I use this algorithm? What does that parameter do?
Post Reply
nsherman
Posts: 10
Joined: 21 Apr 2021, 00:16

Correlation function with infinite boundary conditions

Post by nsherman »

Hi, I'm new to TenPy, and I'm looking to compute correlation functions using infinite boundary conditions, based on this paper
https://arxiv.org/abs/1207.0652

What I'm wondering is if this functionality is already baseline in TenPy? I'm thinking the 'segment' boundary condition might be what I'm looking for, but not quite sure.

The basic idea is you have an iMPS and an iMPO with some unit cell, then repeat this N times to create a 'window' into the infinite system, but you have to place edge tensors on both sides of the iMPS and iMPO to effectively described the semi-infinite chain on either side. In principle, once you have these edge tensors, then all finite system algorithms will work, and the boundary effects are greatly diminished.

The paper provides a prescription for what the boundary tensors are, but before I develop code to implement this, I figured I would check to see if this functionality is already present and I just missed it.

Thank you for your time,
Nick
yuchihe
Posts: 6
Joined: 26 Apr 2021, 16:46

Re: Correlation function with infinite boundary conditions

Post by yuchihe »

Perhaps you want to use mps.correlation_function(ops1, ops2, sites1=None, sites2=None, opstr=None, str_on_first=True, hermitian=False, autoJW=True)

See https://tenpy.readthedocs.io/en/latest/ ... n_function

For example <Sz(x)Sz(y)> for spin chain. mps.correlation_function(ops1, ops2, sites1=[x,], sites2=[y,])

You do not need to determine "edge tensors". Those are left and right fixed points of transfer matrices, and is kept in the code.
nsherman
Posts: 10
Joined: 21 Apr 2021, 00:16

Re: Correlation function with infinite boundary conditions

Post by nsherman »

I guess I forgot to mention explicitly that I want to study dynamics, so <Sz(x,t)Sz(0,0)> say. It seems like in order to time evolve Sz|psi>, I need to strictly work at finite system size, since the state is no longer translationally invariant. However, to eliminate boundary effects, one can use edge tensors to mimic the infinite system using "infinite boundary conditions". I was wondering if this is already built in or not?
yuchihe
Posts: 6
Joined: 26 Apr 2021, 16:46

Re: Correlation function with infinite boundary conditions

Post by yuchihe »

Sorry for not understanding you question. "segment" is what you need.
nsherman
Posts: 10
Joined: 21 Apr 2021, 00:16

Re: Correlation function with infinite boundary conditions

Post by nsherman »

Great, I was thinking it's what I'm looking for. I have another possibly naive question. How do I actually use "segment"? I want to use infinite boundary conditions to find the ground state with DMRG, but then I want to transition to segment for the time evolution. So how would I go about converting the MPS / MPO to segment boundary conditions?
Post Reply