herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
Herwig::SSHSFSFVertex Class Reference

This is the implementation of the coupling for a Higgs in the MSSM to a pair of sfermions. More...

#include <SSHSFSFVertex.h>

Inheritance diagram for Herwig::SSHSFSFVertex:

Public Member Functions

 SSHSFSFVertex ()
 The default constructor.
 
void setCoupling (Energy2 q2, tcPDPtr particle1, tcPDPtr particle2, tcPDPtr particle3)
 Calculate the coupling at the given scale. More...
 
Functions used by the persistent I/O system.
void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently. More...
 
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently. More...
 
- Public Member Functions inherited from ThePEG::Helicity::SSSVertex
Complex evaluate (Energy2 q2, const ScalarWaveFunction &sca1, const ScalarWaveFunction &sca2, const ScalarWaveFunction &sca3)
 
ScalarWaveFunction evaluate (Energy2 q2, int iopt, tcPDPtr out, const ScalarWaveFunction &sca1, const ScalarWaveFunction &sca2, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
 
virtual void setCoupling (Energy2, tcPDPtr, tcPDPtr, tcPDPtr, tcPDPtr)
 
Complex evaluate (Energy2 q2, const ScalarWaveFunction &sca1, const ScalarWaveFunction &sca2, const ScalarWaveFunction &sca3)
 
ScalarWaveFunction evaluate (Energy2 q2, int iopt, tcPDPtr out, const ScalarWaveFunction &sca1, const ScalarWaveFunction &sca2, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
 
virtual void setCoupling (Energy2, tcPDPtr, tcPDPtr, tcPDPtr, tcPDPtr)
 
- Public Member Functions inherited from ThePEG::Helicity::VertexBase
 VertexBase (VertexType::T name, bool kine=false)
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
unsigned int size () const
 
bool isIncoming (tPDPtr p) const
 
bool isOutgoing (tPDPtr p) const
 
const set< tPDPtr > & incoming () const
 
const set< tPDPtr > & outgoing () const
 
Complex norm () const
 
vector< long > search (unsigned int ilist, long id) const
 
vector< tPDPtrsearch (unsigned int ilist, tcPDPtr id) const
 
bool allowed (long id1, long id2, long id3, long id4=0) const
 
VertexType::T getName () const
 
unsigned int getNpoint () const
 
int orderInGem () const
 
int orderInGs () const
 
int orderInCoupling (CouplingType::T cType) const
 
int orderInAllCouplings () const
 
ColourStructure::T colourStructure () const
 
double strongCoupling (Energy2 q2) const
 
double electroMagneticCoupling (Energy2 q2) const
 
double weakCoupling (Energy2 q2) const
 
bool kinematics () const
 
void kinematics (bool kine)
 
void calculateKinematics (const Lorentz5Momentum &p0, const Lorentz5Momentum &p1, const Lorentz5Momentum &p2)
 
void calculateKinematics (const Lorentz5Momentum &p0, const Lorentz5Momentum &p1, const Lorentz5Momentum &p2, const Lorentz5Momentum &p3)
 
void calculateKinematics (const vector< Lorentz5Momentum > &p)
 
Energy2 invariant (unsigned int ix, unsigned int iy) const
 
 VertexBase (VertexType::T name, bool kine=false)
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
unsigned int size () const
 
bool isIncoming (tPDPtr p) const
 
bool isOutgoing (tPDPtr p) const
 
const set< tPDPtr > & incoming () const
 
const set< tPDPtr > & outgoing () const
 
Complex norm () const
 
vector< long > search (unsigned int ilist, long id) const
 
vector< tPDPtrsearch (unsigned int ilist, tcPDPtr id) const
 
bool allowed (long id1, long id2, long id3, long id4=0) const
 
VertexType::T getName () const
 
unsigned int getNpoint () const
 
int orderInGem () const
 
int orderInGs () const
 
int orderInCoupling (CouplingType::T cType) const
 
int orderInAllCouplings () const
 
ColourStructure::T colourStructure () const
 
double strongCoupling (Energy2 q2) const
 
double electroMagneticCoupling (Energy2 q2) const
 
double weakCoupling (Energy2 q2) const
 
bool kinematics () const
 
void kinematics (bool kine)
 
void calculateKinematics (const Lorentz5Momentum &p0, const Lorentz5Momentum &p1, const Lorentz5Momentum &p2)
 
void calculateKinematics (const Lorentz5Momentum &p0, const Lorentz5Momentum &p1, const Lorentz5Momentum &p2, const Lorentz5Momentum &p3)
 
void calculateKinematics (const vector< Lorentz5Momentum > &p)
 
Energy2 invariant (unsigned int ix, unsigned int iy) const
 
- Public Member Functions inherited from ThePEG::Interfaced
virtual bool defaultInit ()
 
PPtr getParticle (PID) const
 
PDPtr getParticleData (PID) const
 
bool used () const
 
void useMe () const
 
tEGPtr generator () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
PPtr getParticle (PID) const
 
PDPtr getParticleData (PID) const
 
bool used () const
 
void useMe () const
 
tEGPtr generator () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
- Public Member Functions inherited from ThePEG::InterfacedBase
string fullName () const
 
string name () const
 
string path () const
 
string comment () const
 
void setup (istream &is)
 
virtual void debugme () const
 
void update ()
 
void init ()
 
virtual bool preInitialize () const
 
void initrun ()
 
void finish ()
 
void touch ()
 
void reset ()
 
void clear ()
 
InitState state () const
 
bool locked () const
 
bool touched () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
void update ()
 
void init ()
 
virtual bool preInitialize () const
 
void initrun ()
 
void finish ()
 
void touch ()
 
void reset ()
 
void clear ()
 
InitState state () const
 
bool locked () const
 
bool touched () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
- Public Member Functions inherited from ThePEG::Base
void debug () const
 
- Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted
CounterType referenceCount () const
 
- Public Member Functions inherited from ThePEG::Named
 Named (const string &newName=string())
 
 Named (const Named &)=default
 
const string & name () const
 
bool operator== (const Named &other) const
 
bool operator< (const Named &other) const
 

Static Public Member Functions

static void Init ()
 The standard Init function used to initialize the interfaces. More...
 
- Static Public Member Functions inherited from ThePEG::Helicity::SSSVertex
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::Helicity::AbstractSSSVertex
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::Helicity::VertexBase
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::Interfaced
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::InterfacedBase
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::Base
static void Init ()
 

Protected Member Functions

Clone Methods.
virtual IBPtr clone () const
 Make a simple clone of this object. More...
 
virtual IBPtr fullclone () const
 Make a clone of this object, possibly modifying the cloned object to make it sane. More...
 
Standard Interfaced functions.
virtual void doinit ()
 Initialize this object after the setup phase before saving an EventGenerator to disk. More...
 
- Protected Member Functions inherited from ThePEG::Helicity::VertexBase
void orderInGem (int order)
 
void orderInGs (int order)
 
void orderInCoupling (CouplingType::T cType, int order)
 
void colourStructure (ColourStructure::T structure)
 
virtual void rebind (const TranslationMap &trans)
 
virtual IVector getReferences ()
 
void addToList (const vector< long > &ids)
 
void addToList (long ida, long idb, long idc, long idd=0)
 
void norm (const Complex &coup)
 
virtual Complex propagator (int iopt, Energy2 q2, tcPDPtr part, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
 
Complex normPropagator (int iopt, Energy2 q2, tcPDPtr part, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
 
virtual void rebind (const TranslationMap &trans)
 
virtual IVector getReferences ()
 
void addToList (const vector< long > &ids)
 
void addToList (long ida, long idb, long idc, long idd=0)
 
void norm (const Complex &coup)
 
virtual Complex propagator (int iopt, Energy2 q2, tcPDPtr part, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
 
Complex normPropagator (int iopt, Energy2 q2, tcPDPtr part, complex< Energy > mass=-GeV, complex< Energy > width=-GeV)
 
- Protected Member Functions inherited from ThePEG::Interfaced
void reporeg (IBPtr object, string name) const
 
bool setDefaultReference (PtrT &ptr, string classname, string objectname)
 
 Interfaced (const string &newName)
 
 Interfaced (const Interfaced &i)
 
void setGenerator (tEGPtr generator)
 
- Protected Member Functions inherited from ThePEG::InterfacedBase
 InterfacedBase (string newName)
 
 InterfacedBase (const InterfacedBase &i)
 
virtual void readSetup (istream &is)
 
virtual void doupdate ()
 
virtual void doinitrun ()
 
virtual void dofinish ()
 
virtual void readSetup (istream &is)
 
virtual void doupdate ()
 
virtual void doinitrun ()
 
virtual void dofinish ()
 
- Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
- Protected Member Functions inherited from ThePEG::Named
const Namedoperator= (const Named &other)
 
const string & name (const string &newName)
 

Private Types

typedef vector< MixingMatrixPtr > MMPVector
 A vector of MixingMatrix pointers. More...
 

Private Member Functions

SSHSFSFVertexoperator= (const SSHSFSFVertex &)=delete
 The assignment operator is private and must never be called. More...
 
Functions to calculate the coupling based on the sfermion type.
void downSF (Energy2 q2, long higgs, long smID, unsigned int alpha, unsigned int beta)
 Calculate the coupling for the first higgs. More...
 
void upSF (Energy2 q2, long higgs, long smID, unsigned int alpha, unsigned int beta)
 Calculate the coupling for the second higgs. More...
 
void leptonSF (Energy2 q2, long higgs, long smID, unsigned int alpha, unsigned int beta)
 Calculate the coupling for the third higgs. More...
 
void chargedHiggs (Energy2 q2, long id1, long id2)
 Calculate the coupling for the charged higgs. More...
 

Private Attributes

MMPVector theMix
 A vector containing pointers to the mixing matrices, 0 = stop, 1 = sbottom, 2 = stau.
 
vector< complex< Energy > > theTriC
 A vector containing the trilinear couplings, quarks then leptons.
 
double theSinA
 The value of $\sin\alpha$.
 
double theCosA
 The value of $\cos\alpha$.
 
double theSinB
 The value of $\sin\beta$.
 
double theCosB
 The value of $\cos\beta$.
 
double theTanB
 The value of $\tan\beta$.
 
double theSinAB
 The value of $\sin(\alpha + \beta)$.
 
double theCosAB
 The value of $\cos(\alpha + \beta)$.
 
Energy theMw
 The mass of the $W$.
 
Energy theMz
 The mass of the $Z$.
 
Energy theMu
 The $\mu$ parameter.
 
double theSw
 The value of $\sin\theta_W$.
 
double theCw
 The value of $\cos\theta_W$.
 
complex< Energy > theCoupLast
 The value of the coupling when it was last evaluated.
 
Energy2 theq2Last
 The scale at which the coupling was last evaluated.
 
double thegLast
 The value of g coupling when it was last evaluated.
 
long theHLast
 The ID of the higgs when the vertex was last evaluated.
 
long theSF1Last
 The ID of the first sfermion when the vertex was last evaluated.
 
long theSF2Last
 The ID of the second sfermion when the vertex was last evaluated.
 
tMSSMPtr theMSSM
 The Model.
 

Additional Inherited Members

- Public Types inherited from ThePEG::InterfacedBase
enum  InitState
 
- Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType
 
- Public Attributes inherited from ThePEG::InterfacedBase
 initializing
 
 uninitialized
 
 initialized
 
 runready
 
- Public Attributes inherited from ThePEG::Pointer::ReferenceCounted
const unsigned long uniqueId
 
- Static Protected Member Functions inherited from ThePEG::Interfaced
static void registerRepository (IBPtr)
 
static void registerRepository (IBPtr, string newName)
 

Detailed Description

This is the implementation of the coupling for a Higgs in the MSSM to a pair of sfermions.

See also
The interfaces defined for SSHSFSFVertex.

Definition at line 28 of file SSHSFSFVertex.h.

Member Typedef Documentation

◆ MMPVector

typedef vector<MixingMatrixPtr> Herwig::SSHSFSFVertex::MMPVector
private

A vector of MixingMatrix pointers.

Definition at line 31 of file SSHSFSFVertex.h.

Member Function Documentation

◆ chargedHiggs()

void Herwig::SSHSFSFVertex::chargedHiggs ( Energy2  q2,
long  id1,
long  id2 
)
private

Calculate the coupling for the charged higgs.

Parameters
q2scale
id1The ID of the first sfermion
id2The ID of the second sfermion

◆ clone()

virtual IBPtr Herwig::SSHSFSFVertex::clone ( ) const
inlineprotectedvirtual

Make a simple clone of this object.

Returns
a pointer to the new object.

Implements ThePEG::InterfacedBase.

Definition at line 83 of file SSHSFSFVertex.h.

◆ doinit()

virtual void Herwig::SSHSFSFVertex::doinit ( )
protectedvirtual

Initialize this object after the setup phase before saving an EventGenerator to disk.

Exceptions
InitExceptionif object could not be initialized properly.

Reimplemented from ThePEG::Helicity::VertexBase.

◆ downSF()

void Herwig::SSHSFSFVertex::downSF ( Energy2  q2,
long  higgs,
long  smID,
unsigned int  alpha,
unsigned int  beta 
)
private

Calculate the coupling for the first higgs.

Parameters
q2scale
higgsThe ID of the higgs
smIDThe ID of the SM particle to which it is a partner.
alphaThe mass eigenstate of an sfermion
betaThe mass eigenstate of the other sfermion

◆ fullclone()

virtual IBPtr Herwig::SSHSFSFVertex::fullclone ( ) const
inlineprotectedvirtual

Make a clone of this object, possibly modifying the cloned object to make it sane.

Returns
a pointer to the new object.

Reimplemented from ThePEG::InterfacedBase.

Definition at line 89 of file SSHSFSFVertex.h.

◆ Init()

static void Herwig::SSHSFSFVertex::Init ( )
static

The standard Init function used to initialize the interfaces.

Called exactly once for each class by the class description system before the main function starts or when this class is dynamically loaded.

◆ leptonSF()

void Herwig::SSHSFSFVertex::leptonSF ( Energy2  q2,
long  higgs,
long  smID,
unsigned int  alpha,
unsigned int  beta 
)
private

Calculate the coupling for the third higgs.

Parameters
q2scale
higgsThe ID of the higgs
smIDThe ID of the SM particle to which it is a partner.
alphaThe mass eigenstate of an sfermion
betaThe mass eigenstate of the other sfermion

◆ operator=()

SSHSFSFVertex& Herwig::SSHSFSFVertex::operator= ( const SSHSFSFVertex )
privatedelete

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

◆ persistentInput()

void Herwig::SSHSFSFVertex::persistentInput ( PersistentIStream is,
int  version 
)

Function used to read in object persistently.

Parameters
isthe persistent input stream read from.
versionthe version number of the object when written.

◆ persistentOutput()

void Herwig::SSHSFSFVertex::persistentOutput ( PersistentOStream os) const

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

◆ setCoupling()

void Herwig::SSHSFSFVertex::setCoupling ( Energy2  q2,
tcPDPtr  particle1,
tcPDPtr  particle2,
tcPDPtr  particle3 
)
virtual

Calculate the coupling at the given scale.

Parameters
q2The scale at which to evaluate the coupling
particle1The first particle at the vertex
particle2The second particle at the vertex
particle3The third particle at the vertex

Implements ThePEG::Helicity::SSSVertex.

◆ upSF()

void Herwig::SSHSFSFVertex::upSF ( Energy2  q2,
long  higgs,
long  smID,
unsigned int  alpha,
unsigned int  beta 
)
private

Calculate the coupling for the second higgs.

Parameters
q2scale
higgsThe ID of the higgs
smIDThe ID of the SM particle to which it is a partner.
alphaThe mass eigenstate of an sfermion
betaThe mass eigenstate of the other sfermion

The documentation for this class was generated from the following file: