Skip to content

Propagator of a Hamiltonian

Created by: VolodyaCO

This PR introduces an experimental feature analogous to the .expm() method in qutip, that allows the construction of the e^{-iA} for some LocalOperator A. The implementation is based on approximating the complex exponential with Chebysheb polynomials, which seem to be quite performant in terms of the number of products that need to be carried out.

If you think that this is a valuable addition, please tell me where to place it and I can take care of testing. For the moment I see that product of two operators is quite costly in netket. Why is that? Is there a plan to accelerate this? Has this been diagnosed before?

Context

Integrating Jaynes-Cummings

I have been trying, for the good part of last month, to integrate the Jaynes Cummings hamiltonian (which describes an optical mode coupled to an exciton, or a two-level-system) and show some evolution with TDVP integration with an initial state consisting of 0 photons and 1 exciton.

Apparently, since the spread of the probability is non-existing, i.e., all probability is assigned to a single state of the bare basis, TDVP has a lot of difficulties making the probability flow from that state to others, theoretically requiring very small integration time steps. Experimentation didn't yield good results and I was not able to ever use TDVP to integrate the JC hamiltonian.

On the other hand, I also tried including a random rotation of the basis so that the probability is more distributed in this new basis. This, however, induces a dense Hamiltonian, which completely thrashes the LocalOperator idea of compactly writing an operator.

Note: I prepared the initial state of 0 photons and 1 exciton in a full-forward neural network, and then I used the variational state to compute the expected value of the 0photon-1exciton projector, which yielded the correct Rabi oscillations

Reproduction of https://arxiv.org/abs/2204.03454

I am also trying to reproduce the results in this paper, which uses the Feynman-Kitaev formalism to encode the history of a quantum system in the ground state of a modified problem. For this, I need to compute Udt = exp(-i dt H), for some hamiltonian H, and then I'm able to construct the Feynman-Kitaev hamiltonian.

In general, the propagator is not sparse, even if the Hamiltonian is sparse. But that's the price we have to pay if we want to use the Feynman-Kitaev hamiltonian.

Merge request reports