From a32b7be66cb5181a86f4749bb78d68df4bf10bd2 Mon Sep 17 00:00:00 2001 From: "Fernando P. Panadero" Date: Mon, 20 Nov 2023 14:22:38 +0100 Subject: [PATCH] Algebra product and typos in Spinors.jl --- src/Spinors/Spinors.jl | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/src/Spinors/Spinors.jl b/src/Spinors/Spinors.jl index ffc934b..81b438e 100644 --- a/src/Spinors/Spinors.jl +++ b/src/Spinors/Spinors.jl @@ -50,7 +50,7 @@ Returns the scalar product of two spinors. sum = :(dot(a.s[1],b.s[1])) for i in 2:NS - sum = :($sum + norm2(a.s[$i])) + sum = :($sum + dot(a.s[$i],b.s[$i])) end return :($sum) @@ -64,6 +64,21 @@ Returns ga """ Base.:*(g::S,b::Spinor{NS,G}) where {S <: Group,NS,G} = Spinor{NS,G}(ntuple(i->g*b.s[i], NS)) +""" + *(a::SU3alg{T},b::Spinor) + +Returns ab +""" +Base.:*(a::S,b::Spinor{NS,G}) where {S <: Algebra,NS,G} = Spinor{NS,G}(ntuple(i->a*b.s[i], NS)) + +""" + *(a::M3x3{T},b::Spinor) + +Returns ab +""" +Base.:*(a::S,b::Spinor{NS,G}) where {S <: GMatrix,NS,G} = Spinor{NS,G}(ntuple(i->a*b.s[i], NS)) + + """ \\(g::SU3{T},b::Spinor{NS,G}) @@ -75,9 +90,9 @@ Base.:\(g::S,b::Spinor{NS,G}) where {S <: Group,NS,G} = Spinor{NS,G}(ntuple(i->g Base.:+(a::Spinor{NS,G},b::Spinor{NS,G}) where {NS,G} = Spinor{NS,G}(ntuple(i->a.s[i]+b.s[i], NS)) Base.:-(a::Spinor{NS,G},b::Spinor{NS,G}) where {NS,G} = Spinor{NS,G}(ntuple(i->a.s[i]-b.s[i], NS)) Base.:+(a::Spinor{NS,G}) where {NS,G} = a -Base.:-(a::Spinor{NS,G}) where {NS,G} = Spinor{NS,G}(ntuple(i->-b.s[i], NS)) -imm(a::Spinor{NS,G}) where {NS,G} = Spinor{NS,G}(ntuple(i->imm(b.s[i]), NS)) -mimm(a::Spinor{NS,G}) where {NS,G} = Spinor{NS,G}(ntuple(i->mimm(b.s[i]), NS)) +Base.:-(a::Spinor{NS,G}) where {NS,G} = Spinor{NS,G}(ntuple(i->-a.s[i], NS)) +imm(a::Spinor{NS,G}) where {NS,G} = Spinor{NS,G}(ntuple(i->imm(a.s[i]), NS)) +mimm(a::Spinor{NS,G}) where {NS,G} = Spinor{NS,G}(ntuple(i->mimm(a.s[i]), NS)) # Operations with numbers