#include <LeptonLeptonRemnant.h>
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 | |
LeptonLeptonRemnant & | operator= (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. |
Definition at line 25 of file LeptonLeptonRemnant.h.
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.
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.
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 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 and 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.
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.
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.
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.
Reimplemented from ThePEG::InterfacedBase.
virtual void ThePEG::LeptonLeptonRemnant::doinit | ( | ) | [protected, virtual] |
Initialize this object after the setup phase before saving an EventGenerator to disk.
InitException | if object could not be initialized properly. |
Reimplemented from ThePEG::InterfacedBase.