DiracSimplify
simplifies products of gamma matricesDiracSimplify
works in $D = 4$; for arbitrary $D$ one can use option DiracSimplify[[Dimension: D]]
DiracSimplify[[Dimension: D, TraceOfOne: 4]]
DiracSimplify
uses notation G_m
for $\gamma_m$ and G5
for $\gamma_5$. DiracSimplify[G, G5]
or DiracSimplify[[Gamma: G, Gamma5: G5]]
specifies the notation for $\gamma_m$ and $\gamma_5$. DiracSimplify[[Simplifications: rules]]
will apply additional simplification rules
to each processed product of gammasSimplify different expressions:
defineMatrices 'G_a', 'G5', Matrix1.matrix def dSimplify = DiracSimplify println dSimplify >> 'G_a*G^a'.t
> 4
println dSimplify >> 'G_a*G_b*G^a'.t
> -2*G_{b}
println dSimplify >> 'G_a*G_b*G^a*G^b'.t
> -8
println dSimplify >> 'G5*G_a*G_b*G^a*G^b*G5*G5'.t
> -8*G5
println dSimplify >> 'G5*G_a*G_b*G^a*G5*G5'.t
> 2*G_{b}
Simplify in different dimensions:
defineMatrices 'G_a', 'G5', Matrix1.matrix def dSimplify = DiracSimplify[[Dimension: 'D']] println dSimplify >> 'G_a*G^a'.t
> D
println dSimplify >> 'G_a*G_b*G^a'.t
> -(-2+D)*G_{b}
Specify additional simplifications:
defineMatrices 'G_a', 'G5', Matrix1.matrix def dSimplify = DiracSimplify[[Simplifications: 'p_a*k^a = s'.t]] println dSimplify >> 'p^b*k^c*G_a*G_b*G_c*G^a'.t
> 4*s