herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Models
General
BSMWidthGenerator.h
1
// -*- C++ -*-
2
//
3
// BSMWidthGenerator.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_BSMWidthGenerator_H
10
#define HERWIG_BSMWidthGenerator_H
11
//
12
// This is the declaration of the BSMWidthGenerator class.
13
//
14
15
#include "Herwig/PDT/GenericWidthGenerator.h"
16
#include "Herwig/Decay/General/GeneralTwoBodyDecayer.fh"
17
#include "BSMWidthGenerator.fh"
18
19
namespace
Herwig
{
20
using namespace
ThePEG
;
21
30
class
BSMWidthGenerator
:
public
GenericWidthGenerator
{
31
32
public
:
33
37
BSMWidthGenerator
() :
theModes
(0) {}
38
45
void
persistentOutput
(
PersistentOStream
& os)
const
;
46
52
void
persistentInput
(
PersistentIStream
& is,
int
version);
54
61
static
void
Init
();
62
63
protected
:
64
71
virtual
void
setupMode
(
tcDMPtr
mode, tDecayIntegratorPtr decayer,
72
unsigned
int
imode);
73
82
virtual
Energy
partial2BodyWidth
(
int
iloc,Energy m0,Energy m1,Energy m2)
const
;
83
84
protected
:
85
92
virtual
IBPtr
clone
()
const
;
93
98
virtual
IBPtr
fullclone
()
const
;
100
101
private
:
102
107
BSMWidthGenerator
&
operator=
(
const
BSMWidthGenerator
&) =
delete
;
108
109
private
:
110
115
vector<pair<tcDMPtr, tcGeneralTwoBodyDecayerPtr> >
theModes
;
116
};
117
121
class
BSMWidthException
:
public
Exception
{};
122
123
}
124
125
#endif
/* HERWIG_BSMWidthGenerator_H */
Herwig::BSMWidthException
An exception class to report an error.
Definition:
BSMWidthGenerator.h:121
Herwig::BSMWidthGenerator
This class is designed to be able to calculate the running width for a BSM particle given the decay m...
Definition:
BSMWidthGenerator.h:30
Herwig::BSMWidthGenerator::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Herwig::BSMWidthGenerator::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Herwig::BSMWidthGenerator::setupMode
virtual void setupMode(tcDMPtr mode, tDecayIntegratorPtr decayer, unsigned int imode)
Perform the set up for a mode in classes inheriting from this one.
Herwig::BSMWidthGenerator::partial2BodyWidth
virtual Energy partial2BodyWidth(int iloc, Energy m0, Energy m1, Energy m2) const
The width for outgoing particles which can be off-shell.
Herwig::BSMWidthGenerator::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::BSMWidthGenerator::operator=
BSMWidthGenerator & operator=(const BSMWidthGenerator &)=delete
The assignment operator is private and must never be called.
Herwig::BSMWidthGenerator::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::BSMWidthGenerator::BSMWidthGenerator
BSMWidthGenerator()
The default constructor.
Definition:
BSMWidthGenerator.h:37
Herwig::BSMWidthGenerator::theModes
vector< pair< tcDMPtr, tcGeneralTwoBodyDecayerPtr > > theModes
A vector decay modes with their associated decayer cast to GeneralTwoBodyDecayer.
Definition:
BSMWidthGenerator.h:115
Herwig::BSMWidthGenerator::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::GenericWidthGenerator
The GenericWidthGenerator class is designed to automatically calculate the running width for a given ...
Definition:
GenericWidthGenerator.h:51
ThePEG::Exception
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::tcDMPtr
ThePEG::Ptr< DecayMode >::transient_const_pointer tcDMPtr
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6