softsusy is hosted by Hepforge, IPPP Durham
Go to the documentation of this file.
15 #include <cmath>
16 #include "linalg.h"
17 #include "utils.h"
18 #include "numerics.h"
19 #include "nmssmsusy.h"
20 #include "softpars.h"
22 namespace softsusy {
26  const static int numSoftParsNmssm = 83 + numNMssmPars;
29  class SoftParsNmssm; class NmssmSoftsusy;
32  (nmsBrevity & a, const NmssmSusyPars & n, const MssmSusy & m,
33  const MssmSoftPars & msoft, const SoftParsNmssm & nsoft, DoubleVector & dmG,
34  double & dmH1sq, double & dmH2sq, double & dm3sq, double & dmSsq,
35  double & dmSpsq, double & dxiSsq, DoubleMatrix & dmq, DoubleMatrix & dmu,
36  DoubleMatrix & dmd, DoubleMatrix & dme, DoubleMatrix dml,
37  DoubleMatrix & dhu, DoubleMatrix & dhd, DoubleMatrix & dhe, double & dhlam,
38  double & dhkap);
42  class SoftParsNmssm {
44  private:
46  double alambda, akappa;
50  double mSsq, mSpsq, xiS;
54  bool Z3;
55  public:
58  : alambda(0.0), akappa(0.0), mSsq(0.0), mSpsq(0.0), xiS(0.0), Z3(true) {};
59  SoftParsNmssm(const SoftParsNmssm & s)
60  : alambda(s.displayTrialambda()), akappa(s.displayTriakappa()),
61  mSsq(s.displayMsSquared()), mSpsq(s.displayMspSquared()),
62  xiS(s.displayXiS()), Z3(s.Z3) {};
63  SoftParsNmssm(double al, double ak, double ms, double msp, double x)
64  : alambda(al), akappa(ak), mSsq(ms), mSpsq(msp), xiS(x), Z3(true) {}
65  const SoftParsNmssm & operator=(const SoftParsNmssm & s);
68  const SoftParsNmssm & displaySoftParsNmssm() const { return *this; }
69  //PA: Return trilinear soft mass $a_\lambda S H_u H_d$
70  double displayTrialambda() const { return alambda; };
71  //PA: Return trillinear soft mass $a_\kappa S S S$
72  double displayTriakappa() const { return akappa; };
74  double displayMsSquared() const { return mSsq; };
76  double displayMspSquared() const { return mSpsq; };
78  double displayXiS() const { return xiS; };
81  double displaySoftAlambda(double lam) const;
84  double displaySoftAkappa(double ka) const;
86  // const DoubleVector display(const NmssmSusy & n, const MssmSoftPars & s) const;
88  void display(DoubleVector & y, int & k) const;
89  bool displayZ3() const { return Z3; }
91  void setZ3(bool z) { Z3 = z; }
93  void setTrialambda(double al) { alambda = al; };
95  void setTriakappa(double ak) { akappa = ak; };
97  void setMsSquared(double f) { mSsq = f; };
99  void setMspSquared(double f) { mSpsq = f; };
101  void setXiS(double f) { xiS = f; };
102  void setSoftParsNmssm(SoftParsNmssm const & s) { *this = s; }
103  // void set(const DoubleVector &);
104  void set(const DoubleVector &, int & k);
109  void anomalousDeriv(DoubleMatrix & gEE, DoubleMatrix & gLL,
110  DoubleMatrix & gQQ, DoubleMatrix & gUU,
111  DoubleMatrix & gDD,
112  double & gH1H1, double & gH2H2, double & gSS) const;
115  void addAmsb(double maux, const NmssmSusy & Nms, MssmSoftPars & m);
118  void standardSugra(double m0, double m12, double a0,
119  const NmssmSusyPars & n, const MssmSusy & m,
120  const MssmSoftPars & msoft);
123  void standardsemiSugra(double m0, double m12, double a0, double Al,
124  double Ak, const NmssmSusy & n,
125  const MssmSoftPars & m, double mS=0.0);
127  void universalScalars(double m0);
130  void semiuniversalScalars(double m0);
132  void universalTrilinears(double a0, const NmssmSusy & n);
135  void semiuniversalTrilinears(double a0, double al, double ak,
136  const NmssmSusy & n);
139  void inputSoftParsOnly();
140  };
142  ostream & operator <<(ostream &left, const SoftParsNmssm &s);
143 } // namespace softsusy
145 #endif
global variable declaration
Definition: def.cpp:13
void inputSoftParsOnly()
Reads in soft SUSY breaking parameters from a file.
Definition: nmssmsoftpars.cpp:647
double a0(double m, double q)
inlined PV functions: real part
Definition: numerics.h:107
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:42
DoubleVector and DoubleMatrix classes of doubles and operations between them, complexified copies als...
double displayMsSquared() const
Return =mSsq.
Definition: nmssmsoftpars.h:74
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:621
void addAmsb(double maux, const NmssmSusy &Nms, MssmSoftPars &m)
adds NMSSM amsb contribution to soft masses.
Definition: nmssmsoftpars.cpp:546
Contains all supersymmetric RPC-MSSM parameters.
Definition: susy.h:71
void setMspSquared(double f)
PA: Sets soft scalar mass .
Definition: nmssmsoftpars.h:99
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.
Default constructor fills object with zeroes.
Definition: nmssmsoftpars.h:57
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:43
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:214
void setXiS(double f)
PA: Sets soft breaking .
Definition: nmssmsoftpars.h:101
void universalScalars(double m0)
Sets all flavour-diagonal SUSY breaking scalar masses to m0.
Definition: nmssmsoftpars.cpp:577
void setTriakappa(double ak)
PA: Set trilinear SUSY breaking parameter akappa.
Definition: nmssmsoftpars.h:95
void universalTrilinears(double a0, const NmssmSusy &n)
Sets all NMSSM SUSY breaking trilinear couplings to a0.
Definition: nmssmsoftpars.cpp:588
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:93
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:78
void standardSugra(double m0, double m12, double a0, const NmssmSusyPars &n, const MssmSusy &m, const MssmSoftPars &msoft)
Definition: nmssmsoftpars.cpp:602
void semiuniversalTrilinears(double a0, double al, double ak, const NmssmSusy &n)
Definition: nmssmsoftpars.cpp:595
const SoftParsNmssm & operator=(const SoftParsNmssm &s)
Definition: nmssmsoftpars.cpp:374
double displayMspSquared() const
Return =mSpsq.
Definition: nmssmsoftpars.h:76
Soft SUSY breaking parameters and beta functions.
Definition: softpars.h:31
void display(DoubleVector &y, int &k) const
Whole object output in a doublevector.
Definition: nmssmsoftpars.cpp:386
void semiuniversalScalars(double m0)
PA: for semi constrained models.
Definition: nmssmsoftpars.cpp:583
double displaySoftAlambda(double lam) const
Definition: nmssmsoftpars.cpp:402
void setMsSquared(double f)
PA: Sets soft scalar mass .
Definition: nmssmsoftpars.h:97
double displaySoftAkappa(double ka) const
Definition: nmssmsoftpars.cpp:411