SOFTSUSY
4.1
|
#include "twoBodyDecays.h"
Functions | |
double | charginoToNeutralino1pion (const MssmSoftsusy *m) |
First, do hadronic decays. More... | |
double | gluinoamplitudedecay (double m1, double m2, double m3, double alphastrong) |
First, do hadronic decays. | |
double | gluinoamplitudedecaymix (double m1, double m2, double m3, double alphastrong, double squarkmix, double theta) |
double | squarkamplitudedecaygluino (double m1, double m2, double m3, double alphastrong) |
double | squarkamplitudedecaygluinomix (double m1, double m2, double m3, double alphastrong, double squarkmix, double theta) |
double | squarkamplitudedecaycharginoW1 (double m1, double m2, double m3, double g, double gamma) |
double | squarkamplitudedecaycharginoW2 (double m1, double m2, double m3, double g, double gamma) |
double | squark1amplitudedecaycharginoW1mix (double m1, double m2, double m3, double g, double gammaL, double gammaR, double theta, double beta, double mWboson, double runmt, double runmb, double torb) |
the variable torb depends on if it is stop (torb=1) or sbottom (torb =2) decaying and changes AprimeuW1 to AprimedW1 accordingly | |
double | squark1amplitudedecaycharginoW2mix (double m1, double m2, double m3, double g, double gammaL, double gammaR, double theta, double beta, double mWboson, double runmt, double runmb, double torb) |
the variable torb depends on if it is stop (torb=1) or sbottom (torb =2) decaying and changes AprimeuW2 to AprimedW2 accordingly | |
double | squark2amplitudedecaycharginoW1mix (double m1, double m2, double m3, double g, double gammaL, double gammaR, double theta, double beta, double mWboson, double runmt, double runmb, double torb) |
the variable torb depends on if it is stop (torb=1) or sbottom (torb =2) decaying and changes AprimeuW1 to AprimedW1 accordingly | |
double | squark2amplitudedecaycharginoW2mix (double m1, double m2, double m3, double g, double gammaL, double gammaR, double theta, double beta, double mWboson, double runmt, double runmb, double torb) |
the variable torb depends on if it is stop (torb=1) or sbottom (torb =2) decaying and changes AprimeuW2 to AprimedW2 accordingly | |
double | squarkLamplitudedecayneutralino (double m1, double m2, double m3, double g, double gprime, DoubleMatrix &mixNeut, int neutralino, int uord) |
neutralino takes values of 1, 2, 3, or 4 and denotes which neutralino mass eigenstate we decay into, uord takes value 1 for up quarks (or charm quarks) and -1 for down quarks (or strange quarks) in order to change the sign of the g*neutralinomixingmatrix[2][element] in AqZ accordingly | |
double | squarkRamplitudedecayneutralino (double m1, double m2, double m3, double g, double gprime, DoubleMatrix &mixNeut, int neutralino, int uord) |
neutralino takes values of 1, 2, 3, or 4 and denotes which neutralino mass eigenstate we decay into, uord takes value 1 for up quarks (or charm quarks) and -1 for down quarks (or strange quarks) in order to change the sign and magnitude of the coefficient BqZ accordingly More... | |
double | squark3amplitudedecayneutralino (double m1, double m2, double m3, double mWboson, double theta, double beta, DoubleMatrix &mixNeut, double g, double gp, double runmq, int squark, int oneortwo, int neutralino) |
double | squark3amplitudedecaysquark3Wboson (double m1, double m2, double m3, double g, double thetat, double thetab, int m1torb, int m1oneortwo, int m3torb, int m3oneortwo) |
m1torb tells the function if the initial squark is a stop or sbottom, m1oneortwo tells it whether it's the lighter or heavier squark, similarly for the final state squark with m3torb and m3oneortwo More... | |
double | squark3amplitudedecaychargedHiggssquark3 (double m1, double m2, double m3, double g, double mWboson, double beta, double thetat, double thetab, double greekmu, double At, double Ab, double mt, double mb, int t1or2, int b1or2) |
double | squark32amplitudedecayneutralHiggssquark3 (double m1, double m2, double m3, double g, double gp, double mWboson, double beta, double alpha, double thetat, double thetab, double greekmu, double At, double Ab, double mt, double mb, int torb, char phi) |
double | squark32amplitudedecaysquark3Zboson (double m1, double m2, double m3, double g, double gp, double theta) |
double | sleptonamplitudedecayleptonneutralino (double m1, double m2, double m3, double g, double gp, DoubleMatrix &mixNeut, char LorR, int neutralino) |
double | sneutrinoamplitudedecayneutrinoneutralino (double m1, double m2, double m3, double g, double gp, DoubleMatrix &mixNeut, int neutralino) |
double | sleptonamplitudedecaychargino (double m1, double m2, double m3, double g, double theta, int chargino) |
for both sleptonL decays to charginos + neutrinos and for sneutrino decays to lepton + charginos - just change theta from thetaL in first case to thetaR in second case More... | |
double | stauamplitudedecaytauneutralino (double m1, double m2, double m3, double g, double gp, double mWboson, DoubleMatrix &mixNeut, double theta, double beta, int oneortwo, int neutralino) |
double | stausneutrinoamplitudedecaytauneutrinoneutralino (double m1, double m2, double m3, double g, double gp, DoubleMatrix &mixNeut, int neutralino) |
double | stauamplitudedecaynutauchargino (double m1, double m2, double m3, double g, double mWboson, double theta, double thetaL, double beta, double mtau, int oneortwo, int chargino) |
double | stausneutrinoamplitudedecaytauchargino (double m1, double m2, double m3, double g, double mWboson, double beta, double thetaL, double thetaR, int chargino) |
double | stauamplitudedecaysnustauHminus (double m1, double m2, double m3, double g, double mWboson, double beta, double thetatau, double mtau, double greekmu, double Atau, int oneortwo) |
Also does decay mode snustau to Hplus and stau1/2 just with m1, m2 and m3 permuted. | |
double | stauamplitudedecaysnustauWboson (double m1, double m2, double m3, double g, double thetatau, int oneortwo) |
m3 must be mw here | |
double | stau2amplitudedecaystau1Zboson (double m1, double m2, double m3, double g, double gp, double thetatau) |
m3 must be mz here | |
double | stau2amplitudedecaystau1phi (double m1, double m2, double m3, double g, double gp, double thetatau, double beta, double alpha, double mWboson, double mtau, double greekmu, double Atau, char phi) |
double | charginoamplitudedecayquarksquarkL (double m1, double m2, double m3, double g, double theta, int chargino) |
quark mass is m2 More... | |
double | charginoamplitudedecayquarksquarkmix (double m1, double m2, double m3, double g, double theta, double thetaL, double thetaR, double beta, double runmt, double runmb, double mWboson, int chargino, int upordowntypesquark, int oneortwo) |
quark mass is m2 More... | |
double | charginoamplitudedecayleptonsleptonL (double m1, double m2, double m3, double g, double thetaLorR, int chargino) |
lepton mass is m2, use thetaR for decays to sneutrinos and leptons, use thetaL for decays to sleptons neutrinos More... | |
double | charginoamplitudedecaysnutautau (double m1, double m2, double m3, double g, double thetaL, double thetaR, double beta, double mWboson, int chargino) |
m2 must be tau mass More... | |
double | charginoamplitudedecaystaunutau (double m1, double m2, double m3, double g, double thetaL, double thetaR, double thetatau, double beta, double mWboson, double mtau, int oneortwo, int chargino) |
m2 must be nutau mass (i.e. 0) More... | |
double | charginoamplitudedecayWbosonneutralino (double m1, double m2, double m3, double g, double thetaL, double thetaR, DoubleMatrix &mixNeut, int chargino, int neutralino) |
m2 must be Wboson mass | |
double | charginoamplitudedecayHminusneutralino (double m1, double m2, double m3, double g, double gp, double thetaL, double thetaR, double beta, DoubleMatrix &mixNeut, int chargino, int neutralino) |
m2 must be Hminus mass | |
double | chargino2amplitudedecaychargino1Zboson (double m1, double m2, double m3, double g, double gp, double thetaL, double thetaR) |
m2 must be Zboson mass | |
double | chargino2amplitudedecaychargino1neutHiggs (double m1, double m2, double m3, double g, double gp, double thetaL, double thetaR, double beta, double alpha, char phi) |
m2 must be neutral Higgs mass More... | |
double | neutralinoamplitudedecayquarksquarkLorR (double m1, double m2, double m3, double g, double gp, DoubleMatrix &mixNeut, int uordtype, char LorR, int neutralino) |
m2 must be quark mass More... | |
double | neutralinoamplitudedecayleptonsleptonLorR (double m1, double m2, double m3, double g, double gp, DoubleMatrix &mixNeut, char LorR, int neutralino) |
m2 must be lepton mass More... | |
double | neutralinoamplitudedecayneutrinosneutrinoL (double m1, double m2, double m3, double g, double gp, DoubleMatrix &mixNeut, int neutralino) |
m2 must be neutrino mass (i.e. 0) | |
double | neutralinoamplitudedecaysquark3quarkmix (double m1, double m2, double m3, double mWboson, double theta, double beta, DoubleMatrix &mixNeut, double g, double gp, double runmq, int squark, int oneortwo, int neutralino) |
m2 must be quark mass More... | |
double | neutralinoamplitudedecaystautau (double m1, double m2, double m3, double mWboson, double theta, double beta, DoubleMatrix &mixNeut, double g, double gp, int oneortwo, int neutralino) |
m2 must be tau (i.e. lepton) mass More... | |
double | neutralinoamplitudedecaycharginoWboson (double m1, double m2, double m3, double g, double thetaL, double thetaR, DoubleMatrix &mixNeut, int neutralino, int chargino) |
m2 must be W boson mass (expect to be pole mass 80.4...), neutralino is i in T&B whilst chargino is j | |
double | neutralinoamplitudedecaycharginoHplus (double m1, double m2, double m3, double g, double gp, double beta, double thetaL, double thetaR, DoubleMatrix &mixNeut, int neutralino, int chargino) |
m2 must be Hplus mass, neutralino is i in T&B whilst chargino is j | |
double | neutralinoamplitudedecayneutralinoZboson (double m1, double m2, double m3, double g, double gp, DoubleMatrix &mixNeut, int ineutralino, int fneutralino) |
m2 must be Z mass, ineutralino is i in T&B whilst fneutralino is j | |
double | neutralinoamplitudedecayneutralinoneutHiggs (double m1, double m2, double m3, double g, double gp, DoubleMatrix &mixNeut, double mixingangle, int ineutralino, int fneutralino, char phi) |
m2 must be phi mass, ineutralino is i in T&B whilst fneutralino is j More... | |
double | higgslorHamplitudedecayquarkantiquark (double m1, double m2, double g, double alpha, double beta, double mWboson, int uord, char lorH, DoubleMatrix &CPEMix, bool NMSSMmodel, bool QCD, double alphas) |
uord indicates if it's an up type quark (1) or down type quark (0) to choose which trig functions to act on the mixing angles (which parts of the mixing matrices), and int lorH tells the program if it's a light higgs (l) or heavy higgs (H) decaying in order to change the trig functions acting on the mixing angles; note can also use this formula for decays of higgs to leptons as these are in this sense down-type More... | |
double | higgsCPevenamplitudedecayqqbarQCDcorrections (double amplitude, double alphas, double x) |
double | higgsAamplitudedecayquarkantiquark (double m1, double m2, double g, double beta, double mWboson, int uord, bool QCD, double alphas) |
uord indicates if it's an up type quark (1) or down type quark (0) to choose which trig functions to act on the mixing angles (which parts of the mixing matrices), note can also use this formula for decays of higgs to leptons as these are in this sense down-type | |
double | higgsCPoddamplitudedecayqqbarQCDcorrections (double amplitude, double alphas, double x) |
double | higgsAamplitudedecayquarkantiquarkNMSSM (double m1, double m2, double beta, DoubleMatrix &CPOMix, int uord, int higgs, bool QCD, double alphas) |
uord indicates if it's an up type quark (1) or down type quark (0) to choose which trig functions to act on the mixing angles (which parts of the mixing matrices), note can also use this formula for decays of higgs to leptons as these are in this sense down-type | |
double | higgsphiamplitudedecayneutralinoneutralino (double m1, double m2, double m3, double g, double tanthetaW, double mixingangle, DoubleMatrix &mixNeut, int ineutralino, int fneutralino, char phi) |
phi tells it whether a "h", "H" or "A" is decaying More... | |
double | higgsAamplitudedecayneutralinoneutralinoNMSSM (double m1, double m2, double m3, double g, double tanthetaW, double lam, double kappa, DoubleMatrix &CPOMix, DoubleMatrix &mixNeut, int ineutralino, int jneutralino, int pseudoscalar) |
double | higgsphiamplitudedecaysamechargino (double m1, double m2, double g, double thetaL, double thetaR, double alpha, double beta, int chargino, char phi) |
phi tells it whether a "h", "H" or "A" is decaying More... | |
double | higgsphiamplitudedecaysamecharginoNMSSM (double m1, double m2, double g, double thetaL, double thetaR, double lam, DoubleMatrix &CPEMix, int chargino, int higgs) |
double | higgsAamplitudedecaysamecharginoNMSSM (double m1, double m2, double g, double thetaL, double thetaR, double alpha, double lam, DoubleMatrix &CPOMix, int chargino, int pseudoscalar) |
double | higgsphiamplitudedecaydiffcharginoNMSSM (double m1, double m2, double m3, double g, double thetaL, double thetaR, double lam, DoubleMatrix &CPEMix, int higgs) |
double | higgsphiamplitudedecaydifchargino (double m1, double m2, double m3, double g, double thetaL, double thetaR, double alpha, double beta, char phi) |
phi tells it whether a "h", "H" or "A" is decaying More... | |
double | higgsAamplitudedecaydifcharginoNMSSM (double m1, double m2, double m3, double g, double thetaL, double thetaR, double alpha, double lam, DoubleMatrix &CPOMix, int pseudoscalar) |
double | higgshamplitudedecayAA (double m1, double m2, double g, double gp, double alpha, double beta, double mWboson) |
calculates partial width for h->AA More... | |
double | higgsHamplitudedecayhh (double m1, double m2, double g, double gp, double alpha, double beta, double mWboson) |
calculates partial width for h->hh More... | |
double | higgsHamplitudedecayAA (double m1, double m2, double g, double gp, double alpha, double beta, double mWboson) |
calculates partial width for H->AA More... | |
double | higgsHamplitudedecayHplusHminus (double m1, double m2, double g, double gp, double alpha, double beta, double mWboson) |
calculates partial width for H->H+H- More... | |
double | higgshamplitudedecayhiggsAZboson (double m1, double m2, double m3, double g, double gp, double alpha, double beta) |
calculates partial width for h->AZ, m2 must be Zboson mass | |
double | higgsHamplitudedecayhiggsAZboson (double m1, double m2, double m3, double g, double gp, double alpha, double beta) |
calculates partial width for H->AZ, m2 must be Zboson mass | |
double | higgsAamplitudedecayhiggshZboson (double m1, double m2, double m3, double g, double gp, double alpha, double beta) |
calculates partial width for A->hZ, m2 must be Zboson mass | |
double | higgsAamplitudedecayhiggsHZboson (double m1, double m2, double m3, double g, double gp, double alpha, double beta) |
calculates partial width for A->HZ, m2 must be Zboson mass | |
double | higgsAamplitudedecayhiggshorHZbosonNMSSM (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double thetaA, DoubleMatrix &CPEMix, int pseudoscalar, int higgs) |
m2 must be Z mass | |
double | higgshamplitudedecay2squarksamehand (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mupq, double mdownq, int sq) |
calculates partial width for h->squark squark with no mixing and squarks of same handedness, therefore for first two generations, int sq tells the function which squarks it's decaying into - uL, dL, uR, dR for sq = 1,2,3,4 respectively | |
double | higgshamplitudedecay2squarksamehandNMSSM (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mq, DoubleMatrix &CPEMix, int sq) |
takes MSSM amplitude and applies relevant NMSSM prefactor to get NMSSM amplitude More... | |
double | higgshamplitudedecay2sleptonsamehandNMSSM (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mq, DoubleMatrix &CPEMix, int sl) |
double | higgsHamplitudedecay2sleptonsamehandNMSSM (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mq, DoubleMatrix &CPEMix, int sl) |
double | higgsH3amplitudedecay2sleptonsamehandNMSSM (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mq, DoubleMatrix &CPEMix, int sl) |
double | higgshamplitudedecay2squarkdiffhand (double m1, double m2, double m3, double g, double alpha, double beta, double mWboson, double mupq, double mdownq, double greekmu, double Aup, double Adown, int sq) |
calculates partial width for h->squark squark with no mixing and squarks of different handedness, therefore for first two generations, int sq tells the function which squarks it's decaying into - uL, dL, uR, dR for sq = 1,2,3,4 respectively | |
double | higgshamplitudedecay2squarkdiffhandNMSSM (double m1, double m2, double m3, double g, double alpha, double beta, double mWboson, double mq, double Aq, double mueff, double lam, DoubleMatrix &CPEMix, int sq, int higgs) |
double | higgsHamplitudedecay2squarksamehand (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mupq, double mdownq, int sq) |
calculates partial width for H->squark squark with no mixing and squarks of same handedness, therefore for first two generations, int sq tells the function which squarks it's decaying into - uL, dL, uR, dR for sq = 1,2,3,4 respectively | |
double | higgsHamplitudedecay2squarksamehandNMSSM (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mq, DoubleMatrix &CPEMix, int sq) |
double | higgsH3amplitudedecay2squarksamehandNMSSM (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mq, DoubleMatrix &CPEMix, int sq) |
double | higgsHamplitudedecay2squarkdiffhand (double m1, double m2, double m3, double g, double alpha, double beta, double mWboson, double mupq, double mdownq, double greekmu, double Aup, double Adown, int sq) |
calculates partial width for H->squark squark with no mixing and squarks of different handedness, therefore for first two generations, int sq tells the function which squarks it's decaying into - uL, dL, uR, dR for sq = 1,2,3,4 respectively | |
double | higgshamplitudedecay2sleptonsamehand (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mel, int sl) |
calculates partial width for h->slepton slepton with no mixing and sleptons of same handedness, therefore for first two generations, int sl tells the function which sleptons it's decaying into - nuL, eL, eR for sl = 1,2,3 respectively | |
double | higgshamplitudedecay2sleptondiffhand (double m1, double m2, double m3, double g, double alpha, double beta, double mWboson, double mel, double greekmu, double Aelectron, int sl) |
calculates partial width for h->slepton slepton with no mixing and sleptons of different handedness, therefore for first two generations, int sl tells the function which sleptons it's decaying into - nuL, eL, eR for sl = 1,2,3 respectively | |
double | higgsHamplitudedecay2sleptonsamehand (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mel, int sl) |
calculates partial width for H->slepton slepton with no mixing and sleptons of same handedness, therefore for first two generations, int sl tells the function which sleptons it's decaying into - nuL, eL, eR for sl = 1,2,3 respectively | |
double | higgsHamplitudedecay2sleptondiffhand (double m1, double m2, double m3, double g, double alpha, double beta, double mWboson, double mel, double greekmu, double Aelectron, int sl) |
calculates partial width for H->slepton slepton with no mixing and sleptons of different handedness, therefore for first two generations, int sl tells the function which sleptons it's decaying into - nuL, eL, eR for sl = 1,2,3 respectively | |
double | higgshamplitudedecaystop1stop1 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for h->stop1 antistop1 | |
double | higgshamplitudedecaystop2stop2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for h->stop2 antistop2 | |
double | higgshamplitudedecaystop1stop2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for h->stop1 antistop2 or stop2 antistop1 as they are the same | |
double | higgshamplitudedecaysbottom1sbottom1 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for h->sbottom1 antisbottom1 | |
double | higgshamplitudedecaysbottom2sbottom2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for h->sbottom2 antisbottom2 | |
double | higgshamplitudedecaysbottom1sbottom2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for h->sbottom1 antisbottom2 or sbottom2 antisbottom1 as they are the same | |
double | higgsHamplitudedecaystop1stop1 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for H->stop1 antistop1 | |
double | higgsHamplitudedecaystop2stop2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for H->stop2 antistop2 | |
double | higgsHamplitudedecaystop1stop2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for H->stop1 antistop2 or stop2 antistop1 as they are the same | |
double | higgsHamplitudedecaysbottom1sbottom1 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for H->sbottom1 antisbottom1 | |
double | higgsHamplitudedecaysbottom2sbottom2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for H->sbottom2 antisbottom2 | |
double | higgsHamplitudedecaysbottom1sbottom2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double theta) |
calculates partial width for H->sbottom1 antisbottom2 or sbottom2 antisbottom1 as they are the same | |
double | higgshamplitudedecaystau1stau1 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtau, double greekmu, double Atau, double theta) |
calculates partial width for h->stau1 antistau1 | |
double | higgshamplitudedecaystau2stau2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtau, double greekmu, double Atau, double theta) |
calculates partial width for h->stau2 antistau2 | |
double | higgshamplitudedecaystau1stau2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtau, double greekmu, double Atau, double theta) |
calculates partial width for h->stau1 antistau2 or h->stau2 antistau1 as these widths have the same value | |
double | higgsHamplitudedecaystau1stau1 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtau, double greekmu, double Atau, double theta) |
calculates partial width for H->stau1 antistau1 | |
double | higgsHamplitudedecaystau2stau2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtau, double greekmu, double Atau, double theta) |
calculates partial width for H->stau2 antistau2 | |
double | higgsHamplitudedecaystau1stau2 (double m1, double m2, double m3, double g, double gp, double alpha, double beta, double mWboson, double mtau, double greekmu, double Atau, double theta) |
calculates partial width for H->stau1 antistau2 or H->stau2 antistau1 as these widths have the same value | |
double | higgsAamplitudedecaysfermions (double m1, double m2, double m3, double g, double mWboson, double mf, double greekmu, double Asf, double beta, char uord) |
calculates partial width for A->sfermion1 sfermion2, these sfermions must be of the same type, note can't have decays to sfermion1 and sfermion 1 or to sfermion2 and sfermion2 by CP conservation, also note there's no dependence on sfermion mixing angle in these decays, mf is the mass of the corresponding fermion. char uord tells it whether we have up type (so Asf*cot(beta)) or down type (so Asf*tan(beta)). Finally note that the extra factor of three from colour for squarks is added above by multiplying the answer this function gives by 3 | |
double | higgsAamplitudedecaysfermionsNMSSM (double m1, double m2, double m3, double g, double mWboson, double mf, double Asf, double beta, double lam, double mueff, DoubleMatrix &CPOMix, char uord, int pseudoscalar) |
mf here should be runmf and mWboson should be runmw More... | |
double | higgsHplusamplitudedecayquarkantiquark (double m1, double m2, double m3, double g, double mWboson, double beta, DoubleMatrix &VCKM, int quark, int antiquark) |
calculates partial width for H+ ->quark1 antiquark2, this is the same as H- -> antiquark1 quark2, note the up type quark (quark1) is m2, the down type quark (quark2) is m3, the int quark is 1,2,3 (u,c,t) and int antiquark is 1,2,3 (d,s,b) then this selects VCKM matrix element VCKM(quark, antiquark) | |
double | higgsHplusamplitudedecayneutralinochargino (double m1, double m2, double m3, double g, double gp, double beta, double thetaL, double thetaR, DoubleMatrix &mixNeut, int neutralino, int chargino) |
Calculates the partial width for decays of the charged H+ higgs to a neutralino and a chragino Wtilda+ where neutralino is j in T&B whilst chargino is i. | |
double | higgsHplusamplitudedecayWbosonhiggsh (double m1, double m2, double m3, double g, double alpha, double beta) |
Calculates the partial width for a charged Higgs boson H+ to decay to a Wboson and a neutral light scalar higgs (i.e. the SM-like higgs) h, m2 must be the W boson mass. | |
DoubleVector | higgsHplusamplitudedecaysquarksquark (double m1, double m2, double m3, double g, double beta, double mWboson, double mup, double mdown, double greekmu, double Aup, double Adown) |
DoubleVector | higgsHplusamplitudedecaysquarksquarkmix (double m1, double m2, double m3, double g, double beta, double mWboson, double mtop, double mbottom, double greekmu, double Atop, double Abottom, double thetatop, double thetabottom) |
calculates partial width for Hplus->squarki antisquarkj where i,j are each 1/2 so mixing included, i.e. third generations of squarks | |
double | higgsesamplitudedecaygammagammatotal (double m1, double g, double gprime, double alphaEmrun, double mWboson, double polemw, double alpha, double beta, double mtop, double mbottom, double mcharm, double mtau, double mHpm, double mstop1, double mstop2, double msbottom1, double msbottom2, double mstau1, double mstau2, double mchargino1, double mchargino2, double thetaL, double thetaR, double thetat, double thetab, double thetatau, double greekmu, double Atop, double Abottom, double Atau, char higgstype) |
function that calculates the partial width for h->gamma gamma at 1-loop (forbidden at tree-level) | |
DoubleVector | higgsmatrixelementgammagammaviatops (double m1, double mtop, double alpha, double beta, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for tops in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviastops (double m1, double mstop1, double mstop2, double mtop, double mbottom, double mWboson, double thetat, double g, double gprime, double alpha, double beta, double greekmu, double Atop, double Abottom, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for stop1s and for stop2s in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviabottoms (double m1, double mbottom, double alpha, double beta, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for bottoms in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviasbottoms (double m1, double msbottom1, double msbottom2, double mbottom, double mtop, double mWboson, double thetab, double g, double gprime, double alpha, double beta, double Atop, double Abottom, double greekmu, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for sbottom1s and for sbottom2s in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviacharms (double m1, double mcharm, double alpha, double beta, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for charms in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviataus (double m1, double mtau, double alpha, double beta, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for taus in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviastaus (double m1, double mstau1, double mstau2, double mtau, double mWboson, double thetatau, double g, double gprime, double alpha, double beta, double greekmu, double Atau, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for stau1s and for stau2s in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviaWbosons (double m1, double mWboson, double alpha, double beta, double g, double gprime, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for W bosons in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviaHpms (double m1, double mHpm, double mWboson, double alpha, double beta, double g, double gprime, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for H+-s in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviachargino1s (double m1, double mchargino1, double mWboson, double alpha, double beta, double thetaL, double thetaR, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for chargino1s in the loop. | |
DoubleVector | higgsmatrixelementgammagammaviachargino2s (double m1, double mchargino2, double mWboson, double alpha, double beta, double thetaL, double thetaR, char higgstype) |
function that calculates the part of the matrix element that differs depending on the loop particles, in this case it calculates it for chargino2s in the loop. | |
double | higgsesamplitudedecaygluongluontotal (double m1, double g, double gs, double gprime, double mWboson, double alpha, double beta, double mtop, double mbottom, double mcharm, double mstop1, double mstop2, double msbottom1, double msbottom2, double thetat, double thetab, double greekmu, double Atop, double Abottom, double mstrange, double mscharmL, double mscharmR, double msstrangeL, double msstrangeR, double Acharm, double Astrange, double mup, double mdown, double msupL, double msupR, double msdownL, double msdownR, double Aup, double Adown, char higgstype, bool QCD) |
function that calculates the partial width for h->gluon gluon at 1-loop (forbidden at tree-level) More... | |
DoubleVector | hggQCDcorrections (double amplitudeW, double alphas, int Nf, char higgs, double prefactor, double SMtotr, double SMtoti, double sqtotr, double sqtoti) |
Function for QCD corrections to h->gg. | |
double | fermionQCDcorrections (double amplitudeW, double alphasnow, double alphasprev, int Nf, char higgs) |
Function for the fermionic QCD corrections to e.g. h->gg. More... | |
double | susyQCDcorrections (double prefactor, double alphas, double SMtotr, double SMtoti, double sqtotr, double sqtoti) |
Function for the susy QCD corrections to h->gg, i.e. the corrections to the squark loops. More... | |
double | higgsamplitudedecayVVstar (double m1, double mboson, double g, double gp, double beta, double alpha, char Vtype, DoubleMatrix &CPEMix, bool nmssmIsIt, int higgs) |
Function that calculates higgs to VV* to Vff'bar. Formula derived as in Marciano and Keung, massless fermion limit and zero W width considered. More... | |
DoubleVector | higgshamplitudedecayVV (double m1, double mWboson, double mZboson, double g, double gp, double alpha, double beta, char Vtype, DoubleMatrix &CPEMix, bool nmssmIsIt) |
Function that calculates the light Higgs decays to two vector bosons, both on-shell or one off-shell. More... | |
DoubleVector | higgsHamplitudedecayVV (double m1, double mWboson, double mZboson, double g, double gp, double alpha, double beta, char Vtype, DoubleMatrix &CPEMix, bool nmssmIsIt) |
Function that calculates the Heavy Higgs decays to two vector bosons, assuming both are on-shell. | |
DoubleVector | higgsH3amplitudedecayVVNMSSM (double m1, double mWboson, double mZboson, double g, double gp, double alpha, double beta, char Vtype, DoubleMatrix &CPEMix, bool nmssmIsIt) |
Function that calculates the Heavy Higgs decays to two vector bosons, assuming both are on-shell. More... | |
double | higgsesamplitudedecayZbosonphotontotal (double m1, double mZboson, double g, double gprime, double alphaEmrun, double polemw, double runmw, double alpha, double beta, double mtop, double mbottom, double mcharm, double mstrange, double mstop1, double mstop2, double msbottom1, double msbottom2, double mHplus, double thetat, double thetab, double greekmu, double Atop, double Abottom, char higgstype) |
function that calculates the partial width for h->Z gamma at 1-loop (forbidden at tree-level) | |
DoubleVector | higgsmatrixelementZgammaviafermions (double m1, double mferm, double mZboson, double mWboson, double alpha, double beta, double g, double gprime, double Qferm, double I3ferm, char fermtype, char higgstype) |
Calculates contribution of fermion loop to higgs to Z gamma decay. | |
DoubleVector | higgsmatrixelementZgammaviaWbosons (double m1, double mWboson, double mZboson, double alpha, double beta, double g, double gprime, char higgstype) |
Calculates contribution of W boson loop to higgs to Z gamma decay. | |
DoubleVector | higgsmatrixelementZgammaviaHplus (double m1, double mWboson, double mZboson, double mHplus, double alpha, double beta, double g, double gprime, char higgstype) |
Calculates contribution of charged higgs boson loop to higgs to Z gamma decay. | |
double | gluinoamplitudedecaygravitino (double m1, double mgrav, double MPlreduced, int gravonoff, int gluNLSP) |
Decays to gravitinos. More... | |
double | squarkamplitudedecaygravitino (double m1, double mgrav, double mquark, double MPlreduced, int gravonoff, int squNLSP) |
Function that calculates the decays to gravitinos of squark if int gravonoff == 1, otherwise decays to gravitinos are off. More... | |
double | neutralinoamplitudedecayphotongravitino (double m1, double mgrav, double MPlreduced, DoubleMatrix &mixNeut, double g, double gp, int neutralino, int gravonoff, int neutNLSP) |
Function that calculates the decays to gravitino and photon of a neutralino if int gravonoff == 1, otherwise decays to gravitinos are off. More... | |
double | neutralinoamplitudedecayZgravitino (double m1, double mZ, double mgrav, double MPlreduced, DoubleMatrix &mixNeut, double g, double gp, double beta, int neutralino, int gravonoff, int neutNLSP) |
Function that calculates the decays to gravitino and Z boson of a neutralino if int gravonoff == 1, otherwise decays to gravitinos are off. More... | |
double | neutralinoamplitudedecayphigravitino (double m1, double mphi, double mgrav, double MPlreduced, DoubleMatrix &mixNeut, double alpha, double beta, int neutralino, int gravonoff, char phi, int neutNLSP) |
Function that calculates the decays to gravitino and Z boson of a neutralino if int gravonoff == 1, otherwise decays to gravitinos are off. More... | |
void | slhaDecays (ostream &fout, vector< Particle > &decayTable, bool outputPartialWidths) |
outputs a decay table in SLHA format | |
Variables | |
const double | GFosqrt2 = GMU / root2 |
Project: SOFTSUSY Author: Tom Cridge, Ben Allanach Manual: hep-ph/0104145, Comp. Phys. Comm. 143 (2002) 305 Webpage: http://hepforge.cedar.ac.uk/softsusy/
double chargino2amplitudedecaychargino1neutHiggs | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | thetaL, | ||
double | thetaR, | ||
double | beta, | ||
double | alpha, | ||
char | phi | ||
) |
m2 must be neutral Higgs mass
throw("DECAY to h\n");
throw("DECAY to H\n");
throw("DECAY to A\n");
double charginoamplitudedecayleptonsleptonL | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | thetaLorR, | ||
int | chargino | ||
) |
lepton mass is m2, use thetaR for decays to sneutrinos and leptons, use thetaL for decays to sleptons neutrinos
altered as now + quarkmass/initialmass ^2 not minus
double charginoamplitudedecayquarksquarkL | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | theta, | ||
int | chargino | ||
) |
quark mass is m2
altered as now + quarkmass/initialmass ^2 not minus
chargino1 decaying
theta is thetaL if sdownL and thetaR if supL
chargino2 decaying
theta is thetaL if sdownL and thetaR if supL
double charginoamplitudedecayquarksquarkmix | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | theta, | ||
double | thetaL, | ||
double | thetaR, | ||
double | beta, | ||
double | runmt, | ||
double | runmb, | ||
double | mWboson, | ||
int | chargino, | ||
int | upordowntypesquark, | ||
int | oneortwo | ||
) |
quark mass is m2
altered as now + quarkmass/initialmass ^2 not minus
double charginoamplitudedecaysnutautau | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | thetaL, | ||
double | thetaR, | ||
double | beta, | ||
double | mWboson, | ||
int | chargino | ||
) |
m2 must be tau mass
altered as now + quarkmass/initialmass ^2 not minus
double charginoamplitudedecaystaunutau | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | thetaL, | ||
double | thetaR, | ||
double | thetatau, | ||
double | beta, | ||
double | mWboson, | ||
double | mtau, | ||
int | oneortwo, | ||
int | chargino | ||
) |
m2 must be nutau mass (i.e. 0)
altered as now + quarkmass/initialmass ^2 not minus
reduces to 1 - pow(m3/m1,2) as m2 = 0
decaying to a stau1
decaying to a stau2
decaying to a stau1
decaying to a stau2
double charginoToNeutralino1pion | ( | const MssmSoftsusy * | m | ) |
First, do hadronic decays.
Two body partial width calculations.
double fermionQCDcorrections | ( | double | amplitudeW, |
double | alphasnow, | ||
double | alphasprev, | ||
int | Nf, | ||
char | higgs | ||
) |
Function for the fermionic QCD corrections to e.g. h->gg.
alphasprev required so can multiply by ratio accounting for change in alphas effect in prefactor of hgg in gluongluontotal function above
double gluinoamplitudedecaygravitino | ( | double | m1, |
double | mgrav, | ||
double | MPlreduced, | ||
int | gravonoff, | ||
int | gluNLSP | ||
) |
Decays to gravitinos.
Function that calculates the decays to gravitinos of gluinos if int gravonoff == 1, otherwise decays to gravitinos are off
Comment this line, last line and line 3 below this out if always want decays to gravitinos output
double higgsAamplitudedecaysamecharginoNMSSM | ( | double | m1, |
double | m2, | ||
double | g, | ||
double | thetaL, | ||
double | thetaR, | ||
double | alpha, | ||
double | lam, | ||
DoubleMatrix & | CPOMix, | ||
int | chargino, | ||
int | pseudoscalar | ||
) |
so ofcourse squarminus is just 1, just keeping link with other amplitudes
double higgsAamplitudedecaysfermionsNMSSM | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | mWboson, | ||
double | mf, | ||
double | Asf, | ||
double | beta, | ||
double | lam, | ||
double | mueff, | ||
DoubleMatrix & | CPOMix, | ||
char | uord, | ||
int | pseudoscalar | ||
) |
mf here should be runmf and mWboson should be runmw
NMSSM functions (where MSSM functions haven't been recycled)
double higgsamplitudedecayVVstar | ( | double | m1, |
double | mboson, | ||
double | g, | ||
double | gp, | ||
double | beta, | ||
double | alpha, | ||
char | Vtype, | ||
DoubleMatrix & | CPEMix, | ||
bool | nmssmIsIt, | ||
int | higgs | ||
) |
Function that calculates higgs to VV* to Vff'bar. Formula derived as in Marciano and Keung, massless fermion limit and zero W width considered.
Only get H3 in NMSSM
double higgsesamplitudedecaygluongluontotal | ( | double | m1, |
double | g, | ||
double | gs, | ||
double | gprime, | ||
double | mWboson, | ||
double | alpha, | ||
double | beta, | ||
double | mtop, | ||
double | mbottom, | ||
double | mcharm, | ||
double | mstop1, | ||
double | mstop2, | ||
double | msbottom1, | ||
double | msbottom2, | ||
double | thetat, | ||
double | thetab, | ||
double | greekmu, | ||
double | Atop, | ||
double | Abottom, | ||
double | mstrange, | ||
double | mscharmL, | ||
double | mscharmR, | ||
double | msstrangeL, | ||
double | msstrangeR, | ||
double | Acharm, | ||
double | Astrange, | ||
double | mup, | ||
double | mdown, | ||
double | msupL, | ||
double | msupR, | ||
double | msdownL, | ||
double | msdownR, | ||
double | Aup, | ||
double | Adown, | ||
char | higgstype, | ||
bool | QCD | ||
) |
function that calculates the partial width for h->gluon gluon at 1-loop (forbidden at tree-level)
Now as the only difference is in the prefactor I can use the same functions for each of the loop contributions as in the higgs to gamma gamma case.
double higgsH3amplitudedecay2sleptonsamehandNMSSM | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson, | ||
double | mq, | ||
DoubleMatrix & | CPEMix, | ||
int | sl | ||
) |
snuLsnuL - drop terms proportional to ml^2 here
slLslL
slRslR
double higgsH3amplitudedecay2squarksamehandNMSSM | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson, | ||
double | mq, | ||
DoubleMatrix & | CPEMix, | ||
int | sq | ||
) |
uLuL
dLdL
uRuR
dRdR
DoubleVector higgsH3amplitudedecayVVNMSSM | ( | double | m1, |
double | mWboson, | ||
double | mZboson, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
char | Vtype, | ||
DoubleMatrix & | CPEMix, | ||
bool | nmssmIsIt | ||
) |
Function that calculates the Heavy Higgs decays to two vector bosons, assuming both are on-shell.
Only get H3 in NMSSM
Only get H3 in NMSSM
double higgshamplitudedecay2sleptonsamehandNMSSM | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson, | ||
double | mq, | ||
DoubleMatrix & | CPEMix, | ||
int | sl | ||
) |
snuLsnuL - drop terms proportional to ml^2 here
slLslL
slRslR
double higgsHamplitudedecay2sleptonsamehandNMSSM | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson, | ||
double | mq, | ||
DoubleMatrix & | CPEMix, | ||
int | sl | ||
) |
snuLsnuL - drop terms proportional to ml^2 here
slLslL
slRslR
double higgshamplitudedecay2squarkdiffhandNMSSM | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson, | ||
double | mq, | ||
double | Aq, | ||
double | mueff, | ||
double | lam, | ||
DoubleMatrix & | CPEMix, | ||
int | sq, | ||
int | higgs | ||
) |
uLuR
dLdR
double higgshamplitudedecay2squarksamehandNMSSM | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson, | ||
double | mq, | ||
DoubleMatrix & | CPEMix, | ||
int | sq | ||
) |
takes MSSM amplitude and applies relevant NMSSM prefactor to get NMSSM amplitude
uLuL
dLdL
uRuR
dRdR
double higgsHamplitudedecay2squarksamehandNMSSM | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson, | ||
double | mq, | ||
DoubleMatrix & | CPEMix, | ||
int | sq | ||
) |
uLuL
dLdL
uRuR
dRdR
double higgshamplitudedecayAA | ( | double | m1, |
double | m2, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson | ||
) |
calculates partial width for h->AA
obviously 1, just for comparison and consistency with other decay modes
double higgsHamplitudedecayAA | ( | double | m1, |
double | m2, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson | ||
) |
calculates partial width for H->AA
obviously 1, just for comparison and consistency with other decay modes
double higgsHamplitudedecayhh | ( | double | m1, |
double | m2, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson | ||
) |
calculates partial width for h->hh
obviously 1, just for comparison and consistency with other decay modes
double higgsHamplitudedecayHplusHminus | ( | double | m1, |
double | m2, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson | ||
) |
calculates partial width for H->H+H-
obviously 1, just for comparison and consistency with other decay modes
DoubleVector higgshamplitudedecayVV | ( | double | m1, |
double | mWboson, | ||
double | mZboson, | ||
double | g, | ||
double | gp, | ||
double | alpha, | ||
double | beta, | ||
char | Vtype, | ||
DoubleMatrix & | CPEMix, | ||
bool | nmssmIsIt | ||
) |
Function that calculates the light Higgs decays to two vector bosons, both on-shell or one off-shell.
double higgsamplitudedecayVVstar (double m1, double mboson, double g, double gp, double beta, double alpha, char Vtype);
I don't calculate cases where both are off-shell
I don't calculate cases where both are off-shell
DoubleVector higgsHplusamplitudedecaysquarksquark | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | beta, | ||
double | mWboson, | ||
double | mup, | ||
double | mdown, | ||
double | greekmu, | ||
double | Aup, | ||
double | Adown | ||
) |
calculates partial width for Hplus->squarki antisquarkj where i,j are each L/R so no mixing, i.e. first two generations of squarks
double higgslorHamplitudedecayquarkantiquark | ( | double | m1, |
double | m2, | ||
double | g, | ||
double | alpha, | ||
double | beta, | ||
double | mWboson, | ||
int | uord, | ||
char | lorH, | ||
DoubleMatrix & | CPEMix, | ||
bool | NMSSMmodel, | ||
bool | QCD, | ||
double | alphas | ||
) |
uord indicates if it's an up type quark (1) or down type quark (0) to choose which trig functions to act on the mixing angles (which parts of the mixing matrices), and int lorH tells the program if it's a light higgs (l) or heavy higgs (H) decaying in order to change the trig functions acting on the mixing angles; note can also use this formula for decays of higgs to leptons as these are in this sense down-type
M for max i.e. H3 heaviest higgs in NMSSM
u
d
double higgsphiamplitudedecaydifchargino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | thetaL, | ||
double | thetaR, | ||
double | alpha, | ||
double | beta, | ||
char | phi | ||
) |
phi tells it whether a "h", "H" or "A" is decaying
this function calls the function higgsphicharginocouplings to calculate the couplings for it
double higgsphiamplitudedecayneutralinoneutralino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | tanthetaW, | ||
double | mixingangle, | ||
DoubleMatrix & | mixNeut, | ||
int | ineutralino, | ||
int | fneutralino, | ||
char | phi | ||
) |
phi tells it whether a "h", "H" or "A" is decaying
here mixingangle is alpha
these are actually Xij/g and Xji/g really
here mixingangle is alpha
here mixingangle is beta
double higgsphiamplitudedecaysamechargino | ( | double | m1, |
double | m2, | ||
double | g, | ||
double | thetaL, | ||
double | thetaR, | ||
double | alpha, | ||
double | beta, | ||
int | chargino, | ||
char | phi | ||
) |
phi tells it whether a "h", "H" or "A" is decaying
so ofcourse squarminus is just 1, just keeping link with other amplitudes
double higgsphiamplitudedecaysamecharginoNMSSM | ( | double | m1, |
double | m2, | ||
double | g, | ||
double | thetaL, | ||
double | thetaR, | ||
double | lam, | ||
DoubleMatrix & | CPEMix, | ||
int | chargino, | ||
int | higgs | ||
) |
so ofcourse squarminus is just 1, just keeping link with other amplitudes
double neutralinoamplitudedecayleptonsleptonLorR | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
DoubleMatrix & | mixNeut, | ||
char | LorR, | ||
int | neutralino | ||
) |
m2 must be lepton mass
so get wino and zino couplings as LH slepton
so get only Zino couplings as RH
double neutralinoamplitudedecayneutralinoneutHiggs | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
DoubleMatrix & | mixNeut, | ||
double | mixingangle, | ||
int | ineutralino, | ||
int | fneutralino, | ||
char | phi | ||
) |
m2 must be phi mass, ineutralino is i in T&B whilst fneutralino is j
here mixingangle is alpha
here mixingangle is alpha
here mixingangle is beta
double neutralinoamplitudedecayphigravitino | ( | double | m1, |
double | mphi, | ||
double | mgrav, | ||
double | MPlreduced, | ||
DoubleMatrix & | mixNeut, | ||
double | alpha, | ||
double | beta, | ||
int | neutralino, | ||
int | gravonoff, | ||
char | phi, | ||
int | neutNLSP | ||
) |
Function that calculates the decays to gravitino and Z boson of a neutralino if int gravonoff == 1, otherwise decays to gravitinos are off.
Comment this line, last line and line 3 below this out if always want decays to gravitinos output
double neutralinoamplitudedecayphotongravitino | ( | double | m1, |
double | mgrav, | ||
double | MPlreduced, | ||
DoubleMatrix & | mixNeut, | ||
double | g, | ||
double | gp, | ||
int | neutralino, | ||
int | gravonoff, | ||
int | neutNLSP | ||
) |
Function that calculates the decays to gravitino and photon of a neutralino if int gravonoff == 1, otherwise decays to gravitinos are off.
Comment this line, last line and line 3 below this out if always want decays to gravitinos output
double neutralinoamplitudedecayquarksquarkLorR | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
DoubleMatrix & | mixNeut, | ||
int | uordtype, | ||
char | LorR, | ||
int | neutralino | ||
) |
m2 must be quark mass
up type squark (i.e. u squark or c squark)
down type squark (i.e. d squark or s squark)
so get wino and zino couplings as LH squark
so get only Zino couplings as RH
double neutralinoamplitudedecaysquark3quarkmix | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | mWboson, | ||
double | theta, | ||
double | beta, | ||
DoubleMatrix & | mixNeut, | ||
double | g, | ||
double | gp, | ||
double | runmq, | ||
int | squark, | ||
int | oneortwo, | ||
int | neutralino | ||
) |
m2 must be quark mass
we have stops
we have stop1s
this is just simpler (rearranged) form of atopr(1,i) from susyhit *g
this is just simpler (rearranged) form of btopr(1,i) from susyhit * g
we have stop2s
again simplified form of atopr(2,i) * g from susyhit
again simplified form of btopr(2,i) * g from susyhit
we have sbottoms
we have sbottom1s
just simplified form of abot(1,i) * g from susyhit
we have sbottom2s
simplified abot(2,i)*g from susyhit
simplified bbot(2,i)*g from susyhit
double neutralinoamplitudedecaystautau | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | mWboson, | ||
double | theta, | ||
double | beta, | ||
DoubleMatrix & | mixNeut, | ||
double | g, | ||
double | gp, | ||
int | oneortwo, | ||
int | neutralino | ||
) |
m2 must be tau (i.e. lepton) mass
we are decaying into a stau1
we are decaying into a stau2
double neutralinoamplitudedecayZgravitino | ( | double | m1, |
double | mZ, | ||
double | mgrav, | ||
double | MPlreduced, | ||
DoubleMatrix & | mixNeut, | ||
double | g, | ||
double | gp, | ||
double | beta, | ||
int | neutralino, | ||
int | gravonoff, | ||
int | neutNLSP | ||
) |
Function that calculates the decays to gravitino and Z boson of a neutralino if int gravonoff == 1, otherwise decays to gravitinos are off.
Comment this line, last line and line 3 below this out if always want decays to gravitinos output
double sleptonamplitudedecaychargino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | theta, | ||
int | chargino | ||
) |
for both sleptonL decays to charginos + neutrinos and for sneutrino decays to lepton + charginos - just change theta from thetaL in first case to thetaR in second case
note in the slepton decay to neutrinos case m2 is zero so lambda reduces to squareratio - giving squareratio squared
double sneutrinoamplitudedecayneutrinoneutralino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
DoubleMatrix & | mixNeut, | ||
int | neutralino | ||
) |
note here as m2=0 then lambda and squareratio each reduce to (1-pow(m3/m1,2))
double squark32amplitudedecayneutralHiggssquark3 | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | mWboson, | ||
double | beta, | ||
double | alpha, | ||
double | thetat, | ||
double | thetab, | ||
double | greekmu, | ||
double | At, | ||
double | Ab, | ||
double | mt, | ||
double | mb, | ||
int | torb, | ||
char | phi | ||
) |
possible minus sign issue here, both terms are same sign in susyhit -> changed second sign to - ?? whereas Tata and Baer has a signs of two terms opposite - note as it's squared anyway only relative sign between the two terms matters
stop2 decay
sbottom2 decay
double squark3amplitudedecaychargedHiggssquark3 | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | mWboson, | ||
double | beta, | ||
double | thetat, | ||
double | thetab, | ||
double | greekmu, | ||
double | At, | ||
double | Ab, | ||
double | mt, | ||
double | mb, | ||
int | t1or2, | ||
int | b1or2 | ||
) |
we have an initial stop1
we have a final state sbottom1
we have a final state sbottom2
we have an initial stop2
we have a final state sbottom1
we have a final state sbottom2
double squark3amplitudedecayneutralino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | mWboson, | ||
double | theta, | ||
double | beta, | ||
DoubleMatrix & | mixNeut, | ||
double | g, | ||
double | gp, | ||
double | runmq, | ||
int | squark, | ||
int | oneortwo, | ||
int | neutralino | ||
) |
we have stops
we have stop1s
this is just simpler (rearranged) form of atopr(1,i) from susyhit *g
this is just simpler (rearranged) form of btopr(1,i) from susyhit * g
we have stop2s
again simplified form of atopr(2,i) * g from susyhit
again simplified form of btopr(2,i) * g from susyhit
we have sbottoms
we have sbottom1s
just simplified form of abot(1,i) * g from susyhit
we have sbottom2s
simplified abot(2,i)*g from susyhit
simplified bbot(2,i)*g from susyhit
double squark3amplitudedecaysquark3Wboson | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | thetat, | ||
double | thetab, | ||
int | m1torb, | ||
int | m1oneortwo, | ||
int | m3torb, | ||
int | m3oneortwo | ||
) |
m1torb tells the function if the initial squark is a stop or sbottom, m1oneortwo tells it whether it's the lighter or heavier squark, similarly for the final state squark with m3torb and m3oneortwo
we have an initial stop
we have an initial stop1
we have an initial sbottom
we have an initial sbottom1
we have a final state stop
we have a final state stop2
we have a final state sbottom
we have a final state sbottom1
we have a final state sbottom2
double squarkamplitudedecaygravitino | ( | double | m1, |
double | mgrav, | ||
double | mquark, | ||
double | MPlreduced, | ||
int | gravonoff, | ||
int | squNLSP | ||
) |
Function that calculates the decays to gravitinos of squark if int gravonoff == 1, otherwise decays to gravitinos are off.
Comment this line, last line and line 3 below this out if always want decays to gravitinos output
double squarkRamplitudedecayneutralino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gprime, | ||
DoubleMatrix & | mixNeut, | ||
int | neutralino, | ||
int | uord | ||
) |
neutralino takes values of 1, 2, 3, or 4 and denotes which neutralino mass eigenstate we decay into, uord takes value 1 for up quarks (or charm quarks) and -1 for down quarks (or strange quarks) in order to change the sign and magnitude of the coefficient BqZ accordingly
Following changes in AqZ suggested by SUSYHIT
need to check this formula, unsure about BqZ and also if it should be mod squared or just the squared I have done here!
double stau2amplitudedecaystau1phi | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | thetatau, | ||
double | beta, | ||
double | alpha, | ||
double | mWboson, | ||
double | mtau, | ||
double | greekmu, | ||
double | Atau, | ||
char | phi | ||
) |
is just -1 + 3*pow(tanthetaW,2)
double stauamplitudedecaynutauchargino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | mWboson, | ||
double | theta, | ||
double | thetaL, | ||
double | beta, | ||
double | mtau, | ||
int | oneortwo, | ||
int | chargino | ||
) |
again lambda and squareratio reduce to same thing as m2 = 0
double stauamplitudedecaytauneutralino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
double | mWboson, | ||
DoubleMatrix & | mixNeut, | ||
double | theta, | ||
double | beta, | ||
int | oneortwo, | ||
int | neutralino | ||
) |
we have a stau1 decaying
we have a stau2 decaying
double stausneutrinoamplitudedecaytauchargino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | mWboson, | ||
double | beta, | ||
double | thetaL, | ||
double | thetaR, | ||
int | chargino | ||
) |
as m2 is mtau which is what we need to calculate ftau
double stausneutrinoamplitudedecaytauneutrinoneutralino | ( | double | m1, |
double | m2, | ||
double | m3, | ||
double | g, | ||
double | gp, | ||
DoubleMatrix & | mixNeut, | ||
int | neutralino | ||
) |
note lambda and squareratio reduce to same thing here as m2 = 0
double susyQCDcorrections | ( | double | prefactor, |
double | alphas, | ||
double | SMtotr, | ||
double | SMtoti, | ||
double | sqtotr, | ||
double | sqtoti | ||
) |
Function for the susy QCD corrections to h->gg, i.e. the corrections to the squark loops.
additional correction at NLO to squark loops
Note the (SMr*sqr+pow(sqr,2)+SMi*sqi+pow(sqi,2)) is just Re[c.c. of total matrix element x matrix element part from squarks] this is the interference of the total matrix element with the squark parts of the matrix element which get extra alphas susy qcd corrections. Note amplitude here must be added to the amplitude inc FQCD corrections to get the total FQCD and SQCD corrected amplitude.