From abe92d9188c233785046f00653f97c989a6acaa9 Mon Sep 17 00:00:00 2001 From: leburgel Date: Tue, 25 Jun 2024 15:29:27 +0200 Subject: [PATCH] Add nontrivial unit cell and change some settings to 'force' optimization to proceed --- test/pwave.jl | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/test/pwave.jl b/test/pwave.jl index 1d1b48c5..56697826 100644 --- a/test/pwave.jl +++ b/test/pwave.jl @@ -32,27 +32,27 @@ end # Initialize parameters H = square_lattice_pwave() χbond = 2 -χenv = 24 +χenv = 16 ctm_alg = CTMRG(; - trscheme=truncdim(χenv), tol=1e-10, miniter=4, maxiter=400, fixedspace=true, verbosity=1 + trscheme=truncdim(χenv), tol=1e-10, miniter=4, maxiter=100, fixedspace=true, verbosity=1 ) opt_alg = PEPSOptimize(; boundary_alg=ctm_alg, optimizer=LBFGS(4; maxiter=100, gradtol=1e-3, verbosity=2), - gradient_alg=GMRES(; tol=1e-6, maxiter=10), + gradient_alg=GMRES(; tol=1e-6, maxiter=3, verbosity=2), reuse_env=true, verbosity=2, ) # initialize states -Random.seed!(91283219347) +Random.seed!(96678827397) Pspace = Vect[FermionParity](0 => 1, 1 => 1) Vspace = Vect[FermionParity](0 => χbond ÷ 2, 1 => χbond ÷ 2) Envspace = Vect[FermionParity](0 => χenv ÷ 2, 1 => χenv ÷ 2) -psi_init = InfinitePEPS(Pspace, Vspace, Vspace) +psi_init = InfinitePEPS(Pspace, Vspace, Vspace; unitcell=(2, 2)) env_init = leading_boundary(CTMRGEnv(psi_init; Venv=Envspace), psi_init, ctm_alg); # find fixedpoint result = fixedpoint(psi_init, H, opt_alg, env_init) -@test result.E ≈ -2.60053 atol = 1e-2 #comparison with Gaussian PEPS minimum at D=2 on 1000x1000 square lattice with aPBC +@test result.E / prod(size(psi_init)) ≈ -2.60053 atol = 1e-2 #comparison with Gaussian PEPS minimum at D=2 on 1000x1000 square lattice with aPBC