-
Notifications
You must be signed in to change notification settings - Fork 13
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
Gauge walks #211
Gauge walks #211
Conversation
Looks like a nice improvement. @JoeyT1994 will you be updating the ITensorTCI.jl PR to use a similar gauge_walk / gauge_edge / Algorithm design? |
Yes, the idea will be that I can then simplify that PR by removing most functions from the |
@@ -44,7 +45,7 @@ using MacroTools: @capture | |||
using NamedGraphs: NamedGraphs, NamedGraph, not_implemented, steiner_tree | |||
using NamedGraphs.GraphsExtensions: | |||
⊔, directed_graph, incident_edges, rename_vertices, vertextype | |||
using NDTensors: NDTensors, dim | |||
using NDTensors: NDTensors, dim, Algorithm |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's load Algorithm
from ITensor
instead, since that is where you are loading @Algorithm_str
.
Looks great, thanks! This will be very nice to have. |
This PR generalizes the
tree_orthogonalize
code totree_gauge
code which is based around a generic algorithm whichwalks
through a series of edges of theITensorNetwork
and performs some factorization which can be specified with analg::Algorithm
argument.This means that we can support other
gauges
such asinterpolative
with very minimal additional code (just one function which tells you how to do the edge factorizations).