softsusy
is hosted by
Hepforge
,
IPPP Durham
SOFTSUSY
4.1
src
physpars.h
Go to the documentation of this file.
1
13
#ifndef PHYSPARSH
14
#define PHYSPARSH
15
16
#include <iostream>
17
#include "
linalg.h
"
18
#include "
utils.h
"
19
using namespace
std;
20
21
namespace
softsusy
{
22
typedef
enum
{none=0, selectron, smuon, stau, sup, scharm, stop, sdown,
23
sstrange, sbottom, h0, A0, hpm, snue, snumu, snutau, W, Z}
24
tachyonType;
25
26
const
static
char
* tachyonNames[18] = {
27
"none"
,
"selectron"
,
"smuon"
,
"stau"
,
"sup"
,
"scharm"
,
"stop"
,
"sdown"
,
28
"sstrange"
,
"sbottom"
,
"h0"
,
"A0"
,
"hpm"
,
"snue"
,
"snumu"
,
"snutau"
,
29
"W"
,
"Z"
};
30
32
struct
sPhysical
{
33
DoubleVector
mh0, mA0;
34
double
mHpm;
36
DoubleVector
msnu
;
38
DoubleVector
mch
, mneut;
40
double
mGluino
;
42
DoubleMatrix
mixNeut
;
44
double
thetaL
, thetaR, thetat, thetab, thetatau, thetamu;
46
DoubleMatrix
mu
, md, me;
48
double
thetaH
, thetaA0;
50
DoubleMatrix
mixh0
;
51
52
sPhysical
();
53
sPhysical
(
const
sPhysical
&);
55
const
sPhysical
&
displaysPhysical
()
const
{
return
*
this
; };
57
void
setsPhysical
(
const
sPhysical
&s) { *
this
= s; };
59
const
sPhysical
& operator = (
const
sPhysical
& s);
60
62
void
display(
double
*a)
const
;
64
DoubleVector
display()
const
;
66
int
size()
const
;
68
void
set(
const
DoubleVector
&);
69
};
70
72
std::ostream &
operator <<
(std::ostream &,
const
sPhysical
&);
73
75
struct
sProblem
{
76
bool
mgutOutOfBounds;
77
bool
badConvergence
;
78
bool
irqfp
;
79
bool
noRhoConvergence
;
80
bool
noConvergence
;
81
tachyonType
tachyon
;
85
tachyonType
tachyonWarning
;
86
bool
muSqWrongSign
;
87
bool
m3sq
;
88
bool
higgsUfb
;
89
bool
notGlobalMin
;
90
bool
nonperturbative
;
91
bool
noMuConvergence
;
93
bool
inaccurateHiggsMass
;
94
bool
problemThrown;
96
bool
test
()
const
97
{
return
(mgutOutOfBounds || irqfp || noConvergence || tachyon ||
98
muSqWrongSign || higgsUfb || notGlobalMin || nonperturbative ||
99
noRhoConvergence || noMuConvergence || m3sq || badConvergence ||
100
inaccurateHiggsMass || problemThrown || tachyonWarning);};
102
bool
testSeriousProblem
()
const
103
{
return
(irqfp || tachyon || muSqWrongSign || higgsUfb ||
104
nonperturbative || noRhoConvergence || noMuConvergence || m3sq ||
105
badConvergence || mgutOutOfBounds || problemThrown);};
106
107
inline
sProblem
();
109
inline
sProblem
(
const
sProblem
& s);
111
const
sProblem
& operator = (
const
sProblem
&);
112
113
};
115
std::ostream &
operator <<
(std::ostream &st,
const
sProblem
& p);
117
std::istream &
operator >>
(std::istream & left,
sPhysical
&s);
118
120
struct
drBarPars
:
public
sPhysical
{
121
double
mz, mw;
122
double
mt
, mb, mtau;
123
double
ht
, hb, htau;
124
double
ut
, ub, utau;
126
ComplexMatrix
nBpmz
, uBpmz, vBpmz;
128
DoubleVector
mnBpmz
, mchBpmz;
129
130
inline
drBarPars
();
131
inline
drBarPars
(
const
drBarPars
&);
133
const
drBarPars
& operator = (
const
drBarPars
&s);
134
138
void
mpzNeutralinos();
142
void
mpzCharginos();
143
};
144
145
std::ostream &
operator <<
(std::ostream &,
const
drBarPars
&);
146
147
// ---------------------- inline class members ------------------------
148
inline
drBarPars::drBarPars()
149
:
sPhysical
(), mz(0.0), mw(0.0),
150
mt(0.0), mb(0.0), mtau(0.0), ht(0.0), hb(0.0), htau(0.0),
151
ut(0.0), ub(0.0), utau(0.0),
152
nBpmz(4, 4), uBpmz(2, 2),
153
vBpmz(2, 2), mnBpmz(4), mchBpmz(2)
154
{}
155
156
inline
drBarPars::drBarPars
(
const
drBarPars
&s)
157
:
sPhysical
(s.displaysPhysical()), mz(s.mz), mw(s.mw),
158
mt(s.mt), mb(s.mb), mtau(s.mtau), ht(s.ht), hb(s.hb), htau(s.htau),
159
ut(s.ut), ub(s.ub), utau(s.utau),
160
nBpmz(s.nBpmz), uBpmz(s.uBpmz), vBpmz(s.vBpmz), mnBpmz(s.mnBpmz),
161
mchBpmz(s.mchBpmz)
162
{}
163
164
inline
sPhysical::sPhysical
()
165
: mh0(2), mA0(1), mHpm(0.), msnu(3), mch(2), mneut(4),
166
mGluino(0.0),
167
mixNeut(4, 4), thetaL(0.0), thetaR(0.0), thetat(0.0), thetab(0.0),
168
thetatau(0.0), thetamu(0.0), mu(2, 3), md(2, 3), me(2, 3), thetaH(0.0),
169
thetaA0(0.0), mixh0(2,2)
170
{}
171
172
inline
sPhysical::sPhysical
(
const
sPhysical
& s)
173
: mh0(s.mh0), mA0(s.mA0), mHpm(s.mHpm), msnu(s.msnu), mch(s.mch),
174
mneut(s.mneut), mGluino(s.mGluino), mixNeut(s.mixNeut), thetaL(s.thetaL),
175
thetaR(s.thetaR), thetat(s.thetat), thetab(s.thetab),
176
thetatau(s.thetatau), thetamu(s.thetamu), mu(s.mu), md(s.md), me(s.me),
177
thetaH(s.thetaH), thetaA0(s.thetaA0), mixh0(s.mixh0)
178
{}
179
180
inline
sProblem::sProblem
()
181
: mgutOutOfBounds(false), badConvergence(false),
182
irqfp(false), noRhoConvergence(false), noConvergence(false),
183
tachyon(none), tachyonWarning(none),
184
muSqWrongSign(false), m3sq(false), higgsUfb(false),
185
notGlobalMin(false), nonperturbative(false), noMuConvergence(false),
186
inaccurateHiggsMass(false), problemThrown(false)
187
{}
188
189
inline
sProblem::sProblem
(
const
sProblem
& s)
190
: mgutOutOfBounds(s.mgutOutOfBounds), badConvergence(s.badConvergence),
191
irqfp(s.irqfp), noRhoConvergence(s.noRhoConvergence),
192
noConvergence(s.noConvergence),
193
tachyon(s.tachyon), tachyonWarning(s.tachyon),
194
muSqWrongSign(s.muSqWrongSign), m3sq(s.m3sq),
195
higgsUfb(s.higgsUfb), notGlobalMin(s.notGlobalMin),
196
nonperturbative(s.nonperturbative), noMuConvergence(s.noMuConvergence),
197
inaccurateHiggsMass(s.inaccurateHiggsMass), problemThrown(s.problemThrown)
198
{}
199
200
}
// namespace softsusy
201
205
double
sTfn
(
double
sTins,
double
sTouts);
206
208
// class drBarPars;
209
class
DoubleVector
;
210
void
sumTol
(
const
softsusy::drBarPars
& a,
const
softsusy::drBarPars
& b,
DoubleVector
& sT);
211
212
#endif
ComplexMatrix
matrix of complex double values dimensions (rows x cols)
Definition:
linalg.h:608
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
linalg.h
DoubleVector and DoubleMatrix classes of doubles and operations between them, complexified copies als...
softsusy
global variable declaration
Definition:
def.cpp:13
softsusy::operator>>
istream & operator>>(istream &left, flavourPhysical &s)
Formatted input of physical parameters.
Definition:
flavoursoft.cpp:1220
softsusy::operator<<
std::ostream & operator<<(std::ostream &st, const sProblem &p)
Formatted output, but won't print unflagged problems.
sumTol
void sumTol(const softsusy::drBarPars &a, const softsusy::drBarPars &b, DoubleVector &sT)
LCT: Difference between two drBarPars objects.
Definition:
physpars.cpp:272
sTfn
double sTfn(double sTins, double sTouts)
Definition:
physpars.cpp:264
softsusy::drBarPars
DRbar values of masses and mixings in MSSM.
Definition:
physpars.h:120
softsusy::drBarPars::drBarPars
drBarPars()
Initialises with zero values.
Definition:
physpars.h:148
softsusy::drBarPars::mnBpmz
DoubleVector mnBpmz
positive definite masses for neutralinos and charginos
Definition:
physpars.h:128
softsusy::drBarPars::ht
double ht
Running top, bottom and tau mass.
Definition:
physpars.h:123
softsusy::drBarPars::ut
double ut
Running diagonal top, bottom, tau Yukawa couplings.
Definition:
physpars.h:124
softsusy::drBarPars::mt
double mt
Running electroweak gauge boson masses.
Definition:
physpars.h:122
softsusy::drBarPars::nBpmz
ComplexMatrix nBpmz
BPMZ convention mixing matrices for neutralinos and charginos.
Definition:
physpars.h:126
softsusy::sPhysical
Masses of the physical particles.
Definition:
physpars.h:32
softsusy::sPhysical::mGluino
double mGluino
Gluino mass.
Definition:
physpars.h:40
softsusy::sPhysical::thetaH
double thetaH
Higgs mixing angle (alpha)
Definition:
physpars.h:48
softsusy::sPhysical::displaysPhysical
const sPhysical & displaysPhysical() const
Displays the object in situations where a const is required.
Definition:
physpars.h:55
softsusy::sPhysical::mixh0
DoubleMatrix mixh0
Higgs mixing matrices.
Definition:
physpars.h:50
softsusy::sPhysical::setsPhysical
void setsPhysical(const sPhysical &s)
Sets whole contents to those of another object s.
Definition:
physpars.h:57
softsusy::sPhysical::mch
DoubleVector mch
chargino/neutralino masses: ordered
Definition:
physpars.h:38
softsusy::sPhysical::mu
DoubleMatrix mu
sparticle masses in order (i=L/R, family)
Definition:
physpars.h:46
softsusy::sPhysical::thetaL
double thetaL
chargino and third family mixing angles
Definition:
physpars.h:44
softsusy::sPhysical::mixNeut
DoubleMatrix mixNeut
neutralino mixing
Definition:
physpars.h:42
softsusy::sPhysical::msnu
DoubleVector msnu
sneutrino masses
Definition:
physpars.h:36
softsusy::sPhysical::sPhysical
sPhysical()
Constructor: initialises with zeroes.
Definition:
physpars.h:164
softsusy::sProblem
Various boolean values to flag any problems with the parameter point.
Definition:
physpars.h:75
softsusy::sProblem::muSqWrongSign
bool muSqWrongSign
mu^2 came out with wrong sign; no REWSB
Definition:
physpars.h:86
softsusy::sProblem::tachyonWarning
tachyonType tachyonWarning
Definition:
physpars.h:85
softsusy::sProblem::irqfp
bool irqfp
Infra-red quasi fixed point breached.
Definition:
physpars.h:78
softsusy::sProblem::sProblem
sProblem()
Definition:
physpars.h:180
softsusy::sProblem::notGlobalMin
bool notGlobalMin
Not in global minimum of Higgs potential.
Definition:
physpars.h:89
softsusy::sProblem::tachyon
tachyonType tachyon
Definition:
physpars.h:81
softsusy::sProblem::higgsUfb
bool higgsUfb
Higgs potential inconsistent with a good minimum.
Definition:
physpars.h:88
softsusy::sProblem::inaccurateHiggsMass
bool inaccurateHiggsMass
Higgs mass is potentially inaccurate and cant be trusted.
Definition:
physpars.h:93
softsusy::sProblem::noConvergence
bool noConvergence
Iteration did not converge: not always serious.
Definition:
physpars.h:80
softsusy::sProblem::noRhoConvergence
bool noRhoConvergence
Couldn't calculate electroweak rho parameter.
Definition:
physpars.h:79
softsusy::sProblem::test
bool test() const
returns true if there's any problem
Definition:
physpars.h:96
softsusy::sProblem::noMuConvergence
bool noMuConvergence
Definition:
physpars.h:91
softsusy::sProblem::m3sq
bool m3sq
m3sq came out with wrong sign; no REWSB
Definition:
physpars.h:87
softsusy::sProblem::badConvergence
bool badConvergence
Nowhere near a decent solution.
Definition:
physpars.h:77
softsusy::sProblem::testSeriousProblem
bool testSeriousProblem() const
Only returns true if there's a serious problem.
Definition:
physpars.h:102
softsusy::sProblem::nonperturbative
bool nonperturbative
Running went non-perturbative.
Definition:
physpars.h:90
utils.h
A few handy bits and pieces - little mathematical functions and the like.
Generated by
1.9.1