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

A SubProcessGroup object represents a group of SubProcess objects in dependence of a head SubProcess object. More...

#include <SubProcessGroup.h>

Inheritance diagram for ThePEG::SubProcessGroup:

Public Member Functions

 SubProcessGroup (const PPair &newIncoming, tCollPtr newCollision=tCollPtr(), tcEventBasePtr newHandler=tcEventBasePtr())
 Standard constructor.
 
virtual ~SubProcessGroup ()
 Destructor.
 
virtual SubProPtr clone () const
 Return a clone of this sub process group.
 
virtual void transform (const LorentzRotation &)
 Perform a LorentzTransformation of all particles in the sub process.
 
const SubProcessVectordependent () const
 Return the dependent SubProcess objects.
 
SubProcessVectordependent ()
 Access the dependent SubProcess objects.
 
void add (tSubProPtr sub)
 Add a dependent SubProcess.
 
void persistentOutput (PersistentOStream &) const
 Standard function for writing to a persistent stream.
 
void persistentInput (PersistentIStream &, int)
 Standard function for reading from a persistent stream.
 
virtual void printMe (ostream &) const
 Put to ostream.
 
- Public Member Functions inherited from ThePEG::SubProcess
 SubProcess (const PPair &newIncoming, tCollPtr newCollision=tCollPtr(), tcEventBasePtr newHandler=tcEventBasePtr(), tSubProPtr newHead=tSubProPtr(), double newGroupWeight=1.0)
 Standard constructor.
 
virtual ~SubProcess ()
 Destructor.
 
tcEventBasePtr handler () const
 A pointer to the MEBase object which generated this SubProcess.
 
tCollPtr collision () const
 A pointer to the collision to which this sub-process belongs.
 
const PPairincoming () const
 The pair of incoming partons.
 
const ParticleVectorintermediates () const
 A reference to the vector of intermediate partons.
 
const ParticleVectoroutgoing () const
 A reference to the vector of outgoing particles.
 
template<class InputIterator >
void setOutgoing (InputIterator, InputIterator)
 Set the vector of outgoing particles.
 
void addOutgoing (tPPtr p, bool fixrelations=true)
 Add a particle to the list of outgoing ones.
 
void changeIncoming (tPPtr pnew, tPPtr pold)
 Change the incoming parton.
 
template<class InputIterator >
void setIntermediates (InputIterator, InputIterator)
 Set the vector of intermediate particles.
 
void addIntermediate (tPPtr p, bool fixrelations=true)
 Add a particle to the list of intermediate ones.
 
void removeEntry (tPPtr p)
 Remove a particle entry from this sub-process.
 
virtual SubProPtr clone () const
 Return a clone of this sub process.
 
bool decayed () const
 True if a perturbative cascade has been applied to this sub process.
 
void decayed (bool x)
 Set to true if a perturbative cascade has been applied to this sub process.
 
tSubProPtr head () const
 Return the head SubProcess, if this SubProcess object belongs to a SubProcessGroup.
 
void head (tSubProPtr newHead)
 Set the head SubProcess.
 
double groupWeight () const
 If this SubProcess belongs to a SubProcessGroup, return its relative weight w.r.t.
 
void groupWeight (double w)
 If this SubProcess belongs to a SubProcessGroup, set its relative weight w.r.t.
 
virtual void transform (const LorentzRotation &)
 Perform a LorentzTransformation of all particles in the sub process.
 
Energy2 shat () const
 Return the value of the Mandelstam variable \(\hat{s}\) in this SubProcess.
 
Energy2 that () const
 Return the value of the Mandelstam variable \(\hat{t}\) in this SubProcess.
 
Energy2 uhat () const
 Return the value of the Mandelstam variable \(\hat{u}\) in this SubProcess.
 
void persistentOutput (PersistentOStream &) const
 Standard function for writing to a persistent stream.
 
void persistentInput (PersistentIStream &, int)
 Standard function for reading from a persistent stream.
 
virtual void debugme () const
 Print out debugging information for this object on std::cerr.
 
virtual void printMe (ostream &) const
 Put to ostream.
 
- 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.
 

Static Public Member Functions

static void Init ()
 Standard Init function.
 
- Static Public Member Functions inherited from ThePEG::SubProcess
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.
 

Protected Member Functions

virtual void rebind (const EventTranslationMap &trans)
 Rebind to cloned objects.
 
virtual void rebind (const EventTranslationMap &trans)
 Rebind to cloned objects.
 
- Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
 ReferenceCounted ()
 Default constructor.
 
 ReferenceCounted (const ReferenceCounted &)
 Copy-constructor.
 
ReferenceCountedoperator= (const ReferenceCounted &)
 Assignment.
 

Private Member Functions

 SubProcessGroup ()
 Private default constructor must only be used by the PersistentIStream class via the ClassTraits<SubProcessGroup> class .
 
SubProcessGroupoperator= (const SubProcessGroup &)=delete
 Assignment is forbidden.
 

Private Attributes

SubProcessVector theDependent
 The dependent subprocesses.
 

Static Private Attributes

static ClassDescription< SubProcessGroupinitSubProcessGroup
 Describe concrete class with persistent data.
 

Friends

struct ClassTraits< SubProcessGroup >
 The ClassTraits<SubProcessGroup> class must be a friend to be able to use the private default constructor.
 

Additional Inherited Members

- Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType
 The integer type used for counting.
 
- Public Attributes inherited from ThePEG::Pointer::ReferenceCounted
const unsigned long uniqueId
 The unique ID.
 

Detailed Description

A SubProcessGroup object represents a group of SubProcess objects in dependence of a head SubProcess object.

See also
StdXCombGroup
MEGroup

Definition at line 25 of file SubProcessGroup.h.

Constructor & Destructor Documentation

◆ SubProcessGroup() [1/2]

ThePEG::SubProcessGroup::SubProcessGroup ( const PPair newIncoming,
tCollPtr  newCollision = tCollPtr(),
tcEventBasePtr  newHandler = tcEventBasePtr() 
)

Standard constructor.

Parameters
newIncomingthe two incoming partons.
newCollisionthe Collision to which this SubProcessGroup belongs.
newHandlerthe MEBase object which generated this SubProcessGroup.

◆ SubProcessGroup() [2/2]

ThePEG::SubProcessGroup::SubProcessGroup ( )
inlineprivate

Private default constructor must only be used by the PersistentIStream class via the ClassTraits<SubProcessGroup> class .

Definition at line 125 of file SubProcessGroup.h.

Member Function Documentation

◆ add()

void ThePEG::SubProcessGroup::add ( tSubProPtr  sub)
inline

Add a dependent SubProcess.

Definition at line 81 of file SubProcessGroup.h.

References dependent().

◆ clone()

virtual SubProPtr ThePEG::SubProcessGroup::clone ( ) const
virtual

Return a clone of this sub process group.

Reimplemented from ThePEG::SubProcess.

◆ dependent() [1/2]

SubProcessVector & ThePEG::SubProcessGroup::dependent ( )
inline

Access the dependent SubProcess objects.

Definition at line 76 of file SubProcessGroup.h.

References theDependent.

◆ dependent() [2/2]

const SubProcessVector & ThePEG::SubProcessGroup::dependent ( ) const
inline

Return the dependent SubProcess objects.

Definition at line 71 of file SubProcessGroup.h.

References theDependent.

Referenced by add().

◆ Init()

static void ThePEG::SubProcessGroup::Init ( )
static

Standard Init function.

See also
Base::Init().

◆ printMe()

virtual void ThePEG::SubProcessGroup::printMe ( ostream &  ) const
virtual

Put to ostream.

Reimplemented from ThePEG::SubProcess.

◆ rebind()

virtual void ThePEG::SubProcessGroup::rebind ( const EventTranslationMap trans)
protectedvirtual

Rebind to cloned objects.

When a SubProcessGroup is cloned, a shallow copy is done first, then all Particles etc, are cloned, and finally this method is used to see to that the pointers in the cloned SubProcessGroup points to the cloned Particles etc.

Reimplemented from ThePEG::SubProcess.

◆ transform()

virtual void ThePEG::SubProcessGroup::transform ( const LorentzRotation )
virtual

Perform a LorentzTransformation of all particles in the sub process.

Reimplemented from ThePEG::SubProcess.

Friends And Related Function Documentation

◆ ClassTraits< SubProcessGroup >

friend struct ClassTraits< SubProcessGroup >
friend

The ClassTraits<SubProcessGroup> class must be a friend to be able to use the private default constructor.

Definition at line 125 of file SubProcessGroup.h.

Member Data Documentation

◆ initSubProcessGroup

ClassDescription<SubProcessGroup> ThePEG::SubProcessGroup::initSubProcessGroup
staticprivate

Describe concrete class with persistent data.

Definition at line 119 of file SubProcessGroup.h.

◆ theDependent

SubProcessVector ThePEG::SubProcessGroup::theDependent
private

The dependent subprocesses.

Definition at line 105 of file SubProcessGroup.h.

Referenced by dependent().


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