SoftSUSY is hosted by Hepforge, IPPP Durham
SOFTSUSY  4.0
nmssmsoftpars.h
Go to the documentation of this file.
1 
12 #ifndef NMSSMSOFTPARS_H
13 #define NMSSMSOFTPARS_H
14 
15 #include <cmath>
16 //#include <susy.h>
17 #include "def.h"
18 #include "linalg.h"
19 #include "utils.h"
20 #include "numerics.h"
21 #include "nmssmsusy.h"
22 #include "softpars.h"
23 
24 namespace softsusy {
25 
28  const static int numSoftParsNmssm = 83 + numNMssmPars;
29 
31  class SoftParsNmssm; class NmssmSoftsusy;
34  (nmsBrevity & a, const NmssmSusyPars & n, const MssmSusy & m,
35  const MssmSoftPars & msoft, const SoftParsNmssm & nsoft, DoubleVector & dmG,
36  double & dmH1sq, double & dmH2sq, double & dm3sq, double & dmSsq,
37  double & dmSpsq, double & dxiSsq, DoubleMatrix & dmq, DoubleMatrix & dmu,
38  DoubleMatrix & dmd, DoubleMatrix & dme, DoubleMatrix dml,
39  DoubleMatrix & dhu, DoubleMatrix & dhd, DoubleMatrix & dhe, double & dhlam,
40  double & dhkap);
44  class SoftParsNmssm {
46  private:
48  double alambda, akappa;
52  double mSsq, mSpsq, xiS;
53  public:
56  : alambda(0.0), akappa(0.0), mSsq(0.0), mSpsq(0.0), xiS(0.0) {};
57  SoftParsNmssm(const SoftParsNmssm & s)
58  : alambda(s.displayTrialambda()), akappa(s.displayTriakappa()),
59  mSsq(s.displayMsSquared()), mSpsq(s.displayMspSquared()),
60  xiS(s.displayXiS()) {};
61  SoftParsNmssm(double al, double ak, double ms, double msp, double x)
62  : alambda(al), akappa(ak), mSsq(ms), mSpsq(msp), xiS(x) {}
63  const SoftParsNmssm & operator=(const SoftParsNmssm & s);
64 
65  const SoftParsNmssm & displaySoftParsNmssm() const { return *this; }
66  //PA: Return trilinear soft mass $a_\lambda S H_u H_d$
67  double displayTrialambda() const { return alambda; };
68  //PA: Return trillinear soft mass $a_\kappa S S S$
69  double displayTriakappa() const { return akappa; };
71  double displayMsSquared() const { return mSsq; };
73  double displayMspSquared() const { return mSpsq; };
75  double displayXiS() const { return xiS; };
78  double displaySoftAlambda(double lam) const;
81  double displaySoftAkappa(double ka) const;
83  // const DoubleVector display(const NmssmSusy & n, const MssmSoftPars & s) const;
85  void display(DoubleVector & y, int & k) const;
86 
88  void setTrialambda(double al) { alambda = al; };
90  void setTriakappa(double ak) { akappa = ak; };
92  void setMsSquared(double f) { mSsq = f; };
94  void setMspSquared(double f) { mSpsq = f; };
96  void setXiS(double f) { xiS = f; };
97  void setSoftParsNmssm(SoftParsNmssm const & s) { *this = s; }
98  // void set(const DoubleVector &);
99  void set(const DoubleVector &, int & k);
100 
104  void anomalousDeriv(DoubleMatrix & gEE, DoubleMatrix & gLL,
105  DoubleMatrix & gQQ, DoubleMatrix & gUU,
106  DoubleMatrix & gDD,
107  double & gH1H1, double & gH2H2, double & gSS) const;
108 
110  void addAmsb(double maux, const NmssmSusy & Nms, MssmSoftPars & m);
113  void standardSugra(double m0, double m12, double a0,
114  const NmssmSusyPars & n, const MssmSusy & m,
115  const MssmSoftPars & msoft);
118  void standardsemiSugra(double m0, double m12, double a0, double Al,
119  double Ak, const NmssmSusy & n,
120  const MssmSoftPars & m, double mS=0.0);
122  void universalScalars(double m0);
125  void semiuniversalScalars(double m0);
127  void universalTrilinears(double a0, const NmssmSusy & n);
130  void semiuniversalTrilinears(double a0, double al, double ak,
131  const NmssmSusy & n);
132 
134  void inputSoftParsOnly();
135  };
136 
137  ostream & operator <<(ostream &left, const SoftParsNmssm &s);
138 } // namespace softsusy
139 
140 #endif
global variable declaration
Definition: def.cpp:13
void inputSoftParsOnly()
Reads in soft SUSY breaking parameters from a file.
Definition: nmssmsoftpars.cpp:797
double a0(double m, double q)
inlined PV functions: real part
Definition: numerics.h:100
DoubleVector is of variable length, and contains double precision.
Definition: linalg.h:35
Contains all SUSY RPC-NMSSM parameters but is not an RGE object end of NmssmSusy. ...
Definition: nmssmsusy.h:171
Contains data needed in beta function calculation to make it faster.
Definition: nmssmsusy.h:23
Contains all supersymmetric NMSSM parameters, incorporating R_p NMSSM.
Definition: nmssmsoftsusy.h:45
switches (options) and parameters such as default fermion masses, required accuracy etc ...
DoubleVector and DoubleMatrix classes of doubles and operations between them, complexified copies als...
double displayMsSquared() const
Return =mSsq.
Definition: nmssmsoftpars.h:71
void standardsemiSugra(double m0, double m12, double a0, double Al, double Ak, const NmssmSusy &n, const MssmSoftPars &m, double mS=0.0)
works for Z3 violating NMSSM.
Definition: nmssmsoftpars.cpp:771
void addAmsb(double maux, const NmssmSusy &Nms, MssmSoftPars &m)
adds NMSSM amsb contribution to soft masses.
Definition: nmssmsoftpars.cpp:696
Contains all supersymmetric RPC-MSSM parameters.
Definition: susy.h:75
void setMspSquared(double f)
PA: Sets soft scalar mass .
Definition: nmssmsoftpars.h:94
void addBetaSoftParsNmssm(nmsBrevity &a, const NmssmSusyPars &n, const MssmSusy &m, const MssmSoftPars &msoft, const SoftParsNmssm &nsoft, DoubleVector &dmG, double &dmH1sq, double &dmH2sq, double &dm3sq, double &dmSsq, double &dmSpsq, double &dxiS, DoubleMatrix &dmq, DoubleMatrix &dmu, DoubleMatrix &dmd, DoubleMatrix &dme, DoubleMatrix dml, DoubleMatrix &dhu, DoubleMatrix &dhd, DoubleMatrix &dhe, double &dhlam, double &dhkap)
Definition: nmssmsoftpars.cpp:20
numerical routines - differential equation solver, differentiator and function minimiser for instance...
A few handy bits and pieces - little mathematical functions and the like.
SoftParsNmssm()
Default constructor fills object with zeroes.
Definition: nmssmsoftpars.h:55
Contains NMSSM-only part of RPC SUSY parameters end of NmssmSusyPars.
Definition: nmssmsusy.h:85
Contains only the NMSSM soft parameters, NOT the MSSM ones.
Definition: nmssmsoftpars.h:45
ostream & operator<<(ostream &left, const FlavourMssmSoftsusy &m)
Formatted output.
Definition: flavoursoft.cpp:217
Matrix from 1..rows, 1..cols of double values.
Definition: linalg.h:211
void setXiS(double f)
PA: Sets soft breaking .
Definition: nmssmsoftpars.h:96
void universalScalars(double m0)
Sets all flavour-diagonal SUSY breaking scalar masses to m0.
Definition: nmssmsoftpars.cpp:727
void setTriakappa(double ak)
PA: Set trilinear SUSY breaking parameter akappa.
Definition: nmssmsoftpars.h:90
void universalTrilinears(double a0, const NmssmSusy &n)
Sets all NMSSM SUSY breaking trilinear couplings to a0.
Definition: nmssmsoftpars.cpp:738
void anomalousDeriv(DoubleMatrix &gEE, DoubleMatrix &gLL, DoubleMatrix &gQQ, DoubleMatrix &gUU, DoubleMatrix &gDD, double &gH1H1, double &gH2H2, double &gSS) const
void setTrialambda(double al)
PA: Set trilinear SUSY breaking parameter alambda.
Definition: nmssmsoftpars.h:88
NmssmSusy NMSSM SUSY couplings and tan beta. NmssmSusy contains all NMSSM SUSY couplings and tan beta...
Soft SUSY breaking parameters.
double displayXiS() const
Return xiS i.e .
Definition: nmssmsoftpars.h:75
void standardSugra(double m0, double m12, double a0, const NmssmSusyPars &n, const MssmSusy &m, const MssmSoftPars &msoft)
Definition: nmssmsoftpars.cpp:752
void semiuniversalTrilinears(double a0, double al, double ak, const NmssmSusy &n)
Definition: nmssmsoftpars.cpp:745
const SoftParsNmssm & operator=(const SoftParsNmssm &s)
Definition: nmssmsoftpars.cpp:525
double displayMspSquared() const
Return =mSpsq.
Definition: nmssmsoftpars.h:73
Soft SUSY breaking parameters and beta functions.
Definition: softpars.h:36
void display(DoubleVector &y, int &k) const
Whole object output in a doublevector.
Definition: nmssmsoftpars.cpp:536
void semiuniversalScalars(double m0)
PA: for semi constrained models.
Definition: nmssmsoftpars.cpp:733
double displaySoftAlambda(double lam) const
Definition: nmssmsoftpars.cpp:552
void setMsSquared(double f)
PA: Sets soft scalar mass .
Definition: nmssmsoftpars.h:92
double displaySoftAkappa(double ka) const
Definition: nmssmsoftpars.cpp:561