Recent Releases of FiniteMPS

FiniteMPS - v1.7.1

FiniteMPS v1.7.1

Diff since v1.7.0

  • fix bug: MethodError when adding 4-site correlations to ObservableTree.

- Julia
Published by github-actions[bot] 7 months ago

FiniteMPS - v1.7.0

FiniteMPS v1.7.0

Diff since v1.6.1

A stable version after merging a sequence of commits in dev branch.

Closed issues: - Unexpected Behavior in addIntr! When Handling Symmetric all-to-all Interactions (#11)

- Julia
Published by github-actions[bot] 7 months ago

FiniteMPS - v1.6.1

FiniteMPS v1.6.1

Diff since v1.6.0

  • fix MethodError for LocalOperator + LocalOperator
  • update example

- Julia
Published by github-actions[bot] about 1 year ago

FiniteMPS - v1.6.0

FiniteMPS v1.6.0

Diff since v1.5.0

Breaking changes

  • Rewrite addIntr! and addObs! and change the interface. For example, consider a hopping term, now the usage becomes julia addIntr!(Root, (Fdag, F), (i, j), (true, true), strength; Z = Z) where (true, true) means both operators are fermionic. Similarly, julia addObs!(Tree, (Fdag, F), (i, j), (true, true); Z = Z) for the calculation of single-particle correlations.
  • Now a multi-site correlation with duplicated site indices can automatically reduce to a shorter term. For example, in the case of $U1 \times SU2$ symmetry, the pairing correlation $\langle \Delta{12}^\dagger \Delta{23}\rangle$ can be simply calculated via julia addObs!(Tree, U1SUFermions.ΔₛdagΔₛ, (1, 2, 2, 3), (true, true, true, true); Z = U1SUFermions.Z)
  • Support adding 3-site terms, e.g. chiral operator $Si \cdot (Sj \times S_k)$ pinning field, to the Hamiltonian.

Merged pull requests: - ensure MPS used in calObs! is canonicalized at the first site (#7) (@phyjswang) - Add addIntr3! and U₁SU₂ operator SSS (#10) (@Asmendeus)

- Julia
Published by github-actions[bot] about 1 year ago

FiniteMPS - v1.5.0

FiniteMPS v1.5.0

Diff since v1.4.2

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 Ai(\beta/2) Bj\rangle\beta$ and $\langle Ai(\beta/2) Bj(\beta/2) Ck Dl \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 ci^\dagger(\beta/2) cj\rangle\beta$ with $U1\times SU2$ symmetry. julia 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 ci^\dagger(\beta/2) cj\rangle\beta$ is stored at julia 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.

Closed issues: - ERROR: MethodError: Cannot convert an object of type ObservableTree{1} to an object of type Dict (#5)

- Julia
Published by github-actions[bot] over 1 year ago

FiniteMPS - v1.4.2

FiniteMPS v1.4.2

Diff since v1.4.1

fixed bugs

  • throw an error when the step length in Krylov-based exponentiate is too large, which may lead to a dead loop in previous versions
  • force to normalize the output state after DMRG sweep

new features

  • add serial mode in calObs! for debugging
  • add auto swap in addIntr4!, with which we can compute the 4-site correlation (i, j, k, l) with i > j or k > l now
  • add U1U1tJFermion in LocalSpace, i.e. d=3 physical space in tJ model with $U1$ (charge) $\times U1$ (spin) symmetry

- Julia
Published by github-actions[bot] almost 2 years ago

FiniteMPS - v1.4.1

FiniteMPS v1.4.1

Diff since v1.4.0

  • fix ambiguous method error of convert in Julia v1.9

- Julia
Published by github-actions[bot] almost 2 years ago

FiniteMPS - v1.4.0

FiniteMPS v1.4.0

Diff since v1.3.0

  • fix the bug in ObservableTree which may give an incorrect sign for some 4-site fermionic correlations.
  • note the type parameter of the tree nodes in ObservableTree is different from old versions.
  • rewrite the implementation (method convert) for extracting the values stored in ObservableTree. The usage changes from julia convert(Type, Tree::ObservableTree, name::NTuple{N, String}) to
    julia convert(Type, Tree::ObservableTree) where the supported Type contains Dict and NamedTuple. Passing in the name that corresponds to the correlation is no long needed.

- Julia
Published by github-actions[bot] almost 2 years ago

FiniteMPS - v1.3.0

FiniteMPS v1.3.0

Diff since v1.2.2

  • support latest TensorKit.jl(v0.12.3) and KrylovKit.jl(v0.7.1)
  • complement two methods for some 4-site correlations
  • fix the bug in InteractionTree which may prevent some possible merges
  • add an example: triangular Heisenberg DMRG with $U1$ or $SU2$ symmetry

- Julia
Published by github-actions[bot] almost 2 years ago

FiniteMPS - v1.2.2

FiniteMPS v1.2.2

Diff since v1.2.1

  • Prepare triplet pairing operators in local space U1SU2Fermion.
  • Fix the bug in calObs! which may cause dead loops. Now it will rethrow the error if any worker thread fails.

- Julia
Published by github-actions[bot] almost 2 years ago

FiniteMPS - v1.2.1

FiniteMPS v1.2.1

Diff since v1.2.0

  • fix some errors when there exist complex operators in Hamiltonian

- Julia
Published by github-actions[bot] almost 2 years ago

FiniteMPS - v1.2.0

FiniteMPS v1.2.0

Diff since v0.3.0

Merged pull requests: - add U1 and no sym spin local space (#1) (@phyjswang) - add no symm dmrg and tanTRG w and w/o CBE (#2) (@phyjswang)

- Julia
Published by github-actions[bot] about 2 years ago

FiniteMPS - v0.3.0

FiniteMPS.jl v0.3.0

The first stable version to support finite-temperature simulations.

main difference

  • write 1-site and 2-site TDVP
  • provide a template of SETTN and tanTRG
  • add localspace of U1 spinless fermion
  • write a preliminary CBE implementation (beta)

- Julia
Published by Qiaoyi-Li over 2 years ago

FiniteMPS - v0.2.0

v0.2.0

New features

  • Support poor man's multi-processing together with a demo in the example folder.
  • Modify mul! in TensorKit to support nested multi-threading for each worker.

Important changes

  • Update TensorKit to v0.12.0.
  • Rewrite multi-threading, some usages in old version become invalid.

- Julia
Published by Qiaoyi-Li over 2 years ago