Документ взят из кэша поисковой машины. Адрес оригинального документа : http://theory.sinp.msu.ru/comphep_html/tutorial/node59.html
Дата изменения: Tue Aug 15 14:30:50 2000
Дата индексирования: Mon Oct 1 22:38:25 2012
Кодировка:
Fortran  output files C output files CompHEP output files Reduce program Contents


Fortran  output files

CompHEP  Fortran  output is used to compile the squared matrix element for subsequent evaluation of cross sections and distributions. The explanation below is necessary only if you would like to use the CompHEP  Fortran  output for other phase space integration program or, vice versa, to use the CompHEP  routines to integrate a phase space function produced in some other manner outside CompHEP.

Below we insert the declaration of parameter type into the header of Fortran  routine. It is done for brevity only and contradicts to the Fortran  style. We use also the Real*X designation for declaring the parameter of floating point type which is Real*8 or Real*16 depending on the type of output.

FUNCTION LENR()
returns 8 in the case when CompHEP  produces a code with Real*8 (DOUBLE PRECISION) floating arithmetics or 16 in the case when CompHEP  produces a code with Real*16 (QUADRUPLE PRECISION) floating arithmetics.

FUNCTION NIN()
returns a number of incoming particles.

FUNCTION NOUT()
returns a number of outgoing particles.

FUNCTION NPRC()
returns a total number of subprocesses.

CHARACTER*6 FUNCTION PINF(NSUB,NPRTCL)
returns a particle name for the subprocess NSUB. NPRTCL is the particle ordering number in the subprocess. The first NIN() numbers numerate the incoming particles.

SUBROUTINE PMAS(NSUB,NPRTCL,REAL*X VAL)
returns the particle mass. Incoming parameters are: NSUB - the subprocess number and NPRTCL - the ordering number of particle. Returned parameter is VAL. In the case when LENR()=8 VAL must be a REAL*8 variable, otherwise it must be described as a REAL*16 one.

FUNCTION NVAR()
returns a number of physical parameters involved in the calculation.

SUBROUTINE VINF(NUMVAR,CHARACTER *6 NAME,REAL*8 VAL)
provides the information about physical parameters involved into evaluations. It returns the physical parameter name NAME and its value VAL. The incoming NUMVAR is the parameter ordering number which must be smaller than or equal to NVAR().

SUBROUTINE ASGN(NUMVAR,REAL*8 VALNEW)
assigns to the parameter NUMVAR a new value VALNEW.

SUBROUTINE VINI
makes the initialization of all physical parameters.

SUBROUTINE CPTH(CHARACTER*60 PATH, CHARACTER*1 F_SLASH)
assigns new values to all its parameters. PATH is the path to the CompHEP  root directory. F_SLASH is a symbol which separates file name in the path. It is "/" or "\" in the UNIX and MS-Windows cases correspondingly.

REAL*8 FUNCTION SQME(NSUB)
returns a numerical value of squared matrix element for the subprocess NSUB. Summation over out-particle polarization states and an averaging over in-particle polarization states are carried out. Information about scalar products of momenta must be passed on to the SQME through

\begin{displaymath}
{\it COMMON/SCLR/ REAL*X~ PP(15)}
\end{displaymath} (5)

The assignments of scalar product values to elements of the PP array, like

\begin{displaymath}PP(INDX(k,l)) = p_k.p_l\;\;\; , \end{displaymath}

must be done before the SQME call. We assume that all four-momenta $p_i$ of particles have positive energy components $( p_i^0 > 0)$. PP must be of the REAL*8 type in the case of double precision calculation and of the REAL*16 type for the quadruple precision one.

SQME is sensitive to the states of LOGICAL flags GWIDTH and RWIDTH from the COMMON/WDTH/GWIDTH,RWIDTH. They define the treatment of particle finite width. The GWIDTH flag indicates that the widths do not break gauge invariance. RWIDTH states that the running widths are substituted. See the discussion in Section Breit-Wigner propagator.

It is assumed that the same units ( for example, powers of GeV ) are used for momenta and for physical variables. SQME produces an answer in the

\begin{displaymath}[P]^{(2*(NIN()+NOUT()-4))}\end{displaymath}

units, where [P] is a unit of momentum. Standard normalization for SQME is used. See Eqs. (23.12) and (23.26) in [Particles&Fields]. When n_comphep_f calls the SQME function it substitutes momenta in the GeV units.

FUNCTION INDX(K,L)
returns the position of scalar product $p_k.p_l$ in the PP array (5).


C output files CompHEP output files Reduce program Contents