Supersymmetry Common-Blocks and Routines

The parameters available to the SUSY user are stored in the
common block `PYMSSM`. In general, options are set by the `IMSS`
array, while real valued parameters are set by `RMSS`. The entries
`IMSS(0)` and `RMSS(0)` are not used, but are available
for compatibility with the C programming language. Note also that most
options are only used by PYTHIA's internal SUSY machinery and are ineffective
when external spectrum calculations are used, see section .

**Purpose:**- to give access to parameters that allow the
simulation of the MSSM.
`IMSS(1) :`- (D = 0) level of MSSM simulation.
`= 0 :`- No MSSM simulation.
`= 1 :`- A general MSSM simulation. The parameters of the model
are set by the array
`RMSS`. `= 2 :`- An approximate SUGRA simulation using the analytic
formulae of [Dre95] to reduce the number of free parameters.
In this case, only five input parameters are used.
`RMSS(1)`is the common gaugino mass ,`RMSS(8)`is the common scalar mass ,`RMSS(4)`fixes the sign of the higgsino mass ,`RMSS(16)`is the common trilinear coupling , and`RMSS(5)`is . `= 11 :`- Read spectrum from a SUSY Les Houches Accord (SLHA)
conformant file. The Logical Unit Number on which the file is opened
should be put in
`IMSS(21)`. If a decay table should also be read in, the corresponding Unit Number (normally the same as the spectrum file) should be put in`IMSS(22)`. Cross sections are still calculated by PYTHIA, as are decays for those sparticles and higgs bosons for which a decay table is not found on the file. `= 12 :`- Invoke a runtime interface to ISASUSY [Bae93]
for determining SUSY mass spectrum and mixing parameters. This
provides a more precise solution of the renormalization group
equations than is offered by the option
`= 2`above. The interface automatically asks the`SUGRA`routine (part of ISASUSY) to solve the RGE's for the weak scale mass spectrum and mixing parameters. The mSUGRA input parameters should be given in`RMSS`as usual, i.e.:`RMSS(1) =`,`RMSS(4) =`sign(),`RMSS(5) =`,`RMSS(8) =`, and`RMSS(16) =`. As before, we are using the conventions of [Hab85,Gun86a] everywhere. Cross sections and decay widths are still calculated by PYTHIA, using the output provided by ISASUSY. Note that since PYTHIA cannot always be expected to be linked with the ISAJET library, two dummy routines and a dummy function are included. These are`SUGRA`,`SSMSSM`and`VISAJE`, located towards the very bottom of the PYTHIA source code. These routines must be removed and PYTHIA recompiled before a proper linking with ISAJET can be achieved. Furthermore, the common-block sizes and variable positions accessed in the`SUGRA`routine have to match those of the ISAJET version used, see section . `= 13 :`- File-based run-time ISASUSY interface, i.e. using
an ISAJET input file. The contents of the input file should be
identical to what would normally be typed when using the ISAJET
RGE executable stand-alone (normally
`isasugra.x`). The input file should be opened by the user in his/her main program and the Logical Unit Number should be stored in`IMSS(20)`, where PYTHIA will look for it during initialization. PYTHIA will then pass the parameters to the`SUGRA`subroutine in ISAJET for RGE evolution and will afterwards extract the electroweak scale mass and coupling spectra to its own common blocks. For example, the first line of the input file should contain the model code: 1 for mSUGRA, 2 for mGMSB, 3 for non-universal SUGRA, 4 for SUGRA with truly unified gauge couplings, 5 for non-minimal GMSB, 6 for SUGRA+right-handed neutrino, 7 for anomaly-mediated SUSY breaking. The ensuing lines should contain the input parameters.

While option`IMSS(1) = 12`above can only be used for mSUGRA scenarios, but then is easy to use, the current option allows the full range of ISAJET models to be accessed.

`IMSS(2) :`- (D = 0) treatment of
**U(1)**,**SU(2)**, and**SU(3)**gaugino mass parameters.`= 0 :`- The gaugino parameters and are
set by
`RMSS(1), RMSS(2),`and`RMSS(3)`, i.e. there is no forced relation between them. `= 1 :`- The gaugino parameters are fixed by the relation
and the
parameter
`RMSS(1)`. If`IMSS(1) = 2`, then`RMSS(1)`is treated as the common gaugino mass and`RMSS(20)`is the GUT scale coupling constant , so that . `= 2 :`- is set by
`RMSS(1)`, by`RMSS(2)`and . In such a scenario, the**U(1)**gaugino mass behaves anomalously.

`IMSS(3) :`- (D = 0) treatment of the gluino mass parameter.
`= 0 :`- The gluino mass parameter is used to calculate the gluino pole mass with the formulae of [Kol96]. The effects of squark loops can significantly shift the mass.
`= 1 :`- is the gluino pole mass. The effects of squark loops are assumed to have been included in this value.

`IMSS(4) :`- (D = 1) treatment of the Higgs sector.
`= 0 :`- The Higgs sector is determined by
the approximate formulae of [Car95] and the pseudoscalar mass
set by
`RMSS(19)`. `= 1 :`- The Higgs sector is determined by the exact
formulae of [Car95] and the pseudoscalar mass
set by
`RMSS(19)`. The pole mass for is not the same as the input parameter. `= 2 :`- The Higgs sector is fixed by the mixing angle
set by
`RMSS(18)`and the mass values`PMAS(I,1)`, where`I = 25, 35, 36,`and`37`. `= 3 :`- Call FEYNHIGGS [Hei99] for a precise calculation
of Higgs masses. For the time being, it can be invoked either when using
an SLHA SUSY spectrum, i.e. for
`IMSS(1) = 11`, or when using the run-time interface to ISASUSY, i.e. for`IMSS(1) = 12, 13`. When FEYNHIGGS is to be linked, the three dummy routines`FHSETFLAGS`,`FHSETPARA`and`FHHIGGSCORR`need first be removed from the PYTHIA library.

`IMSS(5) :`- (D = 0) allows you to set the
,
and
masses and mixing by hand.
`= 0 :`- no, the program calculates itself.
`= 1 :`- yes, calculate from given input. The parameters
`RMSS(26) - RMSS(28)`specify the mixing angle (in radians) for the sbottom, stop, and stau. The parameters`RMSS(10) - RMSS(14)`specify the two stop masses, the one sbottom mass (the other being fixed by the other parameters) and the two stau masses. Note that the masses`RMSS(10), RMSS(11)`and`RMSS(13)`correspond to the left-left entries of the diagonalized matrices, while`RMSS(12)`and`RMSS(14)`correspond to the right-right entries. Note that these entries need not be ordered in mass.

`IMSS(7) :`- (D = 0) treatment of the scalar masses in an
extension of SUGRA models. The presence of additional
**U(1)**symmetries at high energy scales can modify the boundary conditions for the scalar masses at the unification scale.`= 0 :`- No additional -terms are included. In SUGRA models, all scalars have the mass at the unification scale.
`= 1 :``RMSS(23) - RMSS(25)`are the values of and at the unification scale in the model of [Mar94]. The boundary conditions for the scalar masses are shifted based on their quantum numbers under the additional**U(1)**symmetries.

`IMSS(8) :`- (D = 0) treatment of the mass eigenstates.
`= 0 :`- The mass eigenstates are calculated
using the parameters
`RMSS(13, 14, 17)`. `= 1 :`- The mass eigenstates are identical to the interaction eigenstates, so they are treated identically to and .

`IMSS(9) :`- (D = 0) treatment of the right-handed squark mass
eigenstates for the first two generations.
`= 0 :`- The
masses are fixed by
`RMSS(9)`. and are identical except for Electroweak -term contributions. `= 1 :`- The masses of
and
are fixed by
`RMSS(9)`and`RMSS(22)`respectively.

`IMSS(10) :`- (D = 0) allowed decays for
.
`= 0 :`- The second lightest neutralino decays with a branching ratio calculated from the MSSM parameters.
`= 1 :`- is forced to decay only to , regardless of the actual branching ratio. This can be used for detailed studies of this particular final state.

`IMSS(11) :`- (D = 0) choice of the lightest superpartner (LSP).
`= 0 :`- is the LSP.
`= 1 :`-
is the next to lightest superparter (NLSP)
and the gravitino is the LSP. The
decay length is calculated from the gravitino
mass set by
`RMSS(21)`and the mass and mixing.

`IMSS(13) :`- (D = 0) possibility to extend the particle content
recognized by PYTHIA to that of the Next-to-Minimal Supersymmetric
Standard Model (NMSSM).
`= 0 :`- MSSM particle content.
`= 1 :`- NMSSM particle content
**Note:**- at present,
`= 1`merely allows PYTHIA to recognize the NMSSM particles. PYTHIA does not contain any internal machinery for doing calculations in the NMSSM. Thus, the basic scattering processes should be generated by an external program and handed to PYTHIA via the LHA interface for parton-level events. This should then be combined with either setting the NMSSM resonance decays by hand, or by reading in an SLHA decay table prepared by an external decay package.

`IMSS(20) :`- (D = 0) Logical Unit Number on which the SUSY model
parameter file is opened, for file-based run-time interface to the
ISAJET SUSY RGE machinery, see
`IMSS(1) = 13`. `IMSS(21) :`- (D = 0) Logical Unit Number for SLHA spectrum read-in.
Only used if
`IMSS(1) = 11`. `IMSS(22) :`- (D = 0) Read-in of SLHA decay table.
`= 0 :`- No decays are read in. The internal PYTHIA machinery is used to calculate decay rates.
`> 0 :`- Read decays from SLHA file on unit number
`IMSS(22)`. During initialization, decay tables in the file will replace the values calculated by PYTHIA. Particles for which the file*does not*contain a decay table will thus still have their decays calculated by PYTHIA. Any decay lines associated with a zero width mother are ignored, giving a fast way of switching off decays without having to comment out all the decay lines. In normal usage one would expect`IMSS(22)`to be equal to`IMSS(21)`, to ensure that the spectrum and decays are consistent with each other, but this is not a strict requirement.

`IMSS(23) :`- (D = 0) writing of MSSM spectrum data.
`= 0 :`- Don't write out spectrum.
`> 0 :`- Write out spectrum in SLHA format (calculated by PYTHIA or
otherwise) to file on unit number
`IMSS(23)`.

`IMSS(24) :`- (D = 0) writing of MSSM particle decay table.
`= 0 :`- Don't write out decay table.
`> 0 :`- Write out decay table in SLHA format to file on unit number
`IMSS(24)`. Not implemented in the code yet. In normal usage one would expect`IMSS(24)`to be equal to`IMSS(23)`, to ensure that the spectrum and decays are consistent with each other, but this is not a strict requirement.

`IMSS(51) :`- (D = 0) Lepton number violation on/off
(LLE type couplings).
`= 0 :`- All LLE couplings off. LLE decay channels off.
`= 1 :`- All LLE couplings set to common value given by .
`= 2 :`- LLE couplings set to generation-hierarchical
`natural' values with common normalization
`RMSS(51)`(see section ). `= 3 :`- All LLE couplings set to zero, but LLE decay channels not
switched off. Non-zero couplings should be entered individually into the
array
`RVLAM(I,J,K)`. Because of the antisymmetry in I and J, only entries with I J need be entered.

`IMSS(52) :`- (D = 0) Lepton number violation on/off
(LQD type couplings).
`= 0 :`- All LQD couplings off. LQD decay channels off.
`= 1 :`- All LQD couplings set to common value given by .
`= 2 :`- LQD couplings set to generation-hierarchical
`natural' values with common normalization
`RMSS(52)`(see section ). `= 3 :`- All LQD couplings set to zero, but LQD decay channels not
switched off. Non-zero couplings should be entered individually into the
array
`RVLAMP(I,J,K)`.

`IMSS(53) :`- (D = 0) Baryon number violation on/off
`= 0 :`- All UDD couplings off. UDD decay channels off.
`= 1 :`- All UDD couplings set to common value given by .
`= 2 :`- UDD couplings set to generation-hierarchical
`natural' values with common normalization
`RMSS(53)`(see section ). `= 3 :`- All UDD couplings set to zero, but UDD decay channels not
switched off. Non-zero couplings should be entered individually into the
array
`RVLAMB(I,J,K)`. Because of the antisymmetry in J and K, only entries with J K need be entered.

`RMSS(1) :`- (D = 80. GeV) If
`IMSS(1) = 1`, then**U(1)**gaugino mass. If`IMSS(1) = 2`, then the common gaugino mass . `RMSS(2) :`- (D = 160. GeV) , the
**SU(2)**gaugino mass. `RMSS(3) :`- (D = 500. GeV) , the
**SU(3)**(gluino) mass parameter. `RMSS(4) :`- (D = 800. GeV) , the higgsino mass parameter.
If
`IMSS(1) = 2`, only the sign of is used. `RMSS(5) :`- (D = 2.) , the ratio of Higgs expectation
values.
`RMSS(6) :`- (D = 250. GeV) Left slepton mass
.
The sneutrino mass is fixed by a sum rule.
`RMSS(7) :`- (D = 200. GeV) Right slepton mass
.
`RMSS(8) :`- (D = 800. GeV) Left squark mass
. If
`IMSS(1) = 2`, the common scalar mass . `RMSS(9) :`- (D = 700. GeV) Right squark mass
.
when
`IMSS(9) = 1`. `RMSS(10) :`- (D = 800. GeV) Left squark mass for the third
generation
. When
`IMSS(5) = 1`, it is instead the mass, and is a derived quantity. `RMSS(11) :`- (D = 700. GeV) Right sbottom mass
. When
`IMSS(5) = 1`, it is instead the mass. `RMSS(12) :`- (D = 500. GeV) Right stop mass
If
negative, then it is assumed that
. When
`IMSS(5) = 1`, it is instead the mass. `RMSS(13) :`- (D = 250. GeV) Left stau mass
.
`RMSS(14) :`- (D = 200. GeV) Right stau mass
.
`RMSS(15) :`- (D = 800. GeV) Bottom trilinear coupling . When
`IMSS(5) = 1`, it is a derived quantity. `RMSS(16) :`- (D = 400. GeV) Top trilinear coupling . If
`IMSS(1) = 2`, the common trilinear coupling . When`IMSS(5) = 1`, it is a derived quantity. `RMSS(17) :`- (D = 0.) Tau trilinear coupling . When
`IMSS(5) = 1`, it is a derived quantity. `RMSS(18) :`- (D = 0.1) Higgs mixing angle . This is only
used when all of the Higgs parameters are set by you, i.e
`IMSS(4) = 2`. `RMSS(19) :`- (D = 850. GeV) Pseudoscalar Higgs mass parameter
.
`RMSS(20) :`- (D = 0.041) GUT scale coupling constant
.
`RMSS(21) :`- (D = 1.0 eV) The gravitino mass. Note nonconventional
choice of units for this particular mass.
`RMSS(22) :`- (D = 800. GeV)
mass when
`IMSS(9) = 1`. `RMSS(23) :`- (D = 10 GeV) contribution to scalar
masses when
`IMSS(7) = 1`. `RMSS(24) :`- (D = 10 GeV) contribution to scalar
masses when
`IMSS(7) = 1`. `RMSS(25) :`- (D = 10 GeV) contribution to scalar
masses when
`IMSS(7) = 1`. `RMSS(26) :`- (D = 0.0 radians) when
`IMSS(5) = 1`it is the sbottom mixing angle. `RMSS(27) :`- (D = 0.0 radians) when
`IMSS(5) = 1`it is the stop mixing angle. `RMSS(28) :`- (D = 0.0 radians) when
`IMSS(5) = 1`it is the stau mixing angle. `RMSS(29) :`- (D =
GeV) The Planck mass,
used for calculating decays to light gravitinos.
`RMSS(30) - RMSS(33) :`- (D = 0.0, 0.0, 0.0, 0.0) complex phases for
the mass parameters in
`RMSS(1) - RMSS(4)`, where the latter represent the moduli of the mass parameters for the case of nonvanishing phases. `RMSS(40), RMSS(41) :`- used for temporary storage of the corrections
and
, respectively, in the calculation of
Higgs properties.
`RMSS(51) :`- (D = 0.0) when
`IMSS(51) = 1`it is the negative logarithm of the common value for all lepton-number-violating couplings (LLE). When`IMSS(51) = 2`it is the constant of proportionality for generation-hierarchical couplings. See section . `RMSS(52) :`- (D = 0.0) when
`IMSS(52) = 1`it is the negative logarithm of the common value for all lepton-number-violating couplings (LQD). When`IMSS(52) = 2`it is the constant of proportionality for generation-hierarchical couplings. See section . `RMSS(53) :`- (D = 0.0) when
`IMSS(53) = 1`it is the negative logarithm of the common value for all baryon-number-violating couplings (UDD). When`IMSS(53) = 2`it is the constant of proportionality for generation-hierarchical couplings. See section .

**Purpose:**- to provide information on the neutralino, chargino,
and sfermion mixing parameters. The variables should not be changed
by you.
`ZMIX(4,4) :`- the real part of the neutralino mixing
matrix in the Bino-neutral Wino-Up higgsino-Down higgsino basis.
`UMIX(2,2) :`- the real part of the chargino mixing
matrix in the charged Wino-charged higgsino basis.
`VMIX(2,2) :`- the real part of the charged conjugate
chargino mixing matrix in the wino-charged higgsino basis.
`SMZ(4) :`- the signed masses of the neutralinos.
`SMW(2) :`- the signed masses of the charginos.
`SFMIX(16,4) :`- the sfermion mixing matrices
**T**in the L-R basis, identified by the corresponding fermion, i.e.`SFMIX(6,I)`is the stop mixing matrix. The four entries for each sfermion are and . `ZMIXI(4,4) :`- the imaginary part of the neutralino
mixing matrix in the Bino-neutral Wino-Up higgsino-Down higgsino basis.
`UMIXI(2,2) :`- the imaginary part of the chargino
mixing matrix in the charged Wino-charged higgsino basis.
`VMIXI(2,2) :`- the imaginary part of the charged conjugate chargino mixing matrix in the wino-charged higgsino basis.

**Purpose:**- to provide information on lepton- and
baryon-number-violating couplings.
`RVLAM(3,3,3) :`- the lepton-number-violating
couplings. See
`IMSS(51)`,`RMSS(51)`. `RVLAMP(3,3,3) :`- the lepton-number-violating
couplings. See
`IMSS(52)`,`RMSS(52)`. `RVLAMB(3,3,3) :`- the baryon-number-violating
couplings. See
`IMSS(53)`,`RMSS(53)`.

The following subroutines and functions need not be accessed by the user, but are described for completeness.

`SUBROUTINE PYAPPS :`- uses approximate analytic formulae to
determine the full set of MSSM parameters from SUGRA inputs.
`SUBROUTINE PYGLUI :`- calculates gluino decay modes.
`SUBROUTINE PYGQQB :`- calculates three-body decays of gluinos
into neutralinos or charginos and third generation fermions. These
routines are valid for large values of .
`SUBROUTINE PYCJDC :`- calculates the chargino decay modes.
`SUBROUTINE PYHEXT :`- calculates the non-Standard Model decay
modes of the Higgs bosons.
`SUBROUTINE PYHGGM :`- determines the Higgs boson mass spectrum
using several inputs.
`SUBROUTINE PYINOM :`- finds the mass eigenstates and mixing
matrices for the charginos and neutralinos.
`SUBROUTINE PYMSIN :`- initializes the MSSM simulation.
`SUBROUTINE PYSLHA :`- to read in or write out SUSY Les Houches
Accord spectra and decay tables. Can also be used stand-alone, before
the call to
`PYINIT`, to read in SLHA decay tables for specific particles. See section for how to do this. `SUBROUTINE PYNJDC :`- calculates neutralino decay modes.
`SUBROUTINE PYPOLE :`- computes the Higgs boson masses using
a renormalization group improved leading-log approximation and
two-loop leading-log corrections.
`SUBROUTINE PYSFDC :`- calculates sfermion decay modes.
`SUBROUTINE PYSUBH :`- computes the Higgs boson masses using
only renormalization group improved formulae.
`SUBROUTINE PYTBDY :`- samples the phase space for three-body
decays of neutralinos, charginos, and the gluino.
`SUBROUTINE PYTHRG :`- computes the masses and mixing matrices of
the third generation sfermions.
`SUBROUTINE PYRVSF :`- -violating sfermion decay widths.
`SUBROUTINE PYRVNE :`- -violating neutralino decay widths.
`SUBROUTINE PYRVCH :`- -violating chargino decay widths.
`SUBROUTINE PYRVGW :`- calculates -violating 3-body widths using
`PYRVI1, PYRVI2, PYRVI3, PYRVG1, PYRVG2, PYRVG3, PYRVG4, PYRVR`, and`PYRVS`. `FUNCTION PYRVSB :`- calculates -violating 2-body widths.
`SUBROUTINE SUGRA :`- dummy routine, to avoid linking problems when
ISAJET is not linked; see
`IMSS(1) = 12`. `SUBROUTINE SSMSSM :`- dummy routine, to avoid linking problems when
ISAJET is not linked; see
`IMSS(1) = 12`. `FUNCTION VISAJE :`- dummy routine, to avoid linking problems when
ISAJET is not linked; see
`IMSS(1) = 12`.