thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
ThePEG::StandardXComb Class Reference

The StandardXComb class inherits from the more general XComb class which stores all information about the generation of a hard sub-proces for a given pair of incoming particles, a pair of extracted partons, etc. More...

#include <StandardXComb.h>

Inheritance diagram for ThePEG::StandardXComb:

Public Types

typedef MEBase::DiagramVector DiagramVector
 A vector of DiagramBase objects.
 
typedef MEBase::DiagramIndex DiagramIndex
 A vector of indices.
 
- Public Types inherited from ThePEG::XComb
typedef map< cPPtr, PBIPtrPartonBinInstanceMap
 A map of PartonBinInstance objects indexed by the extracted parton.
 
- Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType
 The integer type used for counting.
 

Public Member Functions

Standard constructors and destructors.
 StandardXComb (Energy newMaxEnergy, const cPDPair &inc, tEHPtr newEventHandler, tSubHdlPtr newSubProcessHandler, tPExtrPtr newExtractor, tCascHdlPtr newCKKW, const PBPair &newPartonBins, tCutsPtr newCuts, tMEPtr newME, const DiagramVector &newDiagrams, bool mir, tStdXCombPtr newHead=tStdXCombPtr())
 Standard constructor.
 
 StandardXComb (tStdXCombPtr newHead, const PBPair &newPartonBins, tMEPtr newME, const DiagramVector &newDiagrams)
 Constructor given a head xcomb.
 
 StandardXComb ()
 Default constructor.
 
virtual ~StandardXComb ()
 Destructor.
 
 StandardXComb (tMEPtr me, const tPVector &parts, DiagramIndex i)
 Constructor used by MEBase to create a temporary object to store info.
 
Utilities for incoming partons.
void recreatePartonBinInstances (Energy2 scale)
 Properly setup the PartonBinInstance objects provided a sub process has been constructed using this XComb.
 
void refillPartonBinInstances (const double *r)
 Fill the variables needed to generate remnants; momenta will be used from the partons set in this xcomb, but random numbers need to be provided to (re)generate variables not fixed by the incoming partons.
 
bool setIncomingPartons (tStdXCombPtr labHead=tStdXCombPtr())
 Setup information on incoming partons depending on the information previously supplied through the choice of diagram and incoming momenta in the first two entries of meMomenta().
 
void fill (const PPair &newParticles, const PPair &newPartons, const vector< Lorentz5Momentum > &newMEMomenta, const DVector &newLastRandomNumbers=DVector())
 Fill phase space information as far as possible.
 
Access the assigned objects used in the generation.
tcSubHdlPtr subProcessHandler () const
 Return a pointer to the corresponding sub-process handler.
 
tMEPtr matrixElement () const
 The matrix element to be used.
 
tStdXCombPtr head () const
 Return a pointer to the head XComb this XComb depends on.
 
void head (tStdXCombPtr headXC)
 Set the head XComb pointer.
 
Selector< tStdXCombPtr > & projectors ()
 Return a selector object of xcombs to choose subprocesses different than the one currently integrated.
 
const Selector< tStdXCombPtr > & projectors () const
 Return a selector object of xcombs to choose subprocesses different than the one currently integrated.
 
tStdXCombPtr lastProjector () const
 Return a pointer to a projector xcomb which will generate a subprocess different from the one just integrated.
 
void lastProjector (tStdXCombPtr pxc)
 Set a pointer to a projector xcomb which will generate a subprocess different from the one just integrated.
 
Main functions used for the generation.
virtual bool checkInit ()
 Try to determine if this subprocess is at all possible.
 
virtual int nDim () const
 The number of dimensions of the phase space used to generate this process.
 
const pair< int, int > & partonDimensions () const
 Return the parton extraction dimensions.
 
bool willPassCuts ()
 Return true, if the current configuration will pass the cuts.
 
double cutWeight () const
 Return the cut weight encountered from fuzzy cuts.
 
virtual void clean ()
 Reset all saved data about last generated phasespace point;.
 
bool kinematicsGenerated () const
 Return true, if kinematics have already been generated.
 
void didGenerateKinematics ()
 Indicate that kinematics have been generated.
 
virtual CrossSection dSigDR (const pair< double, double > ll, int nr, const double *r)
 Generate a phase space point from a vector r of nr numbers in the interval ]0,1[ and return the corresponding differential cross section.
 
CrossSection dSigDR (const double *r)
 If this XComb has a head XComb, return the cross section differential in the variables previously supplied.
 
virtual map< string, double > generateOptionalWeights ()
 If variations are available for the subprocess handled, generate and return a map of optional weights to be included for the event; this version defaults to an implementation in MEBase but can be overloaded by inheriting XComb objects.
 
double lastPDFWeight () const
 Return the PDF weight used in the last call to dSigDR.
 
CrossSection lastCrossSection () const
 Return the cross section calculated in the last call to dSigDR.
 
void checkReshufflingNeeds ()
 Check if a reshuffling is required when constructing the hard subprocess.
 
bool needsReshuffling () const
 Return true if a reshuffling is required when constructing the hard subprocess.
 
void reshuffle (vector< Lorentz5Momentum > &) const
 Perform the reshuffling from hardProcessMass to mass values, given outgoing momenta.
 
virtual tSubProPtr construct ()
 Construct a sub-process object from the information available.
 
Functions used for collecting statistics.
virtual const XSecStatstats () const
 The statistics object for this XComb.
 
virtual void select (double weight)
 Select the current event.
 
virtual void accept ()
 Accept the current event assuming it was previously selcted.
 
void reweight (double oldWeight, double newWeight)
 Reweight a selected and accepted event.
 
virtual void reject (double weight=1.0)
 Reject the current event assuming it was previously accepted.
 
virtual void reset ()
 Reset statistics.
 
Access information used by the MEBase object.
const DiagramVectordiagrams () const
 The diagrams used by the matrix element.
 
bool mirror () const
 True if the TreeDiagram's for this matrix element should in fact be mirrored before used to create an actual sub-rocess.
 
const vector< Lorentz5Momentum > & meMomenta () const
 Return the momenta of the partons to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.
 
tcDiagPtr lastDiagram () const
 Return the last selected diagram.
 
const cPDVectormePartonData () const
 Return the parton types to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.
 
DiagramIndex lastDiagramIndex () const
 Return the index of the last selected diagram.
 
const DVectormeInfo () const
 Get information saved by the matrix element in the calculation of the cross section to be used later when selecting diagrams and colour flow.
 
void meInfo (const DVector &info)
 Set information saved by the matrix element in the calculation of the cross section to be used later when selecting diagrams and colour flow.
 
const DVectorlastRandomNumbers () const
 Return the random numbers used to generate the last phase space point, if the matrix element requested so.
 
double jacobian () const
 Get the last jacobian obtained when generating the kinematics for the call to dSigHatDR.
 
double lastME2 () const
 Return the matrix element squared as calculated for the last phase space point.
 
double lastPreweight () const
 Return the last preweight factor.
 
CrossSection lastMECrossSection () const
 Return the partonic cross section as calculated for the last phase space point.
 
double lastMEPDFWeight () const
 Return the PDF weight as calculated for the last phase space point, if the matrix element does supply PDF weights.
 
double lastMECouplings () const
 Return the coupling factor as calculated for the lats phase space point.
 
virtual void newSubProcess (bool group=false)
 Construct the corresponding SubProcess object if it hasn't been done before.
 
vector< Lorentz5Momentum > & meMomenta ()
 Return the momenta of the partons to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.
 
DVectorlastRandomNumbers ()
 Access the random numbers used to generate the last phase space point, if the matrix element requested so.
 
cPDVectormePartonData ()
 Return the parton types to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.
 
void externalDiagram (tcDiagPtr diag)
 Set a diagram to be used instead of the one selected by the matrix element.
 
void lastDiagramIndex (DiagramIndex i)
 Set the last selected diagram.
 
void lastPDFWeight (double w)
 Set the PDF weight used in the last call to dSigDR.
 
void lastCrossSection (CrossSection s)
 Set the cross section calculated in the last call to dSigDR.
 
void jacobian (double j)
 Set the last jacobian obtained when generating the kinematics for the call to dSigHatDR.
 
void lastME2 (double v)
 Set the matrix element squared as calculated for the last phase space point.
 
void lastPreweight (double w)
 Set the last preweight factor.
 
void lastMECrossSection (CrossSection v)
 Set the partonic cross section as calculated for the last phase space point.
 
void lastMEPDFWeight (double v)
 Set the PDF weight as calculated for the last phase space point, if the matrix element does supply PDF weights.
 
void lastMECouplings (double v)
 Set the coupling factor.
 
- Public Member Functions inherited from ThePEG::XComb
 XComb (Energy newMaxEnergy, const cPDPair &inc, tEHPtr newEventHandler, tPExtrPtr newExtractor, tCascHdlPtr newCKKW, const PBPair &newPartonBins, tCutsPtr newCuts)
 Standard constructor.
 
 XComb ()
 Default constructor.
 
virtual ~XComb ()
 Destructor.
 
const EventHandlereventHandler () const
 Return a reference to the corresponding collision handler.
 
tEHPtr eventHandlerPtr () const
 Return a pointer to the corresponding collision handler.
 
tPExtrPtr pExtractor () const
 A pointer to the parton extractor.
 
tCutsPtr cuts () const
 A pointer to the kinematical cuts.
 
tCascHdlPtr CKKWHandler () const
 Return a possibly null pointer to a CascadeHandler to be used for CKKW-reweighting.
 
const cPDPairparticles () const
 The incoming particle types.
 
const cPDPairpartons () const
 The incoming parton types.
 
const PBPair & partonBins () const
 Additional information about the incoming partons.
 
Energy maxEnergy () const
 The maximum cm energy for this process.
 
bool empty () const
 Returns true if this XComb does not correspond to a proper subprocess generation.
 
void setPartonBinInstances (PBIPair pbis, Energy2 scale)
 Set information about currently generated partons.
 
void prepare (const PPair &)
 Prepare this XComb for producing a sub-process.
 
const PPairlastParticles () const
 Return the pair of incoming particle instances.
 
const PPairlastPartons () const
 Return the pair of incoming parton instances.
 
void lastPartons (PPair pp)
 Set the pair of incoming parton instances.
 
tSubProPtr subProcess () const
 Return the SubProcess object corresponding to the last generated sub-process.
 
void subProcess (tSubProPtr)
 Set the SubProcess object corresponding to the last generated sub-process.
 
PartonBinInstanceMappartonBinInstanceMap ()
 Access the parton bin instance map (used by the parton extractor)
 
const PartonBinInstanceMappartonBinInstanceMap () const
 Return the parton bin instance map (used by the parton extractor)
 
const PBIPairpartonBinInstances () const
 Additional information about the incoming partons.
 
PBIPairpartonBinInstances ()
 Additional information about the incoming partons.
 
tPBIPtr partonBinInstance (tcPPtr) const
 Return the corresponding parton bin instance for a given extracted parton.
 
Energy2 lastS () const
 The last generated total energy squared of the incoming particles.
 
void lastS (Energy2 s)
 Set the last generated total energy squared of the incoming particles.
 
Energy2 lastSHat () const
 The last generated total energy squared of the incoming prtons.
 
void lastSHat (Energy2 sh)
 Set the last generated total energy squared of the incoming prtons.
 
double lastTau () const
 lastSHat()/lastS().
 
double lastY () const
 The last generated rapidity of the hard scattering sub-system.
 
void lastY (double y)
 Set the last generated rapidity of the hard scattering sub-system.
 
double lastP1 () const
 Log of one over the momentum fraction of the first incoming particle w.r.t.
 
double lastP2 () const
 Log of one over the momentum fraction of the second incoming particle w.r.t.
 
void lastP1P2 (pair< double, double > pp)
 Set log of one over the momentum fraction of the incoming particles w.r.t.
 
double lastL1 () const
 Log of one over the first incoming parton momentum fraction w.r.t.
 
double lastL2 () const
 Log of one over the second incoming parton momentum fraction w.r.t.
 
void lastL1L2 (pair< double, double >)
 Set log of one over the incoming parton momentum fractions w.r.t.
 
double lastX1 () const
 The first incoming parton momentum fraction w.r.t.
 
double lastX2 () const
 The second incoming parton momentum fraction w.r.t.
 
void lastX1X2 (pair< double, double >)
 Set the incoming parton momentum fractions w.r.t.
 
double lastE1 () const
 Return 1-lastX1() to highest possible precision for x \(\rightarrow\) 1.
 
double lastE2 () const
 Return 1-lastX2() to highest possible precision for x \(\rightarrow\) 1.
 
void lastE1E2 (pair< double, double >)
 Set one minus the incoming parton momentum fractions w.r.t.
 
Energy2 lastScale () const
 Get the last chosen scale of the hard scattering.
 
void lastScale (Energy2 Q2)
 Set the last chosen scale of the hard scattering.
 
Energy2 lastCentralScale () const
 Get the last chosen central scale of the hard scattering.
 
void lastCentralScale (Energy2 Q2)
 Set the last chosen central scale of the hard scattering.
 
Energy2 lastShowerScale () const
 Get the last chosen shower scale.
 
void lastShowerScale (Energy2 Q2)
 Set the last chosen showr scale.
 
double lastAlphaS () const
 Get the \(\alpha_S\) used in the hard scattering.
 
void lastAlphaS (double a)
 Set the \(\alpha_S\) used in the hard scattering.
 
double lastAlphaEM () const
 Get the \(\alpha_{EM}\) used in the hard scattering.
 
void lastAlphaEM (double a)
 Set the \(\alpha_{EM}\) used in the hard scattering.
 
bool hasMeta (int id) const
 Check for meta information.
 
template<class T >
void meta (int id, T &ref)
 Set meta information.
 
void eraseMeta (int id)
 Erase meta information.
 
template<class T >
T & meta (int id) const
 Retrieve meta information.
 
void setPartonBinInfo ()
 Set the local parton bin info objects for this XComb.
 
void createPartonBinInstances ()
 Create PartonBinInstance objects for this XComb.
 
void lastParticles (const PPair &p)
 Set the pair of incoming particle instances.
 
void resetPartonBinInstances (const PBIPair &newBins)
 Set information about currently generated partons.
 
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.
 
- Public Member Functions inherited from ThePEG::Base
virtual ~Base ()
 The virtual destructor.
 
void debug () const
 Print out debugging information for this object on std::cerr.
 
virtual void debugme () const
 Print out debugging information for this object on std::cerr.
 
- Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted
CounterType referenceCount () const
 Return the reference count.
 

Friends

class MEBase
 MEBase needs to be a friend.
 

Functions used by the persistent I/O system.

tSubHdlPtr theSubProcessHandler
 The corresponding sub-process handler.
 
tMEPtr theME
 The matrix element to be used.
 
XSecStat theStats
 Statistics gathering for this XComb.
 
DiagramVector theDiagrams
 The diagrams used by the matrix element.
 
bool isMirror
 True if the TreeDiagram's for this matrix element should in fact be mirrored before used to create an actual sub-rocess.
 
int theNDim
 The number of dimensions of the phase space used to generate this process.
 
bool theKinematicsGenerated
 True, if kinematics have already been generated.
 
vector< Lorentz5MomentumtheMEMomenta
 The momenta of the partons to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.
 
cPDVector theMEPartonData
 The parton types to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.
 
tcDiagPtr theExternalDiagram
 A diagram to be used instead of the one selected by the matrix element.
 
DiagramIndex theLastDiagramIndex
 The last selected tree diagram.
 
DVector theMEInfo
 Information saved by the matrix element in the calculation of the cross section to be used later when selecting diagrams and colour flow.
 
DVector theLastRandomNumbers
 The random numbers used to generate the last phase space point, if the matrix element requested so.
 
double theLastPDFWeight
 The PDF weight used in the last call to dSigDR.
 
CrossSection theLastCrossSection
 The cross section calculated in the last call to dSigDR.
 
double theLastJacobian
 Save the last jacobian obtained when generating the kinematics for the call to dSigHatDR.
 
double theLastME2
 The matrix element squared as calculated for the last phase space point.
 
double theLastPreweight
 The last preweight factor.
 
CrossSection theLastMECrossSection
 The partonic cross section as calculated for the last phase space point.
 
double theLastMEPDFWeight
 The PDF weight as calculated for the last phase space point, if the matrix element does supply PDF weights.
 
double theLastMECouplings
 The coupling factor.
 
tStdXCombPtr theHead
 A pointer to the head XComb this XComb depends on.
 
Selector< tStdXCombPtr > theProjectors
 A selector object of xcombs to choose subprocesses different than the one currently integrated.
 
tStdXCombPtr theProjector
 A pointer to a projector xcomb which will generate a subprocess different from the one just integrated.
 
bool checkedCuts
 True, if cuts have already been checked.
 
bool passedCuts
 The result of the last call to willPassCuts.
 
double theCutWeight
 The cut weight encountered from fuzzy cuts.
 
bool theNeedsReshuffling
 True if a reshuffling is required when constructing the hard subprocess.
 
pair< int, int > partonDims
 The number of dimensions of the phase space used for each of the incoming partons.
 
static ClassDescription< StandardXCombinitStandardXComb
 Describe a concrete class with persistent data.
 
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 ()
 Standard Init function used to initialize the interface.
 
double reshuffleEquation (double, const vector< pair< Energy2, Energy2 > > &, Energy2) const
 Calculate the reshuffling equation given the coefficients.
 
double solveReshuffleEquation (const vector< pair< Energy2, Energy2 > > &, Energy2) const
 Solve the reshuffling equation given the coefficients.
 
StandardXComboperator= (const StandardXComb &)=delete
 Private and non-existent assignment operator.
 

Additional Inherited Members

- Static Public Member Functions inherited from ThePEG::XComb
static void Init ()
 Standard Init function used to initialize the interface.
 
- Static Public Member Functions inherited from ThePEG::Base
static void Init ()
 The standard Init function used to initialize the interfaces.
 
- Public Attributes inherited from ThePEG::Pointer::ReferenceCounted
const unsigned long uniqueId
 The unique ID.
 
- Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
 ReferenceCounted ()
 Default constructor.
 
 ReferenceCounted (const ReferenceCounted &)
 Copy-constructor.
 
ReferenceCountedoperator= (const ReferenceCounted &)
 Assignment.
 

Detailed Description

The StandardXComb class inherits from the more general XComb class which stores all information about the generation of a hard sub-proces for a given pair of incoming particles, a pair of extracted partons, etc.

This class stores more information related to thestandard process generation scheme in ThePEG, such as the PartonExtractor and MEBase object used. It also does some of the administration of the process generation.

The main function is dSigDR() which returns the differential cross section w.r.t. a given vector of random numbers in the interval ]0,1[. In the initialization this is used to pre-sample the phase space. In the generation phase it is used to give the cross section for a phase space point, and if this StandardXComb is chosen the construct() function is called to generate the actual sub-process.

See also
ParonExtractor
MEBase
Cuts
StdXCombGroup

Definition at line 53 of file StandardXComb.h.

Member Typedef Documentation

◆ DiagramIndex

A vector of indices.

Definition at line 61 of file StandardXComb.h.

◆ DiagramVector

A vector of DiagramBase objects.

Definition at line 58 of file StandardXComb.h.

Member Function Documentation

◆ accept()

virtual void ThePEG::StandardXComb::accept ( )
inlinevirtual

Accept the current event assuming it was previously selcted.

Definition at line 308 of file StandardXComb.h.

References ThePEG::XSecStat::accept(), and theStats.

◆ clean()

virtual void ThePEG::StandardXComb::clean ( )
virtual

Reset all saved data about last generated phasespace point;.

Reimplemented from ThePEG::XComb.

Reimplemented in ThePEG::StdXCombGroup.

◆ construct()

virtual tSubProPtr ThePEG::StandardXComb::construct ( )
virtual

Construct a sub-process object from the information available.

Reimplemented in ThePEG::StdXCombGroup.

◆ cutWeight()

double ThePEG::StandardXComb::cutWeight ( ) const
inline

Return the cut weight encountered from fuzzy cuts.

Definition at line 218 of file StandardXComb.h.

References theCutWeight.

◆ diagrams()

const DiagramVector & ThePEG::StandardXComb::diagrams ( ) const
inline

The diagrams used by the matrix element.

Definition at line 335 of file StandardXComb.h.

References theDiagrams.

Referenced by lastDiagram().

◆ didGenerateKinematics()

void ThePEG::StandardXComb::didGenerateKinematics ( )
inline

Indicate that kinematics have been generated.

Definition at line 233 of file StandardXComb.h.

References theKinematicsGenerated.

◆ dSigDR() [1/2]

CrossSection ThePEG::StandardXComb::dSigDR ( const double *  r)

If this XComb has a head XComb, return the cross section differential in the variables previously supplied.

The PDF weight is taken from the lastPDFWeight supplied by the head XComb object.

◆ dSigDR() [2/2]

virtual CrossSection ThePEG::StandardXComb::dSigDR ( const pair< double, double >  ll,
int  nr,
const double *  r 
)
virtual

Generate a phase space point from a vector r of nr numbers in the interval ]0,1[ and return the corresponding differential cross section.

Reimplemented in ThePEG::StdXCombGroup.

◆ externalDiagram()

void ThePEG::StandardXComb::externalDiagram ( tcDiagPtr  diag)
inline

Set a diagram to be used instead of the one selected by the matrix element.

Definition at line 463 of file StandardXComb.h.

References theExternalDiagram.

◆ head() [1/2]

tStdXCombPtr ThePEG::StandardXComb::head ( ) const
inline

Return a pointer to the head XComb this XComb depends on.

May return NULL, if this is not a member of a XComb group.

Definition at line 159 of file StandardXComb.h.

References theHead.

◆ head() [2/2]

void ThePEG::StandardXComb::head ( tStdXCombPtr  headXC)
inline

Set the head XComb pointer.

Definition at line 164 of file StandardXComb.h.

References theHead.

◆ jacobian() [1/2]

double ThePEG::StandardXComb::jacobian ( ) const
inline

Get the last jacobian obtained when generating the kinematics for the call to dSigHatDR.

Definition at line 396 of file StandardXComb.h.

References theLastJacobian.

◆ jacobian() [2/2]

void ThePEG::StandardXComb::jacobian ( double  j)
inline

Set the last jacobian obtained when generating the kinematics for the call to dSigHatDR.

Definition at line 484 of file StandardXComb.h.

References theLastJacobian.

◆ kinematicsGenerated()

bool ThePEG::StandardXComb::kinematicsGenerated ( ) const
inline

Return true, if kinematics have already been generated.

Definition at line 228 of file StandardXComb.h.

References theKinematicsGenerated.

◆ lastCrossSection() [1/2]

CrossSection ThePEG::StandardXComb::lastCrossSection ( ) const
inline

Return the cross section calculated in the last call to dSigDR.

Definition at line 266 of file StandardXComb.h.

References theLastCrossSection.

◆ lastCrossSection() [2/2]

void ThePEG::StandardXComb::lastCrossSection ( CrossSection  s)
inline

Set the cross section calculated in the last call to dSigDR.

Definition at line 478 of file StandardXComb.h.

References theLastCrossSection.

◆ lastDiagram()

tcDiagPtr ThePEG::StandardXComb::lastDiagram ( ) const
inline

Return the last selected diagram.

Definition at line 353 of file StandardXComb.h.

References diagrams(), lastDiagramIndex(), and theExternalDiagram.

◆ lastDiagramIndex() [1/2]

DiagramIndex ThePEG::StandardXComb::lastDiagramIndex ( ) const
inline

Return the index of the last selected diagram.

Definition at line 369 of file StandardXComb.h.

References theLastDiagramIndex.

Referenced by lastDiagram().

◆ lastDiagramIndex() [2/2]

void ThePEG::StandardXComb::lastDiagramIndex ( DiagramIndex  i)
inline

Set the last selected diagram.

Definition at line 468 of file StandardXComb.h.

References theLastDiagramIndex.

◆ lastME2() [1/2]

double ThePEG::StandardXComb::lastME2 ( ) const
inline

Return the matrix element squared as calculated for the last phase space point.

This may optionally be used by a matrix element for caching.

Definition at line 403 of file StandardXComb.h.

References theLastME2.

◆ lastME2() [2/2]

void ThePEG::StandardXComb::lastME2 ( double  v)
inline

Set the matrix element squared as calculated for the last phase space point.

This may optionally be used by a matrix element for caching.

Definition at line 491 of file StandardXComb.h.

References theLastME2.

◆ lastMECouplings() [1/2]

double ThePEG::StandardXComb::lastMECouplings ( ) const
inline

Return the coupling factor as calculated for the lats phase space point.

Definition at line 429 of file StandardXComb.h.

References theLastMECouplings.

◆ lastMECouplings() [2/2]

void ThePEG::StandardXComb::lastMECouplings ( double  v)
inline

Set the coupling factor.

Definition at line 516 of file StandardXComb.h.

References theLastMECouplings.

◆ lastMECrossSection() [1/2]

CrossSection ThePEG::StandardXComb::lastMECrossSection ( ) const
inline

Return the partonic cross section as calculated for the last phase space point.

This may optionally be used by a matrix element for caching.

Definition at line 415 of file StandardXComb.h.

References theLastMECrossSection.

◆ lastMECrossSection() [2/2]

void ThePEG::StandardXComb::lastMECrossSection ( CrossSection  v)
inline

Set the partonic cross section as calculated for the last phase space point.

This may optionally be used by a matrix element for caching.

Definition at line 503 of file StandardXComb.h.

References theLastMECrossSection.

◆ lastMEPDFWeight() [1/2]

double ThePEG::StandardXComb::lastMEPDFWeight ( ) const
inline

Return the PDF weight as calculated for the last phase space point, if the matrix element does supply PDF weights.

This may optionally be used by a matrix element for caching.

Definition at line 423 of file StandardXComb.h.

References theLastMEPDFWeight.

◆ lastMEPDFWeight() [2/2]

void ThePEG::StandardXComb::lastMEPDFWeight ( double  v)
inline

Set the PDF weight as calculated for the last phase space point, if the matrix element does supply PDF weights.

This may optionally be used by a matrix element for caching.

Definition at line 511 of file StandardXComb.h.

References theLastMEPDFWeight.

◆ lastPDFWeight() [1/2]

double ThePEG::StandardXComb::lastPDFWeight ( ) const
inline

Return the PDF weight used in the last call to dSigDR.

Definition at line 261 of file StandardXComb.h.

References theLastPDFWeight.

◆ lastPDFWeight() [2/2]

void ThePEG::StandardXComb::lastPDFWeight ( double  w)
inline

Set the PDF weight used in the last call to dSigDR.

Definition at line 473 of file StandardXComb.h.

References theLastPDFWeight.

◆ lastPreweight() [1/2]

double ThePEG::StandardXComb::lastPreweight ( ) const
inline

Return the last preweight factor.

Definition at line 408 of file StandardXComb.h.

References theLastPreweight.

◆ lastPreweight() [2/2]

void ThePEG::StandardXComb::lastPreweight ( double  w)
inline

Set the last preweight factor.

Definition at line 496 of file StandardXComb.h.

References theLastPreweight.

◆ lastProjector() [1/2]

tStdXCombPtr ThePEG::StandardXComb::lastProjector ( ) const
inline

Return a pointer to a projector xcomb which will generate a subprocess different from the one just integrated.

Definition at line 182 of file StandardXComb.h.

References theProjector.

◆ lastProjector() [2/2]

void ThePEG::StandardXComb::lastProjector ( tStdXCombPtr  pxc)
inline

Set a pointer to a projector xcomb which will generate a subprocess different from the one just integrated.

Definition at line 188 of file StandardXComb.h.

References theProjector.

◆ lastRandomNumbers() [1/2]

DVector & ThePEG::StandardXComb::lastRandomNumbers ( )
inline

Access the random numbers used to generate the last phase space point, if the matrix element requested so.

Definition at line 450 of file StandardXComb.h.

References theLastRandomNumbers.

◆ lastRandomNumbers() [2/2]

const DVector & ThePEG::StandardXComb::lastRandomNumbers ( ) const
inline

Return the random numbers used to generate the last phase space point, if the matrix element requested so.

Definition at line 390 of file StandardXComb.h.

References theLastRandomNumbers.

◆ matrixElement()

tMEPtr ThePEG::StandardXComb::matrixElement ( ) const
inline

The matrix element to be used.

Definition at line 152 of file StandardXComb.h.

References theME.

◆ meInfo() [1/2]

const DVector & ThePEG::StandardXComb::meInfo ( ) const
inline

Get information saved by the matrix element in the calculation of the cross section to be used later when selecting diagrams and colour flow.

Definition at line 376 of file StandardXComb.h.

References theMEInfo.

◆ meInfo() [2/2]

void ThePEG::StandardXComb::meInfo ( const DVector info)
inline

Set information saved by the matrix element in the calculation of the cross section to be used later when selecting diagrams and colour flow.

Definition at line 383 of file StandardXComb.h.

References theMEInfo.

◆ meMomenta() [1/2]

vector< Lorentz5Momentum > & ThePEG::StandardXComb::meMomenta ( )
inline

Return the momenta of the partons to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.

Definition at line 443 of file StandardXComb.h.

References theMEMomenta.

◆ meMomenta() [2/2]

const vector< Lorentz5Momentum > & ThePEG::StandardXComb::meMomenta ( ) const
inline

Return the momenta of the partons to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.

Definition at line 348 of file StandardXComb.h.

References theMEMomenta.

◆ mePartonData() [1/2]

cPDVector & ThePEG::StandardXComb::mePartonData ( )
inline

Return the parton types to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.

Definition at line 457 of file StandardXComb.h.

References theMEPartonData.

◆ mePartonData() [2/2]

const cPDVector & ThePEG::StandardXComb::mePartonData ( ) const
inline

Return the parton types to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.

Definition at line 364 of file StandardXComb.h.

References theMEPartonData.

◆ mirror()

bool ThePEG::StandardXComb::mirror ( ) const
inline

True if the TreeDiagram's for this matrix element should in fact be mirrored before used to create an actual sub-rocess.

Definition at line 341 of file StandardXComb.h.

References isMirror.

◆ nDim()

virtual int ThePEG::StandardXComb::nDim ( ) const
inlinevirtual

The number of dimensions of the phase space used to generate this process.

Reimplemented in ThePEG::StdXCombGroup.

Definition at line 203 of file StandardXComb.h.

References theNDim.

◆ needsReshuffling()

bool ThePEG::StandardXComb::needsReshuffling ( ) const
inline

Return true if a reshuffling is required when constructing the hard subprocess.

Definition at line 278 of file StandardXComb.h.

References theNeedsReshuffling.

◆ newSubProcess()

virtual void ThePEG::StandardXComb::newSubProcess ( bool  group = false)
virtual

Construct the corresponding SubProcess object if it hasn't been done before.

Reimplemented in ThePEG::StdXCombGroup.

◆ partonDimensions()

const pair< int, int > & ThePEG::StandardXComb::partonDimensions ( ) const
inline

Return the parton extraction dimensions.

Definition at line 208 of file StandardXComb.h.

References partonDims.

◆ persistentInput()

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

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

◆ projectors() [1/2]

Selector< tStdXCombPtr > & ThePEG::StandardXComb::projectors ( )
inline

Return a selector object of xcombs to choose subprocesses different than the one currently integrated.

Definition at line 170 of file StandardXComb.h.

References theProjectors.

◆ projectors() [2/2]

const Selector< tStdXCombPtr > & ThePEG::StandardXComb::projectors ( ) const
inline

Return a selector object of xcombs to choose subprocesses different than the one currently integrated.

Definition at line 176 of file StandardXComb.h.

References theProjectors.

◆ reject()

virtual void ThePEG::StandardXComb::reject ( double  weight = 1.0)
inlinevirtual

Reject the current event assuming it was previously accepted.

If weighted events are produced, the weight should be the same as the previous call to select(double).

Definition at line 322 of file StandardXComb.h.

References ThePEG::XSecStat::reject(), and theStats.

◆ reset()

virtual void ThePEG::StandardXComb::reset ( )
inlinevirtual

Reset statistics.

Definition at line 327 of file StandardXComb.h.

References ThePEG::XSecStat::reset(), and theStats.

◆ reweight()

void ThePEG::StandardXComb::reweight ( double  oldWeight,
double  newWeight 
)
inline

Reweight a selected and accepted event.

Definition at line 313 of file StandardXComb.h.

References ThePEG::XSecStat::reweight(), and theStats.

◆ select()

virtual void ThePEG::StandardXComb::select ( double  weight)
inlinevirtual

Select the current event.

It will later be rejected with a probability given by weight.

Definition at line 303 of file StandardXComb.h.

References ThePEG::XSecStat::select(), and theStats.

◆ setIncomingPartons()

bool ThePEG::StandardXComb::setIncomingPartons ( tStdXCombPtr  labHead = tStdXCombPtr())

Setup information on incoming partons depending on the information previously supplied through the choice of diagram and incoming momenta in the first two entries of meMomenta().

Partons are not actually extracted from the incoming particles, though a subprocess detached from the current Event may be created.

◆ stats()

virtual const XSecStat & ThePEG::StandardXComb::stats ( ) const
inlinevirtual

The statistics object for this XComb.

Definition at line 297 of file StandardXComb.h.

References theStats.

◆ subProcessHandler()

tcSubHdlPtr ThePEG::StandardXComb::subProcessHandler ( ) const
inline

Return a pointer to the corresponding sub-process handler.

May be null if the standard process generation in ThePEG was not used.

Definition at line 147 of file StandardXComb.h.

References theSubProcessHandler.

Friends And Related Function Documentation

◆ MEBase

friend class MEBase
friend

MEBase needs to be a friend.

Definition at line 64 of file StandardXComb.h.

Member Data Documentation

◆ checkedCuts

bool ThePEG::StandardXComb::checkedCuts
private

True, if cuts have already been checked.

Definition at line 698 of file StandardXComb.h.

◆ initStandardXComb

ClassDescription<StandardXComb> ThePEG::StandardXComb::initStandardXComb
staticprivate

Describe a concrete class with persistent data.

Definition at line 731 of file StandardXComb.h.

◆ isMirror

bool ThePEG::StandardXComb::isMirror
private

True if the TreeDiagram's for this matrix element should in fact be mirrored before used to create an actual sub-rocess.

Definition at line 567 of file StandardXComb.h.

Referenced by mirror().

◆ partonDims

pair<int,int> ThePEG::StandardXComb::partonDims
protected

The number of dimensions of the phase space used for each of the incoming partons.

Definition at line 581 of file StandardXComb.h.

Referenced by partonDimensions().

◆ passedCuts

bool ThePEG::StandardXComb::passedCuts
private

The result of the last call to willPassCuts.

Definition at line 703 of file StandardXComb.h.

◆ theCutWeight

double ThePEG::StandardXComb::theCutWeight
private

The cut weight encountered from fuzzy cuts.

Definition at line 708 of file StandardXComb.h.

Referenced by cutWeight().

◆ theDiagrams

DiagramVector ThePEG::StandardXComb::theDiagrams
private

The diagrams used by the matrix element.

Definition at line 561 of file StandardXComb.h.

Referenced by diagrams().

◆ theExternalDiagram

tcDiagPtr ThePEG::StandardXComb::theExternalDiagram
private

A diagram to be used instead of the one selected by the matrix element.

Definition at line 607 of file StandardXComb.h.

Referenced by externalDiagram(), and lastDiagram().

◆ theHead

tStdXCombPtr ThePEG::StandardXComb::theHead
private

A pointer to the head XComb this XComb depends on.

May return NULL, if this is not a member of a XComb group.

Definition at line 681 of file StandardXComb.h.

Referenced by head().

◆ theKinematicsGenerated

bool ThePEG::StandardXComb::theKinematicsGenerated
private

True, if kinematics have already been generated.

Definition at line 588 of file StandardXComb.h.

Referenced by didGenerateKinematics(), and kinematicsGenerated().

◆ theLastCrossSection

CrossSection ThePEG::StandardXComb::theLastCrossSection
private

The cross section calculated in the last call to dSigDR.

Definition at line 636 of file StandardXComb.h.

Referenced by lastCrossSection().

◆ theLastDiagramIndex

DiagramIndex ThePEG::StandardXComb::theLastDiagramIndex
private

The last selected tree diagram.

Definition at line 612 of file StandardXComb.h.

Referenced by lastDiagramIndex().

◆ theLastJacobian

double ThePEG::StandardXComb::theLastJacobian
private

Save the last jacobian obtained when generating the kinematics for the call to dSigHatDR.

Definition at line 642 of file StandardXComb.h.

Referenced by jacobian().

◆ theLastME2

double ThePEG::StandardXComb::theLastME2
private

The matrix element squared as calculated for the last phase space point.

This may optionally be used by a matrix element for caching.

Definition at line 649 of file StandardXComb.h.

Referenced by lastME2().

◆ theLastMECouplings

double ThePEG::StandardXComb::theLastMECouplings
private

The coupling factor.

Definition at line 674 of file StandardXComb.h.

Referenced by lastMECouplings().

◆ theLastMECrossSection

CrossSection ThePEG::StandardXComb::theLastMECrossSection
private

The partonic cross section as calculated for the last phase space point.

This may optionally be used by a matrix element for caching.

Definition at line 661 of file StandardXComb.h.

Referenced by lastMECrossSection().

◆ theLastMEPDFWeight

double ThePEG::StandardXComb::theLastMEPDFWeight
private

The PDF weight as calculated for the last phase space point, if the matrix element does supply PDF weights.

This may optionally be used by a matrix element for caching.

Definition at line 669 of file StandardXComb.h.

Referenced by lastMEPDFWeight().

◆ theLastPDFWeight

double ThePEG::StandardXComb::theLastPDFWeight
private

The PDF weight used in the last call to dSigDR.

Definition at line 631 of file StandardXComb.h.

Referenced by lastPDFWeight().

◆ theLastPreweight

double ThePEG::StandardXComb::theLastPreweight
private

The last preweight factor.

Definition at line 654 of file StandardXComb.h.

Referenced by lastPreweight().

◆ theLastRandomNumbers

DVector ThePEG::StandardXComb::theLastRandomNumbers
private

The random numbers used to generate the last phase space point, if the matrix element requested so.

Definition at line 626 of file StandardXComb.h.

Referenced by lastRandomNumbers().

◆ theME

tMEPtr ThePEG::StandardXComb::theME
private

The matrix element to be used.

Definition at line 551 of file StandardXComb.h.

Referenced by matrixElement().

◆ theMEInfo

DVector ThePEG::StandardXComb::theMEInfo
private

Information saved by the matrix element in the calculation of the cross section to be used later when selecting diagrams and colour flow.

Definition at line 619 of file StandardXComb.h.

Referenced by meInfo().

◆ theMEMomenta

vector<Lorentz5Momentum> ThePEG::StandardXComb::theMEMomenta
private

The momenta of the partons to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.

Definition at line 595 of file StandardXComb.h.

Referenced by meMomenta().

◆ theMEPartonData

cPDVector ThePEG::StandardXComb::theMEPartonData
private

The parton types to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.

Definition at line 602 of file StandardXComb.h.

Referenced by mePartonData().

◆ theNDim

int ThePEG::StandardXComb::theNDim
private

The number of dimensions of the phase space used to generate this process.

Definition at line 573 of file StandardXComb.h.

Referenced by nDim().

◆ theNeedsReshuffling

bool ThePEG::StandardXComb::theNeedsReshuffling
private

True if a reshuffling is required when constructing the hard subprocess.

Definition at line 714 of file StandardXComb.h.

Referenced by needsReshuffling().

◆ theProjector

tStdXCombPtr ThePEG::StandardXComb::theProjector
private

A pointer to a projector xcomb which will generate a subprocess different from the one just integrated.

Definition at line 693 of file StandardXComb.h.

Referenced by lastProjector().

◆ theProjectors

Selector<tStdXCombPtr> ThePEG::StandardXComb::theProjectors
private

A selector object of xcombs to choose subprocesses different than the one currently integrated.

Definition at line 687 of file StandardXComb.h.

Referenced by projectors().

◆ theStats

XSecStat ThePEG::StandardXComb::theStats
private

Statistics gathering for this XComb.

Definition at line 556 of file StandardXComb.h.

Referenced by accept(), reject(), reset(), reweight(), select(), and stats().

◆ theSubProcessHandler

tSubHdlPtr ThePEG::StandardXComb::theSubProcessHandler
private

The corresponding sub-process handler.

Definition at line 546 of file StandardXComb.h.

Referenced by subProcessHandler().


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