Conversation
|
I'll try to have a decent look soon, but some comments/notes already:
|
|
I'll try to fix the time evolution part. |
|
The space mismatch is because the site order for gates on vertical bonds becomes I added more careful checks for MPO gates in LocalCircuit:
I also removed the check that @leburgel I guess you can now proceed to see if there are other things to be cleaned up. |
|
Your PR no longer requires formatting changes. Thank you for your contribution! |
|
This is really nice, thanks! I update the docs and model definitions to define the |
|
It may be better to move |
leburgel
left a comment
There was a problem hiding this comment.
The QR CTMRG example failure can probably be fixed by changing the seed again, it seems the change I made broke the ComplexF64 scalartype test at the same time it fixed the Float64 one. I'll try to stabilize these properly later.
Gradient timeouts might be due to increased compilation times that came with the type changes here. Also not really related to the changes themselves, so we can sort it out later.
In favor of merging this as is, and doing smaller fixes and cleanup as follow-ups.
This is a WIP implementation of updated structs for our operators, with the goal of being less painful for the compiler, while being a bit more natural for representing sums as dictionaries (commuting terms -> order does not matter), while products are vectors (non-commuting factors -> order retained).
Unfortunately I will not find the time to finish this, so if anyone feels like continuing the work, go ahead!
I do think most of what I have in mind is here, the general ideas are in place and this is mostly about cleaning up and dealing with Zygote.