SoftSUSY is hosted by Hepforge, IPPP Durham
SOFTSUSY  4.1
softsusy::MssmSoftsusy Class Reference

Contains all supersymmetric MSSM parameters, incorporating R_p MSSM. More...

#include <softsusy.h>

Inheritance diagram for softsusy::MssmSoftsusy:
softsusy::MssmSusy softsusy::MssmSoftPars softsusy::AltEwsbMssm softsusy::Approx softsusy::RGE softsusy::FlavourMssmSoftsusy softsusy::NmssmSoftsusy softsusy::RpvSoftsusy softsusy::RpvNeutrino

Public Member Functions

 MssmSoftsusy ()
 Default constructor fills object with zeroes.
 
 MssmSoftsusy (const MssmSusyRGE &)
 Constructor sets SUSY parameters only from another object.
 
 MssmSoftsusy (const MssmSoftsusy &)
 Constructor copies another object.
 
 MssmSoftsusy (const MssmSusy &, const MssmSoftPars &s, const sPhysical &sp, double mu, int l, int t, double hv)
 
const MssmSoftsusyoperator= (const MssmSoftsusy &s)
 Set all data in the object equal to another.
 
virtual const DoubleVector display () const
 Return contents of object in a vector: for RG evolution.
 
const MssmSoftsusydisplayMssmSoft () const
 Displays whole object as a const.
 
const sPhysicaldisplayPhys () const
 Displays physical parameters only.
 
const drBarParsdisplayDrBarPars () const
 
const sProblemdisplayProblem () const
 Returns any problem flags associated with the object.
 
const QedQcddisplayDataSet () const
 Gives the low energy Standard Model data set used for the object.
 
double displaySoftA (trilinears, int, int) const
 Return a trilinear element in "SUGRA style".
 
double displayFracDiff () const
 Displays iteration accuracy attained.
 
double displayMinpot () const
 Returns minimum of Higgs potential.
 
double displayMsusy () const
 Returns Higgs minimisation scale.
 
double displayMw () const
 
double displayMwRun () const
 Returns DRbar MW, must be calculated by calcDrBarPars first.
 
double displayMzRun () const
 Returns DRbar MZ, must be calculated by calcDrBarPars first.
 
double displayTadpole1Ms () const
 displays t_1/v_1 tadpole
 
double displayTadpole2Ms () const
 displays t_2/v_2 tadpole
 
double displayTadpole1Ms1loop () const
 displays t_1/v_1 tadpole@1 loop
 
double displayTadpole2Ms1loop () const
 displays t_2/v_2 tadpole@1 loop
 
double displayMxBC () const
 
const MssmSoftsusydisplaySoftsusy () const
 Returns object as a const. More...
 
double displayMz () const
 Returns value of pole MZ being used.
 
bool displaySetTbAtMX () const
 Is tan beta set at the user defined SUSY breaking scale?
 
bool displayAltEwsb () const
 
double displayPredMzSq () const
 
double displayQewsb () const
 
void flagMgutOutOfBounds (bool a)
 Flags weird mgut-type problems.
 
void flagIrqfp (bool a)
 Flags Infra-red quasi fixed point breach problem.
 
void flagNonperturbative (bool a)
 Flags non-perturbative RG evolution.
 
void flagTachyon (tachyonType a)
 Flags a negative-mass squared scalar (really a CCB problem) More...
 
void flagTachyonWarning (tachyonType a)
 
void flagM3sq (bool a)
 Flags problem with Higgs potential minimum.
 
void flagNoConvergence (bool a)
 Flags fact that calculation hasn't acheived required accuracy.
 
void flagNoMuConvergence (bool a)
 Flags fact that mu sub iteration didn't converge.
 
void flagNoRhoConvergence (bool a)
 Flags fact that rho parameter sub iteration didn't converge.
 
void flagMusqwrongsign (bool a)
 Flags point inconsistent with electroweak symmetry breaking.
 
void flagInaccurateHiggsMass (bool a)
 
void flagHiggsufb (bool a)
 Flags an inconsistent Higgs minimum.
 
void flagNotGlobalMin (bool a)
 LCT: Flags problem if not in global minimum of Higgs potential.
 
void flagAllProblems (bool a, tachyonType b)
 Sets all problems equal to either true or false (contained in a)
 
void flagProblemThrown (bool a)
 Flags a numerical exception eg number too big/small.
 
void setProblem (const sProblem a)
 Sets all problem flags.
 
void setSoftsusy (const MssmSoftsusy &s)
 Sets whole object equal to another.
 
void setData (const QedQcd &r)
 Sets low energy Standard Model fermion mass and gauge coupling data.
 
void setMinpot (double)
 Sets potential value at minimum of Higgs potential.
 
void setMsusy (double)
 
void setMw (double)
 sets pole MW prediction
 
void setPhys (const sPhysical &s)
 Sets all physical parameters.
 
void setMxBC (double mx)
 Sets the scale at which high-scale boundary conditions are applied.
 
void setDrBarPars (const drBarPars &s)
 Sets tree-level DRbar parameters.
 
void setSetTbAtMX (bool a)
 Sets the setTbAtMX flag.
 
void useAlternativeEwsb ()
 Use alernative EWSB conditions: set mu and MA(pole)
 
void setPredMzSq (double a)
 Set MZ^2 predicted after iteration.
 
void set (const DoubleVector &)
 Sets total set of RGE parameters equal to elements of a vector.
 
void setQewsb (double q)
 Sets user-set scale qewsb.
 
void setTwoLoopAlphasThresholds (bool sw)
 
void setTwoLoopMtThresholds (bool sw)
 Switch 2-loop threshold $ O(\alpha_s^2) $ corrections to top mass.
 
void setTwoLoopMbMtauThresholds (bool sw)
 
void setAllTwoLoopThresholds (bool sw)
 Switch all two-loop thresholds to gauge-Yukawa couplings.
 
DoubleVector beta () const
 Returns double vector containing numerical beta functions of parameters.
 
void setFracDiff (double fD)
 sets fracDiff, needed for access by NmssmSoftsusy methods
 
void H1SfSfCouplings (DoubleMatrix &lTS1Lr, DoubleMatrix &lBS1Lr, DoubleMatrix &lTauS1Lr, double gmzOcthW, double mu, double cosb, double v1) const
 fixes trilnear H1-sfermion-sfermion couplings
 
void H2SfSfCouplings (DoubleMatrix &lTS2Lr, DoubleMatrix &lBS2Lr, DoubleMatrix &lTauS2Lr, double gmzOcthW, double mu, double sinb) const
 fixes trilnear H2-sfermion-sfermion couplings
 
double doCalcTad1Sfermions (DoubleMatrix lTS1Lr, DoubleMatrix lBS1Lr, DoubleMatrix lTauS1Lr, double costhDRbar) const
 routine to calculate sfermiom contributions to H1 tadpole / v1 More...
 
double doCalcTad2Sfermions (DoubleMatrix lTS2Lr, DoubleMatrix lBS2Lr, DoubleMatrix lTauS2Lr, double costhDRbar) const
 routine to calculate sfermiom contributions to (16 ^2) t1 / v1 More...
 
double doCalcTad1fermions (double q, double v1) const
 fixes trilnear H1-fermion-fermion couplings More...
 
double doCalcTad2fermions (double q) const
 fixes trilnear H2-fermion-fermion couplings More...
 
double doCalcTad1Higgs (double q, double costhDRbar2, double g, double tanb) const
 one loop H1 tadpole contributions from Higgs bosons in the loops
 
double doCalcTad2Higgs (double q, double costhDRbar2, double g, double tanb) const
 
double doCalcTad1Neutralinos (double q, double costhDRbar, double g, double cosb) const
 one loop H1 tadpole contributions from Neutralinos in the loops
 
double doCalcTad2Neutralinos (double q, double costhDRbar, double g, double sinb) const
 one loop H2 tadpole contributions from Neutralinos in the loops
 
double doCalcTad1Charginos (double q, double g, double cosb) const
 one loop H1 tadpole contributions from Charginos in the loops
 
double doCalcTad2Charginos (double q, double g, double sinb) const
 
double doCalcTad1GaugeBosons (double q, double costhDRbar2, double g, double tanb) const
 one loop H1 tadpole contributions from Charginos in the loops
 
double doCalcTad2GaugeBosons (double q, double costhDRbar2, double g, double tanb) const
 
void doTadpoles (double mt, double sinthDRbar)
 Does the full 2-loop calculation of both tadpoles and sets them. More...
 
virtual double doCalcTadpole1oneLoop (double mt, double sinthDRbar)
 Does the calculation of one-loop pieces of $ t_1 / v_1 $. More...
 
virtual double doCalcTadpole2oneLoop (double mt, double sinthDRbar)
 Does the calculation of one-loop pieces of $ t_2 / v_2 $. More...
 
virtual void calcTadpole1Ms1loop (double mt, double sinthDRbar)
 checked More...
 
virtual void calcTadpole2Ms1loop (double mt, double sinthDRbar)
 
DoubleMatrix addStopQCD (double p, double mt, DoubleMatrix &strong)
 
DoubleMatrix addStopStop (double p, double mt, DoubleMatrix &stop)
 
DoubleMatrix addStopSbottom (double p, double mt, DoubleMatrix &sbottom)
 
DoubleMatrix addStopHiggs (double p, double mt, DoubleMatrix &higgs)
 
DoubleMatrix addStopEweak (double p, DoubleMatrix &electroweak)
 
DoubleMatrix addStopNeutralino (double p, double mt, DoubleMatrix &neutralino)
 
DoubleMatrix addStopChargino (double p, DoubleMatrix &chargino)
 
virtual void addStopCorrection (double p, DoubleMatrix &mass, double mt)
 As in BPMZ appendix. More...
 
DoubleMatrix addSdownQCD (double p1, double p2, int family, DoubleMatrix &strong)
 
DoubleMatrix addSdownHiggs (double p1, double p2, int family, DoubleMatrix &higgs)
 
DoubleMatrix addSdownEweak (double p1, double p2, int family, DoubleMatrix &electroweak)
 
DoubleMatrix addSdownNeutralino (double p1, double p2, int family, DoubleMatrix &neutralino)
 
DoubleMatrix addSdownChargino (double p1, double p2, int family, DoubleMatrix &chargino)
 
virtual void addSdownCorrection (DoubleMatrix &mass, int family)
 
DoubleMatrix addSbotQCD (double p, double mt, DoubleMatrix &strong)
 
void addSbotSfermion (double p, double mt, DoubleMatrix &stop, DoubleMatrix &sbottom)
 
DoubleMatrix addSbotHiggs (double p, double mt, DoubleMatrix &higgs)
 
DoubleMatrix addSbotEweak (double p, DoubleMatrix &electroweak)
 
DoubleMatrix addSbotNeutralino (double p, double mt, DoubleMatrix &neutralino)
 
DoubleMatrix addSbotChargino (double p, double mt, DoubleMatrix &chargino)
 
virtual void addSbotCorrection (double p, DoubleMatrix &mass, double mb)
 Checked 16.08.2005. More...
 
DoubleMatrix addSlepHiggs (double p1, double p2, int family, DoubleMatrix &higgs)
 
DoubleMatrix addSlepEweak (double p1, double p2, int family, DoubleMatrix &electroweak)
 
void addSlepGaugino (double p1, double p2, int family, DoubleMatrix &chargino, DoubleMatrix &neutralino)
 
virtual void addSlepCorrection (DoubleMatrix &mass, int family)
 16.09.05 checked. More...
 
void addSlepCorrection (double p, DoubleMatrix &mass, int family)
 
void addStauSfermion (double p, double mtau, DoubleMatrix &stop, DoubleMatrix &sbottom)
 
void addStauGaugino (double p, double mtau, DoubleMatrix &chargino, DoubleMatrix &neutralino)
 
DoubleMatrix addStauEweak (double p, double mtau, DoubleMatrix &electroweak)
 
DoubleMatrix addStauHiggs (double p, double mtau, DoubleMatrix &higgs)
 
virtual void addStauCorrection (double p, DoubleMatrix &mass, double mtau)
 
DoubleMatrix addSupQCD (double p1, double p2, int family, DoubleMatrix &strong)
 
DoubleMatrix addSupHiggs (double p1, double p2, int family, DoubleMatrix &higgs)
 
DoubleMatrix addSupEweak (double p1, double p2, int family, DoubleMatrix &electroweak)
 
DoubleMatrix addSupNeutralino (double p1, double p2, int family, DoubleMatrix &neutralino)
 
DoubleMatrix addSupChargino (double p1, double p2, int family, DoubleMatrix &chargino)
 
virtual void addSupCorrection (DoubleMatrix &mass, int family)
 As in BPMZ appendix, INCLUDING weak boson loops. More...
 
void addSnuTauSfermion (double p, double &stop, double &sbottom)
 
double addSnuTauHiggs (double p, double &higgs)
 
double addSnuTauEweak (double p, double &electroweak)
 
void addSnuTauGaugino (double p, double &chargino, double &neutralino)
 
virtual void addSnuTauCorrection (double &mass)
 
double addSnuHiggs (double p, int family, double &higgs)
 
double addSnuEweak (double p, int family, double &electroweak)
 
void addSnuGaugino (double p, int family, double &chargino, double &neutralino)
 
virtual void addSnuCorrection (double &mass, int family)
 Found+fixed bug 7/09/06. Thanks to J Kersten. More...
 
void addSquarkCorrection (DoubleMatrix &mass)
 Now these are calculated at the squark scale. More...
 
virtual void doUpSquarks (double mt, double pizztMS, double sinthDRbarMS, int accuracy)
 
virtual void doDownSquarks (double mb, double pizztMS, double sinthDRbarMS, int accuracy, double mt)
 
virtual void doChargedSleptons (double mT, double pizztMS, double sinthDRbarMS, int accuracy)
 
virtual void doSnu (double pizztMS, int accuracy=0)
 
virtual void treeUpSquark (DoubleMatrix &mass, double mtrun, double pizztMS, double sinthDRbarMS, int family)
 
virtual void treeDownSquark (DoubleMatrix &mass, double mbrun, double pizztMS, double sinthDRbarMS, int family)
 
virtual void treeChargedSlepton (DoubleMatrix &mass, double mTrun, double pizztMS, double sinthDRbarMS, int family)
 
void treeSnu (double &mSq, double pizztMS, int family)
 
virtual void calcDrBarPars ()
 Organises tree-level calculation of all sparticle masses and mixings. More...
 
void setNeutCurrCouplings (double sinthDRbar, double &sw2, double &guL, double &gdL, double &geL, double &guR, double &gdR, double &geR)
 
void calcDRTrilinears (drBarPars &eg, double vev, double beta)
 sets the Yukawas and Trilinears
 
void calcDrBarHiggs (double beta, double mz2, double mw2, double sinthDRbar, drBarPars &eg)
 
void treeCharginos (DoubleMatrix &mCh, double beta, double mw)
 
void treeNeutralinos (DoubleMatrix &mN, double beta, double mz, double mw, double sinth)
 
void calcDrBarGauginos (double beta, double mw, double mz, double sinth, drBarPars &eg)
 masses in eg with the appropriate values on exit.
 
virtual void sparticleThresholdCorrections (double tb)
 
double qedSusythresh (double alphaEm, double Q) const
 
double qcdSusythresh (double alphasMSbar, double Q)
 
double calcMs () const
 DRbar pars should be defined already for this. More...
 
virtual void physical (int accuracy)
 
virtual double calcRunMtQCD () const
 Obtains (16 Pi^2) / mt times 1-loop and 2-loop QCD corrections. More...
 
virtual double calcRunMtStopGluino () const
 Obtains (16 Pi^2) / mt times 1-loop stop-Gluino corrections. More...
 
virtual double calcRunMtHiggs () const
 Obtains (16 Pi^2) / mt times 1-loop Higgs corrections.
 
virtual double calcRunMtNeutralinos () const
 Obtains (16 Pi^2) / mt times 1-loop Neutralino corrections. More...
 
virtual double calcRunMtCharginos () const
 Obtains (16 Pi^2) / mt times 1-loop Charginos corrections.
 
virtual double calcRunningMt ()
 
virtual double calcRunMtauDrBarConv () const
 calculates factor to convert to DrBar for mtau
 
virtual double calcRunMtauCharginos (double mTauSMMZ) const
 
virtual double calcRunMtauNeutralinos (double mTauSMMZ) const
 
virtual double calcRunMtauHiggs () const
 Obtains (1 / mtau) times 1-loop Higgs corrections.
 
virtual double calcRunningMtau ()
 Full BPMZ expression. More...
 
virtual double calcRunMbDrBarConv () const
 calculates factor to convert to DrBar for mb
 
virtual double calcRunMbSquarkGluino () const
 Obtains (1 / mb) times 1-loop sbottom-Gluino corrections.
 
virtual double calcRunMbChargino () const
 Obtains (1 / mb) times 1-loop squark-chargino corrections.
 
virtual double calcRunMbHiggs () const
 Obtains (1 / mb) times 1-loop Higgs corrections.
 
virtual double calcRunMbNeutralinos () const
 Obtains (1 / mb) times 1-loop neutralino-suqrk corrections. More...
 
virtual double calcRunningMb ()
 
double calcSinthdrbar () const
 Calculates DRbar sin theta_w at the current scale from gauge couplings. More...
 
double getVev ()
 Calculates Higgs VEV parameter from gauge couplings and MZ.
 
double getVev (double pizzt)
 
virtual void charginos (int accuracy, double piwwt)
 checked More...
 
virtual void addChaLoopSfermion (double p, DoubleMatrix &sigmaL, DoubleMatrix &sigmaR, DoubleMatrix &sigmaS) const
 
virtual void addChaLoopGauge (double p, DoubleMatrix &sigmaL, DoubleMatrix &sigmaR, DoubleMatrix &sigmaS, DoubleMatrix b1pCha, DoubleMatrix b0pCha, DoubleMatrix b1pNeut, DoubleMatrix b0pNeut) const
 
virtual void addChaLoopHiggs (double p, DoubleMatrix &sigmaL, DoubleMatrix &sigmaR, DoubleMatrix &sigmaS, DoubleMatrix b1pCha, DoubleMatrix b0pCha, DoubleMatrix b1pNeut, DoubleMatrix b0pNeut) const
 
virtual void addCharginoLoop (double p, DoubleMatrix &)
 Adds the loop corrections on to an input tree-level chargino mass. More...
 
virtual void neutralinos (int accuracy, double piwwt, double pizzt)
 mixNeut set to diagonal = mixNeut^T mNeutralino mixNeut: checked More...
 
void addNeutLoopSfermion (double p, DoubleMatrix &sigmaL, DoubleMatrix &sigmaR, DoubleMatrix &sigmaS)
 
void getNeutPassarinoVeltman (double p, double q, DoubleMatrix &b0fn, DoubleMatrix &b1fn)
 LCT: Returns matrix of Passarino-Veltman B0 and B1 functions. More...
 
void addNeutLoopGauge (double p, DoubleMatrix &sigmaL, DoubleMatrix &sigmaR, DoubleMatrix &sigmaS)
 
void addNeutLoopHiggs (double p, DoubleMatrix &sigmaL, DoubleMatrix &sigmaR, DoubleMatrix &sigmaS)
 
virtual void addNeutralinoLoop (double p, DoubleMatrix &)
 Adds the loop corrections on to an input tree-level neutralino mass. More...
 
virtual void gluino (int accuracy)
 Calculates pole gluino mass to 1-loop SUSY corrections. More...
 
void calcHiggsAtScale (int accuracy, double &mt, double &sinthDRbar, double &piwwtMS, double &pizztMS, double q=0.)
 
bool higgs (int accuracy, double piwwt, double pizzt)
 
virtual int rewsbMu (int sgnMu, double &mu) const
 
virtual int rewsbM3sq (double, double &) const
 returns 1 if mu < 1.0e-9 More...
 
int rewsbM3sqTree (double, double &) const
 returns 1 if mu < 1.0e-9 More...
 
void alternativeEwsb (double mt)
 Fixes mH1^2 and mH2^2 in order to get muCond and mAcond correct. More...
 
virtual void rewsb (int sgnMu, double mt, const DoubleVector &pars, double muOld=-6.66e66, double eps=0.)
 
virtual void rewsbTreeLevel (int sgnMu)
 
double treeLevelMuSq ()
 
void iterateMu (double &munew, int sgnMu, double mt, int maxTries, double pizztMS, double sinthDRbar, double tol, int &err)
 
double predTanb (double muSusy=-6.66e66) const
 
double predMzsq (double &tanb, double muOld=-6.66e66, double eps=0.)
 
double deltaEW () const
 Returns fine-tuning as defined in Baer et al arXiv:1212.2655 eq 1.2. More...
 
DoubleVector fineTune (void(*boundaryCondition)(MssmSoftsusy &, const DoubleVector &), const DoubleVector &bcPars, double MX, bool doTop=false)
 Pass it an object and it'll return the fine tuning parameters. More...
 
double it1par (int numPar, const DoubleVector &bcPars)
 
double ufb3sl (double)
 
double realMinMs () const
 
virtual double piZZTHiggs (double p, double Q, double thetaWDRbar) const
 Calculates Higgs contribution to the transverse part of Z self-energy: More...
 
virtual double piZZTsfermions (double p, double Q) const
 Calculates sfermion contribution to the transverse part of Z self-energy: More...
 
virtual double piZZTfermions (double p, double Q, bool usePoleMt) const
 fermion contribution to the Transverse part of Z self-energy: More...
 
virtual double piZZTNeutralinos (double p, double Q, double thetaWDRbar) const
 
virtual double piZZTCharginos (double p, double q, double thetaWDRbar) const
 
virtual double piZZT (double p, double Q, bool usePoleMt=false) const
 Transverse part of Z self-energy: has been checked. More...
 
virtual double piWWTHiggs (double p, double q, double thetaWDRbar) const
 
virtual double piWWTfermions (double p, double Q, bool usePoleMt) const
 
virtual double piWWTsfermions (double p, double Q) const
 
virtual double piWWTgauginos (double p, double Q, double thetaWDRbar) const
 
virtual double piWWT (double p, double Q, bool usePoleMt=false) const
 
virtual void getNeutralinoCharginoHpmCoup (ComplexMatrix &apph1, ComplexMatrix &apph2, ComplexMatrix &bpph1, ComplexMatrix &bpph2) const
 LCT: Returns trilinear neutralino-chargino-hpm coupling in unrotated basis. More...
 
double piHpHmFermions (double p, double q) const
 LCT: Returns fermion contributions to charged Higgs self-energy. More...
 
double piHpHmSfermions (double p, double q, double mu) const
 LCT: Returns sfermion contributions to charged Higgs self-energy. More...
 
double piHpHmGauge (double p, double q) const
 LCT: Returns pure gauge contributions to charged Higgs self-energy. More...
 
double piHpHmHiggs (double p, double q) const
 LCT: Returns Higgs contributions to charged Higgs self-energy. More...
 
double piHpHmGauginos (double p, double q) const
 
virtual double piHpHm (double p, double Q) const
 LCT: Charged Higgs self-energy. More...
 
double piZGT (double p, double Q) const
 
virtual double piAA (double p, double Q) const
 
Complex pis1s1Sfermions (double p, double q, DoubleMatrix ls1tt, DoubleMatrix ls1bb, DoubleMatrix ls1tautau) const
 Calculates (16 Pi^2) times the sfermion contribution to Higgs. More...
 
Complex pis1s2Sfermions (double p, double q, DoubleMatrix ls1tt, DoubleMatrix ls1bb, DoubleMatrix ls1tautau, DoubleMatrix ls2tt, DoubleMatrix ls2bb, DoubleMatrix ls2tautau) const
 
Complex pis2s2Sfermions (double p, double q, DoubleMatrix ls2tt, DoubleMatrix ls2bb, DoubleMatrix ls2tautau) const
 
Complex pis1s1Fermions (double p, double q) const
 
Complex pis2s2Fermions (double p, double q) const
 
Complex pis1s1Higgs (double p, double q) const
 
Complex pis1s2Higgs (double p, double q) const
 
Complex pis2s2Higgs (double p, double q) const
 
Complex pis1s1Neutralinos (double p, double q) const
 
Complex pis1s2Neutralinos (double p, double q) const
 
Complex pis2s2Neutralinos (double p, double q) const
 
Complex pis1s1Charginos (double p, double q) const
 
Complex pis1s2Charginos (double p, double q) const
 
Complex pis2s2Charginos (double p, double q) const
 
Complex pis1s1 (double p, double q) const
 
Complex pis1s2 (double p, double q) const
 
Complex pis2s2 (double p, double q) const
 checked 28.10.02 More...
 
double sinSqThetaEff ()
 Calculates sin^2 theta^l_eff.
 
virtual double h1s2Mix ()
 gets h1 mixing element with Hu.
 
virtual void rhohat (double &outrho, double &outsin, double alphaMZDRbar, double pizztMZ, double piwwt0, double piwwtMW, double tol, int maxTries)
 
virtual double deltaVb (double outrho, double outsin, double alphaDRbar, double pizztMZ) const
 outrho, outsin represent the DRbar values More...
 
virtual double dRho (double outrho, double outsin, double alphaDRbar, double pizztMZ, double piwwtMW)
 
virtual double dR (double outrho, double outsin, double alphaDRbar, double pizztMZ, double piwwt0)
 
double maxMass () const
 Returns the mass of the heaviest SUSY particle, excluding gravitino. More...
 
int lsp (double &mass, int &posi, int &posj) const
 
int nlsp (double &mass, int &posi, int &posj) const
 
string printShort () const
 Prints a list of important sparticle/Higgs masses to standard output. More...
 
string printLong ()
 Prints a list of all sparticle/Higgs masses to standard output. More...
 
virtual void printObj ()
 Prints whole object to standard output.
 
double thet (double a, double b, double c=0.0)
 log(max(a^2, b^2, c^2) / Q^2)
 
void fixedPointIteration (void(*boundaryCondition)(MssmSoftsusy &, const DoubleVector &), double mxGuess, const DoubleVector &pars, int sgnMu, double tanb, const QedQcd &oneset, bool gaugeUnification, bool ewsbBCscale=false)
 
double lowOrg (void(*boundaryCondition)(MssmSoftsusy &, const DoubleVector &), double mxGuess, const DoubleVector &pars, int sgnMu, double tanb, const QedQcd &oneset, bool gaugeUnification, bool ewsbBCscale=false)
 
void itLowsoft (int maxTries, int sgnMu, double tol, double tanb, void(*boundaryCondition)(MssmSoftsusy &, const DoubleVector &), const DoubleVector &pars, bool gaugeUnification, bool ewsbBCscale)
 
virtual void rpvSet (const DoubleVector &parameters)
 
virtual void methodBoundaryCondition (const DoubleVector &pars)
 
void isajetNumbers764 (double &mtopPole, double &mGPole, double &smu, double &mA, double &tanb, double &mq1l, double &mdr, double &mur, double &meL, double &meR, double &mql3, double &mdr3, double &mur3, double &mtauL, double &mtauR, double &at, double &ab, double &atau, double &mq2l, double &msr, double &mcr, double &mmuL, double &mmuR, double &m1, double &m2) const
 
void isajetInterface764 (const char fname[80]) const
 prints a file into fname which acts as an input to isajet More...
 
void ssrunInterface764Inside (const char fname[80], fstream &) const
 
void ssrunInterface764 (const char fname[80], const char softfname[80]) const
 
void isawigInterface764 (const char fnamein[80], const char fnameout[80], const char fnamesoft[80]) const
 
virtual void lesHouchesAccordOutput (ostream &out, const char model[], const DoubleVector &pars, int sgnMu, double tanb, double qMax, int numPoints, bool ewsbBCscale)
 SUSY Les Houches accord for interfacing to Monte-Carlos, decay programs etc. More...
 
virtual void setEwsbConditions (const DoubleVector &inputs)
 Again, another dummy - useful in alternative EWSB conditions sometimes. More...
 
void headerSLHA (ostream &out)
 
virtual void spinfoSLHA (ostream &out)
 This does the SPINFO block of SLHA.
 
void modselSLHA (ostream &out, const char model[])
 This does the MODSEL block of SLHA. More...
 
void sminputsSLHA (ostream &out)
 SMINPUTS block of SLHA.
 
void minparSLHA (ostream &out, const char model[], const DoubleVector &pars, double tanb, int sgnMu, bool ewsbBCscale)
 MINPAR block of SLHA. More...
 
virtual void extparSLHA (ostream &out, const DoubleVector &pars, bool ewsbBCscale)
 EXTPAR block of SLHA.
 
void massSLHA (ostream &out)
 This does the job of the above method, but outputs the Mass block. More...
 
virtual void higgsMSLHA (ostream &out)
 higgs part of mass block of SLHA
 
virtual void neutralinoCharginoMSLHA (ostream &out)
 neutralino and charigno part of mass block of SLHA More...
 
virtual void sfermionsSLHA (ostream &out)
 sfermions part of mass block of SLHA
 
void sfermionmixSLHA (ostream &out)
 hmix block output of SLHA
 
virtual void neutralinoMixingSLHA (ostream &out)
 nmix block output of SLHA
 
void inomixingSLHA (ostream &out)
 This does the job of the above method, but outputs the UMIX/VMIX blocks. More...
 
virtual void softsusySLHA (ostream &out)
 SOFTSUSY comments in SLHA.
 
void alphaSLHA (ostream &out)
 sfermionic part of mixing blocks
 
virtual void hmixSLHA (ostream &out)
 higgs part of mixing blocks
 
void gaugeSLHA (ostream &out)
 sfermionic part of mixing blocks
 
virtual void yukawasSLHA (ostream &out)
 sfermionic part of mixing blocks
 
virtual void msoftSLHA (ostream &out)
 MSOFT block of SLHA.
 
virtual void drbarSLHA (ostream &out, int numPoints, double qMax, int n)
 outputs DRbar parameters at scale Q (default is at MSUSY) More...
 
void doUfb3 (double mgut)
 
void assignHiggs (DoubleVector &higgsm, DoubleVector &higgsc, DoubleVector &dnu, DoubleVector &dnd, DoubleVector &cn, double beta) const
 
void assignHiggs (DoubleVector &higgsm, DoubleVector &higgsc) const
 
void assignHiggsSfermions (DoubleVector &higgsm, DoubleVector &higgsc, DoubleVector &dnu, DoubleVector &dnd, DoubleVector &cn, double beta) const
 some switches due to BPMZ's different conventions More...
 
double smPredictionMW () const
 checked 22/04/06 More...
 
double twoLoopGm2 (double amu1Loop) const
 
double twoLpMt () const
 
double twoLpMb () const
 
virtual void doQuarkMixing (DoubleMatrix &mDon, DoubleMatrix &mUpq)
 input diagonal matrices and it'll give you back mixed ones More...
 
virtual MssmSusyRGE guessAtSusyMt (double tanb, const QedQcd &oneset)
 
- Public Member Functions inherited from softsusy::MssmSusy
 MssmSusy ()
 
 MssmSusy (const MssmSusy &)
 Constructor sets object to be equal to another.
 
 MssmSusy (const DoubleMatrix &u, const DoubleMatrix &d, const DoubleMatrix &e, const DoubleVector &v, double m, double tb, double h, int mix)
 
const MssmSusyoperator= (const MssmSusy &s)
 Default destructor. More...
 
void setMssmSusy (const MssmSusy &s)
 sets object to be equal to another
 
void setMssmLoops (double l)
 
void setHvev (double h)
 Sets DRbar running Higgs vev.
 
void setSomePars (const MssmSusy &s)
 Copies Yukawa matrices and gauge couplings from s only.
 
void setYukawaElement (yukawa, int, int, double)
 Sets one element of a Yukawa matrix.
 
void setYukawaMatrix (yukawa, const DoubleMatrix &)
 Sets whole Yukawa matrix.
 
void setGaugeCoupling (int, double)
 Set a single gauge coupling.
 
void setAllGauge (const DoubleVector &)
 Set all gauge couplings.
 
void setSusyMu (double)
 Sets superpotential mu parameter.
 
void setTanb (double)
 Sets tan beta.
 
void setMssmApprox (int l, int t)
 Set loops/thresholds.
 
void setMssmApprox (const Approx &a)
 
void set (const DoubleVector &)
 
void set (const DoubleVector &, int &k)
 
void setMixing (double mix)
 Sets quark mixing parameter.
 
int displayMssmLoops () const
 
double displayHvev () const
 Returns DRbar running Higgs vev.
 
const MssmSusydisplayMssmSusy () const
 Returns whole object as a const.
 
double displayYukawaElement (yukawa, int, int) const
 Returns a single Yukawa matrix element.
 
const DoubleMatrixdisplayYukawaMatrix (yukawa) const
 Returns a whole Yukawa matrix.
 
double displayGaugeCoupling (int) const
 Returns a single gauge coupling.
 
DoubleVector displayGauge () const
 Returns all gauge couplings.
 
double displaySusyMu () const
 Returns superpotential mu parameter.
 
double displayTanb () const
 Returns tan beta.
 
Approx displayMssmApprox () const
 
const DoubleVector display () const
 
int displayMixing () const
 Returns quark mixing parameter.
 
void getMasses (QedQcd &r, double vev) const
 
void quarkMixing (const DoubleMatrix &CKM, int mix)
 
void setDiagYukawas (const QedQcd &, double vev)
 
void getQuarkMixedYukawas (const QedQcd &r, const DoubleMatrix &CKM, int mix, double vev)
 
void diagQuarkBasis (DoubleMatrix &vdl, DoubleMatrix &vdr, DoubleMatrix &vul, DoubleMatrix &vur) const
 
MssmSusy beta (sBrevity &) const
 
void getOneLpAnom (DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gDD, DoubleMatrix &gUU, double &gH1H1, double &gH2H2, sBrevity &a) const
 
void getTwoLpAnom (DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gDD, DoubleMatrix &gUU, double &gH1H1, double &gH2H2, sBrevity &a) const
 
void getThreeLpAnom (DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gDD, DoubleMatrix &gUU, double &gH1H1, double &gH2H2, sBrevity &a) const
 By Bednyakov, see arXiv:1009.5455. More...
 
void anomalousDimension (DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gUU, DoubleMatrix &gDD, DoubleVector &dg, double &gH1H1, double &gH2H2, sBrevity &a) const
 
- Public Member Functions inherited from softsusy::MssmSoftPars
 MssmSoftPars ()
 Default constructor fills object with zeroes.
 
 MssmSoftPars (const MssmSoftPars &)
 Constructor sets all parameters equal to those in another object. More...
 
const MssmSoftParsoperator= (const MssmSoftPars &s)
 Sets all parameters equal to those in another object.
 
 MssmSoftPars (const DoubleVector &mG, const DoubleMatrix &aU, const DoubleMatrix &aD, const DoubleMatrix &aE, const DoubleMatrix &mQl, const DoubleMatrix &mUr, const DoubleMatrix &mDr, const DoubleMatrix &mLl, const DoubleMatrix &mEr, double m3sq, double mH1sq, double mH2sq, double mGravitino)
 
const MssmSoftParsdisplayMssmSoftPars () const
 Returns whole object as a const.
 
const DoubleMatrixdisplayTrilinear (trilinears) const
 Return a trilinear coupling matrix.
 
double displayTrilinear (trilinears, int i, int j) const
 Return a trilinear element.
 
const DoubleMatrixdisplaySoftMassSquared (softMasses) const
 Return a soft mass squared matrix.
 
double displaySoftMassSquared (softMasses, int i, int j) const
 Return a soft mass squared element.
 
double displayGravitino () const
 Returns the gravitino mass.
 
double displayM3Squared () const
 Return $ m_3^2$.
 
double displayMh1Squared () const
 Return $m_{H_1}^2$.
 
double displayMh2Squared () const
 Return $m_{H_2}^2$=mH2sq.
 
DoubleVector displayGaugino () const
 Return $M_{G_i}$.
 
double displayGaugino (int i) const
 
void display (DoubleVector &v, int &k) const
 
const DoubleVector display2 () const
 
void setM32 (double)
 Sets gravitino mass.
 
void setSoftPars (MssmSoftPars const &)
 Sets whole thing equal to another object.
 
void setSoftMassElement (softMasses, int, int, double)
 Set one element of a soft mass squared matrix.
 
void setSoftMassMatrix (softMasses, const DoubleMatrix &)
 Set whole of a soft mass squared matrix.
 
void setTrilinearMatrix (trilinears, const DoubleMatrix &)
 Set whole of a trilinear SUSY breaking parameter matrix.
 
void setTrilinearElement (trilinears k, int i, int j, double a)
 Set one element of a trilinear SUSY breaking parameter matrix.
 
void setGauginoMass (int, double)
 Set one gaugino mass.
 
void setAllGauginos (const DoubleVector &)
 Set all gaugino masses.
 
void setM3Squared (double)
 Sets $ m_3^2$.
 
void setMh1Squared (double)
 Sets $ m_{H_1}^2$.
 
void setMh2Squared (double)
 
void set (const DoubleVector &y)
 Sets all SUSY breaking parameters only - not SUSY ones.
 
DoubleVector beta (const MssmSusy &) const
 Returns double vector containing numerical beta functions of parameters.
 
MssmSoftPars beta2 (const MssmSusy &xx) const
 Returns numerical beta functions of parameters.
 
MssmSoftPars beta2 (const MssmSusy &xx, sBrevity &a) const
 Returns numerical beta functions of parameters and Brevity. More...
 
void anomalousDeriv (const MssmSusy &xx, DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gUU, DoubleMatrix &gDD, double &gH1H1, double &gH2H2) const
 
void yTildes (const MssmSusy &xx, DoubleMatrix &yu, DoubleMatrix &yd, DoubleMatrix &ye) const
 Ytilde quantities are for calculational brevity in beta functions.
 
void u1R_PQflip (MssmSusy &s)
 
void universal (MssmSusy &s, double m0, double m12, double a0, double mu, double m3sq)
 
void addAmsb (const MssmSusy &, double m32)
 
void universalTrilinears (const MssmSusy &a, double a0)
 Sets all SUSY breaking trilinear couplings to a0.
 
void minimalGmsb (const MssmSusy &xx, int n5, double LAMBDA, double mMess, double cgrav)
 
void standardSugra (const MssmSusy &xx, double m0, double m12, double a0)
 Reads in universal boundary conditions at the current scale: m0, M1/2, A0.
 
void universalScalars (double m0)
 Sets all flavour-diagonal SUSY breaking scalar masses to m0.
 
void universalGauginos (double m12)
 Sets all flavour-diagonal SUSY breaking gaugino masses to m12.
 
void inputSoftParsOnly ()
 Reads in soft SUSY breaking parameters from a file.
 
- Public Member Functions inherited from softsusy::AltEwsbMssm
void setAltEwsb (double ma, double mu)
 
void setAltEwsbMssm (const AltEwsbMssm &s)
 
double displayMaCond () const
 
double displayMuCond () const
 
const AltEwsbMssmdisplayAltEwsbMssm () const
 
void setMaCond (double maInput)
 
void setMuCond (double muInput)
 
- Public Member Functions inherited from softsusy::Approx
const ApproxdisplayApprox () const
 
const Approxoperator= (const Approx &)
 
 Approx (const Approx &a)
 
 Approx (int l, int t)
 
void setLoops (int l)
 Set number of loops used.
 
void setThresholds (int t)
 
int displayLoops () const
 Return number of loops.
 
int displayThresholds () const
 Return level of threshold approximation.
 
- Public Member Functions inherited from softsusy::RGE
 RGE ()
 Default constructor fills data with zeroes.
 
void setMu (double e)
 Sets renormalisation scale to e.
 
virtual void setmu (double f)
 
void setPars (int i)
 Set number of parameters in RGE object.
 
double displayMu () const
 Return renomalisation scale.
 
int howMany () const
 Return number of parameters.
 
const RGEdisplayRGE () const
 
virtual int run (double from, double to, double eps=-1.0)
 Runs parameters from scale "from" to "to, eps is fractional accuracy.
 
virtual int runto (double to, double eps=-1.0)
 Runs parameters to scale "to", eps is accuracy.
 
int callRK (double x1, double x2, DoubleVector &v, DoubleVector(*derivs)(double, const DoubleVector &), double eps=-1.0)
 

Public Attributes

int included_thresholds
 Flag allowing to choose which two-loop thresholds have to be included.
 

Protected Member Functions

void setT1OV1Ms (double t1)
 
void setT2OV2Ms (double t2)
 
void setT1OV1Ms1loop (double t1)
 
void setT2OV2Ms1loop (double t2)
 
void check_flags ()
 check consistency of threshold flags More...
 
DoubleMatrix calcHiggs3L (bool is_bottom)
 Higgs 3L corrections. More...
 

Protected Attributes

double mxBC
 Scale at which SUSY breaking boundary conditions set.
 

Detailed Description

Contains all supersymmetric MSSM parameters, incorporating R_p MSSM.

Constructor & Destructor Documentation

softsusy::MssmSoftsusy::MssmSoftsusy ( const MssmSusy ss,
const MssmSoftPars s,
const sPhysical sp,
double  mu,
int  l,
int  t,
double  hv 
)

Sets all parameters from s, sp, mu is the mu superpotential parameter, l is the number of loops used for RG evolution, t is the thresholds accuracy parameter, mg is the gravitino mass, hv is the Higgs VEV parameter.

Member Function Documentation

void softsusy::MssmSoftsusy::addChaLoopGauge ( double  p,
DoubleMatrix sigmaL,
DoubleMatrix sigmaR,
DoubleMatrix sigmaS,
DoubleMatrix  b1pCha,
DoubleMatrix  b0pCha,
DoubleMatrix  b1pNeut,
DoubleMatrix  b0pNeut 
) const
virtual

Fills sigmaL, sigmaR and sigmaS with Gauge parts of the charginos loop corrections.

checked and corrected

checked

checked and corrected 4/10/12

Z0

void softsusy::MssmSoftsusy::addChaLoopHiggs ( double  p,
DoubleMatrix sigmaL,
DoubleMatrix sigmaR,
DoubleMatrix sigmaS,
DoubleMatrix  b1pCha,
DoubleMatrix  b0pCha,
DoubleMatrix  b1pNeut,
DoubleMatrix  b0pNeut 
) const
virtual

Fills sigmaL, sigmaR and sigmaS with Higgs parts of the charginos loop corrections.

checked and corrected

checked this block

checked and corrected 2/12/08

end of correction 2/12/08

checked and corrected

G+

H+

H

h

G0

A0

Reimplemented in softsusy::NmssmSoftsusy.

void softsusy::MssmSoftsusy::addChaLoopSfermion ( double  p,
DoubleMatrix sigmaL,
DoubleMatrix sigmaR,
DoubleMatrix sigmaS 
) const
virtual

Fills sigmaL, sigmaR and sigmaS with sfermion parts of the charginos loop corrections.

basis is (psi1+ psi2+, L R)

mix 3rd generation sfermions

void softsusy::MssmSoftsusy::addCharginoLoop ( double  p,
DoubleMatrix mass 
)
virtual

Adds the loop corrections on to an input tree-level chargino mass.

double p = sqrt(forLoops.mchBpmz(1) * forLoops.mchBpmz(2));

Reimplemented in softsusy::NmssmSoftsusy.

void softsusy::MssmSoftsusy::addNeutLoopGauge ( double  p,
DoubleMatrix sigmaL,
DoubleMatrix sigmaR,
DoubleMatrix sigmaS 
)

LCT: Adds gauge loop corrections to neutralino mass matrix. IO parameters: p=external momentum, {sigmaL,sigmaR,sigmaS}= 4x4 matrices of {left,right,scalar} corrections

checked

checked

void softsusy::MssmSoftsusy::addNeutLoopHiggs ( double  p,
DoubleMatrix sigmaL,
DoubleMatrix sigmaR,
DoubleMatrix sigmaS 
)

LCT: Adds Higgs loop corrections to neutralino mass matrix. IO parameters: p=external momentum, {sigmaL,sigmaR,sigmaS}= 4x4 matrices of {left,right,scalar} corrections

checked

checked this block

G+

H+

H

h

G0

A0

void softsusy::MssmSoftsusy::addNeutLoopSfermion ( double  p,
DoubleMatrix sigmaL,
DoubleMatrix sigmaR,
DoubleMatrix sigmaS 
)

LCT: Adds sfermion loop corrections to neutralino mass matrix. IO parameters: p=external momentum, {sigmaL,sigmaR,sigmaS}= 4x4 matrices of {left,right,scalar} corrections

mix up the third family sfermions

void softsusy::MssmSoftsusy::addNeutralinoLoop ( double  p,
DoubleMatrix mass 
)
virtual

Adds the loop corrections on to an input tree-level neutralino mass.

LCT: Sfermion contribution

LCT: Gauge contributions

LCT: Higgs contribution

Reimplemented in softsusy::NmssmSoftsusy.

DoubleMatrix softsusy::MssmSoftsusy::addSbotChargino ( double  p,
double  mt,
DoubleMatrix chargino 
)

LCT: Adds one-loop chargino corrections to sbottom mass matrix IO parameters: p=external momentum, outputs chargino=2x2 matrix of self-energies in LR basis

Chargino Feynman Rules

void softsusy::MssmSoftsusy::addSbotCorrection ( double  p,
DoubleMatrix mass,
double  mb 
)
virtual

Checked 16.08.2005.

Adds one-loop corrections to sbottom mass matrix at p=root(mb1 mb2) IO parameters: p=external momentum scale, mass=tree level mass matrix on input, is returned with radiative corrections added, mt=DR bar top mass

No point adding radiative corrections to tachyonic particles

one-loop correction matrix

Self-energy matrix

LCT: Strong contributions

LCT: Stop, sbottom and stau contributions

LCT: Higgs contribution

LCT: Electroweak contribution

LCT: Chargino contribution

LCT: Neutralino contribution

Reimplemented in softsusy::NmssmSoftsusy.

DoubleMatrix softsusy::MssmSoftsusy::addSbotEweak ( double  p,
DoubleMatrix electroweak 
)

LCT: Adds one-loop electroweak corrections to sbottom mass matrix IO parameters: p=external momentum, outputs electroweak=2x2 matrix of self-energies in LR basis

DoubleMatrix softsusy::MssmSoftsusy::addSbotHiggs ( double  p,
double  mt,
DoubleMatrix higgs 
)

LCT: Adds one-loop Higgs corrections to sbottom mass matrix IO parameters: p=external momentum, mt=DR bar top mass, outputs higgs=2x2 matrix of self-energies in LR basis

define Higgs vector in 't-Hooft Feynman gauge, and couplings:

Order (s1 s2 G A, L R)

Mix sbots up

Mix CP-even Higgses up

i is the s1/s2 label

Charged Higgs Feynman rules (H+ G+, L R) basis

(H+ G+, L R) basis

DoubleMatrix softsusy::MssmSoftsusy::addSbotNeutralino ( double  p,
double  mt,
DoubleMatrix neutralino 
)

LCT: Adds one-loop neutralino corrections to sbottom mass matrix IO parameters: p=external momentum, outputs neutralino=2x2 matrix of self-energies in LR basis

Neutralino Feynman rules

DoubleMatrix softsusy::MssmSoftsusy::addSbotQCD ( double  p,
double  mt,
DoubleMatrix strong 
)

LCT: Adds one-loop strong corrections to sbottom mass matrix IO parameters: p=external momentum, mt=DR bar top mass, outputs strong=2x2 matrix of self-energies in LR basis

void softsusy::MssmSoftsusy::addSbotSfermion ( double  p,
double  mt,
DoubleMatrix stop,
DoubleMatrix sbottom 
)

LCT: Adds one-loop stop, sbottom and stau corrections to sbottom mass matrix. IO parameters: p=external momentum, mt=DR bar top mass, outputs {stop,sbottom}=2x2 matrix of self-energies in LR basis

DoubleMatrix softsusy::MssmSoftsusy::addSdownChargino ( double  p1,
double  p2,
int  family,
DoubleMatrix chargino 
)

LCT: Adds one-loop chargino corrections to sdown mass matrix IO parameters: {p1,p2}=external momentum, outputs chargino=2x2 matrix of self-energies in LR basis

Chargino Feynman Rules

void softsusy::MssmSoftsusy::addSdownCorrection ( DoubleMatrix mass,
int  family 
)
virtual

Adds one-loop corrections to sbottom mass matrix at p=root(mb1 mb2) IO parameters: mass=tree level mass matrix on input, is returned with radiative corrections added, mt=DR bar top mass

No point adding radiative corrections to tachyonic particles

Self-energy matrix

p1 = p2 = sqrt(msd(1) * msd(2));

LCT: QCD contribution

LCT: Higgs contribution

LCT: Electroweak contribution

LCT: Chargino contribution

LCT: Neutralino contribution

Reimplemented in softsusy::NmssmSoftsusy.

DoubleMatrix softsusy::MssmSoftsusy::addSdownEweak ( double  p1,
double  p2,
int  family,
DoubleMatrix electroweak 
)

LCT: Adds one-loop electroweak corrections to sdown mass matrix IO parameters: {p1,p2}=external momentum, outputs electroweak=2x2 matrix of self-energies in LR basis

DoubleMatrix softsusy::MssmSoftsusy::addSdownHiggs ( double  p1,
double  p2,
int  family,
DoubleMatrix higgs 
)

LCT: Adds one-loop Higgs corrections to sdown mass matrix IO parameters: {p1,p2}=external momentum, outputs higgs=2x2 matrix of self-energies in LR basis

define Higgs vector in 't-Hooft Feynman gauge, and couplings:

Order (s1 s2 G A, L R)

Mix sbots up

Mix CP-even Higgses up

i is the L/R label

Charged Higgs Feynman rules

(H+ G+, L R) basis

(none for sdownL since they are all Yukawa suppressed)

DoubleMatrix softsusy::MssmSoftsusy::addSdownNeutralino ( double  p1,
double  p2,
int  family,
DoubleMatrix neutralino 
)

LCT: Adds one-loop neutralino corrections to sdown mass matrix IO parameters: {p1,p2}=external momentum, outputs neutralino=2x2 matrix of self-energies in LR basis

Neutralino Feynman rules

DoubleMatrix softsusy::MssmSoftsusy::addSdownQCD ( double  p1,
double  p2,
int  family,
DoubleMatrix strong 
)

LCT: Adds one-loop strong corrections to sdown mass matrix IO parameters: {p1,p2}=external momentum, outputs strong=2x2 matrix of self-energies in LR basis

void softsusy::MssmSoftsusy::addSlepCorrection ( DoubleMatrix mass,
int  family 
)
virtual

16.09.05 checked.

Adds one-loop corrections to sel_fam mass matrix at p=root(msel1 msel2) IO parameters: mass=tree level mass on input, is returned with radiative corrections added, mt=DR bar top mass

No point adding radiative corrections to tachyonic particles

one-loop correction matrix

Self-energy matrix

double p = sqrt(msel(1) * msel(2));

LCT: Higgs contribution

LCT: Electroweak contribution

LCT: Chargino and neutralino contribution

Reimplemented in softsusy::NmssmSoftsusy.

void softsusy::MssmSoftsusy::addSlepCorrection ( double  p,
DoubleMatrix mass,
int  family 
)

This is a special version that I've added to correct lower families' mixings too

DoubleMatrix softsusy::MssmSoftsusy::addSlepEweak ( double  p1,
double  p2,
int  family,
DoubleMatrix electroweak 
)

LCT: Adds one-loop electroweak corrections to slepton self energy IO parameters: p=external momentum, family=generation, outputs electroweak=2x2 matrix of self-energies

LCT: EW contributions

void softsusy::MssmSoftsusy::addSlepGaugino ( double  p1,
double  p2,
int  family,
DoubleMatrix chargino,
DoubleMatrix neutralino 
)

LCT: Adds one-loop gaugino corrections to slepton self energy IO parameters: p=external momentum, family=generation, outputs {chargino,neutralino}=2x2 matrix of self-energies

Neutralino Feynman rules

Chargino Feynman Rules

DoubleMatrix softsusy::MssmSoftsusy::addSlepHiggs ( double  p1,
double  p2,
int  family,
DoubleMatrix higgs 
)

LCT: Adds one-loop Higgs corrections to slepton self energy IO parameters: p=external momentum, family=generation, outputs higgs=2x2 matrix of self-energies

Define Higgs vector of masses in 't-Hooft Feynman gauge, and couplings:

stau now stands for generation 1 or 2

Order (s1 s2 G A, L R)

Mix CP-even Higgses up

i is the s1/s2 label

Charged Higgs Feynman rules

(H+ G+, L R) basis

void softsusy::MssmSoftsusy::addSnuCorrection ( double &  mass,
int  family 
)
virtual

Found+fixed bug 7/09/06. Thanks to J Kersten.

Adds one-loop corrections to sneutrino mass of family "family" IO parameters: mass=tree level mass matrix on input, is returned with radiative corrections added

No point adding radiative corrections to tachyonic particles

one-loop correction matrix

LCT: Higg contribution

LCT: Electroweak contributions

LCT: Gaugino contributions

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::addSnuEweak ( double  p,
int  family,
double &  electroweak 
)

LCT: Adds one-loop electroweak corrections to sneutrino self energy IO parameters: p=external momentum, family=generation, outputs electroweak=self-energy

LCT: EW contributions

void softsusy::MssmSoftsusy::addSnuGaugino ( double  p,
int  family,
double &  chargino,
double &  neutralino 
)

LCT: Adds one-loop gaugino corrections to sneutrino self energy IO parameters: p=external momentum, outputs {chargino,neutralino}=self-energy

Neutralino Feynman rules

Chargino Feynman Rules

double softsusy::MssmSoftsusy::addSnuHiggs ( double  p,
int  family,
double &  higgs 
)

LCT: Adds one-loop Higgs corrections to sneutrino self energy IO parameters: p=external momentum, family=generation, outputs higgs=self-energy

Define Higgs vector of masses in 't-Hooft Feynman gauge, and couplings:

Order (s1 s2 G A, L R)

Mix CP-even Higgses up

Charged Higgs Feynman rules

(H+ G+, L R) basis

void softsusy::MssmSoftsusy::addSnuTauCorrection ( double &  mass)
virtual

Adds one-loop corrections to tau sneutrino mass IO parameters: p=external momentum, mass=tree level mass matrix on input, is returned with radiative corrections added, mt=DR bar top mass

No point adding radiative corrections to tachyonic particles

one-loop correction matrix

LCT: Sfermion contribution

LCT: Higgs contribution

LCT: Electroweak contribution

LCT: Gaugino contributions

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::addSnuTauEweak ( double  p,
double &  electroweak 
)

LCT: Adds one-loop electroweak corrections to tau sneutrino self energy IO parameters: p=external momentum, outputs electroweak=self-energy

EW bosons

void softsusy::MssmSoftsusy::addSnuTauGaugino ( double  p,
double &  chargino,
double &  neutralino 
)

LCT: Adds one-loop gaugino corrections to tau sneutrino self energy IO parameters: p=external momentum, outputs {chargino,neutralino}=self-energy

Neutralino Feynman rules

Chargino Feynman Rules

double softsusy::MssmSoftsusy::addSnuTauHiggs ( double  p,
double &  higgs 
)

LCT: Adds one-loop Higgs corrections to tau sneutrino self energy IO parameters: p=external momentum, outputs higgs=self-energy

Define Higgs vector of masses in 't-Hooft Feynman gauge, and couplings:

Order (s1 s2 G A, L R)

Mix CP-even Higgses up

Charged Higgs Feynman rules

(H+ G+, L R) basis

void softsusy::MssmSoftsusy::addSnuTauSfermion ( double  p,
double &  stop,
double &  sbottom 
)

LCT: Adds one-loop sfermion corrections to tau sneutrino self energy IO parameters: p=external momentum, outputs {stop,sbottom}=self-energy

void softsusy::MssmSoftsusy::addSquarkCorrection ( DoubleMatrix mass)

Now these are calculated at the squark scale.

Adds approximate one-loop corrections to squark mass matrix for first two families. IO parameters: mass=tree level mass matrix on input, is returned with radiative corrections added

No point adding radiative corrections to tachyonic particles

void softsusy::MssmSoftsusy::addStauCorrection ( double  p,
DoubleMatrix mass,
double  mtau 
)
virtual

Adds one-loop corrections to stau mass matrix at p=root(mtau1 mtau2) IO parameters: mass=tree level mass on input, is returned with radiative corrections added, mt=DR bar top mass

No point adding radiative corrections to tachyonic particles

one-loop correction matrix

LCT: Sfermion contribution

LCT: Higgs contributions

LCT: Electroweak contribution

LCT: Chargino and neutralino contributions

Reimplemented in softsusy::NmssmSoftsusy.

DoubleMatrix softsusy::MssmSoftsusy::addStauEweak ( double  p,
double  mtau,
DoubleMatrix electroweak 
)

LCT: Adds one-loop gaugino corrections to stau self energy IO parameters: p=external momentum, mtau=DR bar tau mass, outputs {chargino,neutralino}=2x2 matrix of self-energies

LCT: EW contributions

void softsusy::MssmSoftsusy::addStauGaugino ( double  p,
double  mtau,
DoubleMatrix chargino,
DoubleMatrix neutralino 
)

LCT: Adds one-loop Higgs corrections to stau self energy IO parameters: p=external momentum, mtau=DR bar tau mass, outputs higgs=2x2 matrix of self-energies

Neutralino Feynman rules

Chargino Feynman Rules

DoubleMatrix softsusy::MssmSoftsusy::addStauHiggs ( double  p,
double  mtau,
DoubleMatrix higgs 
)

LCT: Adds one-loop electroweak corrections to stau self energy IO parameters: p=external momentum, mtau=DR bar tau mass, outputs electroweak=2x2 matrix of self-energies

Define Higgs vector of masses in 't-Hooft Feynman gauge, and couplings:

Order (s1 s2 G A, L R)

Mix staus up

Mix CP-even Higgses up

i is the s1/s2 label

Charged Higgs Feynman rules

(H+ G+, L R) basis

(H+ G+, L R) basis

void softsusy::MssmSoftsusy::addStauSfermion ( double  p,
double  mtau,
DoubleMatrix stop,
DoubleMatrix sbottom 
)

LCT: Adds one-loop sfermion corrections to stau self energy IO parameters: p=external momentum, mtau=DR bar tau mass, outputs {stop,sbottom}=2x2 matrix of self-energies

DoubleMatrix softsusy::MssmSoftsusy::addStopChargino ( double  p,
DoubleMatrix chargino 
)

LCT: Adds one-loop chargino corrections to stop mass matrix IO parameters: p=external momentum, outputs chargino=2x2 matrix of self-energies in LR basis

Chargino Feynman Rules

LCT: Define mixing matrices and mass vector

void softsusy::MssmSoftsusy::addStopCorrection ( double  p,
DoubleMatrix mass,
double  mt 
)
virtual

As in BPMZ appendix.

Adds one-loop corrections to stop mass matrix IO parameters: p=external momentum, mass=tree level mass matrix on input, is returned with radiative corrections added, mt=DR bar top mass

No point adding radiative corrections to tachyonic particles

one-loop correction matrix

Self-energy matrix

Corrections themselves start here

LCT: Corrections from strong interactions

LCT: Corrections from stops

LCT: Corrections from sbottoms

LCT: Corrections from Higgses

LCT: Electroweak corrections

LCT: Chargino contribution

LCT: Neutralino contribution

Reimplemented in softsusy::NmssmSoftsusy.

DoubleMatrix softsusy::MssmSoftsusy::addStopEweak ( double  p,
DoubleMatrix electroweak 
)

LCT: Adds one-loop electroweak corrections to stop mass matrix IO parameters: p=external momentum, mt=DR bar top mass, outputs electroweak=2x2 matrix of self-energies in LR basis

DRbar value of e

DoubleMatrix softsusy::MssmSoftsusy::addStopHiggs ( double  p,
double  mt,
DoubleMatrix higgs 
)

LCT: Adds one-loop Higgs corrections to stop mass matrix IO parameters: p=external momentum, mt=DR bar top mass, outputs higgs=2x2 matrix of self-energies in LR basis

define Higgs vector in 't-Hooft Feynman gauge, and couplings:

Higgs-sfermion-sfermion couplings

LCT: CP-{even,odd}-sfermion-sfermion Feynman rules Order (s1 s2 G A, L R)

Mix stops up

Mix CP-even Higgses up

i is the s1/s2 label

Charged Higgs Feynman rules (H+ G+, L R) basis

LCT: Rotate sfermions to (1, 2) mass basis

LCT: Rotate sfermions to (1, 2) mass basis

LCT: Contributions start here

DoubleMatrix softsusy::MssmSoftsusy::addStopNeutralino ( double  p,
double  mt,
DoubleMatrix neutralino 
)

LCT: Adds one-loop neutralino corrections to stop mass matrix IO parameters: p=external momentum, outputs neutralino=2x2 matrix of self-energies in LR basis

Neutralino Feynman rules

DoubleMatrix softsusy::MssmSoftsusy::addStopQCD ( double  p,
double  mt,
DoubleMatrix strong 
)

LCT: Adds one-loop strong corrections to stop mass matrix IO parameters: p=external momentum, mt=DR bar top mass, outputs strong=2x2 matrix of self-energies in LR basis

DoubleMatrix softsusy::MssmSoftsusy::addStopSbottom ( double  p,
double  mt,
DoubleMatrix sbottom 
)

LCT: Adds one-loop sbottom corrections to stop mass matrix IO parameters: p=external momentum, mt=DR bar top mass, outputs sbottom=2x2 matrix of self-energies in LR basis

DoubleMatrix softsusy::MssmSoftsusy::addStopStop ( double  p,
double  mt,
DoubleMatrix stop 
)

LCT: Adds one-loop stop corrections to stop mass matrix IO parameters: p=external momentum, mt=DR bar top mass, outputs stop=2x2 matrix of self-energies in LR basis

DoubleMatrix softsusy::MssmSoftsusy::addSupChargino ( double  p1,
double  p2,
int  family,
DoubleMatrix chargino 
)

LCT: Adds one-loop chargino corrections to sup mass matrix IO parameters: {p1,p2}=external momentum, outputs chargino=2x2 matrix of self-energies in LR basis

Chargino Feynman Rules LCT: Here stop <==> sup and sbot <==> sdown

void softsusy::MssmSoftsusy::addSupCorrection ( DoubleMatrix mass,
int  family 
)
virtual

As in BPMZ appendix, INCLUDING weak boson loops.

Adds one-loop corrections to sup mass matrix at p=root(msup1 msup2) IO parameters: mass=tree level mass on input, is returned with radiative corrections added, mt=DR bar top mass

No point adding radiative corrections to tachyonic particles

one-loop correction matrix

Self-energy matrix

LCT: QCD contribution

LCT: Higgs contribution

LCT: Weak contribution

LCT: Chargino contribution

LCT: Neutralino contribution

Reimplemented in softsusy::NmssmSoftsusy.

DoubleMatrix softsusy::MssmSoftsusy::addSupEweak ( double  p1,
double  p2,
int  family,
DoubleMatrix electroweak 
)

LCT: Adds one-loop electroweak corrections to sup mass matrix IO parameters: {p1,p2}=external momentum, outputs electroweak=2x2 matrix of self-energies in LR basis

DRbar value of e

EW bosons

DoubleMatrix softsusy::MssmSoftsusy::addSupHiggs ( double  p1,
double  p2,
int  family,
DoubleMatrix higgs 
)

LCT: Adds one-loop Higgs corrections to sup mass matrix IO parameters: {p1,p2}=external momentum, outputs higgs=2x2 matrix of self-energies in LR basis

define Higgs vector in 't-Hooft Feynman gauge, and couplings:

top now stands for up

Order (s1 s2 G A, L R)

Mix stops up

Mix CP-even Higgses up

i is the s1/s2 label

Charged Higgs Feynman rules (H+ G+, L R) basis

(H+ G+, L R) basis

LCT: Contributions start here

DoubleMatrix softsusy::MssmSoftsusy::addSupNeutralino ( double  p1,
double  p2,
int  family,
DoubleMatrix neutralino 
)

LCT: Adds one-loop neutralino corrections to sup mass matrix IO parameters: {p1,p2}=external momentum, outputs neutralino=2x2 matrix of self-energies in LR basis

Neutralino Feynman rules

DoubleMatrix softsusy::MssmSoftsusy::addSupQCD ( double  p1,
double  p2,
int  family,
DoubleMatrix strong 
)

LCT: Adds one-loop strong corrections to sup mass matrix IO parameters: {p1,p2}=external momentum, outputs strong=2x2 matrix of self-energies in LR basis

void softsusy::MssmSoftsusy::alternativeEwsb ( double  mt)

Fixes mH1^2 and mH2^2 in order to get muCond and mAcond correct.

two-loop Higgs corrections

void softsusy::MssmSoftsusy::assignHiggs ( DoubleVector higgsm,
DoubleVector higgsc,
DoubleVector dnu,
DoubleVector dnd,
DoubleVector cn,
double  beta 
) const

Utility function: sets Higgs masses of neutral Higgs' (higgsm) and charged (higgsc). They should be of dimension 4 and 2 respectively. Also sets couplings dnu(4), dnd(4) and cn(4). beta is from tan beta.

void softsusy::MssmSoftsusy::assignHiggs ( DoubleVector higgsm,
DoubleVector higgsc 
) const

Utility function: sets Higgs masses of neutral Higgs' (higgsm) and charged (higgsc). They should be of dimension 4 and 2 respectively.

void softsusy::MssmSoftsusy::assignHiggsSfermions ( DoubleVector higgsm,
DoubleVector higgsc,
DoubleVector dnu,
DoubleVector dnd,
DoubleVector cn,
double  beta 
) const

some switches due to BPMZ's different conventions

Utility function: sets Higgs masses of neutral Higgs' (higgsm) and charged (higgsc) constributions for sfermions. They should be of dimension 4 and 2 respectively. Also sets couplings dnu(4), dnd(4) and cn(4). beta is from tan beta.

swap ordering of charged Higgs' for sfermions due to BPMZ conventions

void softsusy::MssmSoftsusy::calcDrBarHiggs ( double  beta,
double  mz2,
double  mw2,
double  sinthDRbar,
drBarPars eg 
)

Gone badly off-track

What if the tree-level A^0 appears to be tachyonic?

If it's only at MZ, the point may be OK: here, we may use the pole mass in loops, if necessary

physical value

If, after using the pole mass or whatever, we still have a problem, we must flag a tachyon and do something to stop a proliferation of NANs

< could cause a convergence problem

void softsusy::MssmSoftsusy::calcDrBarPars ( )
virtual

Organises tree-level calculation of all sparticle masses and mixings.

calculates masses all at tree-level in the DRbar scheme, useful for radiative corrections.

We want to set mu to be the one obtained from the tree-level Higgs potential for these purposes

First, must define mstop,sbot,stau and mixing angles in DRbar scheme

Restore the proper loop corrected value for mu

Reimplemented in softsusy::FlavourMssmSoftsusy, and softsusy::NmssmSoftsusy.

DoubleMatrix softsusy::MssmSoftsusy::calcHiggs3L ( bool  is_bottom)
protected

Higgs 3L corrections.

calculates 3-loop corrections to CP-even Higgs mass in the MSSM using Himalaya

void softsusy::MssmSoftsusy::calcHiggsAtScale ( int  accuracy,
double &  mt,
double &  sinthDRbar,
double &  piwwtMS,
double &  pizztMS,
double  q = 0. 
)

Calculates Higgs masses at a renormalisation scale q. If q=0, the standard SUSY scale is used.

Higgs: potentially at a different scale

Re-calculate the 1-loop tadpoles for the calculation if a different renormalisation scale is required

Iterate Higgs calculation (unless accuracy=0, in which case we just need a rough calculation) until the Higgs masses all converge to better than TOLERANCE fractional accuracy

iterate

double softsusy::MssmSoftsusy::calcMs ( ) const

DRbar pars should be defined already for this.

Calculates the best scale at which to do symmetry breaking: $ M_{SUSY}=\sqrt{m_{{\tilde t}_1 {\tilde t}_2}} $. Should only be called after calcDrBarPars.

double softsusy::MssmSoftsusy::calcRunMbNeutralinos ( ) const
virtual

Obtains (1 / mb) times 1-loop neutralino-suqrk corrections.

functions of couplings needed for loops

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::calcRunMtauCharginos ( double  mTauSMMZ) const
virtual

Mass eignebasis of charginos

checked charginos

double softsusy::MssmSoftsusy::calcRunMtauNeutralinos ( double  mTauSMMZ) const
virtual

functions of couplings needed for loops

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::calcRunMtNeutralinos ( ) const
virtual

Obtains (16 Pi^2) / mt times 1-loop Neutralino corrections.

Neutralinos

functions of couplings needed for loops

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::calcRunMtQCD ( ) const
virtual

Obtains (16 Pi^2) / mt times 1-loop and 2-loop QCD corrections.

1 loop QCD only – DRbar 10% correction

2 loop QCD: hep-ph/0210258 – debugged 15-6-03

double softsusy::MssmSoftsusy::calcRunMtStopGluino ( ) const
virtual

Obtains (16 Pi^2) / mt times 1-loop stop-Gluino corrections.

stop/gluino correction 6% correction

2 loop QCD involving MSSM sparticles – hep-ph/0210258, in the approximation that all squarks and the gluino have mass mSUSY: a few per mille error induced at SPS1a.

colour weighted average mass scale of squarks and gluino

double softsusy::MssmSoftsusy::calcRunningMb ( )
virtual

Applies approximate 1-loop SUSY corrections to mb(MZ) in order to return the DRbar running value

First convert mbMZ into DRbar value from hep-ph/9703293,0207126,9701308 (SM gauge boson contributions)

Higgs

Neutralinos

it's NOT clear if this resummation is reliable in the full 1-loop scheme but it's at least valid to 1 loop. Warning though: if you add higher loops, you'll have to re-arrange.

double softsusy::MssmSoftsusy::calcRunningMt ( )
virtual

Applies 1-loop SUSY and 2-loop QCD corrections to pole mt in order to return the DRbar running value at the current scale

Formulae from hep-ph/9801365: checked but should be checked again! Implicitly calculates at the current scale.

stop/gluino correction 6% correction

rest are extra bits from Matchev et al: 2% corrections Higgs contribution

Neutralino contribution

default without the higher order corrections: ordinary SQCD

2 loop QCD: hep-ph/0210258 – debugged 15-6-03

double softsusy::MssmSoftsusy::calcRunningMtau ( )
virtual

Full BPMZ expression.

Applies 1-loop SUSY corrections to pole mtau in order to return the DRbar running value at the current scale

MSbar value

conversion to DRbar

Chargino contribution

Higgs

Neutralinos

double softsusy::MssmSoftsusy::calcSinthdrbar ( ) const

Calculates DRbar sin theta_w at the current scale from gauge couplings.

Calculates sin theta at the current scale.

void softsusy::MssmSoftsusy::calcTadpole1Ms1loop ( double  mt,
double  sinthDRbar 
)
virtual

checked

Calculates and sets the one-loop pieces of $ t_1 / v_1 $: sets both 1-loop and total pieces equal to the one-loop piece

Reimplemented in softsusy::NmssmSoftsusy.

void softsusy::MssmSoftsusy::calcTadpole2Ms1loop ( double  mt,
double  sinthDRbar 
)
virtual

Calculates then sets the one-loop pieces of $ t_2 / v_2 $: sets both 1-loop and total pieces equal to the one-loop piece

CHECKED

Reimplemented in softsusy::NmssmSoftsusy.

void softsusy::MssmSoftsusy::charginos ( int  accuracy,
double  piwwt 
)
virtual

checked

Calculates pole chargino masses and mixing using approximate 1-loop SUSY corrections. IO parameters: piwwt is the W self-energy at the current, accuracy is the number of loops required (0 or 1 currently)

tree level mass matrix

You should take the sign of the chargino mass to be the same as got from the chargino_1 determination. Otherwise, if there's a difference, this will screw things up...

void softsusy::MssmSoftsusy::check_flags ( )
protected

check consistency of threshold flags

Check that threshold correction loop orders are consistent with Higgs mass loop order

double softsusy::MssmSoftsusy::deltaEW ( ) const

Returns fine-tuning as defined in Baer et al arXiv:1212.2655 eq 1.2.

In order, cHu, cHd, cMu, cSigmaHu, cSigmaHd

double softsusy::MssmSoftsusy::deltaVb ( double  outrho,
double  outsin,
double  alphaDRbar,
double  pizztMZ 
) const
virtual

outrho, outsin represent the DRbar values

Calculates delta_v corrections for outrho=DRbar rho parameter, outsin=DRbar sin theta_w, alphaDRbar=alpha(Q) in the DR bar scheme, pizztMZ=self-energy of the Z at MZ

Fixed by Ben 19/4/16

const drBarPars & softsusy::MssmSoftsusy::displayDrBarPars ( ) const

Displays tree-level masses and mixings of sparticles and third generation fermions

double softsusy::MssmSoftsusy::displayMw ( ) const

Returns predicted pole MW

const MssmSoftsusy& softsusy::MssmSoftsusy::displaySoftsusy ( ) const
inline

Returns object as a const.

displays M_X value

double softsusy::MssmSoftsusy::doCalcTad1fermions ( double  q,
double  v1 
) const

fixes trilnear H1-fermion-fermion couplings

bottom quark and tau, ignore others - factor (10^-2)^3 down I have included the bottom pole mass in the propagators and the Yukawa for the coupling, hence BPMZ's hb is written mb * root2 / v1

double softsusy::MssmSoftsusy::doCalcTad1Sfermions ( DoubleMatrix  lTS1Lr,
DoubleMatrix  lBS1Lr,
DoubleMatrix  lTauS1Lr,
double  costhDRbar 
) const

routine to calculate sfermiom contributions to H1 tadpole / v1

PA: routine to calculate sfermiom contributions to (16 ^2) t1 / v1.

sneutrino coupling

stop, sbottom, stau couplings

third generation squarks

third generation sleptons

first two families of squarks

sleptons

double softsusy::MssmSoftsusy::doCalcTad2fermions ( double  q) const

fixes trilnear H2-fermion-fermion couplings

top quark, ignore others - factor (10^-2)^3 down

double softsusy::MssmSoftsusy::doCalcTad2GaugeBosons ( double  q,
double  costhDRbar2,
double  g,
double  tanb 
) const

Weak bosons

double softsusy::MssmSoftsusy::doCalcTad2Higgs ( double  q,
double  costhDRbar2,
double  g,
double  tanb 
) const

Higgs

double softsusy::MssmSoftsusy::doCalcTad2Sfermions ( DoubleMatrix  lTS2Lr,
DoubleMatrix  lBS2Lr,
DoubleMatrix  lTauS2Lr,
double  costhDRbar 
) const

routine to calculate sfermiom contributions to (16 ^2) t1 / v1

PA: routine to calculate sfermiom contributions to (16 ^2) t1 / v1.

sneutrino coupling

third generation squarks

third generation sleptons

sleptons

double softsusy::MssmSoftsusy::doCalcTadpole1oneLoop ( double  mt,
double  sinthDRbar 
)
virtual

Does the calculation of one-loop pieces of $ t_1 / v_1 $.

From hep-ph/9606211's appendix. It should be done at MSusy to minimize the 1-loop contributions. Only call if you've calculated drbarpars. inputs are running top/bottom masses: call at MSusy only

PA: stop, sbottom, stau, couplings in the left right basis

Higgs

Neutralinos

Charginos

Weak bosons

Reimplemented in softsusy::RpvNeutrino.

double softsusy::MssmSoftsusy::doCalcTadpole2oneLoop ( double  mt,
double  sinthDRbar 
)
virtual

Does the calculation of one-loop pieces of $ t_2 / v_2 $.

From hep-ph/9311269's appendix. It should be done at MSusy to minimize the 1-loop contributions. Only call if you've calculated physpars inputs are running top/bottom masses. Call at MSusy

CHECKED

Sfermion couplings

Neutralinos

Reimplemented in softsusy::RpvNeutrino.

void softsusy::MssmSoftsusy::doChargedSleptons ( double  mT,
double  pizztMS,
double  sinthDRbarMS,
int  accuracy 
)
virtual

Organises calculation of all slepton masses. IO parameters: mT=DRbar tau mass, pizztMS=Z self energy at Q=M_SUSY, sinthDRbarMS=DRbar value of sin theta_w, accuracy=0,1: number of loops to add to tree-level squark mass matrix

no mixing assuming for first two families

do third family

twisted measures the ordering of the sbottom masses. If mstop1 > mstop2, twisted is defined to be true (mstop2 > mstop1 is defined "untwisted").

Reimplemented in softsusy::FlavourMssmSoftsusy.

void softsusy::MssmSoftsusy::doDownSquarks ( double  mb,
double  pizztMS,
double  sinthDRbarMS,
int  accuracy,
double  mt 
)
virtual

Organises calculation of all down squark masses. IO parameters: mb=DRbar bottom mass, pizztMS=Z self energy at Q=M_SUSY, sinthDRbarMS=DRbar value of sin theta_w, accuracy=0,1: number of loops to add to tree-level squark mass matrix

start 3rd family computation: more complicated!

tree-level matrices

The ordering and the mixing angle is defined by the following matrix, with the LIGHT sbottom as the external momentum

Check for tachyonic sbottoms

twisted measures the ordering of the sbottom masses. If msbot1 > msbot2, twisted is defined to be true (msbot2 > msbot1 is defined "untwisted").

Reimplemented in softsusy::FlavourMssmSoftsusy.

void softsusy::MssmSoftsusy::doQuarkMixing ( DoubleMatrix mDon,
DoubleMatrix mUpq 
)
virtual

input diagonal matrices and it'll give you back mixed ones

Input diagonal mass matrices and it'll give you back mixed ones, based on the CKM quark mixing matrix you supplied in vCkm. The idea is that MssmSoftsusy objects are UNmixed. Therefore this method does nothing. Derived objects may have mixing implemented

This is a dummy routine - mixing is ignored in this object (it's all done in FLAVOURMSSMSOFTSUSY these days).

Reimplemented in softsusy::FlavourMssmSoftsusy.

void softsusy::MssmSoftsusy::doSnu ( double  pizztMS,
int  accuracy = 0 
)
virtual

Organises calculation of all sneutrino masses, pizztMS=Z self energy at Q=M_SUSY

Reimplemented in softsusy::FlavourMssmSoftsusy.

void softsusy::MssmSoftsusy::doTadpoles ( double  mt,
double  sinthDRbar 
)

Does the full 2-loop calculation of both tadpoles and sets them.

tachyons tend to screw up this, so only calculate if we don't have them

add the two-loop terms, prepare inputs

two-loop Higgs corrections: alpha_s alpha_b

end of 2-loop bit

void softsusy::MssmSoftsusy::doUfb3 ( double  mgut)

Sets the minimum of potential to be the difference between the UFB-3 direction minimum and the standard EW breaking minimum. mgut is obviously the high-scale at which boundary conditions are employed

void softsusy::MssmSoftsusy::doUpSquarks ( double  mt,
double  pizztMS,
double  sinthDRbarMS,
int  accuracy 
)
virtual

Organises calculation of all up squark masses. IO parameters: mt=DRbar top mass, pizztMS=Z self energy at Q=M_SUSY, sinthDRbarMS=DRbar value of sin theta_w, accuracy=0,1: number of loops to add to tree-level squark mass matrix

first two families are simpler

StopSquared2 is now tree-level

one loop corrections

theta is calculated at p=mstop1

twisted measures the ordering of the sbottom masses. If mstop1 > mstop2, twisted is defined to be true (mstop2 > mstop1 is defined "untwisted").

Reimplemented in softsusy::FlavourMssmSoftsusy.

double softsusy::MssmSoftsusy::dR ( double  outrho,
double  outsin,
double  alphaDRbar,
double  pizztMZ,
double  piwwt0 
)
virtual

Calculates delta r corrections for outrho=DRbar rho parameter, outsin=DRbar sin theta_w, alphaDRbar=alpha(Q) in the DR bar scheme, pizztMZ=self-energy of the Z at p=MZ, pizzt0=self-energy of the W at p=0

2 loop SM contribution

Dominant two-loop SM term

void softsusy::MssmSoftsusy::drbarSLHA ( ostream &  out,
int  numPoints,
double  qMax,
int  n 
)
virtual

outputs DRbar parameters at scale Q (default is at MSUSY)

Starting non-essential information. The following decides what scale to output the running parameters at. It depends upon what qMax is and how many points the user has requested. For qMax = 0 and 1 point (defaults), Q=MSUSY is printed out. For qMax = 0 and n points, points are spaced logarithmically between MZ and MSUSY. For qMax != 0 and 1 point, Q=qMax is printed. For qMax != 0 and n points, points are log spaced between MZ and qMax.

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::dRho ( double  outrho,
double  outsin,
double  alphaDRbar,
double  pizztMZ,
double  piwwtMW 
)
virtual

Calculates delta rho corrections for outrho=DRbar rho parameter, outsin=DRbar sin theta_w, alphaDRbar=alpha(Q) in the DR bar scheme, pizztMZ=self-energy of the Z at MZ, piwwtMW=self-energy of the W at p=MW

2 loop SM contribution

bug-fixed 24.08.2002

DoubleVector softsusy::MssmSoftsusy::fineTune ( void(*)(MssmSoftsusy &, const DoubleVector &)  boundaryCondition,
const DoubleVector bcPars,
double  MX,
bool  doTop = false 
)

Pass it an object and it'll return the fine tuning parameters.

Calculates fine-tuning for soft parameters and mu, m_3^2, top Yukawa. IO parameters: bcPars should be a vector giving the high-scale SUSY breaking boundary condition parameters, MX is the high-scale, boundaryCondition is the user-supplied function that sets the SUSY breaking BCs. If doTop is true, it also calculates the fine tuning associated with the top Yukawa coupling.

Stores running parameters in a vector

flag problem FT calculation with NaN...too inaccurate

Restore initial parameters at correct scale

void softsusy::MssmSoftsusy::fixedPointIteration ( void(*)(MssmSoftsusy &, const DoubleVector &)  boundaryCondition,
double  mxGuess,
const DoubleVector pars,
int  sgnMu,
double  tanb,
const QedQcd oneset,
bool  gaugeUnification,
bool  ewsbBCscale = false 
)

Driver calculation to determine all sparticle masses and parameters. Returns low energy softsusy object consistent with BC's m0 etc at MGUT. oneset should be at MZ and contains the SM data to fit the model to. If the running comes into difficulty, eg if a Landau pole is reached, it returns a ZERO object: no result is possible! Boundary condition is the theoretical condition on parameters at the high energy scale mx: the parameters themselves are contained within the vector. IO parameters: sgnMu is the desired sign of mu: + or - 1. If mu is 0, mu is set initially as a boundary condition. tanb = desired value of DR bar tan beta(MZ). boundaryCondition is the function which sets to SUSY BCs at the high scale, mxGuess is the GUT scale gaugeUnification=true if the user requests true gauge unification, in which case mxGuess is the first guess. Returns actual GUT scale. ewsbBCscale = false (or omitted) means that the boundary condition on SUSY breaking is set in the usual way. If it is true, the boundary condition is set to $\sqrt{m_{{\tilde t}_1} m_{{\tilde t}_2}} $, ie like in the "pheno MSSM".

Returns low energy softsusy object consistent with BC's m0 etc at MGUT. oneset should be at MZ and contains the SM data to fit the model to. If the running comes into difficulty, eg if a Landau pole is reached, it returns a ZERO object: no result is possible! Boundary condition is the theoretical condition on parameters at the high energy scale mx: the parameters themselves are contained within the vector.

Remember initial values

Always starts from an empty object

Here all was same

2 loops should protect against ht Landau pole

Initial guess: B=0,

got nonzero gauge here

void softsusy::MssmSoftsusy::flagInaccurateHiggsMass ( bool  a)
inline

Flags point where higher order corrections to higgs mass are potentially very large

void softsusy::MssmSoftsusy::flagTachyon ( tachyonType  a)
inline

Flags a negative-mass squared scalar (really a CCB problem)

Flags a negative-mass squared scalar at MZ (means that SOFTSUSY's output is somewhat inaccurate, but the point may still be OK)

void softsusy::MssmSoftsusy::getNeutPassarinoVeltman ( double  p,
double  q,
DoubleMatrix b0fn,
DoubleMatrix b1fn 
)

LCT: Returns matrix of Passarino-Veltman B0 and B1 functions.

LCT: W+

LCT: H+

LCT: Z0

LCT: A0

LCT: h0

void softsusy::MssmSoftsusy::getNeutralinoCharginoHpmCoup ( ComplexMatrix apph1,
ComplexMatrix apph2,
ComplexMatrix bpph1,
ComplexMatrix bpph2 
) const
virtual

LCT: Returns trilinear neutralino-chargino-hpm coupling in unrotated basis.

LCT: Returns neutralino-chargino-charged-Higgs trilinear couplings in weak basis

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::getVev ( double  pizzt)

Input for this one (saves time, possibly) is to give the self-energy of the Z at the current scale

void softsusy::MssmSoftsusy::gluino ( int  accuracy)
virtual

Calculates pole gluino mass to 1-loop SUSY corrections.

One loop corrections to gluino pole mass: hep-ph/9606211 BUG fixed to use g3 at current scale 8.1.2001 Changed to resummed version 11.05.2001

SUSY QCD radiative correction (gluon/gluino)

Quark/squark correction

Third family mixing contribution: NB changed sign of these 4/6/10 Matchev says BPMZ may be wrong! Fixed again by dividing by M3 on 26/8/11 Corrected this incorrect "fix" 2/10/12

MssmSusyRGE softsusy::MssmSoftsusy::guessAtSusyMt ( double  tanb,
const QedQcd oneset 
)
virtual

Provides the first guess at a SUSY object at mt, inputting tanb and oneset (should be at MZ) - it's very crude, doesn't take radiative corrections into account etc. oneset provides low energy data and tanb=tan beta

Provides the first guess at a SUSY object at mt, inputting tanb and oneset (should be at MZ) - it's very crude, doesn't take radiative corrections into account etc.

This bit gives a guess at a SUSY object

Gauge couplings at mt

Yukawa couplings – at roughly tree level

Reimplemented in softsusy::FlavourMssmSoftsusy.

void softsusy::MssmSoftsusy::headerSLHA ( ostream &  out)

This does the job of the above method, but performs the header and CHANGES TO 8 SIG FIGS

bool softsusy::MssmSoftsusy::higgs ( int  accuracy,
double  piwwt,
double  pizzt 
)

Calculates pole Higgs masses and mixings: full 1-loop SUSY corrections and 2-loop alpha_t (alpha_s + alpha_t) + alpha_s alpha_b effective potential corrections. IO parameters: piwwt is the W self-energy at M_SUSY, accuracy is number of loops (0 or 1) to use and pizzt is the Z self-energy at M_SUSY Returns "true" if there's a tachyon problem

< physical value

double mApole2 = sqr(mApole);

There'll be trouble if B has the opp sign to mu. This isn't really tree-level since it includes some one loops correrctions, namely tadpoles and Z loops

radiative corrections:

one-loop radiative corrections included in sigma

two-loop Higgs corrections: alpha_s alpha_b

< chooses DR-bar scheme from slavich et al

two-loop Higgs corrections: alpha_s alpha_t, alpha_s alpha_b and alpha_b^2, alpha_t*2, alpha_b alpha_t

In hep-ph/0406277 found the lambda_tau^2 and lambda_tau lambda_b corrections to be negligible. Have commented them here for calculational efficiency. Uncomment to see their effect.

DEBUG: is this still true? NO: not for neutralino/chargino parts. you need PIs2s1 separately, unfortunately.

We pick up the real parts of the eigenvalues for the masses

If certain DRbar ratios are large, they can cause massive higher order corrections in the higgs mass, making it have O(1) uncertainties. In these cases, you should switch to an OS calculation (eg by using FEYNHIGGS) for the Higgs mass (but there are other points at high tan beta where the DRbar scheme does better).

Because mhAt0 is defined in the p^2=0 limit, it should be real

Definitions are such that theta should diagonalise the matrix like O = [ cos sin ] [-sin cos ] and O m O^T = [ m2^2 ] [ m1^2 ] where m1 < m2, therefore if they come out in the wrong order, add pi/2 onto theta.

theta defined for p=mh

void softsusy::MssmSoftsusy::inomixingSLHA ( ostream &  out)

This does the job of the above method, but outputs the UMIX/VMIX blocks.

implementing positive-only chargino masses in SLHA

void softsusy::MssmSoftsusy::isajetInterface764 ( const char  fname[80]) const

prints a file into fname which acts as an input to isajet

For input into isajet parameter file called fname.

PRINT out the fiddle in ISAJET PARAMETER file format

void softsusy::MssmSoftsusy::isajetNumbers764 ( double &  mtopPole,
double &  mGPole,
double &  smu,
double &  mA,
double &  tanb,
double &  mq1l,
double &  mdr,
double &  mur,
double &  meL,
double &  meR,
double &  mql3,
double &  mdr3,
double &  mur3,
double &  mtauL,
double &  mtauR,
double &  at,
double &  ab,
double &  atau,
double &  mq2l,
double &  msr,
double &  mcr,
double &  mmuL,
double &  mmuR,
double &  m1,
double &  m2 
) const

Works out how best to fit the isajet numbers to the spectrum. There are problems with the Higgs and sbottoms because ISAJET assumes certain tree-level relations between masses that are broken by SOFTSUSY's higher accuracy. The differences get large for high tan beta around 50, at around 10 they're typically only a percent. Output parameters: mtopPole is the pole mass of the top quark, mGPole is the gluino pole mass, smu is the superpotential Higgs parameter, mA is the pseudoscalar Higgs mass, tanb is tan beta, mq1l is the mass of the LH first family squark, mdr is the mass of the RH first family squark, meL is the LH selectron mass, meR is the RH selectron mass, mql3 is the LH stop mass, mdr3 is the RH sbottom mass, mur3 is the RH stop mass, mtauL is the LH stau mass, mtauR is the RH stau mass, at is the stop trilinear term, ab is the sbottom trilinear term, atau is the stau trilinear term, mq2l, msr, mcr are 2nd family squark masses, mmuL, mmuR are the smu masses, m1 and m2 are the gaugino mass parameters.

Works out how best to fit the isajet numbers to the spectrum. There are problems with the Higgs and sbottoms because ISAJET assumes certain tree-level relations between masses that are broken by SOFTSUSY's higher accuracy. The differences get large for high tan beta around 50, at around 10 they're typically only a percent.

Store a copy of the current object

Run to MSUSY

Store current object in vector

restore object at MSUSY

tree level

define ISAJET constants

Loop is for iterative solution

We're fiddling these variables to reproduce inside isajet the squark mass matrices that we've found in softsusy

void softsusy::MssmSoftsusy::isawigInterface764 ( const char  fnamein[80],
const char  fnameout[80],
const char  fnamesoft[80] 
) const

Prints a file into fnamesoft that can be input into isawig. fnamein gives the ISASSRUN output file name, fnameout is the filename for the ISAWIG input file

double softsusy::MssmSoftsusy::it1par ( int  numPar,
const DoubleVector bcPars 
)

Give it a GUT scale object consistent with rewsb and it'll return the fine tuning of one parameter specified by numPar ht, mu and m3sq at the high

Give it a GUT scale object consistent with rewsb and it'll return the fine tuning by varying m32, mu and m3sq at the high scale

Stores running parameters in a vector

Defines starting value to calculate derivative from

Fine tuning is a / MZ^2 d MZ^2 / d a for any parameter a

High error: if can't find a derivative, error comes back with 1.0e30

Restore initial parameters at correct scale

void softsusy::MssmSoftsusy::iterateMu ( double &  muold,
int  sgnMu,
double  mt,
int  maxTries,
double  pizzMS,
double  sinthDRbar,
double  tol,
int &  err 
)

Obtains solution of one-loop effective potential minimisation via iteration technique. Currently includes: all 1-loop SUSY tadpoles, plus 2-loop alpha_t (alpha_t + alpha_s) + alpha_b alpha_s corrections IO parameters: munew=current value of mu for this iteration, sgnMu=desired sign of mu, mt=DRbar mtop, maxTries=maximum number of iterations before it bails out, pizzMS=self-energy of MZ at current scale, sinthDRbar=DRbar value of sin theta_w, tol=desired fractional accuracy on mu, err=error flag: err=1 if no iteration reached, 2 if incorrect rewsb

Obtains solution of one-loop effective potential minimisation via iteration technique err is 1 if no iteration reached 2 if incorrect rewsb

How close to convergence are we?

calculate the new one-loop tadpoles with old value of mu

Error in rewsb

void softsusy::MssmSoftsusy::itLowsoft ( int  maxTries,
int  sgnMu,
double  tol,
double  tanb,
void(*)(MssmSoftsusy &, const DoubleVector &)  boundaryCondition,
const DoubleVector pars,
bool  gaugeUnification,
bool  ewsbBCscale 
)

Main iteration routine: Boundary condition is the theoretical condition on parameters at the high energy scale mx: the parameters themselves are contained within the vector. IO parameters: maxTries is the maximum number of iterations allowed, mx is the GUT scale (negative if you require gauge unification), sgnMu is the desired sign of mu: + or - 1. If mu is 0, mu is set initially as a boundary condition. tanb = desired value of DR bar tan beta(MZ).

Iterating too long: bail out

On first iteration, don't bother with finite corrections

precision of running/RGE integration: start off low and increase

first stab at MSUSY: root(mstop1(MZ) mstop2(MZ))

problem with running: bail out

Guard against the top Yukawa fixed point

problem with running: bail out

Equal gauge couplings: let them and their derivatives set the boundary condition scale – linear approximation

if mx is too high/low, will likely get non-perturbative problems

< This will be at MSUSY

< After 11 tries, we start averaging old/new mu values

< Accuracy achieved: bail out

< Reset the number of iterations for the next time

guards against nasty fatal problems

Old iteration is 'old': these are the parameters by which convergence is measured.

If a print out is desired, print respectively, the difference with the last iteration (sum tol or sT), the mu parameter and m3^2 from EWSB, and the predicted MW and MZ boson masses

problem with running: bail out

old = MssmSoftsusy();

void softsusy::MssmSoftsusy::lesHouchesAccordOutput ( ostream &  out,
const char  model[],
const DoubleVector pars,
int  sgnMu,
double  tanb,
double  qMax,
int  numPoints,
bool  ewsbBCscale 
)
virtual

SUSY Les Houches accord for interfacing to Monte-Carlos, decay programs etc.

Outputs with Les Houches accord conventions to standard output. Inputs: out should be something like cout or fout depending on whether you want output in a file or not. model contains what form of model is used for the SUSY breaking terms (eg cmssm, gmsb, amsb, nonUniversal). qMax is only relevant if you want a gridded output of running parameters up to some scale qMax. Put numPoints = 1 if you don't want to use this option - then qMaz is immaterial. mb is mb(mb) in the MSbar scheme used to produce the output, whereas mtau is the pole mass used (eg 1.777). mgut is the GUT scale that has been determined, and altEwsb is true if you specified mu and mA as input parameters (not tan beta and mH1, mH2).

Reimplemented in softsusy::NmssmSoftsusy, softsusy::RpvNeutrino, and softsusy::FlavourMssmSoftsusy.

double softsusy::MssmSoftsusy::lowOrg ( void(*)(MssmSoftsusy &, const DoubleVector &)  boundaryCondition,
double  mxGuess,
const DoubleVector pars,
int  sgnMu,
double  tanb,
const QedQcd oneset,
bool  gaugeUnification,
bool  ewsbBCscale = false 
)
inline

legacy wrapper to provide backward compatibility: does the same as the above. If you want non-default valuse, make sure loops, qewsb and mixing are set in the object before calling it

int softsusy::MssmSoftsusy::lsp ( double &  mass,
int &  posi,
int &  posj 
) const

Returns lsp mass in mass and function return labels which particle is lsp=0 means LSP is neutralino, 1=up squark, 2=down squark, 3=sleptons, 4=charginos, 5=sneutrinos, 6=gluino. posi, posj give the "handedness" (ie 1 or 2) for scalars and family respectively.

Returns lsp mass in mass and function return labels which particle is lsp: 0 is neutralino posi = #, posj = 0

up squarks 1

down squarks 2

sleptons 3

charginos 4

sneutrinos 5

gluino 6

gravitino -1

void softsusy::MssmSoftsusy::massSLHA ( ostream &  out)

This does the job of the above method, but outputs the Mass block.

out << " 6 "; printRow(out, displayDataSet().displayPoleMt()); out << " # top\n";

double softsusy::MssmSoftsusy::maxMass ( ) const

Returns the mass of the heaviest SUSY particle, excluding gravitino.

up squarks 1

down squarks 2

sleptons 3

charginos 4

sneutrinos 5

gluino 6

void softsusy::MssmSoftsusy::methodBoundaryCondition ( const DoubleVector pars)
virtual

Dummy function to allow users to re-define it in user supplied objects. Pars will contain necessary parameters to describe high-scale boundary conditions on SUSY breaking terms

Reimplemented in softsusy::RpvSoftsusy.

void softsusy::MssmSoftsusy::minparSLHA ( ostream &  out,
const char  model[],
const DoubleVector pars,
double  tanb,
int  sgnMu,
bool  ewsbBCscale 
)

MINPAR block of SLHA.

For universal models, users still want to know MX and it has to be specially printed out as EXTPAR 0

void softsusy::MssmSoftsusy::modselSLHA ( ostream &  out,
const char  model[] 
)

This does the MODSEL block of SLHA.

Les Houches

accord codes

void softsusy::MssmSoftsusy::neutralinoCharginoMSLHA ( ostream &  out)
virtual

neutralino and charigno part of mass block of SLHA

Charginos printed out positive in SLHA format, since they are sorted out by the mixing matrix minus row.

Reimplemented in softsusy::NmssmSoftsusy.

void softsusy::MssmSoftsusy::neutralinos ( int  accuracy,
double  piwwt,
double  pizzt 
)
virtual

mixNeut set to diagonal = mixNeut^T mNeutralino mixNeut: checked

Calculates pole neutralino masses and mixingusing approximate 1-loop SUSY corrections. IO parameters: piwwt is the W self-energy at M_SUSY, accuracy is the number of loops required (0 or 1 currently), pizzt is the Z self-energy at M_SUSY

tree level

symmetrise tree-level

We should choose sign conventions from the case where the mixing is defined, in case there is a difference

Reimplemented in softsusy::RpvSoftsusy.

int softsusy::MssmSoftsusy::nlsp ( double &  mass,
int &  posi,
int &  posj 
) const

Returns nlsp mass in mass and function return labels which particle is nlsp=0 means NLSP is neutralino, 1=up squark, 2=down squark, 3=sleptons, 4=charginos, 5=sneutrinos, 6=gluino. posi, posj give the "handedness" (ie 1 or 2) for scalars and family respectively.

Returns nlsp mass in mass and function return labels which particle is nlsp: 0 is neutralino posi = #, posj = 0

up squarks 1

down squarks 2

sleptons 3

charginos 4

sneutrinos 5

gluino 6

gravitino -1

check that nlsp is not the next-to-lightest in the group of the lsp

neutralinos

up squarks 1

down squarks 2

sleptons 3

charginos 4

sneutrinos 5

gluino 6 – there is only one gluino mass

gravitino -1

void softsusy::MssmSoftsusy::physical ( int  accuracy)
virtual

Calculates physical sparticle masses to accuracy number of loops. Should be called at M_{SUSY}.

Organises calculation of physical quantities such as sparticle masses etc Call AT MSusy

Running masses at MSUSY

This part of the code adds higher loop corrections to gluino masses etc from Steve Martin et al

For third family sparticles, we must keep the same mass ordering as SOFTSUSY

Reimplemented in softsusy::NmssmSoftsusy, and softsusy::RpvNeutrino.

double softsusy::MssmSoftsusy::piAA ( double  p,
double  Q 
) const
virtual

Calculates transverse part of A^0 self-energy: for p=external momentum, Q=renormalisation scale

checked 30.07.03

< protects vs zeros

Up fermions/sfermions

ignore 1st 2 families

LH gens 1-2

RH gen 1-2

Other Higgs'

trilinear Higgs coupling Feynman rules

trilinear Higgs/Goldstone Feynman rules

quartic Higgs coupling Ferynman rules: check

Rotate to A neutralino basis

To A-mass basis

cout << "f=" << fChChiA << " g=" << gChChiA;

Down fermions

sneutrinos

LH gens 1-2

RH gens 1-2

Sign of certain contributions bug-fixed 30-07-03

double softsusy::MssmSoftsusy::piHpHm ( double  p,
double  Q 
) const
virtual

LCT: Charged Higgs self-energy.

Calculates transverse part of H^+H^- self-energy: for p=external momentum, Q=renormalisation scale

<< LCT: Note minus sign. Consistent with

SOFTSUSY

LCT: fermion contribution

LCT: sfermion contribution

LCT: pure gauge contribution

LCT: Higgs contribution

LCT: neutralino-chargino contribution

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::piHpHmFermions ( double  p,
double  q 
) const

LCT: Returns fermion contributions to charged Higgs self-energy.

LCT: Calculates (16 Pi^2) times the fermion contribution to H^+H^- self-energy for p=external momentum, q=renormalisation scale

fermions: 3rd family only for now

double softsusy::MssmSoftsusy::piHpHmGauge ( double  p,
double  q 
) const

LCT: Returns pure gauge contributions to charged Higgs self-energy.

LCT: Calculates (16 Pi^2) times the gauge contribution to H^+H^- self-energy for p=external momentum, q=renormalisation scale

double softsusy::MssmSoftsusy::piHpHmGauginos ( double  p,
double  q 
) const

LCT: Calculates (16 Pi^2) times the gaugino contribution to H^+H^- self-energy for p=external momentum, q=renormalisation scale

LCT: Returns neutralino-chargino contributions to charged Higgs self-energy

Get to physical gaugino estates, and G+H+

double softsusy::MssmSoftsusy::piHpHmHiggs ( double  p,
double  q 
) const

LCT: Returns Higgs contributions to charged Higgs self-energy.

LCT: Calculates (16 Pi^2) times the Higgs contribution to H^+H^- self-energy for p=external momentum, q=renormalisation scale

BPMZ not so clear: assuming (D.67) that s_i G+ H- coupling is same as s_i G- H+ (by C conservation): basis is (s1 s2, G- H-)

in (H h) basis

double softsusy::MssmSoftsusy::piHpHmSfermions ( double  p,
double  q,
double  mu 
) const

LCT: Returns sfermion contributions to charged Higgs self-energy.

LCT: Calculates (16 Pi^2) times the sfermion contribution to H^+H^- self-energy for p=external momentum, q=renormalisation scale, and SUSY parameter mu

first two generations: forget lighter Yukawas

3rd family

ups

downs

sneutrinos/selectrons

downs

3rd fam ups

3rd fam downs

3rd fam snus

3rd fam es

Complex softsusy::MssmSoftsusy::pis1s1 ( double  p,
double  q 
) const

Calculates transverse part of Higgs self-energy: for p=external momentum, Q=renormalisation scale

minus sign taken into acct here!

Neutralino contribution

Chargino contribution

Complex softsusy::MssmSoftsusy::pis1s1Charginos ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the Chargino contribution to the Higgs self-energy: for p=external momentum, q=renormalisation scale

Complex softsusy::MssmSoftsusy::pis1s1Fermions ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the fermion contribution to Higgs self-energy: for p=external momentum, q=renormalisation scale

fermions: 3rd family only for now

Complex softsusy::MssmSoftsusy::pis1s1Higgs ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the Higgs contribution to Higgs self-energy: for p=external momentum, q=renormalisation scale

Trilinear Higgs couplings in basis H h G A: have assumed the couplings are symmetric (ie hHs1 = Hhs1)

Quadrilinear Higgs couplings

define Higgs vector in 't-Hooft Feynman gauge, and couplings:

cout << "higgs(" << i << "," << j << ")=" << higgs;

cout << "higgs(" << i << "," << j << ")=" << higgs;

cout << hhs1 << hhs1s1 << higgsm;

Basis (G+ H+, G- H-)

(G+ H+)

Complex softsusy::MssmSoftsusy::pis1s1Neutralinos ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the Neutralino contribution to the Higgs self-energy: for p=external momentum, q=renormalisation scale

Complex softsusy::MssmSoftsusy::pis1s1Sfermions ( double  p,
double  q,
DoubleMatrix  ls1tt,
DoubleMatrix  ls1bb,
DoubleMatrix  ls1tautau 
) const

Calculates (16 Pi^2) times the sfermion contribution to Higgs.

Complex versions of Higgs loop corrections.

Mix 3rd family up

selectron couplings to s1 Higgs state: neglect Yukawas + mixing

Complex softsusy::MssmSoftsusy::pis1s2 ( double  p,
double  q 
) const

Calculates transverse part of Higgs self-energy: for p=external momentum, Q=renormalisation scale

minus sign taken into acct here!

sfermion couplings to s2 Higgs state

Neutralino contribution

Chargino contribution

Complex softsusy::MssmSoftsusy::pis1s2Charginos ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the Chargino contribution to the Higgs self-energy: for p=external momentum, q=renormalisation scale

Complex softsusy::MssmSoftsusy::pis1s2Higgs ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the Higgs contribution to Higgs self-energy: for p=external momentum, q=renormalisation scale

Trilinear Higgs couplings in basis H h G A: have assumed the couplings are symmetric (ie hHs1 = Hhs1)

Trilinear Higgs couplings in basis H h G A: have assumed the couplings are symmetric (ie hHs2 = Hhs2)

Quadrilinear Higgs couplings

cout << "alpha=" << alpha << " g=" << g << " " << gp << " cw" << costhDrbar << " " << displayTanb();

define Higgs vector in 't-Hooft Feynman gauge, and couplings:

Complex softsusy::MssmSoftsusy::pis1s2Neutralinos ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the Neutralino contribution to the Higgs self-energy: for p=external momentum, q=renormalisation scale

Complex softsusy::MssmSoftsusy::pis1s2Sfermions ( double  p,
double  q,
DoubleMatrix  ls1tt,
DoubleMatrix  ls1bb,
DoubleMatrix  ls1tautau,
DoubleMatrix  ls2tt,
DoubleMatrix  ls2bb,
DoubleMatrix  ls2tautau 
) const

Calculates (16 Pi^2) times the sfermion contribution to Higgs self-energy: for p=external momentum, q=renormalisation scale

Mix 3rd family up

sneutrinos

selectron couplings to s1 Higgs state: neglect Yukawas + mixing

couplings to s2 Higgs state: neglect Yukawas + mixing

Complex softsusy::MssmSoftsusy::pis2s2 ( double  p,
double  q 
) const

checked 28.10.02

Calculates transverse part of Higgs self-energy: for p=external momentum, Q=renormalisation scale

minus sign taken into acct here!

sfermion couplings to s2 Higgs state

Complex softsusy::MssmSoftsusy::pis2s2Charginos ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the Chargino contribution to the Higgs self-energy: for p=external momentum, q=renormalisation scale

Complex softsusy::MssmSoftsusy::pis2s2Fermions ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the fermion contribution to Higgs self-energy: for p=external momentum, q=renormalisation scale

fermions: 3rd family only for now

Complex softsusy::MssmSoftsusy::pis2s2Higgs ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the Higgs contribution to Higgs self-energy: for p=external momentum, q=renormalisation scale

Trilinear Higgs couplings in basis H h G A: have assumed the couplings are symmetric (ie hHs2 = Hhs2)

Quadrilinear Higgs couplings

define Higgs vector in 't-Hooft Feynman gauge, and couplings:

Complex softsusy::MssmSoftsusy::pis2s2Neutralinos ( double  p,
double  q 
) const

Calculates (16 Pi^2) times the Neutralino contribution to the Higgs self-energy: for p=external momentum, q=renormalisation scale

Neutralino contribution

Complex softsusy::MssmSoftsusy::pis2s2Sfermions ( double  p,
double  q,
DoubleMatrix  ls2tt,
DoubleMatrix  ls2bb,
DoubleMatrix  ls2tautau 
) const

Calculates (16 Pi^2) times the sfermion contribution to Higgs self-energy: for p=external momentum, q=renormalisation scale

stop contribution

sbottom contribution

first two families of sparticles

Mix 3rd family up

stop

sbottom

stay

couplings to s2 Higgs state: neglect Yukawas + mixing

double softsusy::MssmSoftsusy::piWWT ( double  p,
double  q,
bool  usePoleMt = false 
) const
virtual

Calculates transverse part of W self-energy: for p=external momentum, Q=renormalisation scale

W propagator to 1 loop in MSSM It's all been checked

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::piWWTfermions ( double  p,
double  Q,
bool  usePoleMt 
) const
virtual

Calculates fermion contribution to the transverse part of W self-energy: for p=external momentum, Q=renormalisation scale

We utilise pole mt for these corrections (which the 2-loop Standard Model pieces assume)

fermions: these are valid at MZ

double softsusy::MssmSoftsusy::piWWTgauginos ( double  p,
double  Q,
double  thetaWDRbar 
) const
virtual

Calculates transverse part of W self-energy: for p=external momentum, Q=renormalisation scale

These ought to be in physpars

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::piWWTHiggs ( double  p,
double  q,
double  thetaWDRbar 
) const
virtual

Calculates Higgs contribution to the transverse part of W self-energy: for p=external momentum, Q=renormalisation scale

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::piWWTsfermions ( double  p,
double  Q 
) const
virtual

Calculates sfermion contribution to the transverse part of W self-energy: for p=external momentum, Q=renormalisation scale

sfermions

stop/sbottom

LH slepton

double softsusy::MssmSoftsusy::piZGT ( double  p,
double  Q 
) const

Calculates Z gamma self-energy: for p=external momentum, Q=renormalisation scale

! checked 7/6/6

double softsusy::MssmSoftsusy::piZZT ( double  p,
double  Q,
bool  usePoleMt = false 
) const
virtual

Transverse part of Z self-energy: has been checked.

Calculates transverse part of Z self-energy: for p=external momentum, Q=renormalisation scale

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::piZZTCharginos ( double  p,
double  q,
double  thetaWDRbar 
) const
virtual

Calculates chargino contrib. to the transverse part of Z self-energy: for p=external momentum, Q=renormalisation scale

Charginos static

double softsusy::MssmSoftsusy::piZZTfermions ( double  p,
double  Q,
bool  usePoleMt 
) const
virtual

fermion contribution to the Transverse part of Z self-energy:

Calculates fermion contribution to the transverse part of Z self-energy: for p=external momentum, Q=renormalisation scale

fermions: these are valid at MZ

We utilise pole mt for these corrections (which the 2-loop Standard Model pieces assume)

double softsusy::MssmSoftsusy::piZZTHiggs ( double  p,
double  Q,
double  thetaWDRbar 
) const
virtual

Calculates Higgs contribution to the transverse part of Z self-energy:

Higgs contribution to the Transverse part of Z self-energy.

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::piZZTNeutralinos ( double  p,
double  Q,
double  thetaWDRbar 
) const
virtual

Calculates neutralino contrib. to the transverse part of Z self-energy: for p=external momentum, Q=renormalisation scale

Neutralinos

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::piZZTsfermions ( double  p,
double  Q 
) const
virtual

Calculates sfermion contribution to the transverse part of Z self-energy:

sfermion contribution to the Transverse part of Z self-energy

first two families of sfermions

sneutrinos

up squarks

down squarks

sleptons

THIRD FAMILY sneutrinos

up squarks

down squarks

selectrons

double softsusy::MssmSoftsusy::predMzsq ( double &  tanb,
double  muOld = -6.66e66,
double  eps = 0. 
)

Predicts value of MZ(pole) from values of soft parameters and mu that we have. tanb=tan beta is also predicted

Apply at scale MSusy: checked 19.12.2000 Displays PHYSICAL MZ, ie MZ(q) - piZz^T(q) Fixed pizztMS to resummed version 6/1/13

< resums logs

double softsusy::MssmSoftsusy::predTanb ( double  susyMu = -6.66e66) const

This is a check: predicts tan beta from the values of soft parameters and mu that we have

Predicts tan beta once mu and soft terms are predicted at low energy Useful for fine-tuning calculation. Call at MSusy only.

Note: we want to take inverse sine so that fundamental domain is greater than pi/4. sin(pi - 2 beta)=sin 2 beta should achieve this. we also use tan (pi/2 - theta) = 1/tan(theta)

string softsusy::MssmSoftsusy::printLong ( )

Prints a list of all sparticle/Higgs masses to standard output.

output: 1 2 3 4 5 6 7 8 9 10 11 12 13 mu m3sq mH1sq mH2sq g1 g2 mt(mt) mh mA mH mH+ alphaH msnu3 14 15 16 17 18 19 20 msnu1 mstopL mstopR msupL msupR msbotL msbotR 21 22 23 24 25 26 27 28 29 msdL msdR mstauL mstauR mselL mselR thetat thetab thetatau 30 31 32 33 34 35 36 37 38 mgl mch1 mch2 thetaL thetaR mneut1 mneut2 mneut3 mneut4 39 40 41 sinthW t1ov1 t2ov2

string softsusy::MssmSoftsusy::printShort ( ) const

Prints a list of important sparticle/Higgs masses to standard output.

Prints mu, B and important spectral information.

double softsusy::MssmSoftsusy::qcdSusythresh ( double  alphasMSbar,
double  q 
)

Does SUSY (and other) threshold corrections to alphaS Input alphas in MSbar and it returns it in DRbar scheme. From hep-ph/9606211

< COMPILE_TWO_LOOP_GAUGE_YUKAWA

double softsusy::MssmSoftsusy::qedSusythresh ( double  alphaEm,
double  q 
) const

Does SUSY (and other) threshold corrections to alphaEm - returns alpha in DRbar scheme at scale Q. From hep-ph/9606211. Input empirical value of alpha at 0 momentum....

Does SUSY (and other) threshold corrections to alphaEm - returns alpha in DRbar scheme at scale Q. From hep-ph/9606211. Input empirical value of alpha at MZ external momentum....

commented out since alpha(MZ) includes it!

double softsusy::MssmSoftsusy::realMinMs ( ) const

You should evaluate this at a scale MSusy average of stops. Returns depth of electroweak minimum

You should evaluate this at a scale MSusy average of stops. Depth of electroweak minimum: hep-ph/9507294. Bug-fixed 19/11/04

void softsusy::MssmSoftsusy::rewsb ( int  sgnMu,
double  mt,
const DoubleVector pars,
double  muOld = -6.66e66,
double  eps = 0. 
)
virtual

Organises high accuracy rewsb: call it at the low scale M_{SUSY} IO parameters: sgnMu is +/-1 (desired sign of mu), mt is DRbar top mass muOld is a value of mu with which the current one is to be averaged, if it is set to some value above the number of the beast. This can be useful in attaining convergence in regions where it is difficult. eps reflects how the old and new values of mu are to be averaged: it's (eps * mu + (1-eps) * muOld)

Organises rewsb: call it at the low scale MS^2 = sqrt(0.5 * (mT1^2 + mT2^2)) is best, or below if it's decoupled from there. Call with zero, or no mt if you want tree level

Iterate to get a self-consistent mu solution

< resums logs

average mu with the input value of muOld, if it isn't the number of the beast

Reimplemented in softsusy::RpvSoftsusy.

int softsusy::MssmSoftsusy::rewsbM3sq ( double  mu,
double &  m3squared 
) const
virtual

returns 1 if mu < 1.0e-9

REWSB calculation, returning m3sq at correct value consistent with mu

Following means no good rewsb

Reimplemented in softsusy::NmssmSoftsusy.

int softsusy::MssmSoftsusy::rewsbM3sqTree ( double  mupar,
double &  m3squared 
) const

returns 1 if mu < 1.0e-9

Tree-level REWSB calculation, returning m3sq at correct value consistent with mu

Following means no good rewsb

int softsusy::MssmSoftsusy::rewsbMu ( int  sgnMu,
double &  mupar 
) const
virtual

Calculates pole Higgs masses and mixings: full 1-loop SUSY corrections and 2-loop alpha_t (alpha_s + alpha_t) + alpha_s alpha_b effective potential corrections. IO parameters: piwwt is the W self-energy at M_SUSY, accuracy is number of loops (0 or 1) to use and pizzt is the Z self-energy at M_SUSY Tree-level REWSB calculation, returning mu at correct value. sgnMu is the required sign (+/- 1). Returns 1 if mu^2<0, indicating an inconsistent minimum

Returns mu from rewsb requirement. returns 1 if there's a problem. Call at MSusy

Tree-level relation

mu has incorrect sign

Reimplemented in softsusy::NmssmSoftsusy.

void softsusy::MssmSoftsusy::rewsbTreeLevel ( int  sgnMu)
virtual

Organises tree-level rewsb: call it at the low scale M_{SUSY} IO parameters: sgnMu is +/-1 (desired sign of mu)

Reimplemented in softsusy::NmssmSoftsusy.

void softsusy::MssmSoftsusy::rhohat ( double &  outrho,
double &  outsin,
double  alphaDRbar,
double  pizztMZ,
double  piwwt0,
double  piwwtMW,
double  tol,
int  maxTries 
)
virtual

Iterative determination of rho parameter consistent with muon decay constant, MZ and alpha_0. IO parameters: outrho and outsin are the current DRbar values of sin theta_w and the rho parameter. alphaMZDRbar=already calculated value of fine-structure constant, pizztMZ=Z self-energy at Q=MZ, tol=desired piwwt0=self-energy of the W at p=0, piwwtMW=self-energy of the W at p=MW accuracy and maxTries is the maximum number of iterations the routines will allow

Checked 20.11.00 Flags noconvergence if there's trouble...then don't believe outrho and outsin produced - they are fudged!

Difference to last iteration

void softsusy::MssmSoftsusy::rpvSet ( const DoubleVector parameters)
virtual

Dummy function to allow users to re-define it in user supplied objects. Pars will contain necessary parameters to describe high-scale boundary conditions on SUSY breaking terms

Reimplemented in softsusy::RpvSoftsusy.

void softsusy::MssmSoftsusy::setEwsbConditions ( const DoubleVector inputs)
virtual

Again, another dummy - useful in alternative EWSB conditions sometimes.

Normally, this is just a dummy function that is un-used. But sometimes, it can be used to re-set electroweak symmetry breaking conditions, depending on the value of inputs at the GUT scale.

void softsusy::MssmSoftsusy::setMsusy ( double  f)

Sets scale of Higgs potential minimisation and sparticle mass calculation

void softsusy::MssmSoftsusy::setNeutCurrCouplings ( double  sinthDRbar,
double &  sw2,
double &  guL,
double &  gdL,
double &  geL,
double &  guR,
double &  gdR,
double &  geR 
)

calculates the higgs DRbar parameters. Make sure mt is set in eg. It will fill in the Higgs masses with the appropriate values on exit.

void softsusy::MssmSoftsusy::setTwoLoopAlphasThresholds ( bool  sw)

Switch 2-loop threshold $O(\alpha_s^2), O(\alpha_s \alpha_b), O(\alpha_s \alpha_t) $ corrections to $\alpha_s$

void softsusy::MssmSoftsusy::setTwoLoopMbMtauThresholds ( bool  sw)

Switch 2-loop threshold $O(\alpha_s^2), O(\alpha_t^2), O(\alpha_b^2), O(\alpha_\tau^2), O(\alpha_s \alpha_b), O(\alpha_\tau \alpha_b) O(\alpha_s \alpha_t) $ corrections to $ m_b $ and $ O(\alpha_\tau^2), O(\alpha_t \alpha_\tau), O(\alpha_t \alpha_b) $ corrections to $ m_\tau $ ON/OFF

double softsusy::MssmSoftsusy::smPredictionMW ( ) const

checked 22/04/06

predicts MW in Standard Model limit: parameterisation from hep-ph/0311148: estimated 4 MeV on the error

first contribution is leptonic: from hep-ph/9803313 second from hep-ph/0104304

void softsusy::MssmSoftsusy::sparticleThresholdCorrections ( double  tb)
virtual

For an input tan beta=tb, sets gauge and Yukawa couplings according to the tree-level spectrum and data set: pars contains the boundary conditions. They aren't used in R-parity conservation, though.

It'll set the important SUSY couplings: supposed to be applied at MZ You should set up an iteration here since Yuk's depend on top mass which depends on Yuk's etc.

for the up-coming loops

Do gauge couplings

replace third family quark masses with their loop-corrected values

to do: for a better approximation, the lighter quarks/leptons should also be corrected with MSSM/DRbar corrections

3-family mixed-up Yukawa couplings: From PDG 2000

Reimplemented in softsusy::RpvSoftsusy.

void softsusy::MssmSoftsusy::ssrunInterface764 ( const char  fname[80],
const char  softfname[80] 
) const

prints a file into fname which acts as an input to isajet First name input is the name of an OUTPUT file from ssrun, the second name is the name of the interface file for INPUT to ssrun

First name input is the name of an OUTPUT file from ssrun, the second name is the name of the interface file for INPUT to ssrun

void softsusy::MssmSoftsusy::ssrunInterface764Inside ( const char  fname[80],
fstream &  softOutput 
) const

prints a file into fname which acts as an input to isassrun: fstream should be opened before calling

void softsusy::MssmSoftsusy::treeChargedSlepton ( DoubleMatrix mass,
double  mTrun,
double  pizztMS,
double  sinthDRbarMS,
int  family 
)
virtual

Returns tree-level down squark mass matrix in "mass". IO parameters: mass=tree level mass matrix on input, is returned with radiative corrections added, mTrun=DR bar tau mass, family=generation of slepton, pizztMS=Z self energy at Q=M_SUSY, sinthDRbarMS=DRbar value of sin theta_w

Reimplemented in softsusy::NmssmSoftsusy.

void softsusy::MssmSoftsusy::treeCharginos ( DoubleMatrix mCh,
double  beta,
double  mw 
)

calculates the chargino DRbar parameters. It will fill in the chargino masses in eg with the appropriate values on exit.

void softsusy::MssmSoftsusy::treeDownSquark ( DoubleMatrix mass,
double  mbrun,
double  pizztMS,
double  sinthDRbarMS,
int  family 
)
virtual

Returns tree-level down squark mass matrix in "mass". IO parameters: mass=tree level mass matrix on input, is returned with radiative corrections added, mbrun=DR bar bottom mass, family=generation of squark, pizztMS=Z self energy at Q=M_SUSY, sinthDRbarMS=DRbar value of sin theta_w

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::treeLevelMuSq ( )

This is the value you'd get from minimising the Higgs potential at tree-level

void softsusy::MssmSoftsusy::treeNeutralinos ( DoubleMatrix mN,
double  beta,
double  mz,
double  mw,
double  sinth 
)

calculates the chargino DRbar parameters. It will fill in the chargino masses in eg with the appropriate values on exit.

void softsusy::MssmSoftsusy::treeSnu ( double &  mSq,
double  pizztMS,
int  family 
)

Organises calculation of all sneutrino masses, pizztMS=Z self energy at Q=M_SUSY, mSq=mass of sneutrino, family=generation of sneutrino

void softsusy::MssmSoftsusy::treeUpSquark ( DoubleMatrix mass,
double  mtrun,
double  pizztMS,
double  sinthDRbarMS,
int  family 
)
virtual

Returns tree-level up squark mass matrix in "mass". IO parameters: mass=tree level mass matrix on input, is returned with radiative corrections added, mtrun=DR bar top mass, family=generation of squark, pizztMS=Z self energy at Q=M_SUSY, sinthDRbarMS=DRbar value of sin theta_w

Reimplemented in softsusy::NmssmSoftsusy.

double softsusy::MssmSoftsusy::twoLoopGm2 ( double  amu1Loop) const

gives two-loop contribution to (g-2)_mu according to the calculation in Stockinger et al

Neutralinos

Higgs-sfermion couplings

double softsusy::MssmSoftsusy::twoLpMt ( ) const

Two-loop O(^2) MSSM corrections to the pole masses of heavy quarks by A.Bednyakov, A.Onishchenko, V.Velizhanin, O.Veretin

double softsusy::MssmSoftsusy::ufb3sl ( double  mx)

Input mx the scale up to which you search for minima. Returns minimum value of potential along UFB3 direction. Does ufbs truly properly but takes a long time.

Input mx the scale up to which you search for minima Returns minimum value of potential along that direction Does ufbs truly properly but takes ages.

Save initial parameters

Running should be faster from high scales on the whole

Numerical recipes routine to determine minimum of potential specified in minimufb3

Restore initial parameters setMu(initialMu); set(parSave);


The documentation for this class was generated from the following files: