softsusy
is hosted by
Hepforge
,
IPPP Durham
SOFTSUSY
4.1
src
mssmjacobian.h
Go to the documentation of this file.
1
6
#ifndef MSSMJACOBIAN_H
7
#define MSSMJACOBIAN_H
8
9
#include "
linalg.h
"
10
11
#include <utility>
12
#include <limits>
13
14
namespace
softsusy
{
15
16
class
MssmSoftsusy
;
17
18
class
MssmJacobian
{
19
public
:
20
21
explicit
MssmJacobian
(
bool
doTop =
false
);
22
~
MssmJacobian
();
23
26
bool
displayIncludeTopFlag
()
const
{
return
includeTop; }
27
30
void
setIncludeTopFlag
(
bool
flag) { includeTop = flag; }
31
34
bool
displayUseRunningMassesFlag
()
const
{
return
useRunningMasses; }
35
38
void
setUseRunningMassesFlag
(
bool
flag) { useRunningMasses = flag; }
39
42
bool
displayUseSugraTrilinearsFlag
()
const
{
return
useSugraTrilinears; }
43
46
void
setUseSugraTrilinearsFlag
(
bool
flag) { useSugraTrilinears = flag; }
47
49
void
resetError
() { hasError =
false
; }
50
53
bool
displayError
()
const
{
return
hasError; }
54
58
DoubleMatrix
displayInverseRGFlowJacobian
()
const
{
return
invJacRGFlow; }
59
63
DoubleMatrix
displayInverseRGFlowJacobianErrors
()
const
{
64
return
invJacRGFlowErrors;
65
}
66
70
DoubleMatrix
displayInverseEWSBJacobian
()
const
{
return
invJacEWSB; }
71
75
DoubleMatrix
displayInverseEWSBJacobianErrors
()
const
{
76
return
invJacEWSBErrors;
77
}
78
82
double
calcFTInverseJacobian
(
const
MssmSoftsusy
& m);
83
88
double
calcFTInverseJacobian
(
const
MssmSoftsusy
& m,
double
mx);
89
94
double
calcDeltaJ
(
const
MssmSoftsusy
& m);
95
100
double
calcDeltaJ
(
const
MssmSoftsusy
& m,
double
mx);
101
102
private
:
103
enum
Parameters
{ Mzsq, Tanb, Mtsq, SMu, M3Sq, Mh1Sq, Mh2Sq, Yt };
104
105
DoubleMatrix
invJacRGFlow;
106
DoubleMatrix
invJacEWSB;
107
108
DoubleMatrix
invJacRGFlowErrors;
109
DoubleMatrix
invJacEWSBErrors;
110
111
bool
includeTop;
112
bool
useRunningMasses;
113
bool
useSugraTrilinears;
114
bool
hasError;
115
116
struct
EWSBPars {
117
MssmSoftsusy
* model;
118
Parameters
independent;
119
Parameters
dependent;
120
DoubleVector
outputs;
121
bool
useRunningMasses;
122
bool
useSugraTrilinears;
123
124
EWSBPars()
125
: model(0), independent(Mzsq), dependent(SMu),
126
outputs(2), useRunningMasses(false),
127
useSugraTrilinears(false)
128
{}
129
};
130
131
struct
RGFlowPars {
132
MssmSoftsusy
* model;
133
Parameters
independent;
134
Parameters
dependent;
135
double
toScale;
136
bool
useSugraTrilinears;
137
};
138
139
static
double
calcMz(
MssmSoftsusy
& model,
bool
getRunningMass =
false
);
140
static
double
calcMt(
MssmSoftsusy
& model,
bool
getRunningMass =
false
);
141
142
static
double
calcRunningParameter(
double
x,
void
* parameters);
143
std::pair<double,double> calcRGDerivative(
MssmSoftsusy
& model,
144
Parameters
dep,
Parameters
indep,
145
double
toScale);
146
double
calcRGFlowJacobian(
MssmSoftsusy
& model,
double
startScale,
147
double
endScale);
148
static
double
calcEWSBOutput(
double
x,
void
* parameters);
149
std::pair<double,double> calcEWSBOutputDerivative(
MssmSoftsusy
& model,
150
Parameters
dep,
151
Parameters
indep);
152
double
calcInverseEWSBJacobian(
MssmSoftsusy
& model);
153
};
154
155
}
156
157
#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::MssmJacobian
Definition:
mssmjacobian.h:18
softsusy::MssmJacobian::calcFTInverseJacobian
double calcFTInverseJacobian(const MssmSoftsusy &m)
Calculates the Jacobian transforming observables to parameters.
Definition:
mssmjacobian.cpp:95
softsusy::MssmJacobian::displayUseSugraTrilinearsFlag
bool displayUseSugraTrilinearsFlag() const
Displays whether SUGRA style trilinears are assumed.
Definition:
mssmjacobian.h:42
softsusy::MssmJacobian::setUseRunningMassesFlag
void setUseRunningMassesFlag(bool flag)
Sets whether to use running or pole masses in derivatives.
Definition:
mssmjacobian.h:38
softsusy::MssmJacobian::setUseSugraTrilinearsFlag
void setUseSugraTrilinearsFlag(bool flag)
Sets whether to assume SUGRA style trilinears.
Definition:
mssmjacobian.h:46
softsusy::MssmJacobian::displayUseRunningMassesFlag
bool displayUseRunningMassesFlag() const
Displays whether running or pole masses are being used.
Definition:
mssmjacobian.h:34
softsusy::MssmJacobian::setIncludeTopFlag
void setIncludeTopFlag(bool flag)
Sets whether to include top Yukawa derivatives.
Definition:
mssmjacobian.h:30
softsusy::MssmJacobian::calcDeltaJ
double calcDeltaJ(const MssmSoftsusy &m)
Calculates the fine-tuning using the Jacobian measure.
Definition:
mssmjacobian.cpp:40
softsusy::MssmJacobian::displayInverseRGFlowJacobianErrors
DoubleMatrix displayInverseRGFlowJacobianErrors() const
Displays the error in the Jacobian for transforming from low- to high-scale parameters.
Definition:
mssmjacobian.h:63
softsusy::MssmJacobian::resetError
void resetError()
Resets the error status to false.
Definition:
mssmjacobian.h:49
softsusy::MssmJacobian::displayIncludeTopFlag
bool displayIncludeTopFlag() const
Displays whether the top Yukawa is included in the tuning.
Definition:
mssmjacobian.h:26
softsusy::MssmJacobian::displayError
bool displayError() const
Displays whether an error occurred during the calculation.
Definition:
mssmjacobian.h:53
softsusy::MssmJacobian::displayInverseEWSBJacobian
DoubleMatrix displayInverseEWSBJacobian() const
Displays the Jacobian for transforming observables to low-scale parameters.
Definition:
mssmjacobian.h:70
softsusy::MssmJacobian::displayInverseRGFlowJacobian
DoubleMatrix displayInverseRGFlowJacobian() const
Displays the Jacobian for transforming from low- to high-scale parameters.
Definition:
mssmjacobian.h:58
softsusy::MssmJacobian::displayInverseEWSBJacobianErrors
DoubleMatrix displayInverseEWSBJacobianErrors() const
Displays the error in the Jacobian for transforming observables to low-scale parameters.
Definition:
mssmjacobian.h:75
softsusy::MssmSoftsusy
Contains all supersymmetric MSSM parameters, incorporating R_p MSSM.
Definition:
softsusy.h:74
linalg.h
DoubleVector and DoubleMatrix classes of doubles and operations between them, complexified copies als...
softsusy
global variable declaration
Definition:
def.cpp:13
softsusy::Parameters
Definition:
mssm_twoloop_mb.h:23
Generated by
1.9.1