Move trunc out of bond truncation algorithm#362
Move trunc out of bond truncation algorithm#362Yue-Zhengyuan wants to merge 1 commit intoQuantumKitHub:masterfrom
trunc out of bond truncation algorithm#362Conversation
Codecov Report✅ All modified and coverable lines are covered by tests.
🚀 New features to boost your workflow:
|
lkdvos
left a comment
There was a problem hiding this comment.
This does look in general quite different from how we structure the rest of our function signatures, which typically have the truncation strategy in the algorithm... I'm not sure if I really understand the benefit, isn't this just a matter of using @set alg.trunc = ...?
|
Currently the NTU struct looks like @kwdef struct NeighbourUpdate <: TimeEvolution
"Bond truncation algorithm after applying time evolution gate"
opt_alg::Union{ALSTruncation, FullEnvTruncation} =
ALSTruncation(; trunc = truncerror(; atol = 1.0e-10))
...
endI feel it a bit weird to set Though I admit that this is still not ideal, and I'm surely open to suggestions. |
This PR moves
trunc::TruncationStrategyout of bond truncation algorithmsALSTruncationandFullEnvTruncation.The motivation is to make supporting
FixedSpaceTruncationandSiteDependentTruncationin NTU (#144) easier, so I don't need to reconstruct the bond truncation algorithm struct every time I switch the bond to be truncated (since each bond have a differenttrunc).