Pythia7::LundZGenerator Class Reference

The LundZGenerator generates longitudinal scaling variable z of hadron produced in the Lund string fragmentation scheme, according to the Lund Symmetric Fragmentation Function, $f(z)=(1/z^{c})(1-z)^{a}exp(-bm_\perp^2/z)$, where the $a$, $b$ and $c$ factors are determined by the setShape() function. More...

#include <LundZGenerator.h>

Inheritance diagram for Pythia7::LundZGenerator:

ThePEG::ZGenerator 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.
 LundZGenerator ()
 Default constructor.
 LundZGenerator (const LundZGenerator &)
 Copy-constructor.
virtual ~LundZGenerator ()
 Destructor.
Virtual functions mandated by the ZGenerator base class.
virtual double generate (cPDPtr lastPD, cPDPtr newPD, Energy2 mT2) const
 generate the scaling variable z of hadrons created at each step of the fragmentation procedure, given the two hadron constituents lastPD leftover at the previous step, and the newPD newly created in the current step and the hadron transverse mass squared mT2.
double aSym () const
 Return the default value of the $a$ parameter of the Lund Symmetric fragmentation function.
InvEnergy2 bSym () const
 Return the default value of the $b$ parameter of the Lund Symmetric fragmentation function.
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

virtual void setShape (cPDPtr lastPD, cPDPtr newPD, Energy2 mT2) const
 Determine the $a$, $b$ and $c$ parameters of the fragmentation function parametrization, given the flavour content of the two end-points lastPD and newPD and the hadron mT2.
virtual double rQ (long hf) const
 Return the value of the $r_Q$ parameter of the Bowler parametrization given the the heavy quark id number, hf.
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 doupdate () throw (UpdateException)
 Check sanity of the object during the setup phase.
virtual void doinit () throw (InitException)
 Initialize this object after the setup phase before saving an EventGenerator to disk.
virtual void dofinish ()
 Finalize this object.

Private Member Functions

double af () const
 Return the $a$ factor of the fragmentation function parametrization.
double bf () const
 Return the $b m_\perp^2$ factor of the fragmentation function parametrization.
double cf () const
 Return the $c$ factor of the fragmentation function parametrization.
bool smallZmax (double zm) const
 Return true when zm is below the minimal value for Zmax.
bool largeZmax (double zm) const
 Return true when zm is above the maximal value for Zmax.
bool largeZmax (double zm, double bmt2) const
 Return true when both zm and bmt2 are large.
bool cCloseToOne () const
 Return true when $c$ is close to 1.
bool cCloseToA () const
 Return true when $c$ is close to $a$.
LundZGeneratoroperator= (const LundZGenerator &)
 Private and non-existent assignment operator.

Private Attributes

double asym
 The default $a$ parameter of the Lund Symmetric fragmentation function.
InvEnergy2 bsym
 The default $b$ parameter of the Lund Symmetric fragmentation function.
double deltaDQ
 The amount by which the effective a$a$ parameter in the Lund flavour dependent symmetric fragmentation function is assumed to be larger than the default $a$ when diquarks are produced.
double rQc
 The value of the $r_Q$ parameter of the Bowler parametrization for all quarks heavier than the c-quark.
double bmT2
 Current value of $bm_\perp^2$.
double theAf
 Current value of $a$.
double theCf
 Current value of $c$.

Static Private Attributes

static ClassDescription
< LundZGenerator
initLundZGenerator
 Init Interface Description/Map.


Detailed Description

The LundZGenerator generates longitudinal scaling variable z of hadron produced in the Lund string fragmentation scheme, according to the Lund Symmetric Fragmentation Function, $f(z)=(1/z^{c})(1-z)^{a}exp(-bm_\perp^2/z)$, where the $a$, $b$ and $c$ factors are determined by the setShape() function.

For diuark production there is an enhancement of the effective $a$ parameter (see deltaDQ).

A heavy endpoint quark (above c quark) is treated according to the Bowler modification of the Lund Symmetric fragmentation function. (see the rQ() method).

The LundZGenerator inherits all the necessary interfaces from the ZGenerator class.

See also:
The interfaces defined for LundZGenerator.

Definition at line 35 of file LundZGenerator.h.


Member Function Documentation

void Pythia7::LundZGenerator::persistentOutput ( PersistentOStream os  )  const

Function used to write out object persistently.

Parameters:
os the persistent output stream written to.

Reimplemented from ThePEG::Interfaced.

void Pythia7::LundZGenerator::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 double Pythia7::LundZGenerator::rQ ( long  hf  )  const [inline, protected, virtual]

Return the value of the $r_Q$ parameter of the Bowler parametrization given the the heavy quark id number, hf.

Note that the same $r_Q$ value is returned for all hf above the c-quark.

virtual IBPtr Pythia7::LundZGenerator::clone (  )  const [inline, protected, virtual]

Make a simple clone of this object.

Returns:
a pointer to the new object.

Implements ThePEG::InterfacedBase.

virtual IBPtr Pythia7::LundZGenerator::fullclone (  )  const [inline, 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 Pythia7::LundZGenerator::doinit (  )  throw (InitException) [inline, 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.

virtual void Pythia7::LundZGenerator::dofinish (  )  [inline, protected, virtual]

Finalize this object.

Called in the run phase just after a run has ended. Used eg. to write out statistics.

Reimplemented from ThePEG::InterfacedBase.


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

Generated on Thu Apr 29 12:45:35 2010 for Pythia7 by  doxygen 1.5.5