softsusy
is hosted by
Hepforge
,
IPPP Durham
SOFTSUSY
4.1
src
nmssmsusy.h
Go to the documentation of this file.
1
13
#ifndef NMSSMSUSY_H
14
#define NMSSMSUSY_H
15
16
#include "
susy.h
"
17
18
namespace
softsusy
{
20
const
static
int
numNMssmPars = numSusyPars + 5;
21
23
struct
nmsBrevity
:
public
sBrevity
{
24
double
lsq, ksq, l4, k4;
25
27
nmsBrevity
();
29
nmsBrevity
(
const
nmsBrevity
&);
31
const
nmsBrevity
&
operator=
(
const
nmsBrevity
&);
33
const
nmsBrevity
&
operator=
(
const
sBrevity
&);
34
37
void
calculate
(
const
DoubleMatrix
& yu,
const
DoubleMatrix
& yd,
const
38
DoubleMatrix
& ye,
const
DoubleVector
& g,
39
const
double
& lam,
const
double
& kap);
40
};
41
42
inline
nmsBrevity::nmsBrevity
()
43
:
sBrevity
()
44
, lsq(0.0), ksq(0.0), l4(0.0), k4(0.0)
45
{}
46
47
inline
nmsBrevity::nmsBrevity
(
const
nmsBrevity
&s)
48
:
sBrevity
(s)
49
, lsq(s.lsq), ksq(s.ksq), l4(s.l4), k4(s.k4)
50
{}
54
class
NmssmSusyPars
;
class
NmssmSusy
;
56
void
addOneLpAnomNmssm
(
double
& gH1H1,
double
& gH2H2,
double
& gSS,
57
double
lambda,
double
kappa);
60
void
addTwoLpAnomNmssm
(
DoubleMatrix
& gEE,
DoubleMatrix
& gLL,
61
DoubleMatrix
& gQQ,
DoubleMatrix
& gDD,
62
DoubleMatrix
& gUU,
double
& gH1H1,
double
&
63
gH2H2,
double
& gSS,
nmsBrevity
& a);
66
void
anomalousDimensionNmssmSusy
(
const
MssmSusy
& s,
const
NmssmSusyPars
& n,
67
DoubleMatrix
& gEE,
68
DoubleMatrix
& gLL,
DoubleMatrix
& gQQ,
69
DoubleMatrix
& gUU,
70
DoubleMatrix
& gDD,
DoubleVector
& dg,
71
double
& gH1H1,
double
& gH2H2,
72
double
& gSS,
nmsBrevity
& a);
74
NmssmSusy
betaNmssmSusy
(
nmsBrevity
& a,
const
MssmSusy
& s,
75
const
NmssmSusyPars
& n);
78
void
nmsetBetas
(
DoubleMatrix
&,
DoubleVector
&,
DoubleVector
&,
DoubleVector
79
&,
DoubleVector
&,
DoubleVector
& );
81
void
setBetaLambda
(
DoubleVector
&);
85
class
NmssmSusyPars
{
86
private
:
90
double
lambda, kappa, sVev;
95
double
xiF, mupr;
96
public
:
97
NmssmSusyPars
();
98
NmssmSusyPars
(
const
NmssmSusyPars
& );
99
NmssmSusyPars
(
double
sv,
double
lambda,
double
kappa,
double
xiF,
100
double
mupr);
101
const
NmssmSusyPars
& operator=(
const
NmssmSusyPars
& s);
102
virtual
~
NmssmSusyPars
() {};
103
105
void
setSvev
(
double
s) { sVev = s; };
107
void
setLambda
(
double
l) { lambda = l; };
109
void
setKappa
(
double
k) { kappa = k; };
111
void
setMupr
(
double
m) { mupr = m; };
113
void
setXiF
(
double
x) { xiF = x; };
115
void
setNmssmSusyPars
(
const
NmssmSusyPars
&s);
116
void
setNmssmSusyPars
(
const
DoubleVector
& y);
117
void
set(
const
DoubleVector
& y,
int
& k);
118
120
double
displaySvev
()
const
{
return
sVev; };
122
double
displayLambda
()
const
{
return
lambda; };
124
double
displayKappa
()
const
{
return
kappa; };
126
double
displayMupr
()
const
{
return
mupr; };
128
double
displayXiF
()
const
{
return
xiF; };
130
const
NmssmSusyPars
&
displayNmssmSusyPars
()
const
{
return
*
this
; };
132
void
display
(
DoubleVector
& y,
int
& k)
const
;
133
140
void
getOneLpAnom
(
DoubleMatrix
& gEE,
DoubleMatrix
& gLL,
141
DoubleMatrix
& gQQ,
DoubleMatrix
& gDD,
142
DoubleMatrix
& gUU,
double
& gH1H1,
double
&
143
gH2H2,
double
& gSS,
nmsBrevity
& a,
int
loops)
const
;
150
void
getTwoLpAnom
(
DoubleMatrix
& gEE,
DoubleMatrix
& gLL,
151
DoubleMatrix
& gQQ,
DoubleMatrix
& gDD,
152
DoubleMatrix
& gUU,
double
& gH1H1,
double
&
153
gH2H2,
double
& gSS,
nmsBrevity
& a,
int
loops)
const
;
160
void
anomalousDimension
161
(
const
MssmSusy
& s,
DoubleMatrix
& gEE,
DoubleMatrix
& gLL,
162
DoubleMatrix
& gQQ,
DoubleMatrix
& gUU,
DoubleMatrix
& gDD,
163
DoubleVector
& dg,
double
& gH1H1,
double
& gH2H2,
double
& gSS,
164
nmsBrevity
& a,
int
loops)
const
{
165
anomalousDimensionNmssmSusy
(s,
displayNmssmSusyPars
(), gEE, gLL, gQQ, gUU,
166
gDD, dg, gH1H1, gH2H2, gSS, a);
167
};
168
};
169
171
class
NmssmSusy
:
public
MssmSusy
,
public
NmssmSusyPars
{
172
private
:
173
Approx
nmssmSusyApprox;
174
public
:
175
NmssmSusy
();
177
NmssmSusy
(
const
NmssmSusy
&);
178
NmssmSusy
(
const
MssmSusy
& m,
const
NmssmSusyPars
& nsp);
181
// number of loops in
183
NmssmSusy
(
const
DoubleMatrix
& u,
184
const
DoubleMatrix
& d,
185
const
DoubleMatrix
& e,
const
DoubleVector
& v,
double
m,
186
double
tb,
double
hv,
int
mix,
int
l,
int
t,
double
sv,
187
double
lambda,
double
kappa,
double
xiF,
188
double
mupr);
189
NmssmSusy
(
double
lambda,
double
kappa,
double
sv,
double
xiF,
190
double
mupr);
191
// NmssmSusy(const NmssmSusyRGE & nms);
192
193
inline
const
NmssmSusy
& displayNmssmSusy()
const
{
return
*
this
; };
194
195
virtual
~NmssmSusy
();
196
198
const
NmssmSusy
&
operator=
(
const
NmssmSusy
& s);
199
200
void
setNmssmLoops(
double
l) { nmssmSusyApprox.
setLoops
(l); };
201
void
setNmssmApprox(
int
l,
int
t) { nmssmSusyApprox.
setLoops
(l);
202
nmssmSusyApprox.
setThresholds
(t); };
203
void
setNmssmApprox(
const
Approx
& a) { nmssmSusyApprox = a; };
204
void
setNmssmSusy(
const
NmssmSusy
& y) {
205
setNmssmApprox(y.displayNmssmSusyApprox());
206
setMssmSusy
(y.
displayMssmSusy
());
207
setNmssmSusyPars
(y.
displayNmssmSusyPars
());
208
};
209
210
int
displayNmssmLoops()
const
{
return
nmssmSusyApprox.
displayLoops
(); };
211
int
displayNmssmThresholds()
const
{
212
return
nmssmSusyApprox.
displayThresholds
();
213
};
214
Approx
displayNmssmSusyApprox()
const
{
return
nmssmSusyApprox; };
216
const
DoubleVector
display
()
const
;
217
218
void
set(
const
DoubleVector
& y,
int
& k);
219
void
set(
const
DoubleVector
& y);
221
NmssmSusy
beta
(
nmsBrevity
&)
const
;
228
void
getOneLpAnom
(
DoubleMatrix
& gEE,
DoubleMatrix
& gLL,
229
DoubleMatrix
& gQQ,
DoubleMatrix
& gDD,
230
DoubleMatrix
& gUU,
double
& gH1H1,
double
&
231
gH2H2,
double
& gSS,
nmsBrevity
& a)
const
;
238
void
getTwoLpAnom
(
DoubleMatrix
& gEE,
DoubleMatrix
& gLL,
239
DoubleMatrix
& gQQ,
DoubleMatrix
& gDD,
240
DoubleMatrix
& gUU,
double
& gH1H1,
double
&
241
gH2H2,
double
& gSS,
nmsBrevity
& a)
const
;
249
double
displayMuEff
()
const
{
return
displaySusyMu
() +
250
displayLambda
() *
displaySvev
() / sqrt(2.0); };
251
};
252
254
class
NmssmSusyRGE
:
public
RGE
,
public
NmssmSusy
{
255
private
:
256
public
:
257
NmssmSusyRGE
();
259
NmssmSusyRGE
(
const
NmssmSusyRGE
&);
262
//renormalisation scale MU, number of loops in
264
NmssmSusyRGE
(
const
DoubleMatrix
& u,
const
DoubleMatrix
& d,
const
265
DoubleMatrix
& e,
const
DoubleVector
& v,
double
m,
266
double
tb,
double
MU,
int
l,
int
t,
double
h,
int
mix,
267
double
s,
double
lambda,
double
kappa,
double
xiF,
268
double
mupr);
269
270
NmssmSusyRGE
(
const
MssmSusy
&m);
271
272
virtual
~NmssmSusyRGE
();
273
275
const
NmssmSusyRGE
&
operator=
(
const
NmssmSusyRGE
& s);
277
const
NmssmSusyRGE
&
operator=
(
const
NmssmSusy
& s);
279
void
setSusy
(
const
NmssmSusyRGE
&s);
280
void
set
(
const
DoubleVector
&y);
281
283
void
setSomePars
(
const
NmssmSusyRGE
& s);
284
286
inline
const
NmssmSusyRGE
&
displaySusy
()
const
{
return
*
this
; };
288
const
DoubleVector
display
()
const
;
289
291
DoubleVector
beta
()
const
;
292
};
293
294
296
ostream &
operator <<
(ostream &,
const
NmssmSusyRGE
&);
297
ostream &
operator <<
(ostream &,
const
NmssmSusy
&);
298
ostream &
operator <<
(ostream &,
const
NmssmSusyPars
&);
299
301
istream &
operator >>
(istream &left,
NmssmSusyRGE
&s);
302
303
}
304
305
#endif
DoubleMatrix
Matrix from 1..rows, 1..cols of double values.
Definition:
linalg.h:214
DoubleVector
DoubleVector is of variable length, and contains double precision.
Definition:
linalg.h:35
softsusy::Approx
Definition:
rge.h:23
softsusy::Approx::setLoops
void setLoops(int l)
Set number of loops used.
Definition:
rge.h:37
softsusy::Approx::displayLoops
int displayLoops() const
Return number of loops.
Definition:
rge.h:43
softsusy::Approx::setThresholds
void setThresholds(int t)
Definition:
rge.h:40
softsusy::Approx::displayThresholds
int displayThresholds() const
Return level of threshold approximation.
Definition:
rge.h:45
softsusy::MssmSusy
Contains all supersymmetric RPC-MSSM parameters.
Definition:
susy.h:71
softsusy::MssmSusy::setMssmSusy
void setMssmSusy(const MssmSusy &s)
sets object to be equal to another
Definition:
susy.cpp:237
softsusy::MssmSusy::displayMssmSusy
const MssmSusy & displayMssmSusy() const
Returns whole object as a const.
Definition:
susy.h:267
softsusy::MssmSusy::displaySusyMu
double displaySusyMu() const
Returns superpotential mu parameter.
Definition:
susy.h:291
softsusy::NmssmSusyPars
Contains NMSSM-only part of RPC SUSY parameters end of NmssmSusyPars.
Definition:
nmssmsusy.h:85
softsusy::NmssmSusyPars::displayLambda
double displayLambda() const
returns superpotential parameter lambda
Definition:
nmssmsusy.h:122
softsusy::NmssmSusyPars::setSvev
void setSvev(double s)
sets DRbar running singlet vev.
Definition:
nmssmsusy.h:105
softsusy::NmssmSusyPars::getTwoLpAnom
void getTwoLpAnom(DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gDD, DoubleMatrix &gUU, double &gH1H1, double &gH2H2, double &gSS, nmsBrevity &a, int loops) const
softsusy::NmssmSusyPars::setLambda
void setLambda(double l)
sets the \lambda S H_u H_d coupling
Definition:
nmssmsusy.h:107
softsusy::NmssmSusyPars::displayMupr
double displayMupr() const
returns mupr superpotential parameter
Definition:
nmssmsusy.h:126
softsusy::NmssmSusyPars::displayKappa
double displayKappa() const
returns superpotential parameter lambda
Definition:
nmssmsusy.h:124
softsusy::NmssmSusyPars::getOneLpAnom
void getOneLpAnom(DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gDD, DoubleMatrix &gUU, double &gH1H1, double &gH2H2, double &gSS, nmsBrevity &a, int loops) const
softsusy::NmssmSusyPars::anomalousDimension
void anomalousDimension(const MssmSusy &s, DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gUU, DoubleMatrix &gDD, DoubleVector &dg, double &gH1H1, double &gH2H2, double &gSS, nmsBrevity &a, int loops) const
Definition:
nmssmsusy.h:161
softsusy::NmssmSusyPars::setXiF
void setXiF(double x)
sets the xiF S coupling
Definition:
nmssmsusy.h:113
softsusy::NmssmSusyPars::NmssmSusyPars
NmssmSusyPars()
Constructor fills object with zeroes by default.
Definition:
nmssmsusy.cpp:251
softsusy::NmssmSusyPars::displayNmssmSusyPars
const NmssmSusyPars & displayNmssmSusyPars() const
returns whole object
Definition:
nmssmsusy.h:130
softsusy::NmssmSusyPars::setMupr
void setMupr(double m)
sets the \frac{1}{2} mupr S^2 coupling
Definition:
nmssmsusy.h:111
softsusy::NmssmSusyPars::display
void display(DoubleVector &y, int &k) const
whole object in a vector y, starting at index k
Definition:
nmssmsusy.cpp:420
softsusy::NmssmSusyPars::setNmssmSusyPars
void setNmssmSusyPars(const NmssmSusyPars &s)
sets the whole object
Definition:
nmssmsusy.cpp:276
softsusy::NmssmSusyPars::setKappa
void setKappa(double k)
sets the \frac{1}{3} \kappa S^3 coupling
Definition:
nmssmsusy.h:109
softsusy::NmssmSusyPars::displaySvev
double displaySvev() const
returns DRbar running Singlet Higgs vev
Definition:
nmssmsusy.h:120
softsusy::NmssmSusyPars::displayXiF
double displayXiF() const
returns xiF superpotential parameter
Definition:
nmssmsusy.h:128
softsusy::NmssmSusyRGE
Contains all supersymmetric RPC-MSSM parameters and is an RGE end of NmssmSusyRGE.
Definition:
nmssmsusy.h:254
softsusy::NmssmSusyRGE::setSusy
void setSusy(const NmssmSusyRGE &s)
sets object to be equal to another
Definition:
nmssmsusy.cpp:485
softsusy::NmssmSusyRGE::operator=
const NmssmSusyRGE & operator=(const NmssmSusyRGE &s)
sets object to be equal to another
Definition:
nmssmsusy.cpp:400
softsusy::NmssmSusyRGE::setSomePars
void setSomePars(const NmssmSusyRGE &s)
Copies MSSM Yukawa matrices and gauge couplings from s only.
Definition:
nmssmsusy.cpp:416
softsusy::NmssmSusyRGE::set
void set(const DoubleVector &y)
Definition:
nmssmsusy.cpp:436
softsusy::NmssmSusyRGE::NmssmSusyRGE
NmssmSusyRGE()
Definition:
nmssmsusy.cpp:366
softsusy::NmssmSusyRGE::displaySusy
const NmssmSusyRGE & displaySusy() const
Returns whole object as a const.
Definition:
nmssmsusy.h:286
softsusy::NmssmSusyRGE::~NmssmSusyRGE
virtual ~NmssmSusyRGE()
Default destructor.
Definition:
nmssmsusy.cpp:397
softsusy::NmssmSusyRGE::display
const DoubleVector display() const
Returns all parameters as elements of a vector.
Definition:
nmssmsusy.cpp:450
softsusy::NmssmSusyRGE::beta
DoubleVector beta() const
Calculate beta functions of SUSY preserving parameters of RPC MSSM.
Definition:
nmssmsusy.cpp:509
softsusy::NmssmSusy
Contains all SUSY RPC-NMSSM parameters but is not an RGE object end of NmssmSusy.
Definition:
nmssmsusy.h:171
softsusy::NmssmSusy::display
const DoubleVector display() const
Returns all parameters as elements of a vector.
Definition:
nmssmsusy.cpp:440
softsusy::NmssmSusy::~NmssmSusy
virtual ~NmssmSusy()
Default destructor.
Definition:
nmssmsusy.cpp:398
softsusy::NmssmSusy::NmssmSusy
NmssmSusy()
Definition:
nmssmsusy.cpp:310
softsusy::NmssmSusy::getTwoLpAnom
void getTwoLpAnom(DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gDD, DoubleMatrix &gUU, double &gH1H1, double &gH2H2, double &gSS, nmsBrevity &a) const
Definition:
nmssmsusy.cpp:352
softsusy::NmssmSusy::operator=
const NmssmSusy & operator=(const NmssmSusy &s)
sets object to be equal to another
Definition:
nmssmsusy.cpp:298
softsusy::NmssmSusy::beta
NmssmSusy beta(nmsBrevity &) const
Calculate beta functions of SUSY preserving parameters of RPC MSSM.
Definition:
nmssmsusy.cpp:360
softsusy::NmssmSusy::displayMuEff
double displayMuEff() const
Definition:
nmssmsusy.h:249
softsusy::NmssmSusy::getOneLpAnom
void getOneLpAnom(DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gDD, DoubleMatrix &gUU, double &gH1H1, double &gH2H2, double &gSS, nmsBrevity &a) const
Definition:
nmssmsusy.cpp:340
softsusy::RGE
Describes a set of parameters and RGEs in general.
Definition:
rge.h:49
softsusy
global variable declaration
Definition:
def.cpp:13
softsusy::setBetaLambda
void setBetaLambda(DoubleVector &clBeta)
Outputs beta function coefficients for lambda.
Definition:
nmssmsusy.cpp:245
softsusy::anomalousDimensionNmssmSusy
void anomalousDimensionNmssmSusy(const MssmSusy &s, const NmssmSusyPars &n, DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gUU, DoubleMatrix &gDD, DoubleVector &dg, double &gH1H1, double &gH2H2, double &gSS, nmsBrevity &a)
Definition:
nmssmsusy.cpp:39
softsusy::addTwoLpAnomNmssm
void addTwoLpAnomNmssm(DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gDD, DoubleMatrix &gUU, double &gH1H1, double &gH2H2, double &gSS, nmsBrevity &a)
Definition:
nmssmsusy.cpp:92
softsusy::addOneLpAnomNmssm
void addOneLpAnomNmssm(double &gH1H1, double &gH2H2, double &gSS, double lambda, double kappa)
Adds NMSSM one loop pieces onto the wave function renomalisation.
Definition:
nmssmsusy.cpp:79
softsusy::nmsetBetas
void nmsetBetas(DoubleMatrix &babBeta, DoubleVector &cuBeta, DoubleVector &cdBeta, DoubleVector &ceBeta, DoubleVector &clBeta, DoubleVector &bBeta)
Definition:
nmssmsusy.cpp:238
softsusy::betaNmssmSusy
NmssmSusy betaNmssmSusy(nmsBrevity &a, const MssmSusy &s, const NmssmSusyPars &n)
beta functions
Definition:
nmssmsusy.cpp:142
softsusy::operator<<
ostream & operator<<(ostream &left, const FlavourMssmSoftsusy &m)
Formatted output.
Definition:
flavoursoft.cpp:217
softsusy::operator>>
istream & operator>>(istream &left, flavourPhysical &s)
Formatted input of physical parameters.
Definition:
flavoursoft.cpp:1220
softsusy::nmsBrevity
Contains data needed in beta function calculation to make it faster.
Definition:
nmssmsusy.h:23
softsusy::nmsBrevity::nmsBrevity
nmsBrevity()
Constructor fills struct with zeroes by default.
Definition:
nmssmsusy.h:42
softsusy::nmsBrevity::operator=
const nmsBrevity & operator=(const nmsBrevity &)
Sets struct to be equal to another.
Definition:
nmssmsusy.cpp:22
softsusy::nmsBrevity::calculate
void calculate(const DoubleMatrix &yu, const DoubleMatrix &yd, const DoubleMatrix &ye, const DoubleVector &g, const double &lam, const double &kap)
Definition:
nmssmsusy.cpp:29
softsusy::sBrevity
Contains data needed in beta function calculation to make it faster.
Definition:
susy.h:31
susy.h
MssmSusy contains all SUSY couplings and tan beta, as well as their beta functions.
Generated by
1.9.1