SPheno stands for S(upersymmetric) Pheno(menology).
The code calculates the SUSY spectrum using low energy data and a user supplied high scale model as input. The spectrum is then used for calculating the following:
- Two- and three-body decay modes of supersymmetric particle as well as of Higgs bosons;
- The production cross sections for supersymmetric particle and Higgs bosons in e^+ e^- annihilation;
- The branching of the decay
$b \to s \gamma$ - Contributions to anomalous magnetic moment of the muon;
- Contributions to the
$\rho$ parameter due to sfermions.
The code is written in F90 with an emphasis on easy generalisability. The structure is set such that complex phases as well as the extension to include the flavour structure can be done in a straight forward way. The 2-loop renormalization group equations as well as the one-loop finite corrections a la Bagger, Matchev, Pierce and Zhang are included. In addition the two-loop corrections to the neutral Higgs boson masses (a la Brignole, Degrassi, Slavich and Zwirner) and to the mu-parameter (a la Dedes and Slavich) are included. Starting with version 2.2.2 the SUSY Les Houches Accord is supported as well as the SPA conventions (for details see hep-ph/0511344).
Starting with version 3.0 the complete flavour and CP structure of the MSSM as well as bilinear R-parity violation has been implemented. The input and output is done via he SUSY Les Houches Accord 2 . Moreover, starting with version 3.1.10 also parts of the proposal to include seesaw models has been implemented, see the corresponding chapter of the Les Houches Proceedings 2011 and with version 3.1.10 also parts of the Flavour Les Houches Accord have been implemented.
If you use SPheno to write a paper, please cite the SPheno manuals:
- W. Porod, Comput. Phys. Commun. 153 (2003) 275 arXiv:hep-ph/0301101; and
- W. Porod and F. Staub, Comput. Phys. Commun. 183 (2012) 2458 arXiv:1104.1573
More information is provided in the manuals in the doc/
folder.
In case of problems, please send an email to porod@physik.uni-wuerzburg.de explaining the problem. Useful informations is in general contained in the file Messages.out; moreover, you should provide me with the input files used so that I can try to repeat the run and to decect the source of the problem.
SPheno can be download from Hepforge. After download and extracting the archive, it can be compiled with:
mkdir build
cd build
cmake ..
make
make install
By default, make install
installs the library and binary into the same
directory as the source; however, this can be customized by adding
-DCMAKE_INSTALL_PREFIX=/foo/bar
to the cmake
command.
For models generated by SARAH (or by other
means), the SPheno output should be copied into a new directory inside models/
that has the same name as your main model. For example, if the model name is
SM
, then running MakeSPheno[]
in Mathematica will create
$SARAH_OUTPUT/SM/EWSB/SPheno
and the contents of that folder should then be copied into models/SM
. The
model-specific SPheno executable and library can now be generated by running the
same steps as above, but adding -DMODELS=SM
to the cmake
command. Multiple
models can be specified by separating them with commas:
-DMODELS=SM,MSSM,THDM-II
.
As an example, here's the whole procedure for the SM
model:
mkdir models/SM
cp $SARAH_OUTPUT/$MODEL/EWSB/SPheno/. models/SM
mkdir build
cd build
cmake -DMODELS=SM
make
make install
Note that if your file system supports it, you can create a symbolic link in the
models/
directory linking to $SARAH_OUTPUT/$MODEL/EWSB/SPheno
. This has the
advantage that if you change the model in SARAH, you don't need to copy them
over to SPheno again. The whole procedure is:
ln -s $SARAH_OUTPUT/$MODEL/EWSB/SPheno models/$MODEL
mkdir build
cd build
cmake -DMODELS=$MODEL
make
make install
To run SPheno, it simply needs to be given an input file:
./bin/SPheno input/LesHouches.in
This will generate two files:
SPheno.spc
: contains all information about masses, mixing matrices, decay widths, branching ratios and production cross sections. The numbers should be identical to the ones given in the file SPheno.spc.mSugra provided you did not change the fileLesHouches.in
;Messages.out
containing warnings and error messages.
Some example LesHouches files are provided in the input/
directory.
The package consists of the following files fortran 90 modules:
SPheno3.f90
: main program containing also the input/output routinesBranchingRatios.f90
: module for the calculation of the decay widths and branching ratios of SUSY particles and Higgs bosonsChargino3.f90
: module, containing routines for the calculation of three-body decays of charginosControl.f90
: module containing routines for warning and error handlingCouplings.f90
: module, containing routines for the calculation of the couplingsDecayFunctions.f90
: module, containing generic routines for the calculation of two-body decaysEplusEminusProduction.f90
: module, containing routines for the calculation of the production cross sections in e+ e- annihilationGluino3.f90
: module, containing routines for the calculation of three-body decays of the gluinoInputOutput.f90
: module, containing routines for input and outputLHC_observables.f90
: module, containing routines for LHC observables, e.g. edge variablesLoopCouplings.f90
: module, containing routines for the calculation of the running couplingsLoopFunctions.f90
: module, contining 1-loop and 2-loop functionsLoopMasses.f90
: module, containing the routines for the calculation of the loop massesLowEnergy.f90
: module, containing routines for the calculation of low energy observablesMathematics.f90
: module, containing numerical routinesMathematicsQP.f90
: module, containing numerical routines with quadrupole precisionModel_data.f90
: module containing variables concerning SUSY parameters, masses, decay widths and branching ratiosNeutralino3.f90
: module, containing routines for the calculation of three-body decays of neutralinosNMSSM_tools.f90
: module, containing first modules for the NMSSMRGEs.f90
: module, containing the RGEsRPtools.f90
: module, containing additional modules for R-parity violationSlepton3Body.f90
: module, containing routines for the calculation of three-body decays of sleptonsSPheno3.f90
: The main program for the package.StandardModel.f90
: module, storing the Standard Model parametersStop3BodyDecays.f90
: module, containing routines for the calculation of three-body decays of the lighter stopSugraRuns.f90
: module, containing the routines for setting the boundary conditions, controlling the running of the parameters as well as calculating the spectrum in case of high scale modelsSusyDecays.f90
: module, containing routines for the calculation of all two-body decays of supersymmetric particles and Higgs bosonsSusyMasses.f90
: module, containing the routines for the calculation of supersymmetric masses at tree levelThreeBodyPhaseSpace.f90
: module, containing routines for the calculation of the phase space integrals for three-body decays of fermionsThreeBodyPhaseSpaceS.f90
: module, containing routines for the calculation of the phase space integrals for three-body decays of scalarsTwoLoopHiggsMass.f90
: module, containing the 2-loop routines for the calculation of neutral Higgs boson masses and mu
In addition the following set of input files are provided:
LesHouches.in
: mSUGRA input file (same as LesHouches.in.mSugra)LesHouches.in.mSUGRA_NUHM
: mSUGRA input file but with non-universal Higgs mass parametersLesHouches.in.AMSB
: AMSB input fileLesHouches.in.GMSB
: GMSB input fileLesHouches.in.mNUHM
: mSUGRA scenario but fixing Higgs sector at the electroweak scale using the pole mass of the pseudoscalar Higgs boson and the mu parametersLesHouches.in.SeesawI
: example of an mSUGRA scenario combined with seesaw type ILesHouches.in.SeesawII
: example of an mSUGRA scenario combined with seesaw type II, requires the compilation with option-DSEESAWIII
LesHouches.in.SeesawIII
: example of an mSUGRA scenario combined with seesaw type III, requires the compilation with option-DSEESAWIII
The package includes also sample output data corresponding to the
input files specified above, denoted by SPheno.out.xyz
and
SPheno.spc.xyz
, where xyz
stands for any of the models above in the
directory input/
.