next up previous contents
Next: Splitting the vertices with Up: The LanHEP Handbook Previous: Simplifying the expression for   Contents

Subsections


Declaration of new index types and indexed objects

Declaring new groups

Index type is defined by two keywords1: group name and representation name. Thus, color triplet index type color c3 has group name color and representation name c3.

LanHEP allows user to introduce new group names by the group statement:

group gname.
Here gname is a string constant, which becomes the name of newly declared group.

Representation names for each group name must be declared by the statement

repres gname:(rlist)
where rlist is a comma-separated list of representation names declaration for the already declared group name gname. Each such declaration has the form either rname or rname/crname. In the first case index which belongs to the gname rname type can be contracted with another index of the same type; in the second case index of gname rname type can be contracted only with an index of gname crname type.

For example, definition for color $SU(3)$ group with fundamental, conjugate fundamental and adjoint representations looks like:

group color:SU(3).
repres color:(c3/c3b,c8).
So, three index types can be used: color c3, color c3b, color c8. The contraction of these indices is allowed by pairs (color c3, color c3b) and (color c8, color c8) indices.

Declaring new specials

Specials with indices of user-defined types can be declared by means of special statement:

special name:(ilist).
Here name is the name of new symbol, and ilist is a comma-separated list of indices types. For example, Gell-Mann matrices can be defined as (although color group and its indices types are already defined):
special lambda:(color c3, color c3b, color c8).

To define Dirac's $\gamma$-matrices one can use the command

special gamma:(spinor, cspinor, vector).

Arrays

Array, i.e. the object with explicit components, can also have the user-defined type of index. In this case generic form of such object is

{ expr1, expr2 ... ,exprN ; itype }
where $N$ expressions expr1 ... exprN of $N$ components are separated by comma, and itype is an optional index type. If itype is omitted LanHEP uses default group name wild and index type wild N, where N is a number of components in the array.


next up previous contents
Next: Splitting the vertices with Up: The LanHEP Handbook Previous: Simplifying the expression for   Contents
Andrei Semenov 2008-02-16