herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
PDT
TwoBodyAllOnCalculator.h
1
// -*- C++ -*-
2
//
3
// TwoBodyAllOnCalculator.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_TwoBodyAllOnCalculator_H
10
#define HERWIG_TwoBodyAllOnCalculator_H
11
// This is the declaration of the TwoBodyAllOnCalculator class.
12
13
#include "WidthCalculatorBase.h"
14
#include "TwoBodyAllOnCalculator.fh"
15
#include "GenericWidthGenerator.h"
16
17
namespace
Herwig
{
18
using namespace
ThePEG
;
19
30
class
TwoBodyAllOnCalculator
:
public
WidthCalculatorBase
{
31
32
public
:
33
38
friend
class
GenericWidthGenerator
;
39
40
public
:
41
49
TwoBodyAllOnCalculator
(tGenericWidthGeneratorPtr inwidth,
int
imode,
50
Energy m1,Energy m2)
51
:
_mode
(imode),
_mass1
(m1),
_mass2
(m2),
_widthgen
(inwidth)
52
{}
53
59
Energy
partialWidth
(Energy2 scale)
const
;
60
68
void
resetMass
(
int
imass,Energy mass) {
69
if
(imass==1)
_mass1
=mass;
70
else
if
(imass==2)
_mass2
=mass;
71
else
throw
Exception
() <<
"Unknown particle in "
72
<<
"TwoBodyAllOnCalculator::resetMass()"
73
<<
Exception::runerror
;
74
}
75
82
Energy
getMass
(
const
int
imass)
const
{
83
if
(imass==1)
return
_mass1
;
84
else
if
(imass==2)
return
_mass2
;
85
else
throw
Exception
() <<
"Unknown particle in "
86
<<
"TwoBodyAllOnCalculator::getMass()"
87
<<
Exception::runerror
;
88
}
89
96
Energy
otherMass
(
const
int
imass)
const
{
97
if
(imass==1)
return
_mass2
;
98
else
if
(imass==2)
return
_mass1
;
99
else
throw
Exception
() <<
"Unknown particle in "
100
<<
"TwoBodyAllOnCalculator::otherMass()"
101
<<
Exception::runerror
;
102
}
103
104
private
:
105
109
TwoBodyAllOnCalculator
&
operator=
(
const
TwoBodyAllOnCalculator
&) =
delete
;
110
111
private
:
112
116
int
_mode
;
117
121
Energy
_mass1
;
122
126
Energy
_mass2
;
127
131
GenericWidthGeneratorPtr
_widthgen
;
132
133
};
134
135
}
136
137
#endif
/* HERWIG_TwoBodyAllOnCalculator_H */
Herwig::GenericWidthGenerator
The GenericWidthGenerator class is designed to automatically calculate the running width for a given ...
Definition:
GenericWidthGenerator.h:51
Herwig::TwoBodyAllOnCalculator
The TwoBodyAllOnCalculator class is a wrapped around the the simple two body decay matrix elements in...
Definition:
TwoBodyAllOnCalculator.h:30
Herwig::TwoBodyAllOnCalculator::_mass1
Energy _mass1
Mass of the first particle.
Definition:
TwoBodyAllOnCalculator.h:121
Herwig::TwoBodyAllOnCalculator::partialWidth
Energy partialWidth(Energy2 scale) const
member to calculate the partial width.
Herwig::TwoBodyAllOnCalculator::otherMass
Energy otherMass(const int imass) const
Get the masses of all bar the one specified.
Definition:
TwoBodyAllOnCalculator.h:96
Herwig::TwoBodyAllOnCalculator::TwoBodyAllOnCalculator
TwoBodyAllOnCalculator(tGenericWidthGeneratorPtr inwidth, int imode, Energy m1, Energy m2)
Constructor.
Definition:
TwoBodyAllOnCalculator.h:49
Herwig::TwoBodyAllOnCalculator::_widthgen
GenericWidthGeneratorPtr _widthgen
the width generator
Definition:
TwoBodyAllOnCalculator.h:131
Herwig::TwoBodyAllOnCalculator::_mode
int _mode
the mode
Definition:
TwoBodyAllOnCalculator.h:116
Herwig::TwoBodyAllOnCalculator::getMass
Energy getMass(const int imass) const
Get the mass of one of the decay products.
Definition:
TwoBodyAllOnCalculator.h:82
Herwig::TwoBodyAllOnCalculator::resetMass
void resetMass(int imass, Energy mass)
Get the mass of one of the decay products.
Definition:
TwoBodyAllOnCalculator.h:68
Herwig::TwoBodyAllOnCalculator::operator=
TwoBodyAllOnCalculator & operator=(const TwoBodyAllOnCalculator &)=delete
Private and non-existent assignment operator.
Herwig::TwoBodyAllOnCalculator::_mass2
Energy _mass2
Mass of the second particle.
Definition:
TwoBodyAllOnCalculator.h:126
Herwig::WidthCalculatorBase
The WidthCalculatorBase class is a base class to be used by classes which calculate partial widths fo...
Definition:
WidthCalculatorBase.h:29
ThePEG::Exception
ThePEG::Exception::runerror
runerror
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6