From c4a4bf26487dd7283ac9ceafa2fa9c057b1db964 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brieuc=20Le=20D=C3=A9?= <ledebrieuc@gmail.com> Date: Sat, 7 Dec 2024 12:27:14 +0100 Subject: [PATCH] add rhoABstar methods --- src/tensorOps.jl | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/tensorOps.jl b/src/tensorOps.jl index 7206956..1b8c1fd 100644 --- a/src/tensorOps.jl +++ b/src/tensorOps.jl @@ -46,6 +46,12 @@ end function rhoAAstar(ρ::Array{T1,2}, A::Array{T2,3}) where {T1,T2} return @tensoropt ρO[a,b] := ρ[a0,b0] * conj(A[a0,a,s]) * A[b0,b,s] end +function rhoABstar(ρ::Array{T1,2}, A::Array{T2,2}, B::Array{T3,2}) where {T1,T2,T3} + @tensoropt ρO = tensorscalar(ρ[a0,b0] * conj(B[a0,s]) * A[b0,s]) +end +function rhoABstar(ρ::Array{T1,2}, A::Array{T2,3}, B::Array{T3,3}) where {T1,T2,T3} + return @tensoropt ρO[a,b] := ρ[a0,b0] * conj(B[a0,a,s]) * A[b0,b,s] +end function rhoAAstar(ρ::Array{T1,2}, A::Array{T2,4}, indir::Int, outdir::Int) where {T1,T2} indir==1 && outdir==2 && return @tensoropt ρO[a,b] := ρ[a0,b0] * conj(A[a0,a,c0,s]) * A[b0,b,c0,s]