Herwig 7.3.0
|
Here is the documentation of the MEMultiChannel class. More...
#include <MEMultiChannel.h>
Public Member Functions | |
MEMultiChannel () | |
The default constructor. | |
virtual | ~MEMultiChannel () |
The destructor. | |
![]() | |
virtual unsigned int | orderInAlphaS () const=0 |
virtual unsigned int | orderInAlphaEW () const=0 |
virtual double | me2 () const=0 |
virtual Energy2 | scale () const=0 |
virtual double | alphaS () const |
virtual double | alphaEM () const |
void | setKinematics (tPPair in, const PVector &out) |
virtual void | setKinematics () |
virtual void | constructVertex (tSubProPtr sub) |
virtual void | constructVertex (tSubProPtr sub, const ColourLines *cl) |
virtual int | nDim () const |
virtual bool | generateKinematics (const double *r)=0 |
virtual bool | wantCMS () const |
virtual bool | headCuts () const |
virtual bool | ignoreCuts () const |
virtual bool | apply () const |
virtual CrossSection | dSigHatDR () const=0 |
virtual map< string, double > | generateOptionalWeights () |
virtual bool | haveX1X2 () const |
virtual bool | havePDFWeight1 () const |
virtual bool | havePDFWeight2 () const |
virtual bool | keepRandomNumbers () const |
virtual void | generateSubCollision (SubProcess &) |
virtual void | clearKinematics () |
virtual void | getDiagrams () const=0 |
virtual bool | noMirror () const |
const DiagramVector & | diagrams () const |
virtual Selector< const ColourLines * > | colourGeometries (tcDiagPtr diag) const=0 |
virtual const ColourLines & | selectColourGeometry (tcDiagPtr diag) const |
virtual Selector< DiagramIndex > | diagrams (const DiagramVector &) const |
virtual DiagramIndex | diagram (const DiagramVector &) const |
bool | reweighted () const |
double | reWeight () const |
double | preWeight () const |
void | addReweighter (tReweightPtr rw) |
void | addPreweighter (tReweightPtr rw) |
Ptr< Amplitude >::pointer | amplitude () const |
void | amplitude (Ptr< Amplitude >::pointer amp) |
Energy2 | sHat () const |
double | preweight () const |
virtual void | flushCaches () |
virtual StdXCombPtr | makeXComb (Energy newMaxEnergy, const cPDPair &inc, tEHPtr newEventHandler, tSubHdlPtr newSubProcessHandler, tPExtrPtr newExtractor, tCascHdlPtr newCKKW, const PBPair &newPartonBins, tCutsPtr newCuts, const DiagramVector &newDiagrams, bool mir, const PartonPairVec &allPBins, tStdXCombPtr newHead=tStdXCombPtr(), tMEPtr newME=tMEPtr()) |
virtual StdXCombPtr | makeXComb (tStdXCombPtr newHead, const PBPair &newPartonBins, const DiagramVector &newDiagrams, tMEPtr newME=tMEPtr()) |
virtual void | fillProjectors () |
virtual void | setXComb (tStdXCombPtr) |
const DVector & | meInfo () const |
void | meInfo (const DVector &info) const |
virtual int | maxMultCKKW () const |
virtual int | minMultCKKW () const |
virtual void | maxMultCKKW (int mult) |
virtual void | minMultCKKW (int mult) |
virtual void | setVetoScales (tSubProPtr) const |
virtual unsigned int | orderInAlphaS () const=0 |
virtual unsigned int | orderInAlphaEW () const=0 |
virtual double | me2 () const=0 |
virtual Energy2 | scale () const=0 |
virtual double | alphaS () const |
virtual double | alphaEM () const |
void | setKinematics (tPPair in, const PVector &out) |
virtual void | setKinematics () |
virtual void | constructVertex (tSubProPtr sub) |
virtual void | constructVertex (tSubProPtr sub, const ColourLines *cl) |
virtual int | nDim () const |
virtual bool | generateKinematics (const double *r)=0 |
virtual bool | wantCMS () const |
virtual bool | headCuts () const |
virtual bool | ignoreCuts () const |
virtual bool | apply () const |
virtual CrossSection | dSigHatDR () const=0 |
virtual map< string, double > | generateOptionalWeights () |
virtual bool | haveX1X2 () const |
virtual bool | havePDFWeight1 () const |
virtual bool | havePDFWeight2 () const |
virtual bool | keepRandomNumbers () const |
virtual void | generateSubCollision (SubProcess &) |
virtual void | clearKinematics () |
virtual void | getDiagrams () const=0 |
virtual bool | noMirror () const |
const DiagramVector & | diagrams () const |
virtual Selector< const ColourLines * > | colourGeometries (tcDiagPtr diag) const=0 |
virtual const ColourLines & | selectColourGeometry (tcDiagPtr diag) const |
virtual Selector< DiagramIndex > | diagrams (const DiagramVector &) const |
virtual DiagramIndex | diagram (const DiagramVector &) const |
bool | reweighted () const |
double | reWeight () const |
double | preWeight () const |
void | addReweighter (tReweightPtr rw) |
void | addPreweighter (tReweightPtr rw) |
Ptr< Amplitude >::pointer | amplitude () const |
void | amplitude (Ptr< Amplitude >::pointer amp) |
Energy2 | sHat () const |
double | preweight () const |
virtual void | flushCaches () |
virtual StdXCombPtr | makeXComb (Energy newMaxEnergy, const cPDPair &inc, tEHPtr newEventHandler, tSubHdlPtr newSubProcessHandler, tPExtrPtr newExtractor, tCascHdlPtr newCKKW, const PBPair &newPartonBins, tCutsPtr newCuts, const DiagramVector &newDiagrams, bool mir, const PartonPairVec &allPBins, tStdXCombPtr newHead=tStdXCombPtr(), tMEPtr newME=tMEPtr()) |
virtual StdXCombPtr | makeXComb (tStdXCombPtr newHead, const PBPair &newPartonBins, const DiagramVector &newDiagrams, tMEPtr newME=tMEPtr()) |
virtual void | fillProjectors () |
virtual void | setXComb (tStdXCombPtr) |
const DVector & | meInfo () const |
void | meInfo (const DVector &info) const |
virtual int | maxMultCKKW () const |
virtual int | minMultCKKW () const |
virtual void | maxMultCKKW (int mult) |
virtual void | minMultCKKW (int mult) |
virtual void | setVetoScales (tSubProPtr) const |
void | persistentOutput (PersistentOStream &os) const |
void | persistentInput (PersistentIStream &is, int version) |
![]() | |
double | rnd () const |
double | rnd (double xu) const |
double | rnd (double xl, double xu) const |
bool | rndbool () const |
bool | rndbool (double p) const |
bool | rndbool (double p1, double p2) const |
int | rndsign (double p1, double p2, double p3) const |
int | rnd2 (double p0, double p1) const |
int | rnd3 (double p0, double p1, double p2) const |
int | rnd4 (double p0, double p1, double p2, double p3) const |
long | irnd (long xu=2) const |
long | irnd (long xl, long xu) const |
const StandardModelBase & | SM () const |
tSMPtr | standardModel () const |
![]() | |
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 |
![]() | |
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 |
![]() | |
void | debug () const |
virtual void | debugme () const |
![]() | |
CounterType | referenceCount () const |
![]() | |
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 |
![]() | |
const XC & | lastXComb () const |
const XC & | lastXComb () const |
tXCPtr | lastXCombPtr () const |
tXCPtr | lastXCombPtr () const |
const XC & | lastHeadXComb () const |
const XC & | lastHeadXComb () const |
tXCPtr | lastHeadXCombPtr () const |
tXCPtr | lastHeadXCombPtr () const |
const EventHandler & | lastEventHandler () const |
const EventHandler & | lastEventHandler () const |
tPExtrPtr | lastExtractor () const |
tPExtrPtr | lastExtractor () const |
PDFT | pdf (tcPPtr parton) const |
PDFT | pdf (tcPPtr parton) const |
const Cuts & | lastCuts () const |
const Cuts & | lastCuts () const |
tCutsPtr | lastCutsPtr () const |
tCutsPtr | lastCutsPtr () const |
const PPair & | lastParticles () const |
const PPair & | lastParticles () const |
Energy2 | lastS () const |
Energy2 | lastS () const |
const PPair & | lastPartons () const |
const PPair & | lastPartons () const |
Energy2 | lastSHat () const |
Energy2 | lastSHat () const |
double | lastTau () const |
double | lastTau () const |
double | lastY () const |
double | lastY () const |
double | lastP1 () const |
double | lastP1 () const |
double | lastP2 () const |
double | lastP2 () const |
double | lastL1 () const |
double | lastL1 () const |
double | lastL2 () const |
double | lastL2 () const |
double | lastX1 () const |
double | lastX1 () const |
double | lastX2 () const |
double | lastX2 () const |
double | lastE1 () const |
double | lastE1 () const |
double | lastE2 () const |
double | lastE2 () const |
double | lastFL1L2 () const |
double | lastFL1L2 () const |
Energy2 | lastScale () const |
double | lastAlphaS () const |
double | lastAlphaEM () const |
const vector< Lorentz5Momentum > & | meMomenta () const |
double | lastME2 () const |
double | lastPreweight () const |
double | jacobian () const |
CrossSection | lastMECrossSection () const |
double | lastMEPDFWeight () const |
double | lastMECouplings () const |
tSubProPtr | subProcess () const |
const cPDVector & | mePartonData () const |
Standard Interfaced functions. | |
vector< PhaseSpaceModePtr > | modes_ |
The phase-space modes. | |
vector< map< int, int > > | channelMap_ |
Map from the phase space channels to the modes. | |
unsigned int | iMode_ |
The mode currently begining used. | |
virtual void | doinit () |
Initialize this object after the setup phase before saving an EventGenerator to disk. | |
virtual void | doinitrun () |
Initialize this object. | |
virtual double | me2 (const int ichan) const =0 |
Return the matrix element squared for a given mode and phase-space channel. | |
unsigned int | iMode () |
Access the mode currently being used. | |
void | iMode (unsigned int in) const |
Set the mode currently begining used. | |
MEMultiChannel & | operator= (const MEMultiChannel &)=delete |
The assignment operator is private and must never be called. | |
Virtual functions required by the MEBase class. | |
double | me2 () const |
The matrix element for the kinematical configuration previously provided by the last call to setKinematics(), suitably scaled by sHat() to give a dimension-less number. | |
virtual Energy2 | scale () const |
Return the scale associated with the last set phase space point. | |
virtual int | nDim () const |
The number of internal degrees of freedom used in the matrix element. | |
virtual bool | generateKinematics (const double *r) |
Generate internal degrees of freedom given nDim() uniform random numbers in the interval \( ]0,1[ \). | |
virtual CrossSection | dSigHatDR () const |
Return the matrix element squared differential in the variables given by the last call to generateKinematics(). | |
virtual void | getDiagrams () const |
Add all possible diagrams with the add() function. | |
virtual Selector< DiagramIndex > | diagrams (const DiagramVector &dv) const |
Get diagram selector. | |
virtual Selector< const ColourLines * > | colourGeometries (tcDiagPtr diag) const |
Return a Selector with possible colour geometries for the selected diagram weighted by their relative probabilities. | |
void | addMode (PhaseSpaceModePtr mode) |
Add a phase-space mode. | |
tPhaseSpaceModePtr | mode (unsigned int imode) const |
Access to the modes. | |
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 | |
![]() | |
typedef vector< DiagPtr > | DiagramVector |
typedef DiagramVector::size_type | DiagramIndex |
typedef vector< ReweightPtr > | ReweightVector |
![]() | |
enum | InitState |
![]() | |
typedef unsigned int | CounterType |
![]() | |
typedef ThePEG::Ptr< XC >::pointer | XCPtr |
typedef ThePEG::Ptr< XC >::const_pointer | cXCPtr |
typedef ThePEG::Ptr< XC >::transient_pointer | tXCPtr |
typedef ThePEG::Ptr< XC >::transient_const_pointer | tcXCPtr |
![]() | |
static void | Init () |
![]() | |
static void | Init () |
![]() | |
static void | Init () |
![]() | |
static void | Init () |
![]() | |
static void | Init () |
![]() | |
initializing | |
uninitialized | |
initialized | |
runready | |
![]() | |
const unsigned long | uniqueId |
![]() | |
virtual void | doinit () |
virtual void | doinitrun () |
void | add (DiagPtr dp) const |
vector< Lorentz5Momentum > & | meMomenta () |
void | lastME2 (double v) const |
void | lastPreweight (double w) const |
void | lastMECrossSection (CrossSection v) const |
void | lastMEPDFWeight (double v) const |
void | lastMECouplings (double v) const |
void | jacobian (double j) |
void | use (tcMEPtr other) |
void | useDiagrams (tcMEPtr other) const |
![]() | |
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) |
![]() | |
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 &) |
![]() | |
ReferenceCounted (const ReferenceCounted &) | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
![]() | |
const Named & | operator= (const Named &other) |
const string & | name (const string &newName) |
![]() | |
static void | registerRepository (IBPtr) |
static void | registerRepository (IBPtr, string newName) |
![]() | |
XCPtr | theLastXComb |
Here is the documentation of the MEMultiChannel class.
Definition at line 21 of file MEMultiChannel.h.
|
inline |
The default constructor.
Definition at line 28 of file MEMultiChannel.h.
|
inlineprotected |
Add a phase-space mode.
Definition at line 108 of file MEMultiChannel.h.
|
virtual |
Return a Selector with possible colour geometries for the selected diagram weighted by their relative probabilities.
diag | the diagram chosen. |
Implements ThePEG::MEBase.
|
virtual |
Get diagram selector.
With the information previously supplied with the setKinematics method, a derived class may optionally override this method to weight the given diagrams with their (although certainly not physical) relative probabilities.
dv | the diagrams to be weighted. |
Reimplemented from ThePEG::MEBase.
|
protectedvirtual |
Initialize this object after the setup phase before saving an EventGenerator to disk.
InitException | if object could not be initialized properly. |
Reimplemented from ThePEG::MEBase.
Reimplemented in Herwig::MEee2Mesons, and Herwig::MEDM2Mesons.
|
protectedvirtual |
Initialize this object.
Called in the run phase just before a run begins.
Reimplemented from ThePEG::MEBase.
Reimplemented in Herwig::MEee2Mesons.
|
virtual |
Return the matrix element squared differential in the variables given by the last call to generateKinematics().
Implements ThePEG::MEBase.
|
virtual |
Generate internal degrees of freedom given nDim() uniform random numbers in the interval \( ]0,1[ \).
To help the phase space generator, the dSigHatDR should be a smooth function of these numbers, although this is not strictly necessary.
r | a pointer to the first of nDim() consecutive random numbers. |
Implements ThePEG::MEBase.
|
virtual |
Add all possible diagrams with the add() function.
Implements ThePEG::MEBase.
|
inlineprotected |
Access the mode currently being used.
Definition at line 179 of file MEMultiChannel.h.
References iMode_.
|
inlineprotected |
Set the mode currently begining used.
Definition at line 184 of file MEMultiChannel.h.
References iMode_.
|
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.
|
inlinevirtual |
The matrix element for the kinematical configuration previously provided by the last call to setKinematics(), suitably scaled by sHat() to give a dimension-less number.
Implements ThePEG::MEBase.
Definition at line 48 of file MEMultiChannel.h.
References me2().
Referenced by me2().
|
protectedpure virtual |
Return the matrix element squared for a given mode and phase-space channel.
ichan | The channel we are calculating the matrix element for. |
part | The decaying Particle. |
outgoing | The particles produced in the decay |
momenta | The momenta of the particles produced in the decay |
meopt | Option for the calculation of the matrix element |
Implemented in Herwig::MEee2Mesons, and Herwig::MEDM2Mesons.
|
inlineprotected |
Access to the modes.
Definition at line 115 of file MEMultiChannel.h.
References modes_.
Referenced by addMode().
|
virtual |
The number of internal degrees of freedom used in the matrix element.
Reimplemented from ThePEG::MEBase.
|
privatedelete |
The assignment operator is private and must never be called.
In fact, it should not even be implemented.
void Herwig::MEMultiChannel::persistentInput | ( | PersistentIStream & | is, |
int | version | ||
) |
Function used to read in object persistently.
is | the persistent input stream read from. |
version | the version number of the object when written. |
void Herwig::MEMultiChannel::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
virtual |
Return the scale associated with the last set phase space point.
Implements ThePEG::MEBase.
Reimplemented in Herwig::MEee2Mesons, and Herwig::MEDM2Mesons.
|
mutableprivate |
Map from the phase space channels to the modes.
Definition at line 204 of file MEMultiChannel.h.
|
mutableprivate |
The mode currently begining used.
Definition at line 209 of file MEMultiChannel.h.
Referenced by iMode().
|
private |
The phase-space modes.
Definition at line 199 of file MEMultiChannel.h.