Overview of HEP features

Next topic: Mappings of indices

Besides general features for manipulation with tensors and a wide range of general-purpose transformations, Redberry provides a set of transformations and functions required for high energy physics (HEP).

Calculation of one-loop counterterms

Redberry provides a set of tools for calculation of one-loop counterterms in curved space-time. These tools allow to calculate one-loop counterterms of an arbitrary theory (with second or fourth order operator in Lagrangian quadratic form) and background in four dimensions in curved space-time in the dimensional regularization.

For details see Calculating one-loop counterterms and the following tutorials:

Solving equations

Tensorial equations are often occur for example when one need to calculate propagator or find a projector operator etc. Redberry provides a function Reduce which reduces a system of tensorial equations to a system of symbolic equations and allows to solve the last one with external “scalar” CAS.

For examples, see tutorials:

Dirac & SU(N) algebra

Redberry provides a set of common transformations needed for simplification expressions with Dirac and SU(N) matrices.


evaluates trace of gamma matrices:

defineMatrices 'G_m', 'G5', Matrix1.matrix
println DiracTrace[[Gamma: 'G_m']] >> 'Tr[G_m*G_n]'.t
   > 4*g_{mn}
See DiracTrace.


simplifies Dirac spinors:

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*G_{b}+2*cu*p_{b}
See SpinorsSimplify.


simplifies products of gamma matrices:

defineMatrices 'G_a', 'G5', Matrix1.matrix
println DiracSimplify >> 'G5*G_a*G5*G_b*G^a*G^b'.t
   > -8
See DiracSimpllify.


order products of gamma matrices:

defineMatrices 'G_a', 'G5', Matrix1.matrix
println DiracOrder >> 'G5*G_c*G_b*G_a'.t
   > G_{a}*G_{b}*G_{c}*G5+2*G_{b}*G5*g_{ca}-2*G_{c}*G5*g_{ba}-2*G_{a}*G5*g_{cb}
See DiracOrder.


simplifies combinations with Levi-Civita tensors:

println LeviCivitaSimplify.minkowski['e_abcd'.t] >> 'e_abcm*e^abcn'.t
   > -6*d_{m}^{n}
See LeviCivitaSimplify.


generates a list of mass shell and Mandelstam substitutions:

def mandelstam =
     setMandelstam([k1_a: 'm1', k2_a: 'm2', k3_a: 'm3', k4_a: 'm4'])
println mandelstam >> 'k1_a*k2^a + k3_b*k1^b'.t
  > (1/2)*(-m2**2-m1**2+s)-(1/2)*(t-m3**2-m1**2)
See setMandelstam.


generates a list of mass shell and general Mandelstam substitutions for 2→3 processes:

def mandelstam =
     setMandelstam5([k1_a: 'm1', k2_a: 'm2', k3_a: 'm3', k4_a: 'm4', k5_a: 'm5'])
println mandelstam >> 'k1_a*k2^a + k3_b*k1^b + k5_a*k1^a'.t
  > (1/2)*(s-m2**2-m1**2)+(1/2)*(-t1+m3**2+m1**2)+(1/2)*(s+t1-m4**2-m2**2-m3**2+t2-m1**2)
See setMandelstam5.


simplifies combinations of unitary matrices and SU(N) structural and $d$-constants

defineMatrices 'T_A', Matrix2.matrix
println UnitarySimplify[[Matrix: 'T_A']] >> 'T_A*T^A'.t
   > (1/2)*N**(-1)*(N**2-1)
See UnitarySimplify.


evaluates trace of unitary matrices:

defineMatrices 'T_A', Matrix2.matrix
println UnitaryTrace[[Matrix: 'T_A']] >> 'Tr[T_A*T_B]'.t
   > (1/2)*g_{BA}
See UnitaryTrace.

For examples, see tutorials:

See also