You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Support the computation of imaginary-time proxy (ITP)
ITP forms like $\langle A(\beta/2) B\rangle_\beta = Z^{-1}{\rm Tr}\{e^{-\beta H/2} A e^{-\beta H/2} B\}$, which can be directly obtained with the thermal density operator $e^{-\beta H/2}$ represented as MPO. We provide the following interfaces for users.
A concrete type ImagTimeProxyGraph to describe the terms to be calculated.
addITP2! and addITP4! for adding terms like $\langle A_i(\beta/2) B_j\rangle_\beta$ and $\langle A_i(\beta/2) B_j(\beta/2) C_k D_l \rangle_\beta$, respectively.
merge! to compress the graph partially.
calITP! for in-place calculation.
Detailed usage please see the documentation via ? in REPL.
Example
The following shows a sample code for the calculation of the single particle Green's function $\langle c_i^\dagger(\beta/2) c_j\rangle_\beta$ with $U_1\times SU_2$ symmetry.
G =ImagTimeProxyGraph(L)
for i in1:L, j in i:L
addITP2!(G, U1SU2Fermion.FdagF, (i, j), (:Fdag, :F); Z=U1SU2Fermion.Z)
endmerge!(G)
calITP!(G, rho)
where rho is a length-L MPO that represents $Z^{-1/2}e^{-\beta H/2}$. After this, the value of $\langle c_i^\dagger(\beta/2) c_j\rangle_\beta$ is stored at
G.Refs["FdagF"][(i, j)][]
There may exist bugs that have not yet been discovered, please check carefully with the results.
Other changes
Update dependent packages such as TensorKit.jl and KrylovKit.jl.
c395732
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.
@JuliaRegistrator register
Release notes:
New Features
Support the computation of imaginary-time proxy (ITP)
ITP forms like$\langle A(\beta/2) B\rangle_\beta = Z^{-1}{\rm Tr}\{e^{-\beta H/2} A e^{-\beta H/2} B\}$ , which can be directly obtained with the thermal density operator $e^{-\beta H/2}$ represented as MPO. We provide the following interfaces for users.
ImagTimeProxyGraph
to describe the terms to be calculated.addITP2!
andaddITP4!
for adding terms likemerge!
to compress the graph partially.calITP!
for in-place calculation.Detailed usage please see the documentation via
?
in REPL.Example
The following shows a sample code for the calculation of the single particle Green's function$\langle c_i^\dagger(\beta/2) c_j\rangle_\beta$ with $U_1\times SU_2$ symmetry.
where$Z^{-1/2}e^{-\beta H/2}$ . After this, the value of $\langle c_i^\dagger(\beta/2) c_j\rangle_\beta$ is stored at
rho
is a length-L
MPO that representsThere may exist bugs that have not yet been discovered, please check carefully with the results.
Other changes
TensorKit.jl
andKrylovKit.jl
.c395732
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.
Registration pull request updated: JuliaRegistries/General/117755
Tagging
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via: