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:

ThePEG::HandlerBase ThePEG::LastXCombInfo< XC > ThePEG::HandlerBaseT< T > ThePEG::Interfaced ThePEG::InterfacedBase ThePEG::Base ThePEG::Named ThePEG::Pointer::ReferenceCounted ThePEG::FixedCMSLuminosity

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.

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.


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 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 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.

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.

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 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.

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

Function used to write out object persistently.

Parameters:
os the persistent output stream written to.

Reimplemented from ThePEG::Interfaced.

void ThePEG::LuminosityFunction::persistentInput ( PersistentIStream is,
int  version 
)

Function used to read in object persistently.

Parameters:
is the persistent input stream read from.
version the version number of the object when written.

Reimplemented from ThePEG::Interfaced.

virtual IBPtr ThePEG::LuminosityFunction::clone (  )  const [protected, virtual]

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 [protected, virtual]

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.


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:

Generated on Thu Apr 29 12:43:04 2010 for ThePEG by  doxygen 1.5.5