====== SpinorsSimplify ======
----
====Description====
* ''%%SpinorsSimplify%%'' simplifies products of $\gamma$-matrices and Dirac spinors using Dirac equation
* By default ''%%SpinorsSimplify%%'' works in $D = 4$; for arbitrary $D$ one can use option ''%%SpinorsSimplify[[Dimension: D]]%%''
* One can directly set trace of identity matrix (e.g. for dimensional regularisation): ''%%SpinorsSimplify[[Dimension: D, TraceOfOne: 4]]%%''
* The notation for Dirac spinors should be specified using ''%%SpinorsSimplify[[u: u, v: v, uBar: uBar, vBar: vBar, Momentum: m, Mass: m]]%%''
* By default ''SpinorsSimplify'' uses notation ''G_m'' for $\gamma_m$ and ''G5'' for $\gamma_5$. ''%%SpinorsSimplify[[Gamma: G, Gamma5: G5]]%%'' specifies the notation for $\gamma_m$ and $\gamma_5$.
* ''%%SpinorsSimplify[[Simplifications: rules]]%%'' will apply additional simplification ''rules'' to each processed expression
====Examples====
----
Simplify Dirac $\bar u$ spinors in expression:
defineMatrices 'G_a', 'G5', Matrix1.matrix, 'cu', Matrix1.covector
def sSimplify = SpinorsSimplify[[uBar: 'cu', Momentum: 'p_a', Mass: 'm']]
println sSimplify >> 'cu*G^a*p_a'.t
> m*cu
println sSimplify >> 'cu*G_b*G^a*p_a'.t
> -m*cu*G_{b}+2*cu*p_{b}
----
Simplify different spinors:
defineMatrices 'G_a', 'G5', Matrix1.matrix,
'cu', 'cv', Matrix1.covector,
'u', 'v', Matrix1.vector
def sSimplify = SpinorsSimplify[[uBar: 'cu', vBar: 'cv', u: 'u', v: 'v',
Momentum: 'p_a', Mass: 'm']]
println sSimplify >> 'cu*p^a*G_a*G_b*G_c*v'.t
> m*cu*G_b*G_c*v
println sSimplify >> 'p^a*G5*G_a*G_b*G_cG5*u'.t
> m*G_b*G_c*u+2*G_c*u*p_b-2*G_b*u*p_c
println sSimplify >> 'p^a*G_a*G_b*G_c*v'.t
> -m*G_b*G_c*v+2*G_c*v*p_b-2*G_b*v*p_c
----
With ''DiracSimplify: true'' an additional simplification of Dirac gammas will be performed automatically:
def options = [uBar: 'cu', vBar: 'cv', u: 'u', v: 'v',
Momentum: 'p_a', Mass: 'm', DiracSimplify: true]
def sSimplify = SpinorsSimplify[options]
println sSimplify >> 'cu*G^a*G_b*G_a*p^b'.t
> -2*m*cu
Do the same in $D$ dimensions:
options['Dimension'] = 'D'
sSimplify = SpinorsSimplify[options]
println sSimplify >> 'cu*G^a*G_b*G_a*p^b'.t
> (-D*m+2*m)*cu
====See also====
* Related guides: [[documentation:guide:applying_and_manipulating_transformations]], [[documentation:guide:Setting up matrix objects]], [[documentation:guide:list_of_transformations]]
* Related transformations: [[documentation:ref:DiracTrace]], [[documentation:ref:DiracSimplify]], [[documentation:ref:DiracOrder]], [[documentation:ref:LeviCivitaSimplify]], [[documentation:ref:UnitaryTrace]]
* JavaDocs: [[http://api.redberry.cc/redberry/1.1.9/java-api//cc/redberry/physics/feyncalc/SpinorsSimplifyTransformation.html| SpinorsSimplifyTransformation]]
* Source code: [[https://bitbucket.org/redberry/redberry/src/tip/physics/src/main/java/cc/redberry/physics/feyncalc/SpinorsSimplifyTransformation.java|SpinorsSimplifyTransformation.java]]