herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
Herwig::SMHiggsWidthGenerator Class Reference

The SMHiggsWidthGenerator class calculates the width for the Standard Model Higgs boson. More...

#include <SMHiggsWidthGenerator.h>

Inheritance diagram for Herwig::SMHiggsWidthGenerator:

Public Member Functions

 SMHiggsWidthGenerator ()
 The default constructor.
 
- Public Member Functions inherited from Herwig::GenericWidthGenerator
 GenericWidthGenerator ()
 Default constructor.
 
void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently.
 
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently.
 
virtual bool accept (const ParticleData &part) const
 Return true if this width generator can handle the given particle type.
 
virtual void dataBaseOutput (ofstream &output, bool header=true)
 Output the initialisation info for the database.
 
virtual Length lifeTime (const ParticleData &, Energy m, Energy w) const
 Given a particle type and a mass and a width of an instance of that particle type, generate a life time.
 
- Public Member Functions inherited from ThePEG::WidthGenerator
virtual bool accept (const ParticleData &) const=0
 
Energy width (const Particle &) const
 
virtual Energy width (const ParticleData &, Energy m) const=0
 
virtual Length lifeTime (const ParticleData &, Energy m, Energy w) const
 
virtual DecayMap rate (const ParticleData &) const=0
 
virtual DecayMap rate (const Particle &)
 
- 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
 
- Public Member Functions inherited from ThePEG::InterfacedBase
string fullName () const
 
string name () const
 
string path () const
 
string comment () const
 
void setup (istream &is)
 
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
 
virtual IBPtr fullclone () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
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
 
virtual IBPtr fullclone () const
 
- Public Member Functions inherited from ThePEG::Base
void debug () const
 
virtual void debugme () 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
 

Protected Member Functions

Clone Methods.
virtual IBPtr clone () const
 Make a simple clone of this object.
 
virtual IBPtr fullclone () const
 Make a clone of this object, possibly modifying the cloned object to make it sane.
 
Routines to calculate Higgs width.
double HwDoubleBW (double x, double y) const
 Calculates the double Breit-Wigner Integral a-la FORTRAN HERWIG.
 
Complex HwW2 (double tau) const
 Calculate a loop function for the triangle vertex GGH/AAH.
 
DecayMap branching (Energy scale, const ParticleData &) const
 Return the branching ratios at the given scale.
 
- Protected Member Functions inherited from Herwig::GenericWidthGenerator
virtual void dofinish ()
 Finalize this object.
 
virtual void rebind (const TranslationMap &trans)
 Rebind pointer to other Interfaced objects.
 
virtual IVector getReferences ()
 Return a vector of all pointers to Interfaced objects used in this object.
 
int MEcode (int imode) const
 Matrix element code for a given mode.
 
double MEcoupling (int imode) const
 Coupling for a given mode.
 
Energy mass () const
 The on-shell mass of the particle.
 
bool initialize () const
 Access to the decay modes.
 
bool output () const
 Output option for use by the inheriting classes.
 
vector< tDMPtrdecayModes () const
 Access to the DecayModes.
 
Energy partial2BodyWidth (int iloc, Energy q) const
 The \(1\to2\) width for on-shell particles.
 
virtual Energy partial2BodyWidth (int iloc, Energy m0, Energy m1, Energy m2) const
 The \(1\to2\) width for outgoing particles which can be off-shell.
 
virtual void setupMode (tcDMPtr mode, tDecayIntegratorPtr decayer, unsigned int imode)
 Perform the set up for a mode in classes inheriting from this one.
 
tPDPtr particle () const
 Access to the particle dat for inheriting classes.
 
void particle (tPDPtr in)
 Set the particle.
 
- 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
virtual void readSetup (istream &is)
 
virtual void doupdate ()
 
virtual void doinit ()
 
virtual void doinitrun ()
 
virtual void dofinish ()
 
virtual IVector getReferences ()
 
virtual void rebind (const TranslationMap &)
 
virtual IBPtr clone () const=0
 
 InterfacedBase (string newName)
 
 InterfacedBase (const InterfacedBase &i)
 
virtual void readSetup (istream &is)
 
virtual void doupdate ()
 
virtual void doinit ()
 
virtual void doinitrun ()
 
virtual void dofinish ()
 
virtual IVector getReferences ()
 
virtual void rebind (const TranslationMap &)
 
- Protected Member Functions inherited from ThePEG::Pointer::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 Member Functions

Virtual functions to be overridden from based class
virtual Energy width (const ParticleData &, Energy m) const
 Given a particle type and a mass of an instance of that particle type, calculate a width.
 
virtual DecayMap rate (const ParticleData &) const
 Return decay map for the given particle type.
 
virtual DecayMap rate (const Particle &)
 Return a decay map for a given Particle instance.
 
virtual pair< Energy, Energy > width (Energy, const ParticleData &) const
 Return the total width and the sum of the partial widths for modes which are used.
 
Energy partialWidth (int imode, Energy mH) const
 Calculate the partial width for a given mode.
 

Standard Interfaced functions.

unsigned int widthopt_
 Type of the Higgs width used (options: fixed, LO running, NLL corrected running)
 
double offshell_
 Number of times the width the Higgs is allowed to be off-shell.
 
Energy mw_
 Particle properties extracted at initialization.
 
Energy mz_
 Mass of the Z boson.
 
Energy gamw_
 Width of the W boson.
 
Energy gamz_
 Width of the Z boson.
 
vector< Energy > qmass_
 Masses of the quarks.
 
vector< Energy > lmass_
 Masses of the leptons.
 
double sw2_
 \(\sin^2\theta_W\)
 
double ca_
 The \(C_A\) colour factor.
 
double cf_
 The \(C_F\) colour factor.
 
Energy qlast_
 Storage of parameters for speed.
 
Energy lambdaQCD_
 \(\Lambda_{\rm QCD}\)
 
double alphaEM_
 The electromagnetic coupling.
 
double alphaS_
 The strong coupling.
 
double cd_
 Correction factor for \(H\to q\bar{q}\).
 
Energy2 gfermiinv_
 Fermi constant.
 
double gam0_
 The anomalous dimension for \(H\to q\bar{q}\).
 
double beta0_
 The \(\beta\) function coefficient for \(H\to q\bar{q}\).
 
map< int, int > locMap_
 Map between location in decay modes vector and code here.
 
SMHiggsWidthGeneratoroperator= (const SMHiggsWidthGenerator &)=delete
 The assignment operator is private and must never be called.
 
virtual void doinit ()
 Initialize this object after the setup phase before saving an EventGenerator to disk.
 

Functions used by the persistent I/O system.

void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently.
 
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently.
 
static void Init ()
 The standard Init function used to initialize the interfaces.
 

Additional Inherited Members

- Public Types inherited from ThePEG::WidthGenerator
typedef Selector< tDMPtrDecayMap
 
- Public Types inherited from ThePEG::InterfacedBase
enum  InitState
 
- Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType
 
- Static Public Member Functions inherited from Herwig::GenericWidthGenerator
static void Init ()
 Standard Init function used to initialize the interfaces.
 
- Static Public Member Functions inherited from ThePEG::WidthGenerator
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 ()
 
- 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

The SMHiggsWidthGenerator class calculates the width for the Standard Model Higgs boson.

See also
The interfaces defined for SMHiggsWidthGenerator.

Definition at line 27 of file SMHiggsWidthGenerator.h.

Constructor & Destructor Documentation

◆ SMHiggsWidthGenerator()

Herwig::SMHiggsWidthGenerator::SMHiggsWidthGenerator ( )
inline

The default constructor.

Definition at line 34 of file SMHiggsWidthGenerator.h.

Member Function Documentation

◆ branching()

DecayMap Herwig::SMHiggsWidthGenerator::branching ( Energy  scale,
const ParticleData  
) const
protected

Return the branching ratios at the given scale.

Parameters
scaleThe off shell-mass of the Higgs

◆ clone()

virtual IBPtr Herwig::SMHiggsWidthGenerator::clone ( ) const
protectedvirtual

Make a simple clone of this object.

Returns
a pointer to the new object.

Reimplemented from Herwig::GenericWidthGenerator.

◆ doinit()

virtual void Herwig::SMHiggsWidthGenerator::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 Herwig::GenericWidthGenerator.

◆ fullclone()

virtual IBPtr Herwig::SMHiggsWidthGenerator::fullclone ( ) const
protectedvirtual

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

Returns
a pointer to the new object.

Reimplemented from Herwig::GenericWidthGenerator.

◆ HwDoubleBW()

double Herwig::SMHiggsWidthGenerator::HwDoubleBW ( double  x,
double  y 
) const
protected

Calculates the double Breit-Wigner Integral a-la FORTRAN HERWIG.

It is used in NLL corrected Higgs width for H->WW/ZZ, x = (M_V/M_H)^2, y=M_V*G_V/(M_H)^2, where M_V/G_V - V-boson mass/width

Returns
the integral value.

◆ HwW2()

Complex Herwig::SMHiggsWidthGenerator::HwW2 ( double  tau) const
protected

Calculate a loop function for the triangle vertex GGH/AAH.

Returns
the loop function value as a complex number

◆ Init()

static void Herwig::SMHiggsWidthGenerator::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.

◆ operator=()

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

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

◆ partialWidth()

Energy Herwig::SMHiggsWidthGenerator::partialWidth ( int  imode,
Energy  mH 
) const
privatevirtual

Calculate the partial width for a given mode.

Parameters
mHThe Higgs masses
imodeThe decay mode

Reimplemented from Herwig::GenericWidthGenerator.

◆ persistentInput()

void Herwig::SMHiggsWidthGenerator::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::SMHiggsWidthGenerator::persistentOutput ( PersistentOStream os) const

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

◆ rate() [1/2]

virtual DecayMap Herwig::SMHiggsWidthGenerator::rate ( const Particle )
privatevirtual

Return a decay map for a given Particle instance.

Reimplemented from Herwig::GenericWidthGenerator.

◆ rate() [2/2]

virtual DecayMap Herwig::SMHiggsWidthGenerator::rate ( const ParticleData ) const
privatevirtual

Return decay map for the given particle type.

Reimplemented from Herwig::GenericWidthGenerator.

◆ width() [1/2]

virtual Energy Herwig::SMHiggsWidthGenerator::width ( const ParticleData ,
Energy  m 
) const
privatevirtual

Given a particle type and a mass of an instance of that particle type, calculate a width.

Reimplemented from Herwig::GenericWidthGenerator.

◆ width() [2/2]

virtual pair< Energy, Energy > Herwig::SMHiggsWidthGenerator::width ( Energy  ,
const ParticleData  
) const
privatevirtual

Return the total width and the sum of the partial widths for modes which are used.

Reimplemented from Herwig::GenericWidthGenerator.

Member Data Documentation

◆ alphaEM_

double Herwig::SMHiggsWidthGenerator::alphaEM_
mutableprivate

The electromagnetic coupling.

Definition at line 243 of file SMHiggsWidthGenerator.h.

◆ alphaS_

double Herwig::SMHiggsWidthGenerator::alphaS_
mutableprivate

The strong coupling.

Definition at line 248 of file SMHiggsWidthGenerator.h.

◆ beta0_

double Herwig::SMHiggsWidthGenerator::beta0_
mutableprivate

The \(\beta\) function coefficient for \(H\to q\bar{q}\).

Definition at line 268 of file SMHiggsWidthGenerator.h.

◆ ca_

double Herwig::SMHiggsWidthGenerator::ca_
private

The \(C_A\) colour factor.

Definition at line 218 of file SMHiggsWidthGenerator.h.

◆ cd_

double Herwig::SMHiggsWidthGenerator::cd_
mutableprivate

Correction factor for \(H\to q\bar{q}\).

Definition at line 253 of file SMHiggsWidthGenerator.h.

◆ cf_

double Herwig::SMHiggsWidthGenerator::cf_
private

The \(C_F\) colour factor.

Definition at line 223 of file SMHiggsWidthGenerator.h.

◆ gam0_

double Herwig::SMHiggsWidthGenerator::gam0_
mutableprivate

The anomalous dimension for \(H\to q\bar{q}\).

Definition at line 263 of file SMHiggsWidthGenerator.h.

◆ gamw_

Energy Herwig::SMHiggsWidthGenerator::gamw_
private

Width of the W boson.

Definition at line 193 of file SMHiggsWidthGenerator.h.

◆ gamz_

Energy Herwig::SMHiggsWidthGenerator::gamz_
private

Width of the Z boson.

Definition at line 198 of file SMHiggsWidthGenerator.h.

◆ gfermiinv_

Energy2 Herwig::SMHiggsWidthGenerator::gfermiinv_
mutableprivate

Fermi constant.

Definition at line 258 of file SMHiggsWidthGenerator.h.

◆ lambdaQCD_

Energy Herwig::SMHiggsWidthGenerator::lambdaQCD_
mutableprivate

\(\Lambda_{\rm QCD}\)

Definition at line 238 of file SMHiggsWidthGenerator.h.

◆ lmass_

vector<Energy> Herwig::SMHiggsWidthGenerator::lmass_
private

Masses of the leptons.

Definition at line 208 of file SMHiggsWidthGenerator.h.

◆ locMap_

map<int,int> Herwig::SMHiggsWidthGenerator::locMap_
private

Map between location in decay modes vector and code here.

Definition at line 274 of file SMHiggsWidthGenerator.h.

◆ mw_

Energy Herwig::SMHiggsWidthGenerator::mw_
private

Particle properties extracted at initialization.

Mass of the W boson

Definition at line 183 of file SMHiggsWidthGenerator.h.

◆ mz_

Energy Herwig::SMHiggsWidthGenerator::mz_
private

Mass of the Z boson.

Definition at line 188 of file SMHiggsWidthGenerator.h.

◆ offshell_

double Herwig::SMHiggsWidthGenerator::offshell_
private

Number of times the width the Higgs is allowed to be off-shell.

Definition at line 174 of file SMHiggsWidthGenerator.h.

◆ qlast_

Energy Herwig::SMHiggsWidthGenerator::qlast_
mutableprivate

Storage of parameters for speed.

The last scale

Definition at line 233 of file SMHiggsWidthGenerator.h.

◆ qmass_

vector<Energy> Herwig::SMHiggsWidthGenerator::qmass_
private

Masses of the quarks.

Definition at line 203 of file SMHiggsWidthGenerator.h.

◆ sw2_

double Herwig::SMHiggsWidthGenerator::sw2_
private

\(\sin^2\theta_W\)

Definition at line 213 of file SMHiggsWidthGenerator.h.

◆ widthopt_

unsigned int Herwig::SMHiggsWidthGenerator::widthopt_
private

Type of the Higgs width used (options: fixed, LO running, NLL corrected running)

Definition at line 169 of file SMHiggsWidthGenerator.h.


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