[WIP] Implement styles in a top-to-bottom approach#360
[WIP] Implement styles in a top-to-bottom approach#360AFeuerpfeil wants to merge 4 commits intoQuantumKitHub:mainfrom
Conversation
|
Your PR no longer requires formatting changes. Thank you for your contribution! |
Codecov Report❌ Patch coverage is
... and 1 file with indirect coverage changes 🚀 New features to boost your workflow:
|
lkdvos
left a comment
There was a problem hiding this comment.
This looks great, I really like that we can relax the input types.
|
It definitely feels like it is going in the right direction. An example, how the restriction only for the topmost function in the call tree looks like, is function environments(above::AbstractMPS, op::AbstractMPO, below::AbstractMPS)
return environments(GeometryStyle(above, op, below), OperatorStyle(op), above, op, below)
endand then function environments(::InfiniteChainStyle, ::HamiltonianStyle, above, op, below)
...
end |
I am currently working on getting the algorithms to run for user-defined
AbstractMPStypes.To this end, I will go through the algorithms (currently focussing on
IDMRGandVUMPS) and implement theStyleinterface for the highest-level functions, which are called in these algorithms.Examples for these are
calc_galerkin,expectation_value,environments,recalculate!,(A)C(2)_hamiltonian,transfer_leftenv!,transfer_rightenv!.