From d65f6eb9d25b0a5cbe6f83495b945e6994c7742a Mon Sep 17 00:00:00 2001 From: lkdvos Date: Mon, 30 Mar 2026 19:22:48 -0400 Subject: [PATCH] small fixes for density operators --- src/algorithms/toolbox.jl | 4 ++-- src/operators/mpohamiltonian.jl | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/algorithms/toolbox.jl b/src/algorithms/toolbox.jl index edcb83695..3d9cad9dd 100644 --- a/src/algorithms/toolbox.jl +++ b/src/algorithms/toolbox.jl @@ -199,7 +199,7 @@ function variance( state.AC[i], envs.GLs[i], H[i][:, :, :, end], envs.GRs[i][end] ) end - lattice = physicalspace(state) + lattice = physicalspace(H) H_renormalized = InfiniteMPOHamiltonian( lattice, i => e * id(storagetype(eltype(H)), lattice[i]) for (i, e) in enumerate(e_local) ) @@ -226,7 +226,7 @@ function variance(state::InfiniteQP, H::InfiniteMPOHamiltonian, envs = environme GR = rightenv(envs, i, gs) return contract_mpo_expval(gs.AC[i], GL, H[i][:, :, :, end], GR[end]) end - lattice = physicalspace(gs) + lattice = physicalspace(H) H_regularized = H - InfiniteMPOHamiltonian( lattice, i => e * id(storagetype(eltype(H)), lattice[i]) for (i, e) in enumerate(e_local) ) diff --git a/src/operators/mpohamiltonian.jl b/src/operators/mpohamiltonian.jl index 1f2e7f980..daf7eb6a5 100644 --- a/src/operators/mpohamiltonian.jl +++ b/src/operators/mpohamiltonian.jl @@ -442,6 +442,7 @@ function FiniteMPOHamiltonian(lattice::AbstractArray{<:VectorSpace}, local_opera # avoid using one(S) P = first(lattice) + P = P isa ProductSpace ? P[length(P)] : P _rightunit = rightunitspace(P) @assert _rightunit == leftunitspace(P) "only diagonal hamiltonians allowed" @@ -530,6 +531,7 @@ function InfiniteMPOHamiltonian(lattice′::AbstractArray{<:VectorSpace}, local_ ) # avoid using one(S) P = first(lattice) + P = P isa ProductSpace ? P[length(P)] : P _rightunit = rightunitspace(P) @assert _rightunit == leftunitspace(P) "only diagonal hamiltonians allowed"