ThePEG::LeptonLeptonRemnant Class Reference

LeptonLeptonRemnant inherits from the RemnantHandler and implements the generation of a single collinear photon remnant when a lepton is extracted from a lepton. More...

#include <LeptonLeptonRemnant.h>

Inheritance diagram for ThePEG::LeptonLeptonRemnant:

ThePEG::RemnantHandler ThePEG::HandlerBase ThePEG::HandlerBaseT< T > ThePEG::Interfaced ThePEG::InterfacedBase ThePEG::Base ThePEG::Named ThePEG::Pointer::ReferenceCounted

List of all members.

Public Member Functions

Standard constructors and destructors.
 LeptonLeptonRemnant ()
 Default constructor.
Virtual functions mandated by the RemnantHandler base class.
virtual bool canHandle (tcPDPtr particle, const cPDVector &partons) const
 Return true if this remnant handler can handle extracting all specified partons form the given particle.
virtual int nDim (const PartonBin &pb, bool doScale) const
 If the generation of remnants is expected to influence the actual cross section of the hard sub process, the degrees of freedom generated by this remnant handler may be included in the general phase space sampling for the subprocess.
virtual bool recreateRemnants (PartonBinInstance &pb, tPPtr oldp, tPPtr newp, double newl, Energy2 scale, const LorentzMomentum &p, const PVector &prev=PVector()) const
 Redo the remnant generation for the given particle bin, pb.
virtual bool recreateRemnants (PartonBinInstance &pb, tPPtr oldp, tPPtr newp, double newl, Energy2 scale, Energy2 shat, const LorentzMomentum &p, const PVector &prev=PVector()) const
 Redo the remnant generation for the given particle bin, pb.
virtual Lorentz5Momentum generate (PartonBinInstance &pb, const double *r, Energy2 scale, const LorentzMomentum &p) const
 Generate momenta.
virtual Lorentz5Momentum generate (PartonBinInstance &pb, const double *r, Energy2 scale, Energy2 shat, const LorentzMomentum &parent) const
 Generate the momentum of the extracted parton with the parent momentum given by the last argument.
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

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.
Standard Interfaced functions.
virtual void doinit ()
 Initialize this object after the setup phase before saving an EventGenerator to disk.

Private Member Functions

LeptonLeptonRemnantoperator= (const LeptonLeptonRemnant &)
 Private and non-existent assignment operator.

Private Attributes

double minX
 The minimum energy fraction allowed for a photon remnant.
tPDPtr photon
 Easy access to a proton data object.

Static Private Attributes

static ClassDescription
< LeptonLeptonRemnant
initLeptonLeptonRemnant
 Describe a concrete class with persistent data.


Detailed Description

LeptonLeptonRemnant inherits from the RemnantHandler and implements the generation of a single collinear photon remnant when a lepton is extracted from a lepton.

See also:
The interfaces defined for LeptonLeptonRemnant.

LeptonLeptonPDF

Definition at line 25 of file LeptonLeptonRemnant.h.


Member Function Documentation

virtual int ThePEG::LeptonLeptonRemnant::nDim ( const PartonBin pb,
bool  doScale 
) const [virtual]

If the generation of remnants is expected to influence the actual cross section of the hard sub process, the degrees of freedom generated by this remnant handler may be included in the general phase space sampling for the subprocess.

In this case this function should be overridden to return the number of degrees of freedom used in the generation. If doScale is false, it means that the actual virtuality of the extracted parton will be obtained from another source.

Reimplemented from ThePEG::RemnantHandler.

virtual bool ThePEG::LeptonLeptonRemnant::recreateRemnants ( PartonBinInstance pb,
tPPtr  oldp,
tPPtr  newp,
double  newl,
Energy2  scale,
const LorentzMomentum p,
const PVector prev = PVector() 
) const [virtual]

Redo the remnant generation for the given particle bin, pb.

If oldp is non-null it corresponds to the previously extracted parton which should be replaced by newp. If oldp is null it means newp should be extracted in addition to the previously extracted ones available in prev.

Returns:
false if the generation failed.

Reimplemented from ThePEG::RemnantHandler.

virtual bool ThePEG::LeptonLeptonRemnant::recreateRemnants ( PartonBinInstance pb,
tPPtr  oldp,
tPPtr  newp,
double  newl,
Energy2  scale,
Energy2  shat,
const LorentzMomentum p,
const PVector prev = PVector() 
) const [virtual]

Redo the remnant generation for the given particle bin, pb.

If oldp is non-null it corresponds to the previously extracted parton which should be replaced by newp. If oldp is null it means newp should be extracted in addition to the previously extracted ones available in prev. In either case shat is the total invariant mass squared of the hard sub-system produced by the extracted parton and the primary parton entering from the other side.

Returns:
false if the generation failed.

Reimplemented from ThePEG::RemnantHandler.

virtual Lorentz5Momentum ThePEG::LeptonLeptonRemnant::generate ( PartonBinInstance pb,
const double *  r,
Energy2  scale,
const LorentzMomentum p 
) const [virtual]

Generate momenta.

Generates the momenta of the extracted parton in the particle cms (but with the parton $x$ still the positive light-cone fraction) as given by the last argument, p. If the particle is space-like the positive and negative light-cone momenta are $\sqrt{-m^2}$ and $-sqrt{-m^2}$ respectively. If the scale is negative, it means that the doScale in the previous call to nDim() was true, otherwise the given scale should be the virtuality of the extracted parton. Generated quantities which are not returned in the momentum may be saved in the PartonBin, pb, for later use. In particular, if the nDim() random numbers, r, are not enough to generate with weight one, the resulting weight should be stored with the remnantWeight() method of the parton bin.

Implements ThePEG::RemnantHandler.

virtual Lorentz5Momentum ThePEG::LeptonLeptonRemnant::generate ( PartonBinInstance pb,
const double *  r,
Energy2  scale,
Energy2  shat,
const LorentzMomentum parent 
) const [virtual]

Generate the momentum of the extracted parton with the parent momentum given by the last argument.

If the scale is negative, it means that the doScale in the previous call to nDim() was true, otherwise the given scale should be the virtuality of the extracted parton. shat is the total invariant mass squared of the hard sub-system produced by the extracted parton and the primary parton entering from the other side. Generated quantities which are not returned in the momentum may be saved in the PartonBinInstance, pb, for later use. In particular, if the nDim() random numbers, r, are not enough to generate with weight one, the resulting weight should be stored with the remnantWeight() method of the parton bin.

Implements ThePEG::RemnantHandler.

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

Function used to write out object persistently.

Parameters:
os the persistent output stream written to.

Reimplemented from ThePEG::RemnantHandler.

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

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

Make a simple clone of this object.

Returns:
a pointer to the new object.

Implements ThePEG::InterfacedBase.

virtual IBPtr ThePEG::LeptonLeptonRemnant::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.

virtual void ThePEG::LeptonLeptonRemnant::doinit (  )  [protected, virtual]

Initialize this object after the setup phase before saving an EventGenerator to disk.

Exceptions:
InitException if object could not be initialized properly.

Reimplemented from ThePEG::InterfacedBase.


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

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