herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Models
Susy
MSSM.h
1
// -*- C++ -*-
2
//
3
// MSSM.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4
// Copyright (C) 2002-2019 The Herwig Collaboration
5
//
6
// Herwig is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef HERWIG_MSSM_H
10
#define HERWIG_MSSM_H
11
//
12
// This is the declaration of the MSSM class.
13
//
14
15
#include "SusyBase.h"
16
#include "MSSM.fh"
17
18
namespace
Herwig
{
19
20
using namespace
ThePEG
;
21
29
class
MSSM
:
public
SusyBase
{
30
31
public
:
32
36
MSSM
() :
createDiagonalMixing_
(false) {}
37
38
public
:
39
43
double
higgsMixingAngle
()
const
{
return
theAlpha
;}
44
48
const
complex<Energy> &
topTrilinear
()
const
{
return
theAtop
;}
49
53
const
complex<Energy> &
bottomTrilinear
()
const
{
return
theAbottom
;}
54
58
const
complex<Energy> &
tauTrilinear
()
const
{
return
theAtau
;}
59
63
const
MixingMatrixPtr &
stopMix
()
const
{
return
theStopMix
;}
64
68
const
MixingMatrixPtr &
sbottomMix
()
const
{
return
theSbotMix
;}
69
73
const
MixingMatrixPtr &
stauMix
()
const
{
return
theStauMix
;}
74
78
const
MixingMatrixPtr &
CPevenHiggsMix
()
const
{
return
theHiggsMix
;}
79
83
const
MixingMatrixPtr &
CPoddHiggsMix
()
const
{
84
return
HiggsAMix_
;
85
}
86
90
const
MixingMatrixPtr &
ChargedHiggsMix
()
const
{
91
return
HiggsPMix_
;
92
}
93
94
public
:
95
102
void
persistentOutput
(
PersistentOStream
& os)
const
;
103
109
void
persistentInput
(
PersistentIStream
& is,
int
version);
111
118
static
void
Init
();
119
120
protected
:
121
128
virtual
IBPtr
clone
()
const
{
return
new_ptr(*
this
);}
129
134
virtual
IBPtr
fullclone
()
const
{
return
new_ptr(*
this
);}
136
137
protected
:
138
142
virtual
void
createMixingMatrices
();
143
147
virtual
void
extractParameters
(
bool
checkModel=
true
);
148
153
virtual
void
adjustMixingMatrix
(
long
id
);
154
158
void
CPevenHiggsMix
(MixingMatrixPtr in) {
theHiggsMix
= in;}
159
163
void
CPoddHiggsMix
(MixingMatrixPtr in) {
HiggsAMix_
= in;}
164
168
void
ChargedHiggsMix
(MixingMatrixPtr in) {
HiggsPMix_
= in;}
169
173
void
stopMix
(MixingMatrixPtr in) {
theStopMix
=in;}
174
178
void
sbottomMix
(MixingMatrixPtr in) {
theSbotMix
= in;}
179
183
void
stauMix
(MixingMatrixPtr in) {
theStauMix
= in;}
184
188
void
higgsMixingAngle
(
double
in) {
theAlpha
= in;}
189
190
private
:
191
196
MSSM
&
operator=
(
const
MSSM
&) =
delete
;
197
198
private
:
199
207
MixingMatrixPtr
theStopMix
;
208
212
MixingMatrixPtr
theSbotMix
;
213
217
MixingMatrixPtr
theStauMix
;
219
228
complex<Energy>
theAtop
;
229
233
complex<Energy>
theAbottom
;
234
238
complex<Energy>
theAtau
;
240
244
double
theAlpha
;
245
253
MixingMatrixPtr
theHiggsMix
;
257
MixingMatrixPtr
HiggsAMix_
;
258
262
MixingMatrixPtr
HiggsPMix_
;
264
268
bool
createDiagonalMixing_
;
269
270
};
271
272
}
273
274
#endif
/* HERWIG_MSSM_H */
Herwig::MSSM
The MSSM class provides the main model class to replace the Standard Model when using the Minimal Sup...
Definition:
MSSM.h:29
Herwig::MSSM::higgsMixingAngle
void higgsMixingAngle(double in)
Value of Higgs mixing angle .
Definition:
MSSM.h:188
Herwig::MSSM::CPoddHiggsMix
const MixingMatrixPtr & CPoddHiggsMix() const
Mixing matrix for the neutral CP-odd Higgs bosons.
Definition:
MSSM.h:83
Herwig::MSSM::CPevenHiggsMix
void CPevenHiggsMix(MixingMatrixPtr in)
Mixing matrix for the neutral CP-even Higgs bosons.
Definition:
MSSM.h:158
Herwig::MSSM::adjustMixingMatrix
virtual void adjustMixingMatrix(long id)
Adjust row of Mixing Matrix if a negative mass occurs in LHA file.
Herwig::MSSM::bottomTrilinear
const complex< Energy > & bottomTrilinear() const
Value of down-type trilinear couplings.
Definition:
MSSM.h:53
Herwig::MSSM::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::MSSM::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Definition:
MSSM.h:128
Herwig::MSSM::stauMix
void stauMix(MixingMatrixPtr in)
The stau mixing matrix.
Definition:
MSSM.h:183
Herwig::MSSM::sbottomMix
void sbottomMix(MixingMatrixPtr in)
The sbottom chargino mixing matrix.
Definition:
MSSM.h:178
Herwig::MSSM::stopMix
const MixingMatrixPtr & stopMix() const
The stop mixing matrix.
Definition:
MSSM.h:63
Herwig::MSSM::theSbotMix
MixingMatrixPtr theSbotMix
The mixing matrix.
Definition:
MSSM.h:212
Herwig::MSSM::topTrilinear
const complex< Energy > & topTrilinear() const
Value of up-type trilinear couplings.
Definition:
MSSM.h:48
Herwig::MSSM::tauTrilinear
const complex< Energy > & tauTrilinear() const
Value of lepton trilinear couplings.
Definition:
MSSM.h:58
Herwig::MSSM::theStopMix
MixingMatrixPtr theStopMix
Third generation squark and slepton mixing matrices.
Definition:
MSSM.h:207
Herwig::MSSM::stopMix
void stopMix(MixingMatrixPtr in)
Set the stop mixing matrix.
Definition:
MSSM.h:173
Herwig::MSSM::theAtop
complex< Energy > theAtop
Trilinear couplings stored as vector of complex numbers to make use of routine already available to r...
Definition:
MSSM.h:228
Herwig::MSSM::HiggsAMix_
MixingMatrixPtr HiggsAMix_
Pseudoscalar Higgs mixing.
Definition:
MSSM.h:257
Herwig::MSSM::CPoddHiggsMix
void CPoddHiggsMix(MixingMatrixPtr in)
Mixing matrix for the neutral CP-odd Higgs bosons.
Definition:
MSSM.h:163
Herwig::MSSM::CPevenHiggsMix
const MixingMatrixPtr & CPevenHiggsMix() const
Mixing matrix for the neutral CP-even Higgs bosons.
Definition:
MSSM.h:78
Herwig::MSSM::theAtau
complex< Energy > theAtau
For the charged sleptons.
Definition:
MSSM.h:238
Herwig::MSSM::extractParameters
virtual void extractParameters(bool checkModel=true)
Extract the parameters from the input blocks.
Herwig::MSSM::theStauMix
MixingMatrixPtr theStauMix
The mixing matrix.
Definition:
MSSM.h:217
Herwig::MSSM::MSSM
MSSM()
Default constructor.
Definition:
MSSM.h:36
Herwig::MSSM::HiggsPMix_
MixingMatrixPtr HiggsPMix_
Charged Higgs mixing.
Definition:
MSSM.h:262
Herwig::MSSM::theAbottom
complex< Energy > theAbottom
For the down type squarks.
Definition:
MSSM.h:233
Herwig::MSSM::ChargedHiggsMix
const MixingMatrixPtr & ChargedHiggsMix() const
Mixing matrix for the charged Higgs bosons.
Definition:
MSSM.h:90
Herwig::MSSM::ChargedHiggsMix
void ChargedHiggsMix(MixingMatrixPtr in)
Mixing matrix for the charged Higgs bosons.
Definition:
MSSM.h:168
Herwig::MSSM::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition:
MSSM.h:134
Herwig::MSSM::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::MSSM::operator=
MSSM & operator=(const MSSM &)=delete
The assignment operator is private and must never be called.
Herwig::MSSM::theAlpha
double theAlpha
Value of higgs mixing angle.
Definition:
MSSM.h:244
Herwig::MSSM::higgsMixingAngle
double higgsMixingAngle() const
Value of Higgs mixing angle .
Definition:
MSSM.h:43
Herwig::MSSM::stauMix
const MixingMatrixPtr & stauMix() const
The stau mixing matrix.
Definition:
MSSM.h:73
Herwig::MSSM::sbottomMix
const MixingMatrixPtr & sbottomMix() const
The sbottom chargino mixing matrix.
Definition:
MSSM.h:68
Herwig::MSSM::createMixingMatrices
virtual void createMixingMatrices()
Create the mixing matrices for the model.
Herwig::MSSM::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::MSSM::createDiagonalMixing_
bool createDiagonalMixing_
Create diagonal the stop, bottom and stau mixing matrices if needed.
Definition:
MSSM.h:268
Herwig::MSSM::theHiggsMix
MixingMatrixPtr theHiggsMix
Higgs boson mixing matrices.
Definition:
MSSM.h:253
Herwig::SusyBase
This class is designed to be a base class for SUSY models.
Definition:
SusyBase.h:51
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6