Page 1 of 1

Gate-based TEBD

Posted: 07 May 2024, 09:34
by zrzt
Hello, I have at hand a brick-wall type quantum circuit (nearest neighbour gates supported on 2 sites), I would like to run a real time evolution starting from some MPS using TEBD. My issue is: I don't have a Hamiltonian. I only have the evolution operator itself (meaning the tensor product of certain gates at certain positions), in this sense, my Trotterization is already done. Does TeNPy support the possibility of specifying "by hand" the unitaries involved in the time evolution?

Re: Gate-based TEBD

Posted: 07 May 2024, 09:53
by Johannes
It doesn't allow this out of the box, but you can easily write your own subclass of the TEBD Engine which just plugs in the corresponding Us.
Essentially, you want to re-use the `update_step` function for the evolution (and maybe the first order suzuki trotter decomposition, depending on how you want to apply the gates?), but write your own version of `calc_U` to generate/read out the special two-site gates you have (wherever you get them from...).