New release: v0.7.1.

overlap of ground states at different parameters

How do I use this algorithm? What does that parameter do?
Post Reply
steven_tao
Posts: 12
Joined: 11 Mar 2020, 01:07

overlap of ground states at different parameters

Post by steven_tao »

Dear TeNPy Community:

I am asking how to calculate the overlap of two ground states at two different parameters?

For example, for parameter J1, we run the DMRG as:

Code: Select all

E_1, psi_1 = eng.run()
At a different parameter J2, we run the DMRG as:

Code: Select all

E_2, psi_2 = eng.run()
Then how we can calculate their overlap of two ground states: \(\frac{\langle \textrm{psi_1} \mid \textrm{psi_2} \rangle}{\sqrt{\langle \textrm{psi_1} \mid \textrm{psi_1} \rangle} \sqrt{\langle \textrm{psi_2} \mid \textrm{psi_2} \rangle} }\) ?
User avatar
Johannes
Site Admin
Posts: 188
Joined: 21 Jul 2018, 12:52
Location: UC Berkeley

Re: overlap of ground states at different parameters

Post by Johannes »

It's simply psi_1.overlap(psi_2), or for the normalization as in your formula, psi_1.overlap(psi_2)/psi_1.norm / psi_2.norm .
See overlap for more details.

For infinite MPS, it's the largest eigenvalue of the transfermatrix, which is not just the overlap <psi_1|psi_2> - the latter is zero for any two states which are not exactly the same up to a prefactor, and hence not a usefull measure.
steven_tao
Posts: 12
Joined: 11 Mar 2020, 01:07

Re: overlap of ground states at different parameters

Post by steven_tao »

Thanks, Dr. Johannes.

Then can we use the iDMRG to calculate the many-body winding number or berry phase ?

For example, by replacing the hopping \(t\) by \(t e^{i \theta}\), then many-body berry phase in periodic boundary is

\(\gamma = i \int_0^{2\pi} d\theta \langle \phi_{gs}(\theta) \mid \partial_\theta \phi_{gs}(\theta) \rangle = -\textrm{Im }log \prod_\theta \langle \phi_{gs}(\theta) \mid \phi_{gs}(\theta+\delta \theta) \rangle \).
User avatar
Johannes
Site Admin
Posts: 188
Joined: 21 Jul 2018, 12:52
Location: UC Berkeley

Re: overlap of ground states at different parameters

Post by Johannes »

I don't think this works, even for finite MPS or with exact diagonalization.

The issue is that you need to pin the phase of the ground state, which is not well defined from the perspective of a variational algorithm: if \(|\Psi\rangle\) is a ground state, so is \(e^{i \phi} |\Psi\rangle\), so any variational, numerical algorithm like DMRG or ED returns the state with an arbitrary phase.
For that reason, \(\langle \phi_{gs}(\theta) |\phi_{gs}(\theta + \delta \theta) \rangle\) has an arbitrary phase, the only thing you can extract is the absolute value.

(Apart from that, as I said before, the overlap is not really well defined in the thermodynamic limit.)
steven_tao
Posts: 12
Joined: 11 Mar 2020, 01:07

Re: overlap of ground states at different parameters

Post by steven_tao »

The wilson loop \(\prod_{\theta \in \{0, 2\pi\}} \langle \phi_{gs}(\theta) \mid \phi_{gs}(\theta+\delta \theta) \rangle\) should be gauge free, although \( \langle \phi_{gs}(\theta) \mid \phi_{gs}(\theta+\delta \theta) \rangle\) is gauge dependent. Therefore, this formula can be used to numerically evaluate the berry phase. By the way, do you have any good idea to calculate the berry phase using DMRG ? Thanks.
User avatar
Johannes
Site Admin
Posts: 188
Joined: 21 Jul 2018, 12:52
Location: UC Berkeley

Re: overlap of ground states at different parameters

Post by Johannes »

You're right of course. Okay, let me just say that I never tried it...

You should probably still make sure that you follow the evolution with \(\theta\) adiabatically.
In other words, use the result from the DMRG run with \(\theta\) as an initial guess for the \(\theta + \delta \theta\) DMRG, similarly as is done e.g. in examples/chern_insulateors/chiral_pi_flux.py.
Post Reply