====== DiracOrder ======
----
====Description====
* ''%%DiracOrder%%'' brings all products of $\gamma$-matrices to alphabetical order
* By default ''%% DiracOrder%%'' works in $D = 4$; for arbitrary $D$ one can use option ''%% DiracOrder[[Dimension: D]]%%''
* One can directly set trace of identity matrix (e.g. for dimensional regularisation): ''%% DiracOrder[[Dimension: D, TraceOfOne: 4]]%%''
* By default ''DiracOrder'' uses notation ''G_m'' for $\gamma_m$ and ''G5'' for $\gamma_5$. ''%% DiracOrder[[Gamma: G, Gamma5: G5]]%%'' specifies the notation for $\gamma_m$ and $\gamma_5$.
====Examples====
----
Order product of $\gamma$-matrices:
defineMatrices 'G_a', 'G5', Matrix1.matrix
def dOrder = DiracOrder
println dOrder >> 'G_b*G_a'.t
> 2*g_{ba}-G_{a}*G_{b}
println dOrder >> 'G_d*G_c*G_b*G_a'.t
> G_{a}*G_{b}*G_{c}*G_{d}-2*G_{c}*G_{d}*g_{ab}+2*G_{b}*G_{d}*g_{ac}-2*G_{b}*G_{c}*g_{ad}
-2*G_{a}*G_{d}*g_{bc}+4*g_{ad}*g_{bc}+2*G_{a}*G_{c}*g_{bd}-4*g_{ac}*g_{bd}
-2*G_{a}*G_{b}*g_{cd}+4*g_{ab}*g_{cd}
----
All $\gamma_5$ will be shift right:
defineMatrices 'G_a', 'G5', Matrix1.matrix
def dOrder = DiracOrder
println dOrder >> 'G5*G_b*G_a'.t
> 2*G5*g_{ba}-G_{a}*G_{b}*G5
----
Use another notation for $\gamma$-matrices:
defineMatrices 'F_a', 'F5', Matrix1.matrix
def dOrder = DiracOrder[[Gamma: 'F_a', Gamma5: 'F5']]
println dOrder >> 'F_b*F_a'.t
> 2*g_{ba}-F_{a}*F_{b}
====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:DiracSimplify]], [[documentation:ref:DiracTrace]], [[documentation:ref:SpinorsSimplify]]
* JavaDocs: [[http://api.redberry.cc/redberry/1.1.9/java-api//cc/redberry/physics/feyncalc/DiracOrderTransformation.html| DiracOrderTransformation]]
* Source code: [[https://bitbucket.org/redberry/redberry/src/tip/physics/src/main/java/cc/redberry/physics/feyncalc/DiracOrderTransformation.java|DiracOrderTransformation.java]]