Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Non-equilibrium many-body physics #45

Open
HamidArianZad opened this issue Mar 1, 2022 · 8 comments
Open

Non-equilibrium many-body physics #45

HamidArianZad opened this issue Mar 1, 2022 · 8 comments

Comments

@HamidArianZad
Copy link

Dear TeNeS group,

Does the TeNeS support quantum many-body systems out of equilibrium?
For example, I aim to investigate the ground-state phase diagram and thermodynamics of a 2D spin lattice out of equilibrium.
Can I do that by employing TeNeS?

@yomichi
Copy link
Contributor

yomichi commented Mar 2, 2022

TeNeS searches for the ground state by using imaginary time evolution method, |ψ> = exp(-τ H)|φ>.
Since the (complex-valued) matrix elements of imaginary time evolutional operator are given in the input file, TeNeS technically can also trace the dynamics of the systems, |ψ(t)> = exp(-it H) |ψ(0)>.
However, it would be difficult to achieve good accuracy (errors in each step will be accumulated).

We (at least I) have not yet checked this method in our code.
FYI, Dr. Kaneko reports the dynamics of Bose-Hubbard model after quenching by using TeNeS (https://arxiv.org/abs/2108.11051).

@TsuyoshiOkubo
Do you have any more comments?

@TsuyoshiOkubo
Copy link
Contributor

Thank you very much for asking interesting question.

Firstly, concerning to the real time dynamics mentioned by yomichi, I agree with his comment that TeNeS can formally treat it but we do not expect good performance because generally, the entanglement grows along the time evolution even if we started from a low entangled state, such as the case of quantum quench. However, as also mentioned by him, there are several calculations fo real time dynamics based on iPEPS (iTPS). In these studies, they only consider short time dynamics.

In a different situation, we may consider propagation dynamics of a local excitation from the ground state. In such situation, we apply a single excitation operator to the ground state represented by a tensor network, and then we simulate real time dynamics based on the tensor network. In this case, the entanglement does not increase much, and the tensor net work approximation work well for the long time. However, the local excitation breaks translational symmetry of the state, and then we cannot use infinite tensor network, such as iPEPS, for this simulation. Because TeNeS treat only infinite tensor networks so far, unfortunately, we cannot use TeNeS for this purpose.

Then, I guess your "out-of equilibrium" may mean that systems with dissipation. Is this correct? If so, by considering tensor network states like iPEPS (iTPS) for density operator instead of pure state, we can investigate steady state of, e.g., master equation. Actually, I think by implementing proper imaginary time evolution operator, we can use TeNeS for such purpose. However, the calculation of the expectation values is different between pure states and density operators. Thus, we cannot directly use TeNeS to calculate the expectation values based on the approximated density matrix. For such purpose, we need to perform so called single layer contraction of tensor networks. Because our team have a python code for the single layer contraction, we may add single layer contraction to TeNeS if there are requests.

@HamidArianZad
Copy link
Author

Thank you very much for your responses.
I would like to investigate the fidelity of an initial ground state with one-magnon or two-magnon spin configuration after passing a specific time interval for a finite-size 2D lattice (such as my own martini lattices).
I think in this case the TeNeS would act efficiently.

@HamidArianZad
Copy link
Author

HamidArianZad commented Mar 4, 2022

According to your helpful comments I could successfully calculate the magnetization of my favorite martini lattice at low temperature for 36 number of spins. The TeNeS results are now in a good agreement with my analytical results of the ground-state phase diagram.
Please see my results in below attached figure.

mag_martini1_36sites

I have some technical queries in this regard.

  1. I consider below input data of simple.toml:

simple toml_martini1

and I considered simple update steps in magnetization.py file as 4000. I think the temperature could be calculated as:
T = 1 / ((N_tau +num_step) * tau) = 1 / ((1000 + 4000) * 0.01) = 0.02.
Is that correct?

  1. I observed that a part of the magnetization curve may denote the quantum spin liquid phase (blue curve 2< B < 2.5).
    To prove such a phenomenon I have to investigate correlation length as well. Of course, TeNeS calculate the correlation length. But the question is how do I extract the data and use them to prove that part of the magnetization curve indicates spin liquid phase?

  2. After running the code for my favorite lattice with finite size of 36 sites in the presence of a longitudinal magnetic field, TeNeS also calculated the pair correlations functions <SxSx> and <SySy> . I found that the values of <SxSx> and <SySy> are different from each other. For some values of the magnetic field this difference becomes even larger, while the model should not have different values for the <SxSx> and <SySy>.
    If <SxSx> - <SySy> is not zero, then there is a spin topology phase so-called nematic state in the ground-state phase diagram of the model. Could you let me know why this problem happen?

@yomichi
Copy link
Contributor

yomichi commented Mar 17, 2022

I'm very sorry for the late reply.

  1. The wave function after evolutions is formally written as |ψ> = exp(-Nτ H) |φ>, where |φ> is some state and N is the number of steps, and hence the expectation value calculated by TeNeS is <ψ|A|ψ>/<ψ|ψ> = <φ|exp(-NτH) A exp(-NτH)|φ> / <φ|exp(-2NτH)|φ>. This is not the expectation value under the canonical ensemble, <A> = Tr A exp(-2NτH) / Tr exp(-2NτH) (Note that the imaginary time operator appears in both of the bra and ket vectors).
    (In my opinion,) From an analogy of the thermal pure quantum state, we maybe able to obtain the finite temperature result by taking an average over several states from different initial states (generated uniform-randomly), but we have the same issue as in the case of the real-time imaginary dynamics.

  2. As you mention, TeNeS can calculate the correlation length of tensors. The result is saved in correlation_length.dat.
    (manual: https://issp-center-dev.github.io/TeNeS/manual/master/en/html/file_specification/output_format.html)
    It is expected that the correlation length diverges for gapless states, but in practice, the correlation length will saturate because of the finite bond dimension effect.
    PRX 8 031030 is probably helpful.
    I'm not sure whether we can say that the state is a spin liquid just from the divergence of the correlation length.

  3. When the optimization process does not converge, <Sx> and <Sy> on each site may remain finite and differ from each other, and in this case, the resulting <SxSx> - <SySy> is not zero. Please check <Sx> and <Sy> on each site.
    Additionally, to subtract <Sx_i><Sx_j> from <Sx_i Sx_j> perhaps helps you.

@HamidArianZad
Copy link
Author

HamidArianZad commented Nov 22, 2022

Hi @yomichi,

I need to find the ground-state energy of a 2D spin lattice at each value of total Sz. In other words, I want to find the energy of the system and the corresponding magnetization when its total Sz is 0, 1, 2, ...,L/2.
How can I find the total Sz with the corresponding energy and magnetization in output files of TeNeS?
For example, in ALPS package when I want to achieve the ground-state energy and total (or onsite) magnetization of a spin-1/2 system by using DMRG method, I can define Sz_total = 0...L/2, then look for the ground-state energy and magnetization at each sector of Sz_total.
Does the TeNeS support this case?

@HamidArianZad
Copy link
Author

Dear TeNeS organizer,

I want to add an additional term, so-called cyclic four-spin interaction, to the Hamiltonian of a 2D system.
This term accounts for the interaction between four spins (in a square plaquette) and for simplicity I consider just the z-component of this operator, i.e., K = Si^zSj^zSk^zSl^z.
Does the TeNeS support such a kind of four-body interaction?
Or, is it possible to add this term to the Hamiltonian part of the tenes_simlple file, manually?

I would be thankful to you if respond my previous query, too.

@yomichi
Copy link
Contributor

yomichi commented Nov 30, 2022

The current version of TeNeS cannot perform block-diagonal calculations (e.g., Sz-fixed calculations).
We hope to implement this type of calculation, but I'm sorry that we cannot promise when to implement it.

TeNeS uses the imaginary time evolution (ITE) method to optimize tensors.
If users can represent the whole ITE operator as a product of two-site ITE operators, TeNeS can treat the model.
(But I'm not sure whether such representation exists or not.)

Unfortunately, the expectation values of three or more site operators are not available now.
I'm planning to implement it in the near future.

Please open a new issue for one query with a proper title.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants