|
Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://theory.sinp.msu.ru/~semenov/doc/node8.html
Дата изменения: Fri Mar 7 18:07:55 2008 Дата индексирования: Mon Oct 1 21:08:16 2012 Кодировка: |
If some parameters appear to be the elements of the orthogonal matrix such as quark mixing Cabbibo-Kobayashi-Maskava matrix, one should declare them by the statement
OrthMatrix( {{where,
,
}, {
,
,
}, {
,
,
}} ).
Note that this statement has no relation to the arrays;
it just declares that these parameters
satisfy the correspondent
relations.
Of course, one can declare further a matrix with these parameters
as components by means of the let statement.
Some physical models, such as the MSSM
and general Two Higgs Doublet Model [4], involve
large expressions built up of trigonometric functions. In particlular, after
the diagonalization of the Lagrangian in the Higgs sector, in the
models mentioned above two angles,
and
, are introduced, thus
the Lagrangian may be written in LanHEP notation using the following
definitions:
parameter sa=0.5:'sinus alpha',One can find in the output expressions like sa*cb+ca*sb
ca=Sqrt(1-sa**2):'cosine alpha'.
parameter sb=0.9:'sinus beta',
cb=Sqrt(1-sb**2):'cosine beta'.
parameter sapb=sa*cb+ca*sb:'sin(a+b)'.In order to force LanHEP to substitute the expression sa*cb+ca*sb by the parameter sapb, one should use the statement
SetAngle(sa*cb+ca*sb=sapb).It is possible also to substitute an expressions by any polynomial involving paramters, for example,
SetAngle((sa*cb+ca*sb)**2+(sa*cb-ca*sb)**2=sapb**2+samb**2).where samb should be previously declared as a parameter. Note, that LanHEP expands both expressions before setting the substitution rule. The left-hand side expression can also contain symbols defined by let statement. In the Lagrangian expressions LanHEP expresses powers of cosines, ca**N and cb**N through sines using recursively the formula
If the substitution for one angle combination is defined, LanHEP
offers to define the other ones for expressions consisting of
parameters used in previous SetAngle statements. In our example,
for all expressions consisting of parameters ca, cb, sa, sb,
the following message is printed (e.g. for
):
Warning: undefined angle combination; use:Here aa000 is an automatically generated parameter. The message is printed only once for each expression. This feature is disabled by default; to enable producing these messages, one should issue the statement
SetAngle(ca*cb-sa*sb=aa000).
option UndefAngleComb=1.
LanHEP can apply several heuristic algorithms to simplify
these expressions. For each angle
, the user should declare parameters
for
,
,
,
,
.
Than one should use the angle statement:
angle sin=p1, cos=p2, sin2=p3, cos2=p4, tan=p5, texname=name.Here pN -- parameter identifiers, name -- LaTeX name for angle, it is used to generate automatically LaTeX names for trigonometric functions of this angle if these names are not set explicitly by SetTexName statement. This statement should immediately follow the declaration of the parameters for
For example, the declaration for trigonometric functions of
angle
in MSSM may read:
parameter tb=2.52:'Tangent beta'.Here the parameters s2b and c2b are recognized automatically by LanHEP as
parameter sb=tb/Sqrt(1+tb**2):'Sinus beta'.
parameter cb=Sqrt(1-sb**2):'Cosine beta'.
angle sin=sb, cos=cb, tan=tb, texname='beta'.
parameter s2b=2*sb*cb:'Sinus 2 beta'.
parameter c2b=cb**2-sb**2:'Cosine 2 beta'.
For a couple of angles (
,
in this example) the user should
declare the parameters for
,
,
, and
to allow using all implemented
heuristics:
parameter sapb=sa*cb+ca*sb : 'sin(a+b)'.These parameters are recognized as trigonometric functions automatically, by analysis of the right-side expressions.
parameter samb=sa*cb-ca*sb : 'sin(a-b)'.
parameter capb=ca*cb-sa*sb : 'cos(a+b)'.
parameter camb=ca*cb+sa*sb : 'cos(a-b)'.
It is possible to control the usage of heuristics by the statement:
option SmartAngleComb=N.where N is a number:
The substitution rules are printed as SetAngle statement and can be used for manual improvement of expressions.
LanHEP generates LaTeX output instead of CompHEP model files if the user set -tex in the command line to start LanHEP. Three files are produced: 'varsN.tex', 'prtclsN.tex' and 'lgrngN.tex'. The first file contains names of parameter used in physical model and their values. The second file describes the particles, together with propagators derived from the vertices.
The last file lists introduced vertices. LanHEP uses Greek letters
... for vector indices, letters
... for
spinor ones and
... for color indices (and for indices of other
groups, if they were defined).
It is possible to inscribe names for particles and parameters to use them in LaTeX output. It can be done by the statement
SetTexName([ ident=texname, ... ]).Here ident is an identifier of particle or parameter, and texname is string constant containing LaTeX command. Note, that for introducing backslash '
For example, if one has declared neutrino with name n1 (and name for antineutrino N1) than the statement
SetTexName([n1='makes LanHEP to use symbolsnu^e', N1='
bar{
nu}^e']).