Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PEPSHamiltonian Refactor #49

Merged
merged 42 commits into from
Jul 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
bdafc8d
Fix offset in wrong direction
lkdvos Jul 2, 2024
9b6b7df
Add contraction arbitrary local operator
lkdvos Jul 2, 2024
2f21958
Add contraction arbitrary local norm
lkdvos Jul 2, 2024
ce134c0
Add PEPSHamiltonian
lkdvos Jul 2, 2024
8700e78
Add nearest_neighbour hamiltonian
lkdvos Jul 2, 2024
692cefe
Further implement PEPSHamiltonian
lkdvos Jul 2, 2024
fc3f3e0
Update models to new interface
lkdvos Jul 2, 2024
2352f50
Implement warning in AD-compatible way
lkdvos Jul 2, 2024
bc96e06
Add cost model for contraction order
lkdvos Jul 2, 2024
9e26775
Cleanup
lkdvos Jul 2, 2024
fb4ea7d
Fixup contraction with N-body terms
lkdvos Jul 2, 2024
483d337
Revert accidental factor 1/4 in Heisenberg model
lkdvos Jul 3, 2024
a5bfde2
Add unitcell to models
lkdvos Jul 3, 2024
3a661da
Ensure lattice compatibility
lkdvos Jul 3, 2024
c6677d0
Print output gradient tests
lkdvos Jul 3, 2024
7fde9b4
Fix typo
lkdvos Jul 3, 2024
7a161da
Fix typo attempt II
lkdvos Jul 3, 2024
f59697a
Fix typo attempt III
lkdvos Jul 3, 2024
097fc8f
Fix spacecheck
lkdvos Jul 3, 2024
da51ce6
Adjust local operator code to new unit cell convention, add 2x2 Heise…
pbrehmer Jul 3, 2024
28d016e
Merge branch 'ld-expval' of github.com:quantumghent/PEPSKit.jl into l…
pbrehmer Jul 3, 2024
906bf38
Fix formatting
pbrehmer Jul 3, 2024
9cc218d
Fix Heisenberg 2x2 test
pbrehmer Jul 3, 2024
2156c66
Fix left_move for unit cells larger than (2, 2)
pbrehmer Jul 3, 2024
9ad0453
Add TF Ising Hamiltonian and test, add TensorKit compat
pbrehmer Jul 3, 2024
dbd9d21
Refactor tensor contraction indices
pbrehmer Jul 4, 2024
0db269d
Rename PEPSHamiltonian to LocalOperator
pbrehmer Jul 4, 2024
b4f2a46
Add @autoopt
lkdvos Jul 4, 2024
bef192b
Add unit cell convention docstring, add unit cell test
pbrehmer Jul 4, 2024
ba81552
Merge branch 'ld-expval' of github.com:quantumghent/PEPSKit.jl into l…
pbrehmer Jul 4, 2024
6bdca77
Add @autoopt to CTMRG contractions
pbrehmer Jul 4, 2024
7f4cecc
escape expression in @autoopt
lkdvos Jul 4, 2024
f0ce77c
Formatter
lkdvos Jul 8, 2024
a51ba5c
Remove debug prints
lkdvos Jul 9, 2024
5d2a8b3
Use non-hermitian eigensolvers for VUMPS
lkdvos Jul 9, 2024
fae7999
Add tf_ising tests
lkdvos Jul 9, 2024
e5e7738
fiddle with rng
lkdvos Jul 9, 2024
f983192
expectation_value is a number
lkdvos Jul 9, 2024
020de0b
update compats
lkdvos Jul 9, 2024
f9783dc
Fix expectation_values
lkdvos Jul 9, 2024
6ec560f
Fix magnetisation test
lkdvos Jul 9, 2024
2715875
Fix some more conventions
lkdvos Jul 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 1 addition & 27 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
fail-fast: false
matrix:
version:
- '1.6' # LTS version
- '1.8' # LTS version
- '1' # automatically expands to the latest stable 1.x release of Julia
os:
- ubuntu-latest
Expand All @@ -47,29 +47,3 @@ jobs:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
file: lcov.info
test-nightly:
needs: test
name: Julia nightly - ${{ matrix.os }} - ${{ matrix.arch }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
version:
- 'nightly'
os:
- ubuntu-latest
- macOS-latest
- windows-latest
arch:
- x64
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.version }}
arch: ${{ matrix.arch }}
- uses: julia-actions/cache@v2
- uses: julia-actions/julia-buildpkg@latest
- uses: julia-actions/julia-runtest@latest
env:
JULIA_NUM_THREADS: 4
13 changes: 8 additions & 5 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
TensorKit = "07d1fe3e-3e46-537d-9eac-e9e13d0d4cec"
TensorOperations = "6aa20fa7-93e2-5fca-9bc0-fbd0db3c71a2"
VectorInterface = "409d34a3-91d5-4945-b6ec-7529ddf182d8"
Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f"

Expand All @@ -24,20 +25,22 @@ ChainRulesCore = "1.0"
Compat = "3.46, 4.2"
KrylovKit = "0.6, 0.7, 0.8"
LinearAlgebra = "1"
MPSKit = "0.10"
MPSKit = "0.11"
OptimKit = "0.3"
Printf = "1"
Random = "1"
Statistics = "1"
TensorKit = "0.12"
TensorKit = "0.12.4"
TensorOperations = "4"
VectorInterface = "0.4"
Zygote = "0.6"
julia = "1.6"
julia = "1.8"

[extras]
SafeTestsets = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
ChainRulesTestUtils = "cdddcdb0-9152-4a09-a978-84456f9df70a"
FiniteDifferences = "26cc04aa-876d-5657-8c51-4c34ba976000"
SafeTestsets = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[targets]
test = ["Test", "SafeTestsets", "ChainRulesTestUtils", "FiniteDifferences"]
7 changes: 4 additions & 3 deletions src/PEPSKit.jl
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,14 @@ using Base: @kwdef
using Compat
using Accessors
using VectorInterface
using TensorKit, KrylovKit, MPSKit, OptimKit
using TensorKit, KrylovKit, MPSKit, OptimKit, TensorOperations
using ChainRulesCore, Zygote

include("utility/util.jl")
include("utility/eigsolve.jl")
include("utility/rotations.jl")
include("utility/hook_pullback.jl")
include("utility/autoopt.jl")

include("states/abstractpeps.jl")
include("states/infinitepeps.jl")
Expand Down Expand Up @@ -59,7 +60,7 @@ module Defaults
end

export CTMRG, CTMRGEnv
export NLocalOperator, AnisotropicNNOperator, OnSite, NearestNeighbor
export LocalOperator
export expectation_value, costfun
export leading_boundary
export PEPSOptimize, GeomSum, ManualIter, LinSolve
Expand All @@ -69,6 +70,6 @@ export InfinitePEPO, InfiniteTransferPEPO
export initializeMPS, initializePEPS
export symmetrize, None, Depth, Full
export showtypeofgrad
export square_lattice_heisenberg, square_lattice_pwave
export square_lattice_tf_ising, square_lattice_heisenberg, square_lattice_pwave

end # module
Loading
Loading