Skip to content

Commit

Permalink
v1.5.0
Browse files Browse the repository at this point in the history
  • Loading branch information
qyli committed Oct 21, 2024
1 parent 12fcce5 commit c395732
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,11 @@ TimerOutputs = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f"
[compat]
AbstractTrees = "0.4.5"
KrylovKit = "0.8"
TensorKit = "0.12.1 - 0.12.7"
Reexport = "1.2.2"
SerializedElementArrays = "0.1.0"
TimerOutputs = "0.5.23"
julia = "1.9"
Graphs = "1.12"
MetaGraphs = "0.8"

2 comments on commit c395732

@Qiaoyi-Li
Copy link
Owner

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.

  • 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 in 1:L, j in i:L
    addITP2!(G, U1SU2Fermion.FdagF, (i, j), (:Fdag, :F); Z=U1SU2Fermion.Z)
end
merge!(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.

@JuliaRegistrator
Copy link

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:

git tag -a v1.5.0 -m "<description of version>" c395732de6cfb7a86d0aebf37c9e02c8b54d7911
git push origin v1.5.0

Please sign in to comment.