Closed liwt31 closed 6 months ago
Attention: Patch coverage is 89.27987%
with 262 lines
in your changes are missing coverage. Please review.
Project coverage is 85.87%. Comparing base (
2044db8
) to head (883546a
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Related to #149
Status of the code
Functionalities
TreeNodeBasis
andBasisTree
. In each site/node, there could be no basis set (byBasisDummy
) or more than one basis sets.Mpdm
)A guide to the code
The functionalities are implemented in the
tn
module. The original MPS/MPO implementation/interface largely remain unchanged.node.py
andtreebase.py
provide basic utilities to build a tree where each node is associated with one or more physical dof.tree.py
provides definitions forTTNS
andTTNO
. The environment tensors are also stored in a tree format, inTTNEnviron
hop_expr.py
contains functions to buildopt_einsum
expression as the effective Hamiltonian operator. The implementation of the wholetn
module relies heavily onopt_einsum
.gs.py
implements 2-site optimization, which relies onhop_expr.py
time_evolution.py
contains time evolution algorithms, which also relies onhop_expr.py
. In themps.py
implementation the time evolution takes a lot of lines, so I decided to move them to a new file in TTNS implementation.symbolic_mpo.py
for auto construction of MPOutils_eph.py
now only has a function to construct the maximum entangled state. The current implementation of TTNS/TTNO is completely model agnostic and I hope it will stay so. Anything related to a specific model will be put in a separate file as another abstraction layer between actual applications.