softsusy
is hosted by
Hepforge
,
IPPP Durham
SOFTSUSY
4.1
src
rpvsoft.h
Go to the documentation of this file.
1
13
#ifndef RPVSOFT_H
14
#define RPVSOFT_H
15
16
#include <iostream>
17
#include <math.h>
18
#include <cstring>
19
#include <sstream>
20
#include <fstream>
21
#include "
flavoursoft.h
"
22
#include "
softsusy.h
"
23
#include "
linalg.h
"
24
#include "
rpvsusypars.h
"
25
26
namespace
softsusy
{
27
29
static
const
int
numRpvSoftPars = 99 + numSoftParsMssm;
30
32
class
RpvSoftsusy
:
public
FlavourMssmSoftsusy
,
public
RpvSoftPars
,
33
public
RpvSusyPars
{
38
private
:
40
DoubleVector
snuVevs;
42
DoubleVector
nuMasses;
45
DoubleMatrix
neutralFermMixing;
47
DoubleMatrix
Uch, Vch;
49
int
numRpcBcs;
50
public
:
52
RpvSoftsusy
();
54
RpvSoftsusy
(
const
RpvSoftsusy
&);
56
const
RpvSoftsusy
&
operator =
(
const
RpvSoftsusy
&);
57
59
const
DoubleVector
display
()
const
;
61
void
set
(
const
DoubleVector
& v);
63
DoubleVector
beta
()
const
;
65
RpvSoftsusy
beta2
()
const
;
66
68
inline
const
RpvSoftsusy
&
displayRpvSoftsusy
()
const
{
return
*
this
; }
70
void
setRpvSoftsusy
(
const
RpvSoftsusy
& s) { *
this
= s; };
71
76
void
rpvDisplay
(
DoubleVector
& parameters)
const
;
77
82
virtual
void
rpvSet
(
const
DoubleVector
& parameters);
83
85
const
DoubleVector
&
displaySneutrinoVevs
()
const
{
return
snuVevs; };
87
const
DoubleVector
&
displayNeutrinoMasses
()
const
{
return
nuMasses; };
89
const
DoubleMatrix
&
displayNeutralMixing
()
const
{
90
return
neutralFermMixing; };
92
const
DoubleMatrix
&
displayUch
()
const
{
return
Uch; };
94
const
DoubleMatrix
&
displayVch
()
const
{
return
Vch; };
96
int
displayNumRpcBcs
()
const
{
return
numRpcBcs; };
97
99
void
setNumRpcBcs
(
int
pos) { numRpcBcs = pos; };
101
void
setSneutrinoVevs
(
DoubleVector
& v) { snuVevs = v; };
103
void
setNeutrinoMasses
(
DoubleVector
& v) { nuMasses = v; };
105
void
setNeutralMixing
(
DoubleMatrix
& v) { neutralFermMixing = v; };
107
void
setUch
(
DoubleMatrix
& v) { Uch = v; };
109
void
setVch
(
DoubleMatrix
& v) { Vch = v; };
111
void
check
(
const
DoubleVector
& sneutrinoVevs)
const
;
113
void
rpvAnomalousDimension
(
DoubleMatrix
& gEE,
DoubleMatrix
& gLL,
114
DoubleMatrix
& gQQ,
DoubleMatrix
& gUU,
115
DoubleMatrix
& gDD,
116
double
& gH1H1,
double
& gH2H2,
117
DoubleVector
& gH1L)
const
;
118
121
void
rpvAnomalousDeriv
(
DoubleMatrix
& gEE,
DoubleMatrix
& gLL,
122
DoubleMatrix
& gQQ,
DoubleMatrix
& gUU,
123
DoubleMatrix
& gDD,
124
double
& gH1H1,
double
& gH2H2,
125
DoubleVector
& gH1L)
const
;
126
130
void
rpvyTildes
(
DoubleMatrix
& ye,
DoubleMatrix
& yd,
Tensor
& letilde,
131
Tensor
& ldtilde,
Tensor
& lutilde)
const
;
132
136
virtual
void
rewsb
(
int
sgnMu,
double
mt,
const
DoubleVector
& pars,
137
double
muOld = -6.66e66,
double
eps = 0.);
143
void
iterateRewsb
(
double
& mu,
double
& m3sq,
DoubleVector
& sneutrinoVevs,
144
int
sgnMu,
int
& numTries,
int
maxTries,
double
tol,
145
double
mt,
double
oldMu,
double
eps);
150
double
calculateMu
(
const
DoubleVector
& sneutrinoVevs,
int
sgnMu,
151
double
v1,
double
v2);
155
virtual
void
higgs
(
int
accuracy
,
double
piwwtMS,
double
pizztMS);
161
double
calculateM3sq
(
const
DoubleVector
& sneutrinoVevs,
162
double
snuSq,
double
v1,
double
v2);
163
virtual
DoubleVector
calculateSneutrinoVevs(
const
DoubleVector
&
164
sneutrinoVevs,
165
double
tol,
166
double
snuSq,
double
v1,
167
double
v2);
170
void
rotateAwayVevs
(
DoubleVector
& snVevs);
171
172
// Returns some functions of VEVs, gives 1 if there's a problem with the
173
// sneutrino VEVs (if they are incompatible with the W and Z masses)
175
// quadrature), v1 and
178
// inputs vSM and sneutrinoVevs.
180
int
usefulVevs
(
double
vSM,
const
DoubleVector
& sneutrinoVevs,
181
double
& snuSq,
double
& v1,
double
& v2)
const
;
182
186
void
standardSugra
(
double
m0,
double
m12,
double
a0
);
187
189
DoubleMatrix
neutralinoMassMatrix
()
const
;
190
193
void
neutralinos
(
int
accuracy
,
double
piwwtMS,
double
pizztMS);
197
void
methodBoundaryCondition
(
const
DoubleVector
& v);
201
virtual
void
sparticleThresholdCorrections
(
double
tb);
202
205
DoubleMatrix
chargedLeptons
(
double
vev);
213
void
iterateChargedLeptons
(
double
vev,
DoubleMatrix
& yeOld,
double
tol,
214
int
maxTries,
int
& err,
double
mtau);
215
220
void
isawigInterface764
(
char
herwigInputFile [80],
221
char
isajetOutputFile [80],
222
char
softOutputFile [80],
double
eps = 0.)
const
;
225
void
outputNonZeroInputs
(ostream & out);
238
void
slha1
(ostream & out,
const
char
model[],
239
const
DoubleVector
& pars,
int
sgnMu,
240
double
tanb,
double
qMax,
int
numPoints,
bool
ewsbBCscale);
242
void
drbarRpv
(ostream & out);
243
bool
leptonNumberViolation()
const
;
244
};
245
247
ostream &
operator <<
(ostream &left,
const
RpvSoftsusy
& r);
248
250
double
neutrinoSum
(
const
RpvSoftsusy
& r);
251
252
inline
RpvSoftsusy::RpvSoftsusy
()
253
:
FlavourMssmSoftsusy
(),
RpvSoftPars
(),
RpvSusyPars
(), snuVevs(3),
254
nuMasses(3), neutralFermMixing(7, 7), Uch(5, 5), Vch(5, 5), numRpcBcs(10) {
255
setPars
(numRpvSoftPars);
256
setMu
(0.0);
257
setLoops
(2);
258
setThresholds
(0);
259
}
260
261
inline
RpvSoftsusy::RpvSoftsusy
(
const
RpvSoftsusy
& s)
262
:
FlavourMssmSoftsusy
(s.displayFlavourSoftsusy()),
263
RpvSoftPars
(s.displayRpvSoft()),
264
RpvSusyPars
(s.displayRpvSusy()), snuVevs(s.displaySneutrinoVevs()),
265
nuMasses(s.displayNeutrinoMasses()),
266
neutralFermMixing(s.displayNeutralMixing()),
267
Uch(s.displayUch()),
268
Vch(s.displayVch()), numRpcBcs(s.displayNumRpcBcs()) {
269
270
setPars
(numRpvSoftPars);
271
setMu
(s.
displayMu
());
272
setLoops
(s.
displayLoops
());
273
setThresholds
(s.
displayThresholds
());
274
}
275
277
void
rpvSugraBcs
(
MssmSoftsusy
& m,
const
DoubleVector
& inputParameters);
278
void
rpvAmsbBcs(
MssmSoftsusy
& m,
const
DoubleVector
& inputParameters);
279
void
rpvGmsbBcs(
MssmSoftsusy
& m,
const
DoubleVector
& inputParameters);
280
void
rpvExtendedSugraBcs(
MssmSoftsusy
& m,
281
const
DoubleVector
& inputParameters);
282
283
}
// namespace softsusy
284
285
#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
Tensor
Three-index tensor for containing information on RPV couplings.
Definition:
tensor.h:27
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::FlavourMssmSoftsusy
This object is intended to be a flavoursome version of MssmSoftsusy.
Definition:
flavoursoft.h:83
softsusy::MssmSoftsusy
Contains all supersymmetric MSSM parameters, incorporating R_p MSSM.
Definition:
softsusy.h:74
softsusy::RGE::setPars
void setPars(int i)
Set number of parameters in RGE object.
Definition:
rge.h:64
softsusy::RGE::displayMu
double displayMu() const
Return renomalisation scale.
Definition:
rge.h:67
softsusy::RGE::setMu
void setMu(double e)
Sets renormalisation scale to e.
Definition:
rge.h:59
softsusy::RpvSoftPars
Contains RPV MSSM soft SUSY breaking parameters.
Definition:
rpvsusypars.h:120
softsusy::RpvSoftsusy
Real valued R-Parity violating MSSM object: use for UDD couplings.
Definition:
rpvsoft.h:33
softsusy::RpvSoftsusy::setRpvSoftsusy
void setRpvSoftsusy(const RpvSoftsusy &s)
Sets whole object equal to another
Definition:
rpvsoft.h:70
softsusy::RpvSoftsusy::operator=
const RpvSoftsusy & operator=(const RpvSoftsusy &)
All data in object set equal to another one.
Definition:
rpvsoft.cpp:15
softsusy::RpvSoftsusy::RpvSoftsusy
RpvSoftsusy()
Default constructor fills object with zeroes.
Definition:
rpvsoft.h:252
softsusy::RpvSoftsusy::rpvAnomalousDeriv
void rpvAnomalousDeriv(DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gUU, DoubleMatrix &gDD, double &gH1H1, double &gH2H2, DoubleVector &gH1L) const
Definition:
rpvsoft.cpp:228
softsusy::RpvSoftsusy::rpvAnomalousDimension
void rpvAnomalousDimension(DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gUU, DoubleMatrix &gDD, double &gH1H1, double &gH2H2, DoubleVector &gH1L) const
Anomalous dimensions of fields in RPV MSSM.
Definition:
rpvsoft.cpp:198
softsusy::RpvSoftsusy::beta
DoubleVector beta() const
Beta functions of RPV MSSM.
Definition:
rpvsoft.cpp:191
softsusy::RpvSoftsusy::calculateM3sq
double calculateM3sq(const DoubleVector &sneutrinoVevs, double snuSq, double v1, double v2)
Definition:
rpvsoft.cpp:719
softsusy::RpvSoftsusy::standardSugra
void standardSugra(double m0, double m12, double a0)
Definition:
rpvsoft.cpp:764
softsusy::RpvSoftsusy::displayRpvSoftsusy
const RpvSoftsusy & displayRpvSoftsusy() const
Returns object as a const.
Definition:
rpvsoft.h:68
softsusy::RpvSoftsusy::drbarRpv
void drbarRpv(ostream &out)
Does the RPV coupling SLHA1 outputs.
Definition:
rpvsoft.cpp:1431
softsusy::RpvSoftsusy::rpvSet
virtual void rpvSet(const DoubleVector ¶meters)
Definition:
rpvsoft.cpp:118
softsusy::RpvSoftsusy::displaySneutrinoVevs
const DoubleVector & displaySneutrinoVevs() const
Returns the vacuum expectation values of sneutrinos.
Definition:
rpvsoft.h:85
softsusy::RpvSoftsusy::higgs
virtual void higgs(int accuracy, double piwwtMS, double pizztMS)
Definition:
rpvsoft.cpp:1138
softsusy::RpvSoftsusy::neutralinos
void neutralinos(int accuracy, double piwwtMS, double pizztMS)
Definition:
rpvsoft.cpp:793
softsusy::RpvSoftsusy::displayNeutrinoMasses
const DoubleVector & displayNeutrinoMasses() const
Returns the neutrino masses.
Definition:
rpvsoft.h:87
softsusy::RpvSoftsusy::check
void check(const DoubleVector &sneutrinoVevs) const
Checks to what extent REWSB conditions are satisfied.
Definition:
rpvsoft.cpp:261
softsusy::RpvSoftsusy::slha1
void slha1(ostream &out, const char model[], const DoubleVector &pars, int sgnMu, double tanb, double qMax, int numPoints, bool ewsbBCscale)
Definition:
rpvsoft.cpp:1525
softsusy::RpvSoftsusy::isawigInterface764
void isawigInterface764(char herwigInputFile[80], char isajetOutputFile[80], char softOutputFile[80], double eps=0.) const
Definition:
rpvsoft.cpp:866
softsusy::RpvSoftsusy::display
const DoubleVector display() const
Displays all RGE parameters in a double vector.
Definition:
rpvsoft.cpp:47
softsusy::RpvSoftsusy::set
void set(const DoubleVector &v)
Sets all RGE parameters from elements of v.
Definition:
rpvsoft.cpp:184
softsusy::RpvSoftsusy::setVch
void setVch(DoubleMatrix &v)
Set charged fermion mixing matrix.
Definition:
rpvsoft.h:109
softsusy::RpvSoftsusy::outputNonZeroInputs
void outputNonZeroInputs(ostream &out)
Definition:
rpvsoft.cpp:1378
softsusy::RpvSoftsusy::beta2
RpvSoftsusy beta2() const
Beta functions of RPV MSSM.
Definition:
rpvsoft.cpp:291
softsusy::RpvSoftsusy::displayVch
const DoubleMatrix & displayVch() const
5 x 5 charged fermion mixing
Definition:
rpvsoft.h:94
softsusy::RpvSoftsusy::setNeutrinoMasses
void setNeutrinoMasses(DoubleVector &v)
Set neutrino masses.
Definition:
rpvsoft.h:103
softsusy::RpvSoftsusy::usefulVevs
int usefulVevs(double vSM, const DoubleVector &sneutrinoVevs, double &snuSq, double &v1, double &v2) const
IO parameters: vSM = total VEVs of Higgs+sneutrinos (added in.
Definition:
rpvsoft.cpp:702
softsusy::RpvSoftsusy::chargedLeptons
DoubleMatrix chargedLeptons(double vev)
Calculates charged lepton-chargino mass matrix including sneutrino VEVs.
Definition:
rpvsoft.cpp:1105
softsusy::RpvSoftsusy::setNeutralMixing
void setNeutralMixing(DoubleMatrix &v)
Set neutral fermion mixing matrix.
Definition:
rpvsoft.h:105
softsusy::RpvSoftsusy::rewsb
virtual void rewsb(int sgnMu, double mt, const DoubleVector &pars, double muOld=-6.66e66, double eps=0.)
Definition:
rpvsoft.cpp:562
softsusy::RpvSoftsusy::rpvyTildes
void rpvyTildes(DoubleMatrix &ye, DoubleMatrix &yd, Tensor &letilde, Tensor &ldtilde, Tensor &lutilde) const
Definition:
rpvsoft.cpp:535
softsusy::RpvSoftsusy::neutralinoMassMatrix
DoubleMatrix neutralinoMassMatrix() const
Returns the 7 by 7 general RPV neutralino mass matrix.
Definition:
rpvsoft.cpp:801
softsusy::RpvSoftsusy::displayUch
const DoubleMatrix & displayUch() const
5 x 5 charged fermion mixing
Definition:
rpvsoft.h:92
softsusy::RpvSoftsusy::setNumRpcBcs
void setNumRpcBcs(int pos)
Sets number of parameters in R-parity conserving BCs.
Definition:
rpvsoft.h:99
softsusy::RpvSoftsusy::setSneutrinoVevs
void setSneutrinoVevs(DoubleVector &v)
Set vacuum expectation values of sneutrinos.
Definition:
rpvsoft.h:101
softsusy::RpvSoftsusy::methodBoundaryCondition
void methodBoundaryCondition(const DoubleVector &v)
Definition:
rpvsoft.cpp:853
softsusy::RpvSoftsusy::sparticleThresholdCorrections
virtual void sparticleThresholdCorrections(double tb)
Definition:
rpvsoft.cpp:953
softsusy::RpvSoftsusy::rpvDisplay
void rpvDisplay(DoubleVector ¶meters) const
Definition:
rpvsoft.cpp:59
softsusy::RpvSoftsusy::rotateAwayVevs
void rotateAwayVevs(DoubleVector &snVevs)
Definition:
rpvsoft.cpp:1585
softsusy::RpvSoftsusy::iterateChargedLeptons
void iterateChargedLeptons(double vev, DoubleMatrix &yeOld, double tol, int maxTries, int &err, double mtau)
Definition:
rpvsoft.cpp:1033
softsusy::RpvSoftsusy::calculateMu
double calculateMu(const DoubleVector &sneutrinoVevs, int sgnMu, double v1, double v2)
Definition:
rpvsoft.cpp:664
softsusy::RpvSoftsusy::setUch
void setUch(DoubleMatrix &v)
Set charged fermion mixing matrix.
Definition:
rpvsoft.h:107
softsusy::RpvSoftsusy::displayNeutralMixing
const DoubleMatrix & displayNeutralMixing() const
Returns the full neutral mixing matrix.
Definition:
rpvsoft.h:89
softsusy::RpvSoftsusy::displayNumRpcBcs
int displayNumRpcBcs() const
Displays number of parameters in R-parity conserving BCs.
Definition:
rpvsoft.h:96
softsusy::RpvSoftsusy::iterateRewsb
void iterateRewsb(double &mu, double &m3sq, DoubleVector &sneutrinoVevs, int sgnMu, int &numTries, int maxTries, double tol, double mt, double oldMu, double eps)
Definition:
rpvsoft.cpp:601
softsusy::RpvSusyPars
Contains RPV MSSM supersymmetric parameters.
Definition:
rpvsusypars.h:26
flavoursoft.h
Header file for RP conserving MSSM object including all (real) soft SUSY breaking parameters and (rea...
linalg.h
DoubleVector and DoubleMatrix classes of doubles and operations between them, complexified copies als...
softsusy
global variable declaration
Definition:
def.cpp:13
softsusy::rpvSugraBcs
void rpvSugraBcs(MssmSoftsusy &m, const DoubleVector &inputParameters)
universal mSUGRA boundary conditions for RPV
Definition:
rpvsoft.cpp:1534
softsusy::neutrinoSum
double neutrinoSum(const RpvSoftsusy &r)
Sums up neutrino masses valid for cosmological bound.
Definition:
rpvsoft.cpp:774
softsusy::operator<<
ostream & operator<<(ostream &left, const FlavourMssmSoftsusy &m)
Formatted output.
Definition:
flavoursoft.cpp:217
a0
double a0(double m, double q)
inlined PV functions: real part
Definition:
numerics.h:120
rpvsusypars.h
Contains all supersymmetric RPVMSSM parameters.
softsusy.h
Header file for RP conserving MSSM object including all (real) soft SUSY breaking parameters and (rea...
accuracy
const double accuracy
Approximate accuracy with which 3 body decays are calculated.
Definition:
threeBodyDecays.h:38
Generated by
1.9.1