ThePEG  1.8.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends
ThePEG::LuminosityFunction Class Reference

The LuminosityFunction describes the momentum distribution of the incoming beams in an experiment. More...

#include <LuminosityFunction.h>

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

List of all members.

Public Member Functions

void select (tXCombPtr)
 Set information about the selected XComb.
Standard constructors and destructors.
 LuminosityFunction (Energy a=45.6 *GeV, Energy b=45.6 *GeV)
 Default constructor.
Virtual functions to be overridden by sub-classes.
virtual bool canHandle (const cPDPair &) const
 Return true if this luminosity function can actually handle a given pair of incoming particles.
virtual Energy maximumCMEnergy () const
 Return the maximum possible center of mass energy for an event.
virtual LorentzRotation getBoost () const
 Return the rotation needed to transform from the collision cm system to the labotatory system.
virtual double Y () const
 Return the rapidity of the colliding particles (at the maximum energy) in the laboratory system.
virtual int nDim (const cPDPair &) const
 How many random numbers are needed to generate a phase space point? Default is zero in which means the energy of the incoming particles is fixed.
virtual double value (const cPDPair &, double l1, double l2) const
 The value of the luminosity function for the given particle types for the given energy fractions l1 and l2 ( $l=\log(1/x)$).
virtual pair< double, double > generateLL (const double *r, double &jacobian) const
 Generate energy fractions l1 and l2 ( $l=\log(1/x)$) given 'nDim()' random numbers in the range ]0,1[ given by the iterators.
Simple access functions
Energy beamEMaxA () const
 The maximum energy of the beam entering along the positive z-axis.
Energy beamEMaxB () const
 The maximum energy of the beam entering along the negative z-axis.
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.
- Public Member Functions inherited from ThePEG::LastXCombInfo<>
const XComblastXComb () const
 Return a reference to the last selected XComb.
tXCPtr lastXCombPtr () const
 Return a pointer to the last selected XComb.
const XComblastHeadXComb () const
 If the last selected XComb object belongs to a group of XComb's return a reference to the head XComb object for this group.
tXCPtr lastHeadXCombPtr () const
 If the last selected XComb object belongs to a group of XComb's return a pointer to the head XComb object for this group.
const EventHandlerlastEventHandler () const
 Return a reference to the currently used EventHandler.
tPExtrPtr lastExtractor () const
 A pointer to the currently used parton extractor.
PDFT pdf (tcPPtr parton) const
 Return the parton density used to extract the given parton.
const CutslastCuts () const
 A reference to the currently used kinematical cuts.
tCutsPtr lastCutsPtr () const
 A pointer to the currently used kinematical cuts.
const PPairlastParticles () const
 Return the pair of incoming parton instances.
Energy2 lastS () const
 The last generated total energy squared of the incoming particles.
const PPairlastPartons () const
 Return the pair of incoming parton instances.
Energy2 lastSHat () const
 The last used interval in total parton-parton energy squared.
double lastTau () const
 Return lastSHat()/lastS().
double lastY () const
 The 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.
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.
double lastX1 () const
 The first incoming parton momentum fraction w.r.t.
double lastX2 () const
 The second incoming parton momentum fraction 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.
double lastFL1L2 () const
 The product of the parton density functions at the last generated phase-space point.
Energy2 lastScale () const
 The chosen scale of the hard scattering.
double lastAlphaS () const
 Get the $\alpha_S$ used in the hard scattering.
double lastAlphaEM () const
 Get the $\alpha_{EM}$ used in the hard scattering.
const vector< Lorentz5Momentum > & meMomenta () const
 Return the momenta of the incoming and outgoing partons to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.
double lastME2 () const
 Return the matrix element squared as calculated for the last phase space point.
double jacobian () const
 Get the last jacobian obtained when generating the kinematics for the call to dSigHatDR.
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.
tSubProPtr subProcess () const
 Return the SubProcess object corresponding to the last generated sub-process.
const cPDVectormePartonData () const
 Return the incoming and outgoing parton types to be used by the matrix element object, in the order specified by the TreeDiagram objects given by the matrix element.

Static Public Member Functions

static void Init ()
 Standard Init function used to initialize the interface.

Protected Member Functions

void beamEMaxA (Energy x)
 The maximum energy of the beam entering along the positive z-axis.
void beamEMaxB (Energy x)
 The maximum energy of the beam entering along the negative z-axis.
Clone Methods.
virtual IBPtr clone () const
 Make a simple clone of this object.
virtual IBPtr fullclone () const
 Make a clone of this object, possibly modifying the cloned object to make it sane.

Private Member Functions

LuminosityFunctionoperator= (const LuminosityFunction &)
 Private and non-existent assignment operator.

Private Attributes

Energy theBeamEMaxA
 The maximum energy of the beam entering along the positive z-axis.
Energy theBeamEMaxB
 The maximum energy of the beam entering along the negative z-axis.

Static Private Attributes

static ClassDescription
< LuminosityFunction
initLuminosityFunction
 Describe an abstract class with persistent data.

Friends

class EventHandler
 EventHandler is a friend.

Additional Inherited Members

- Public Types inherited from ThePEG::LastXCombInfo<>
typedef ThePEG::Ptr< XComb >
::pointer 
XCPtr
 Alias for a reference counted pointer to XC .
typedef ThePEG::Ptr< XComb >
::const_pointer 
cXCPtr
 Alias for a reference counted pointer to a const XC .
typedef ThePEG::Ptr< XComb >
::transient_pointer 
tXCPtr
 Alias for a transient pointer to XC .
typedef ThePEG::Ptr< XComb >
::transient_const_pointer 
tcXCPtr
 Alias for a transient pointer to a const XC .
- Protected Attributes inherited from ThePEG::LastXCombInfo<>
XCPtr theLastXComb
 The pointer to the last selected XComb.

Detailed Description

The LuminosityFunction describes the momentum distribution of the incoming beams in an experiment.

This is used by a EventHandler to generate collisions in their CM system. The LuminosityFunction will be asked to produce a LorentzRotation giving the transformation to the laboratory system.

The LuminosityFunction inherits from the LastXCombInfo class to give easy access to the information of the generated primary sub-process in the selected XComb.

This base class implements simple fixed momentum beams with energies given by the BeamEMaxA and BeamEMaxB interfaces.

See also:
The interfaces defined for LuminosityFunction.
XComb

Definition at line 39 of file LuminosityFunction.h.


Constructor & Destructor Documentation

ThePEG::LuminosityFunction::LuminosityFunction ( Energy  a = 45.6 *GeV,
Energy  b = 45.6 *GeV 
)

Default constructor.

Optionally the maximum energy of beam a and b can be given.


Member Function Documentation

virtual IBPtr ThePEG::LuminosityFunction::clone ( ) const
protectedvirtual

Make a simple clone of this object.

Returns:
a pointer to the new object.

Implements ThePEG::InterfacedBase.

Reimplemented in ThePEG::FixedCMSLuminosity.

virtual IBPtr ThePEG::LuminosityFunction::fullclone ( ) const
protectedvirtual

Make a clone of this object, possibly modifying the cloned object to make it sane.

Returns:
a pointer to the new object.

Reimplemented from ThePEG::InterfacedBase.

Reimplemented in ThePEG::FixedCMSLuminosity.

virtual pair<double,double> ThePEG::LuminosityFunction::generateLL ( const double *  r,
double &  jacobian 
) const
virtual

Generate energy fractions l1 and l2 ( $l=\log(1/x)$) given 'nDim()' random numbers in the range ]0,1[ given by the iterators.

The jacobian argument must be multiplied by the jacobian of the variable transformation to l1 and l2. The default version is just a delta function with a jacobian of 1.

virtual LorentzRotation ThePEG::LuminosityFunction::getBoost ( ) const
virtual

Return the rotation needed to transform from the collision cm system to the labotatory system.

This default version returns the unit transformation.

virtual int ThePEG::LuminosityFunction::nDim ( const cPDPair ) const
virtual

How many random numbers are needed to generate a phase space point? Default is zero in which means the energy of the incoming particles is fixed.

The only other reasonable values are 1 and 2.

void ThePEG::LuminosityFunction::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.

Reimplemented from ThePEG::Interfaced.

void ThePEG::LuminosityFunction::persistentOutput ( PersistentOStream os) const

Function used to write out object persistently.

Parameters:
osthe persistent output stream written to.

Reimplemented from ThePEG::Interfaced.

virtual double ThePEG::LuminosityFunction::value ( const cPDPair ,
double  l1,
double  l2 
) const
virtual

The value of the luminosity function for the given particle types for the given energy fractions l1 and l2 ( $l=\log(1/x)$).

The default version returns 1 if l1 and l2 are zero otherwize zero.

virtual double ThePEG::LuminosityFunction::Y ( ) const
virtual

Return the rapidity of the colliding particles (at the maximum energy) in the laboratory system.

This default version assumes the CM system is the same as the lab system and returns zero.


Friends And Related Function Documentation

friend class EventHandler
friend

EventHandler is a friend.

Definition at line 42 of file LuminosityFunction.h.


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