thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
ThePEG::ParticleData Class Reference

ParticleData inherits from InterfacedBase and represents the properties of a particle type. More...

#include <ParticleData.h>

Inheritance diagram for ThePEG::ParticleData:

Public Types

typedef Selector< tDMPtrDecaySelector
 A selector of DecayMode objects.
 
- Public Types inherited from ThePEG::InterfacedBase
enum  InitState { initializing = -1 , uninitialized = 0 , initialized = 1 , runready = 2 }
 Enumeration reflecting the state of an InterfacedBase object. More...
 
- Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType
 The integer type used for counting.
 

Public Member Functions

 ParticleData ()
 Default constructor.
 
Acces to number and name.
long id () const
 Return the PDG id number.
 
const string & PDGName () const
 Return the generic PDG name.
 
const string & genericName () const
 Return the generic PDG name.
 
Functions used for producing Particle instances.
PPtr produceParticle (const Lorentz5Momentum &) const
 Produce a particle specifying momentum.
 
PPtr produceParticle (const LorentzMomentum &) const
 Produce a particle specifying momentum.
 
PPtr produceParticle (const LorentzMomentum &, Energy m) const
 Produce a particle specifying 4-momentum and a mass.
 
PPtr produceParticle (const Momentum3 &pp=Momentum3()) const
 Produce a particle specifying 3-momentum.
 
PPtr produceParticle (Energy m, const Momentum3 &pp=Momentum3()) const
 Produce a particle specifying mass and 3-momentum.
 
PPtr produceParticle (Energy plus, Energy minus, Energy px, Energy py) const
 Produce a particle specifying light-cone momentum components and transverse momentum components.
 
Energy generateMass () const
 Generate a mass for an instance of this particle type.
 
Energy generateWidth (Energy mass) const
 Generate a width for an instance of this particle type.
 
Length generateLifeTime (Energy mass, Energy width) const
 Generate a mass for an instance of this particle type.
 
Access the decay modes.
const DecaySelectordecaySelector () const
 Return the nominal decay selector for this particle.
 
tDMPtr selectMode (Particle &p) const
 Selects a decay mode randomly according to the branching ratios.
 
const DecaySet & decayModes () const
 Access all the decay modes, including those which are switched off, or have zero branching ratio.
 
Energy mass (Energy)
 Set the nominal mass.
 
Energy mass () const
 Return the nominal mass.
 
Energy hardProcessMass () const
 Return the mass to be used when evaluating hard process cross sections.
 
Energy massMax () const
 Return the maximum possible mass of this particle type.
 
Energy massMin () const
 Return the minimum possible mass of this particle type.
 
virtual Energy constituentMass () const
 Return the constituent mass of this particle if relevant.
 
Energy width (Energy)
 Set the width.
 
Energy width () const
 Get the width.
 
Energy widthCut (Energy wci)
 Set the width cut.
 
Energy widthCut () const
 Get the width cut.
 
Energy widthUpCut (Energy)
 Set the upper width cut.
 
Energy widthUpCut () const
 Get the upper width cut.
 
Energy widthLoCut (Energy)
 Set the lower width cut.
 
Energy widthLoCut () const
 Get the lower width cut.
 
Length cTau (Length)
 Set the life time cTau.
 
Length cTau () const
 Get the life time cTau cTau.
 
Energy hardProcessWidth () const
 Return the width to be used when evaluating hard process cross sections.
 
PDT::Charge iCharge (PDT::Charge)
 Set the charge.
 
Charge charge () const
 Get the charge.
 
PDT::Charge iCharge () const
 Get the charge.
 
bool charged () const
 Return true if charged.
 
bool positive () const
 Return true if positively charged.
 
bool negative () const
 Return true if negatively charged.
 
PDT::Spin iSpin (PDT::Spin)
 Set the spin.
 
AngularMomentum spin () const
 Get the spin.The spin is returned in standard units.
 
PDT::Spin iSpin () const
 Get the spin.
 
PDT::Colour iColour (PDT::Colour)
 Set the colour of the particle in units of PDT::Colour.
 
PDT::Colour iColour () const
 Get the colour of the particle in units of PDT::Colour.
 
bool coloured () const
 Return true if coloured.
 
bool hasColour (bool anti=false) const
 Return true if (anti) coloured or colour-octet.
 
bool hasAntiColour () const
 Return true if anti coloured or colour-octet.
 
PDT::ColouredInteraction colouredInteraction () const
 Return what kind of colour charge this particle carries.
 
void stable (bool stab)
 Specify if particle is to be considered stable according to stab.
 
bool stable () const
 Return true if particle is to be considered stable.
 
tPDPtr CC () const
 Get the pointer to the corresponding anti partner.
 
void synchronized (bool sync)
 Specify if the anti partner chould be changed automatically when this object is changed according to sync.
 
bool synchronized () const
 Return true if the anti partner chould be changed automatically when this object is changed.
 
void synchronize ()
 If there is an anti-partner, update this object to have correct anti-properties.
 
void massGenerator (tMassGenPtr)
 Set the mass generator object.
 
tMassGenPtr massGenerator () const
 Get the mass generator object.
 
void widthGenerator (tWidthGeneratorPtr)
 Set the width generator object.
 
tWidthGeneratorPtr widthGenerator () const
 Get the width generator object.
 
void variableRatio (bool varRatio)
 Specify if the branching ratio of the Particle instances should vary with their masses.
 
bool variableRatio () const
 Return true if the branching ratio should vary with the mass of the Particle instance.
 
- Public Member Functions inherited from ThePEG::Interfaced
virtual ~Interfaced ()
 Empty virtual destructor.
 
virtual bool defaultInit ()
 Functions which are to be used during the actual event generation, after the setup is complete.
 
PPtr getParticle (PID) const
 Create a new Particle instance given a id number.
 
PDPtr getParticleData (PID) const
 Return a pointer to the ParticleData object corresponding to the given id number.
 
bool used () const
 Returns true if this object has actally been used.
 
void useMe () const
 Should be called to indicate that this object has actually been used.
 
tEGPtr generator () const
 Return a pointer to the EventGenerator controlling the run.
 
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::InterfacedBase
virtual ~InterfacedBase ()
 The virtual (empty) destructor;.
 
string fullName () const
 Returns the full name of this object including its path, e.g.
 
string name () const
 Returns the name of this object, without the path.
 
string path () const
 Returns the path to this object including the trailing '/'.
 
string comment () const
 Returns a comment assigned to this object.
 
void setup (istream &is)
 Read setup info from a standard istream is.
 
void update ()
 Calls the doupdate() function with recursion prevention.
 
void init ()
 Calls the doinit() function with recursion prevention.
 
virtual bool preInitialize () const
 Return true if this object needs to be initialized before all other objects (except those for which this function also returns true).
 
void initrun ()
 Calls the doinitrun() function with recursion prevention.
 
void finish ()
 Calls the dofinish() function with recursion prevention.
 
void touch ()
 This function should be called every time something in this object has changed in a way that a sanity check with update() is needed.
 
void reset ()
 Set the state of this object to uninitialized.
 
void clear ()
 Calls reset() and unTouch().
 
InitState state () const
 Return the state of initialization of this object.
 
bool locked () const
 Return true if the BaseRepository is not allowed to change the state of this object.
 
bool touched () const
 Return true if the state of this object has been changed since the last call to update().
 
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.
 
virtual void debugme () const
 Print out debugging information for this object on std::cerr.
 
- Public Member Functions inherited from ThePEG::Base
virtual ~Base ()
 The virtual destructor.
 
void debug () const
 Print out debugging information for this object on std::cerr.
 
virtual void debugme () const
 Print out debugging information for this object on std::cerr.
 
- Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted
CounterType referenceCount () const
 Return the reference count.
 
- Public Member Functions inherited from ThePEG::Named
 Named (const string &newName=string())
 Constructor with name.
 
 Named (const Named &)=default
 Explicit default copy-constructor (too avoid compiler warnings)
 
const string & name () const
 Return name.
 
bool operator== (const Named &other) const
 Test for equality.
 
bool operator< (const Named &other) const
 Lexicographical comparison.
 

Static Public Member Functions

The Create methods are special interfaces for ParticleData

classes.

static PDPtr Create (PID newId, const string &newPDGName)
 Create a Particle which is its own anti-particle.
 
static PDPair Create (PID newId, const string &newPDGName, const string &newAntiPDGName)
 Create a particle - anti particle pair.
 
- Static Public Member Functions inherited from ThePEG::Interfaced
static void Init ()
 Standard Init function.
 
- Static Public Member Functions inherited from ThePEG::InterfacedBase
static void Init ()
 Standard Init function.
 
- Static Public Member Functions inherited from ThePEG::Base
static void Init ()
 The standard Init function used to initialize the interfaces.
 

Friends

class Repository
 The Repository is a friend.
 
class EventGenerator
 The EventGenerator is a friend.
 
class DecayMode
 DecayMode is a friend.
 

Standard Interfaced functions.

PID theId
 Id number according to the STDHEP/PDG standard.
 
string thePDGName
 Name and Id number according to the STDHEP/PDG standard.
 
Energy theMass
 Nominal mass.
 
Energy theWidth
 Width.
 
Energy theHardProcessMass
 The mass to be used when evaluating hard process cross sections.
 
bool hardProcessMassSet
 True, if a hard process mass has been set.
 
Energy theHardProcessWidth
 The width to be used when evaluating hard process cross sections.
 
bool hardProcessWidthSet
 True, if a hard process width has been set.
 
Energy theWidthUpCut
 Upper width cut.
 
Energy theWidthLoCut
 Lower width cut.
 
Length theCTau
 Lifetime.
 
PDT::Charge theCharge
 Three times the charge.
 
PDT::Spin theSpin
 2 times the spin plus one.
 
PDT::Colour theColour
 The colour for this particle.
 
PDT::ColouredInteraction theColouredInteraction
 The coloured interaction of this particle.
 
MassGenPtr theMassGenerator
 The nonabelian interaction of this particle.
 
bool isStable
 True if the particle is considered stable.
 
DecaySelector theDecaySelector
 A selector of decay modes weighted by the nominal branching ratios.
 
DecaySet theDecayModes
 The set of all decay modes.
 
WidthGeneratorPtr theWidthGenerator
 A pointer to an object capable to generate the branching fractions for different decay modes for this particle type.
 
bool theVariableRatio
 Determine whether the branching fractions are allowed to change on a particle-by-particle basis.
 
tPDPtr theAntiPartner
 Pointer to the object corresponding to the antiparticle.
 
bool syncAnti
 If syncAnti is true all changes to this object will be transfered to the antiParticle.
 
Energy theDefMass
 Helper variable to keep track of the default mass.
 
Energy theDefWidth
 Helper variable to keep track of the default width.
 
Energy theDefCut
 Helper variable to keep track of the default width cut.
 
Length theDefCTau
 Helper variable to keep track of the default lifetime.
 
PDT::Charge theDefCharge
 Helper variable to keep track of the default charge.
 
PDT::Spin theDefSpin
 Helper variable to keep track of the default spin.
 
PDT::Colour theDefColour
 Helper variable to keep track of the default colour.
 
PDT::ColouredInteraction theDefColouredInteraction
 Helper variable to keep track of the default coloured interaction.
 
static ClassDescription< ParticleDatainitParticleData
 Describe a concrete class with persistent data.
 
virtual void doupdate ()
 Check sanity of the object during the setup phase.
 
virtual void doinit ()
 Initialize this object after the setup phase before saving an EventGenerator to disk.
 
virtual void rebind (const TranslationMap &trans)
 Rebind pointer to other Interfaced objects.
 
virtual IVector getReferences ()
 Return a vector of all pointers to Interfaced objects used in this object.
 
virtual void doinitrun ()
 Initialize this object.
 
void addDecayMode (tDMPtr)
 Add a decay mode for this particle.
 
void removeDecayMode (tDMPtr)
 Remove a decay mode for this particle.
 
void setMass (Energy)
 Utility function for the interface.
 
void setHardProcessMass (Energy)
 Utility function for the interface.
 
string doUnsetHardProcessMass (string)
 Reset the hard process mass.
 
string doAdjustNominalMass (string)
 Adjust the nominal mass to the hard process mass if a reshuffling is not desirable.
 
Energy defMass () const
 Utility function for the interface.
 
void setWidth (Energy)
 Utility function for the interface.
 
void setHardProcessWidth (Energy)
 Utility function for the interface.
 
string doUnsetHardProcessWidth (string)
 Reset the hard process mass.
 
Energy getWidth () const
 Utility function for the interface.
 
Energy defWidth () const
 Utility function for the interface.
 
void setCut (Energy)
 Utility function for the interface.
 
Energy getCut () const
 Utility function for the interface.
 
Energy defCut () const
 Utility function for the interface.
 
void setUpCut (Energy)
 Utility function for the interface.
 
Energy getUpCut () const
 Utility function for the interface.
 
void setLoCut (Energy)
 Utility function for the interface.
 
Energy getLoCut () const
 Utility function for the interface.
 
void setCTau (Length)
 Utility function for the interface.
 
Length getCTau () const
 Utility function for the interface.
 
Length defCTau () const
 Utility function for the interface.
 
void setStable (long)
 Utility function for the interface.
 
long getStable () const
 Utility function for the interface.
 
void setSync (long)
 Utility function for the interface.
 
long getSync () const
 Utility function for the interface.
 
void setVariableRatio (long)
 Utility function for the interface.
 
long getVariableRatio () const
 Utility function for the interface.
 
string doSync (string)
 Utility function for the interface.
 
void setMassGenerator (MassGenPtr)
 Utility function for the interface.
 
void setWidthGenerator (WidthGeneratorPtr)
 Utility function for the interface.
 
void setCharge (int)
 Utility function for the interface.
 
string ssetCharge (string)
 Utility function for the interface.
 
int getCharge () const
 Utility function for the interface.
 
int defCharge () const
 Utility function for the interface.
 
void setSpin (int)
 Utility function for the interface.
 
int getSpin () const
 Utility function for the interface.
 
int defSpin () const
 Utility function for the interface.
 
void setColour (long)
 Utility function for the interface.
 
long getColour () const
 Utility function for the interface.
 
long defColour () const
 Utility function for the interface.
 
void setColouredInteraction (long)
 Utility function for the interface.
 
long getColouredInteraction () const
 Utility function for the interface.
 
long defColouredInteraction () const
 Utility function for the interface.
 
void insDecayModes (DMPtr dm, int)
 Utility function for the interface.
 
void delDecayModes (int i)
 Utility function for the interface.
 
vector< DMPtrgetDecayModes () const
 Utility function for the interface.
 
string doSelectDecayModes (string)
 Utility function for the interface.
 
string doPrintDecayModes (string)
 Utility function for the interface.
 

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 void Init ()
 

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.
 
virtual PDPtr pdclone () const
 Special clone function used by the Repository.
 
 ParticleData (PID newId, const string &newPDGName)
 Protected constructor only to be used by subclasses or by the Create method.
 
virtual void readSetup (istream &is)
 Read setup info from a standard stream.
 
static void antiSetup (const PDPair &pap)
 Used by subclasses or by the Create method to setup anti-relationship.
 

Additional Inherited Members

- Public Attributes inherited from ThePEG::Pointer::ReferenceCounted
const unsigned long uniqueId
 The unique ID.
 
- Protected Member Functions inherited from ThePEG::Interfaced
void reporeg (IBPtr object, string name) const
 Register the given object in the Repository with the given name in a subdirectory with the same name as this object.
 
template<typename PtrT >
bool setDefaultReference (PtrT &ptr, string classname, string objectname)
 If the pointer, ptr, to an object is not set, create an object of class classname and register it with the Repository with the given objectname in a sib-directory with the same name as this object.
 
 Interfaced ()
 Protected default constructor.
 
 Interfaced (const string &newName)
 Protected constructor taking a name as argument.
 
 Interfaced (const Interfaced &i)
 Protected copy-constructor.
 
void setGenerator (tEGPtr generator)
 Protected function to reset the generator pointer, required for automatic decayer generation in Herwig++ BSM models.
 
- Protected Member Functions inherited from ThePEG::InterfacedBase
virtual void dofinish ()
 Finalize this object.
 
 InterfacedBase ()
 Protected default constructor.
 
 InterfacedBase (string newName)
 Protected constructor with the name given as argument.
 
 InterfacedBase (const InterfacedBase &i)
 Protected copy-constructor.
 
- Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
 ReferenceCounted ()
 Default constructor.
 
 ReferenceCounted (const ReferenceCounted &)
 Copy-constructor.
 
ReferenceCountedoperator= (const ReferenceCounted &)
 Assignment.
 
- Protected Member Functions inherited from ThePEG::Named
const Namedoperator= (const Named &other)
 Assignment.
 
const string & name (const string &newName)
 Set new name.
 
- Static Protected Member Functions inherited from ThePEG::Interfaced
static void registerRepository (IBPtr)
 Register an Interfaced object with the Repository.
 
static void registerRepository (IBPtr, string newName)
 Register an Interfaced object with the Repository, giving it a name.
 

Detailed Description

ParticleData inherits from InterfacedBase and represents the properties of a particle type.

It is also able to produce instances of this Particle type and, among other things, to decay them.

See also
The interfaces defined for ParticleData.

Definition at line 36 of file ParticleData.h.

Member Typedef Documentation

◆ DecaySelector

A selector of DecayMode objects.

Definition at line 50 of file ParticleData.h.

Member Function Documentation

◆ CC()

tPDPtr ThePEG::ParticleData::CC ( ) const
inline

Get the pointer to the corresponding anti partner.

Definition at line 386 of file ParticleData.h.

References theAntiPartner.

◆ charge()

Charge ThePEG::ParticleData::charge ( ) const
inline

Get the charge.

The charge is returned in standard units and in iCharge the charge is returned in units of e/3.

Definition at line 293 of file ParticleData.h.

References theCharge.

◆ charged()

bool ThePEG::ParticleData::charged ( ) const
inline

Return true if charged.

Definition at line 303 of file ParticleData.h.

References ThePEG::PDT::charged(), and theCharge.

◆ clone()

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

Make a simple clone of this object.

Returns
a pointer to the new object.

Implements ThePEG::InterfacedBase.

Reimplemented in ThePEG::RemnantData.

◆ coloured()

bool ThePEG::ParticleData::coloured ( ) const
inline

Return true if coloured.

Definition at line 344 of file ParticleData.h.

References ThePEG::PDT::coloured(), and iColour().

Referenced by ThePEG::Particle::coloured().

◆ colouredInteraction()

PDT::ColouredInteraction ThePEG::ParticleData::colouredInteraction ( ) const
inline

Return what kind of colour charge this particle carries.

Definition at line 366 of file ParticleData.h.

References theColouredInteraction.

◆ constituentMass()

virtual Energy ThePEG::ParticleData::constituentMass ( ) const
inlinevirtual

Return the constituent mass of this particle if relevant.

This version simply returns the nominal mass.

Reimplemented in ThePEG::ConstituentParticleData.

Definition at line 204 of file ParticleData.h.

References mass().

◆ cTau()

Length ThePEG::ParticleData::cTau ( ) const
inline

Get the life time cTau cTau.

If no life time is specified, it is calculated from the width. If the width is also not specified, the lifetime is assumed to be zero for ustable particles and infinite for stable ones.

Definition at line 269 of file ParticleData.h.

References ThePEG::Units::hbarc, ThePEG::Constants::MaxLength, stable(), theCTau, theWidth, and ThePEG::ZERO.

◆ decayModes()

const DecaySet & ThePEG::ParticleData::decayModes ( ) const
inline

Access all the decay modes, including those which are switched off, or have zero branching ratio.

Definition at line 169 of file ParticleData.h.

References theDecayModes.

◆ decaySelector()

const DecaySelector & ThePEG::ParticleData::decaySelector ( ) const
inline

Return the nominal decay selector for this particle.

Ie. the decay modes weighted by their nominal branching ratios.

Definition at line 155 of file ParticleData.h.

References theDecaySelector.

◆ doinit()

virtual void ThePEG::ParticleData::doinit ( )
protectedvirtual

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

Exceptions
InitExceptionif object could not be initialized properly.

Reimplemented from ThePEG::InterfacedBase.

Reimplemented in ThePEG::MixedParticleData.

◆ doinitrun()

virtual void ThePEG::ParticleData::doinitrun ( )
protectedvirtual

Initialize this object.

Called in the run phase just before a run begins.

Reimplemented from ThePEG::InterfacedBase.

◆ doupdate()

virtual void ThePEG::ParticleData::doupdate ( )
protectedvirtual

Check sanity of the object during the setup phase.

Reimplemented from ThePEG::InterfacedBase.

◆ fullclone()

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

◆ generateLifeTime()

Length ThePEG::ParticleData::generateLifeTime ( Energy  mass,
Energy  width 
) const

Generate a mass for an instance of this particle type.

Given a mass and a width of an instance of this particle type, generate a life time.

◆ generateWidth()

Energy ThePEG::ParticleData::generateWidth ( Energy  mass) const

Generate a width for an instance of this particle type.

Given a mass of an instance of this particle type, calculate its width.

◆ genericName()

const string & ThePEG::ParticleData::genericName ( ) const
inline

Return the generic PDG name.

Note that this is not really standardised.

Definition at line 92 of file ParticleData.h.

References thePDGName.

◆ getReferences()

virtual IVector ThePEG::ParticleData::getReferences ( )
protectedvirtual

Return a vector of all pointers to Interfaced objects used in this object.

Returns
a vector of pointers.

Reimplemented from ThePEG::InterfacedBase.

◆ hardProcessMass()

Energy ThePEG::ParticleData::hardProcessMass ( ) const
inline

Return the mass to be used when evaluating hard process cross sections.

Definition at line 185 of file ParticleData.h.

References hardProcessMassSet, mass(), and theHardProcessMass.

◆ hardProcessWidth()

Energy ThePEG::ParticleData::hardProcessWidth ( ) const
inline

Return the width to be used when evaluating hard process cross sections.

Definition at line 278 of file ParticleData.h.

References hardProcessWidthSet, theHardProcessWidth, and width().

◆ hasAntiColour()

bool ThePEG::ParticleData::hasAntiColour ( ) const
inline

Return true if anti coloured or colour-octet.

Definition at line 358 of file ParticleData.h.

References ThePEG::PDT::Colour3bar, ThePEG::PDT::Colour6bar, ThePEG::PDT::Colour8, and iColour().

Referenced by ThePEG::Particle::hasAntiColour(), and hasColour().

◆ hasColour()

bool ThePEG::ParticleData::hasColour ( bool  anti = false) const
inline

Return true if (anti) coloured or colour-octet.

Definition at line 349 of file ParticleData.h.

References ThePEG::PDT::Colour3, ThePEG::PDT::Colour6, ThePEG::PDT::Colour8, hasAntiColour(), and iColour().

Referenced by ThePEG::Particle::hasColour().

◆ iCharge() [1/2]

PDT::Charge ThePEG::ParticleData::iCharge ( ) const
inline

Get the charge.

The charge is returned in units of e/3.

Definition at line 298 of file ParticleData.h.

References theCharge.

◆ iCharge() [2/2]

PDT::Charge ThePEG::ParticleData::iCharge ( PDT::Charge  )

Set the charge.

The charge should be given in units of e/3 using the PDT::Charge enum.

Referenced by ThePEG::ChargedMatcher::Check(), ThePEG::PositiveMatcher::Check(), ThePEG::NeutralMatcher::Check(), and ThePEG::NegativeMatcher::Check().

◆ iColour()

PDT::Colour ThePEG::ParticleData::iColour ( ) const
inline

Get the colour of the particle in units of PDT::Colour.

Definition at line 339 of file ParticleData.h.

References theColour.

Referenced by coloured(), hasAntiColour(), and hasColour().

◆ id()

◆ iSpin() [1/2]

PDT::Spin ThePEG::ParticleData::iSpin ( ) const
inline

Get the spin.

The spin is returned as 2J+1 in units of hbar/2.

Definition at line 329 of file ParticleData.h.

References theSpin.

◆ iSpin() [2/2]

PDT::Spin ThePEG::ParticleData::iSpin ( PDT::Spin  )

Set the spin.

The spin should be given as 2J+1 (in units of hbar/2) using the PDT::Spin enum.

◆ mass()

Energy ThePEG::ParticleData::mass ( ) const
inline

Return the nominal mass.

Definition at line 180 of file ParticleData.h.

References theMass.

Referenced by constituentMass(), hardProcessMass(), massMax(), and massMin().

◆ massGenerator()

tMassGenPtr ThePEG::ParticleData::massGenerator ( ) const
inline

Get the mass generator object.

Definition at line 414 of file ParticleData.h.

References theMassGenerator.

◆ massMax()

Energy ThePEG::ParticleData::massMax ( ) const
inline

Return the maximum possible mass of this particle type.

Definition at line 193 of file ParticleData.h.

References mass(), and widthUpCut().

◆ massMin()

Energy ThePEG::ParticleData::massMin ( ) const
inline

Return the minimum possible mass of this particle type.

Definition at line 198 of file ParticleData.h.

References mass(), widthLoCut(), and ThePEG::ZERO.

◆ negative()

bool ThePEG::ParticleData::negative ( ) const
inline

Return true if negatively charged.

Definition at line 313 of file ParticleData.h.

References ThePEG::PDT::negative(), and theCharge.

◆ pdclone()

virtual PDPtr ThePEG::ParticleData::pdclone ( ) const
protectedvirtual

Special clone function used by the Repository.

Also makes copies the decay modes and the anti-partner if it exists and if synchronized() is true.

Reimplemented in ThePEG::BeamParticleData, ThePEG::PolarizedBeamParticleData, ThePEG::ConstituentParticleData, and ThePEG::MixedParticleData.

◆ PDGName()

const string & ThePEG::ParticleData::PDGName ( ) const
inline

Return the generic PDG name.

Note that this is not really standardised.

Definition at line 86 of file ParticleData.h.

References thePDGName.

Referenced by ThePEG::Particle::PDGName().

◆ persistentInput()

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

◆ persistentOutput()

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

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

◆ positive()

bool ThePEG::ParticleData::positive ( ) const
inline

Return true if positively charged.

Definition at line 308 of file ParticleData.h.

References ThePEG::PDT::positive(), and theCharge.

◆ readSetup()

virtual void ThePEG::ParticleData::readSetup ( istream &  is)
protectedvirtual

Read setup info from a standard stream.

The following information must be supplied in a white-space separated list: PDG number, generic name, default mass (GeV), default width (GeV), width cut (GeV), the lifetime ctau (mm), the charge, the colour, the spin, stable (true) or not (false). Note that if a minus sign is given instead of a generic name, the name of the object will be used instead.

Reimplemented from ThePEG::InterfacedBase.

Reimplemented in ThePEG::ConstituentParticleData.

◆ rebind()

virtual void ThePEG::ParticleData::rebind ( const TranslationMap trans)
protectedvirtual

Rebind pointer to other Interfaced objects.

Called in the setup phase after all objects used in an EventGenerator has been cloned so that the pointers will refer to the cloned objects afterwards.

Parameters
transa TranslationMap relating the original objects to their respective clones.
Exceptions
RebindExceptionif no cloned object was found for a given pointer.

Reimplemented from ThePEG::InterfacedBase.

◆ selectMode()

tDMPtr ThePEG::ParticleData::selectMode ( Particle p) const

Selects a decay mode randomly according to the branching ratios.

The nominal branching ratios may be changed for the particular Particle instance p, iether by an assigned WidthGenerator or the respective Decayers.

◆ spin()

AngularMomentum ThePEG::ParticleData::spin ( ) const
inline

Get the spin.The spin is returned in standard units.

Definition at line 324 of file ParticleData.h.

References ThePEG::Units::hbar_Planck, and theSpin.

◆ stable()

bool ThePEG::ParticleData::stable ( ) const
inline

Return true if particle is to be considered stable.

If the decay table is empty the function always returns true, even if the member variable is false.

Definition at line 381 of file ParticleData.h.

References isStable.

Referenced by cTau().

◆ synchronized()

bool ThePEG::ParticleData::synchronized ( ) const
inline

Return true if the anti partner chould be changed automatically when this object is changed.

Definition at line 398 of file ParticleData.h.

References syncAnti.

◆ variableRatio()

bool ThePEG::ParticleData::variableRatio ( ) const
inline

Return true if the branching ratio should vary with the mass of the Particle instance.

Definition at line 436 of file ParticleData.h.

References theVariableRatio.

◆ width()

Energy ThePEG::ParticleData::width ( ) const
inline

Get the width.

If no width is specified, it is calculated from the lifetime.

Definition at line 215 of file ParticleData.h.

References ThePEG::Units::hbarc, ThePEG::Constants::MaxEnergy, theCTau, theWidth, and ThePEG::ZERO.

Referenced by hardProcessWidth().

◆ widthCut() [1/2]

Energy ThePEG::ParticleData::widthCut ( ) const
inline

Get the width cut.

Definition at line 232 of file ParticleData.h.

References widthLoCut(), and widthUpCut().

◆ widthCut() [2/2]

Energy ThePEG::ParticleData::widthCut ( Energy  wci)
inline

Set the width cut.

Both upper and lower cut is set.

Definition at line 224 of file ParticleData.h.

References widthLoCut(), and widthUpCut().

◆ widthGenerator()

tWidthGeneratorPtr ThePEG::ParticleData::widthGenerator ( ) const
inline

Get the width generator object.

Definition at line 424 of file ParticleData.h.

References theWidthGenerator.

◆ widthLoCut()

Energy ThePEG::ParticleData::widthLoCut ( ) const
inline

Get the lower width cut.

Definition at line 254 of file ParticleData.h.

References ThePEG::Constants::MaxEnergy, theWidthLoCut, and ThePEG::ZERO.

Referenced by massMin(), and widthCut().

◆ widthUpCut()

Energy ThePEG::ParticleData::widthUpCut ( ) const
inline

Get the upper width cut.

Definition at line 242 of file ParticleData.h.

References ThePEG::Constants::MaxEnergy, theWidthUpCut, and ThePEG::ZERO.

Referenced by massMax(), and widthCut().

Friends And Related Function Documentation

◆ DecayMode

friend class DecayMode
friend

DecayMode is a friend.

Definition at line 47 of file ParticleData.h.

◆ EventGenerator

friend class EventGenerator
friend

The EventGenerator is a friend.

Definition at line 44 of file ParticleData.h.

◆ Repository

friend class Repository
friend

The Repository is a friend.

Definition at line 41 of file ParticleData.h.

Member Data Documentation

◆ hardProcessMassSet

bool ThePEG::ParticleData::hardProcessMassSet
private

True, if a hard process mass has been set.

Definition at line 591 of file ParticleData.h.

Referenced by hardProcessMass().

◆ hardProcessWidthSet

bool ThePEG::ParticleData::hardProcessWidthSet
private

True, if a hard process width has been set.

Definition at line 601 of file ParticleData.h.

Referenced by hardProcessWidth().

◆ initParticleData

ClassDescription<ParticleData> ThePEG::ParticleData::initParticleData
staticprivate

Describe a concrete class with persistent data.

Definition at line 970 of file ParticleData.h.

◆ isStable

bool ThePEG::ParticleData::isStable
private

True if the particle is considered stable.

Definition at line 651 of file ParticleData.h.

Referenced by stable().

◆ syncAnti

bool ThePEG::ParticleData::syncAnti
private

If syncAnti is true all changes to this object will be transfered to the antiParticle.

Definition at line 689 of file ParticleData.h.

Referenced by synchronized().

◆ theAntiPartner

tPDPtr ThePEG::ParticleData::theAntiPartner
private

Pointer to the object corresponding to the antiparticle.

Set to null if it is its own antiparticle.

Definition at line 683 of file ParticleData.h.

Referenced by CC().

◆ theCharge

PDT::Charge ThePEG::ParticleData::theCharge
private

Three times the charge.

Definition at line 621 of file ParticleData.h.

Referenced by charge(), charged(), iCharge(), negative(), and positive().

◆ theColour

PDT::Colour ThePEG::ParticleData::theColour
private

The colour for this particle.

Definition at line 631 of file ParticleData.h.

Referenced by iColour().

◆ theColouredInteraction

PDT::ColouredInteraction ThePEG::ParticleData::theColouredInteraction
private

The coloured interaction of this particle.

Definition at line 636 of file ParticleData.h.

Referenced by colouredInteraction().

◆ theCTau

Length ThePEG::ParticleData::theCTau
private

Lifetime.

Definition at line 616 of file ParticleData.h.

Referenced by cTau(), and width().

◆ theDecayModes

DecaySet ThePEG::ParticleData::theDecayModes
private

The set of all decay modes.

Definition at line 662 of file ParticleData.h.

Referenced by decayModes().

◆ theDecaySelector

DecaySelector ThePEG::ParticleData::theDecaySelector
private

A selector of decay modes weighted by the nominal branching ratios.

Definition at line 657 of file ParticleData.h.

Referenced by decaySelector().

◆ theDefCharge

PDT::Charge ThePEG::ParticleData::theDefCharge
private

Helper variable to keep track of the default charge.

Definition at line 714 of file ParticleData.h.

◆ theDefColour

PDT::Colour ThePEG::ParticleData::theDefColour
private

Helper variable to keep track of the default colour.

Definition at line 724 of file ParticleData.h.

◆ theDefColouredInteraction

PDT::ColouredInteraction ThePEG::ParticleData::theDefColouredInteraction
private

Helper variable to keep track of the default coloured interaction.

Definition at line 729 of file ParticleData.h.

◆ theDefCTau

Length ThePEG::ParticleData::theDefCTau
private

Helper variable to keep track of the default lifetime.

Definition at line 709 of file ParticleData.h.

◆ theDefCut

Energy ThePEG::ParticleData::theDefCut
private

Helper variable to keep track of the default width cut.

Definition at line 704 of file ParticleData.h.

◆ theDefMass

Energy ThePEG::ParticleData::theDefMass
private

Helper variable to keep track of the default mass.

Definition at line 694 of file ParticleData.h.

◆ theDefSpin

PDT::Spin ThePEG::ParticleData::theDefSpin
private

Helper variable to keep track of the default spin.

Definition at line 719 of file ParticleData.h.

◆ theDefWidth

Energy ThePEG::ParticleData::theDefWidth
private

Helper variable to keep track of the default width.

Definition at line 699 of file ParticleData.h.

◆ theHardProcessMass

Energy ThePEG::ParticleData::theHardProcessMass
private

The mass to be used when evaluating hard process cross sections.

Definition at line 586 of file ParticleData.h.

Referenced by hardProcessMass().

◆ theHardProcessWidth

Energy ThePEG::ParticleData::theHardProcessWidth
private

The width to be used when evaluating hard process cross sections.

Definition at line 596 of file ParticleData.h.

Referenced by hardProcessWidth().

◆ theId

PID ThePEG::ParticleData::theId
private

Id number according to the STDHEP/PDG standard.

Definition at line 566 of file ParticleData.h.

Referenced by id().

◆ theMass

Energy ThePEG::ParticleData::theMass
private

Nominal mass.

Definition at line 576 of file ParticleData.h.

Referenced by mass().

◆ theMassGenerator

MassGenPtr ThePEG::ParticleData::theMassGenerator
private

The nonabelian interaction of this particle.

A pointer to an object capable to generate a mass for a particle of this type.

Definition at line 646 of file ParticleData.h.

Referenced by massGenerator().

◆ thePDGName

string ThePEG::ParticleData::thePDGName
private

Name and Id number according to the STDHEP/PDG standard.

Definition at line 571 of file ParticleData.h.

Referenced by genericName(), and PDGName().

◆ theSpin

PDT::Spin ThePEG::ParticleData::theSpin
private

2 times the spin plus one.

Definition at line 626 of file ParticleData.h.

Referenced by iSpin(), and spin().

◆ theVariableRatio

bool ThePEG::ParticleData::theVariableRatio
private

Determine whether the branching fractions are allowed to change on a particle-by-particle basis.

Definition at line 677 of file ParticleData.h.

Referenced by variableRatio().

◆ theWidth

Energy ThePEG::ParticleData::theWidth
private

Width.

Definition at line 581 of file ParticleData.h.

Referenced by cTau(), and width().

◆ theWidthGenerator

WidthGeneratorPtr ThePEG::ParticleData::theWidthGenerator
private

A pointer to an object capable to generate the branching fractions for different decay modes for this particle type.

The object will be asked to generate branching fractions every time the ParticleData object it updated and will modify the branching fractions for every particle instance if variableRatio is true.

Definition at line 671 of file ParticleData.h.

Referenced by widthGenerator().

◆ theWidthLoCut

Energy ThePEG::ParticleData::theWidthLoCut
private

Lower width cut.

Definition at line 611 of file ParticleData.h.

Referenced by widthLoCut().

◆ theWidthUpCut

Energy ThePEG::ParticleData::theWidthUpCut
private

Upper width cut.

Definition at line 606 of file ParticleData.h.

Referenced by widthUpCut().


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