ThePEG  1.8.0
Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
ThePEG::StdDependentXComb Class Reference

The StdDependentXComb class inherits from the StandardXComb class and represents information on a hard subprocess in dependence of another hard subprocess referred to by the head XComb object. More...

#include <StdDependentXComb.h>

Inheritance diagram for ThePEG::StdDependentXComb:
Inheritance graph
[legend]

Public Member Functions

Standard constructors and destructors.
 StdDependentXComb (tStdXCombPtr newHead, const PBPair &newPartonBins, tMEPtr newME, const DiagramVector &newDiagrams)
 Standard constructor.
 
 StdDependentXComb ()
 Default constructor.
 
virtual ~StdDependentXComb ()
 Destructor.
 
CrossSection dSigDR ()
 Return the cross section differential in the variables previously supplied. More...
 
void setIncomingPartons ()
 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(). More...
 
void remakeIncoming ()
 Indicate that information on incoming partons has to be collected.
 
void setProcess ()
 Set the process as selected by the dependent matrix element.
 
virtual tSubProPtr construct ()
 Construct a sub-process object from the information available.
 
void setPartonBinInstances (Energy2 scale=ZERO)
 Properly setup the PartonBinInstance objects provided a sub process has been constructed using this XComb.
 
Functions used for collecting statistics.
virtual const XSecStatstats () const
 The statistics object for this XComb.
 
virtual void select (double weight)
 Select the current event. More...
 
virtual void accept ()
 Accept the current event assuming it was previously selcted.
 
virtual void reject (double weight=1.0)
 Reject the current event assuming it was previously accepted. More...
 
virtual void reset ()
 Reset statistics.
 
Functions used by the persistent I/O system.
void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently. More...
 
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently. More...
 
- Public Member Functions inherited from ThePEG::StandardXComb
 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 ()
 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.
 
tcSubHdlPtr subProcessHandler () const
 Return a pointer to the corresponding sub-process handler. More...
 
tMEPtr matrixElement () const
 The matrix element to be used.
 
tStdXCombPtr head () const
 Return a pointer to the head XComb this XComb depends on. More...
 
void head (tStdXCombPtr headXC)
 Set the head XComb pointer.
 
virtual bool checkInit ()
 Try to determine if this subprocess is at all possible.
 
int nDim () const
 The number of dimensions of the phase space used to generate this process.
 
bool willPassCuts () const
 Return true, if the current configuration will pass the cuts.
 
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.
 
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 reweight (double oldWeight, double newWeight)
 Reweight a selected and accepted event.
 
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. More...
 
CrossSection lastMECrossSection () const
 Return the partonic cross section as calculated for the last phase space point. More...
 
double lastMEPDFWeight () const
 Return the PDF weight as calculated for the last phase space point, if the matrix element does supply PDF weights. More...
 
void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently. More...
 
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently. More...
 
- Public Member Functions inherited from ThePEG::XComb
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.
 
 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. More...
 
void clean ()
 Reset all saved data about last generated phasespace point;.
 
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.
 
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. More...
 
double lastP2 () const
 Log of one over the momentum fraction of the second incoming particle w.r.t. More...
 
void lastP1P2 (pair< double, double > pp)
 Set log of one over the momentum fraction of the incoming particles w.r.t. More...
 
double lastL1 () const
 Log of one over the first incoming parton momentum fraction w.r.t. More...
 
double lastL2 () const
 Log of one over the second incoming parton momentum fraction w.r.t. More...
 
void lastL1L2 (pair< double, double >)
 Set log of one over the incoming parton momentum fractions w.r.t. More...
 
double lastX1 () const
 The first incoming parton momentum fraction w.r.t. More...
 
double lastX2 () const
 The second incoming parton momentum fraction w.r.t. More...
 
void lastX1X2 (pair< double, double >)
 Set the incoming parton momentum fractions w.r.t. More...
 
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. More...
 
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.
 
double lastAlphaS () const
 Get the $\alpha_S$ used in the hard scattering. More...
 
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. More...
 
void lastAlphaEM (double a)
 Set the $\alpha_{EM}$ used in the hard scattering.
 
void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently. More...
 
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently. More...
 
- 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. More...
 
virtual void debugme () const
 Print out debugging information for this object on std::cerr. More...
 
- Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted
CounterType referenceCount () const
 Return the reference count.
 

Static Public Member Functions

static void Init ()
 Standard Init function used to initialize the interface.
 
- Static Public Member Functions inherited from ThePEG::StandardXComb
static void Init ()
 Standard Init function used to initialize the interface.
 
- 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. More...
 

Private Member Functions

StdDependentXComboperator= (const StdDependentXComb &)
 Private and non-existent assignment operator.
 

Private Attributes

bool resetIncoming
 Wether or not we have to reset the incoming partons.
 

Static Private Attributes

static ClassDescription< StdDependentXCombinitStdDependentXComb
 Describe a concrete class with persistent data.
 

Friends

class MEBase
 MEBase needs to be a friend. More...
 

Additional Inherited Members

- Public Types inherited from ThePEG::StandardXComb
typedef MEBase::DiagramVector DiagramVector
 A vector of DiagramBase objects. More...
 
typedef MEBase::DiagramIndex DiagramIndex
 A vector of indices. More...
 
- Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType
 The integer type used for counting.
 
- Public Attributes inherited from ThePEG::Pointer::ReferenceCounted
const unsigned long uniqueId
 The unique ID. More...
 
- Protected Member Functions inherited from ThePEG::StandardXComb
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 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. More...
 
void lastMECrossSection (CrossSection v)
 Set the partonic cross section as calculated for the last phase space point. More...
 
void lastMEPDFWeight (double v)
 Set the PDF weight as calculated for the last phase space point, if the matrix element does supply PDF weights. More...
 
- Protected Member Functions inherited from ThePEG::XComb
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.
 
- Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
 ReferenceCounted ()
 Default constructor.
 
 ReferenceCounted (const ReferenceCounted &)
 Copy-constructor.
 
ReferenceCountedoperator= (const ReferenceCounted &)
 Assignment.
 
- Protected Attributes inherited from ThePEG::StandardXComb
pair< int, int > partonDims
 The number of dimensions of the phase space used for each of the incoming partons.
 

Detailed Description

The StdDependentXComb class inherits from the StandardXComb class and represents information on a hard subprocess in dependence of another hard subprocess referred to by the head XComb object.

Such associations are commonly encountered in higher order corrections carried ouut within the subtraction method. This is indeed the main application of the StdXCombGroup and StdDependentXComb classes.

See also
StdXCombGroup
MEGroup

Definition at line 30 of file StdDependentXComb.h.

Member Function Documentation

CrossSection ThePEG::StdDependentXComb::dSigDR ( )

Return the cross section differential in the variables previously supplied.

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

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

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.
virtual void ThePEG::StdDependentXComb::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).

Reimplemented from ThePEG::StandardXComb.

Definition at line 121 of file StdDependentXComb.h.

References ThePEG::StandardXComb::head().

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

Select the current event.

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

Reimplemented from ThePEG::StandardXComb.

Definition at line 109 of file StdDependentXComb.h.

References ThePEG::StandardXComb::head().

void ThePEG::StdDependentXComb::setIncomingPartons ( )

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.

Friends And Related Function Documentation

friend class MEBase
friend

MEBase needs to be a friend.

Definition at line 33 of file StdDependentXComb.h.


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