StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
Photospp::Photos Class Reference

Public Types

enum  MomentumUnits {
  DEFAULT_MOMENTUM =-1, MEV, GEV, DEFAULT_MOMENTUM =-1,
  MEV, GEV
}
 
enum  MomentumUnits {
  DEFAULT_MOMENTUM =-1, MEV, GEV, DEFAULT_MOMENTUM =-1,
  MEV, GEV
}
 

Public Member Functions

PhotosgetInstance ()
 
PhotosgetInstance ()
 

Static Public Member Functions

static void initialize ()
 
static void iniInfo ()
 
static void processParticle (PhotosParticle *p)
 
static void processBranch (PhotosParticle *p)
 
static void suppressBremForDecay (int count, int motherID,...)
 
static void suppressBremForBranch (int count, int motherID,...)
 
static void suppressAll ()
 
static void forceBremForDecay (int count, int motherID,...)
 
static void forceBremForBranch (int count, int motherID,...)
 
static void IPHEKL_setPi0KLnoEmission (int m)
 
static bool IPHQRK_setQarknoEmission (int MODCOR, int PDGID)
 
static void createHistoryEntries (bool flag, int status)
 
static void ignoreParticlesOfStatus (int status)
 
static void deIgnoreParticlesOfStatus (int status)
 
static bool isStatusCodeIgnored (int status)
 
static void setRandomGenerator (double(*gen)())
 
static void setSeed (int iseed1, int iseed2)
 
static void maxWtInterference (double interference)
 
static void setInfraredCutOff (double cut_off)
 
static void setAlphaQED (double alpha)
 
static void setInterference (bool interference)
 
static void setDoubleBrem (bool doub)
 
static void setQuatroBrem (bool quatroBrem)
 
static void setCorrectionWtForW (bool corr)
 
static void setExponentiation (bool expo)
 
static void setPairEmission (bool ifpair)
 
static void setPhotonEmission (bool ifphot)
 
static void setMeCorrectionWtForScalar (bool corr)
 
static void setMeCorrectionWtForW (bool corr)
 
static void setMeCorrectionWtForZ (bool corr)
 
static void setTopProcessRadiation (bool top)
 
static void setMomentumUnit (MomentumUnits unit)
 
static void setStopAtCriticalError (bool stop)
 
static void initializeKinematicCorrections (int flag)
 
static void forceMassFrom4Vector (bool flag)
 
static void forceMassFromEventRecord (int pdgid)
 
static void forceMass (int pdgid, double mass)
 
static void setMomentumConservationThreshold (double threshold)
 
static void setEventNo (int iEvt)
 
static void initialize ()
 
static void iniInfo ()
 
static void processParticle (PhotosParticle *p)
 
static void processBranch (PhotosParticle *p)
 
static void suppressBremForDecay (int count, int motherID,...)
 
static void suppressBremForBranch (int count, int motherID,...)
 
static void suppressAll ()
 
static void forceBremForDecay (int count, int motherID,...)
 
static void forceBremForBranch (int count, int motherID,...)
 
static void IPHEKL_setPi0KLnoEmission (int m)
 
static bool IPHQRK_setQarknoEmission (int MODCOR, int PDGID)
 
static void createHistoryEntries (bool flag, int status)
 
static void ignoreParticlesOfStatus (int status)
 
static void deIgnoreParticlesOfStatus (int status)
 
static bool isStatusCodeIgnored (int status)
 
static void setRandomGenerator (double(*gen)())
 
static void setSeed (int iseed1, int iseed2)
 
static void maxWtInterference (double interference)
 
static void setInfraredCutOff (double cut_off)
 
static void setAlphaQED (double alpha)
 
static void setInterference (bool interference)
 
static void setDoubleBrem (bool doub)
 
static void setQuatroBrem (bool quatroBrem)
 
static void setCorrectionWtForW (bool corr)
 
static void setExponentiation (bool expo)
 
static void setPairEmission (bool ifpair)
 
static void setPhotonEmission (bool ifphot)
 
static void setMeCorrectionWtForScalar (bool corr)
 
static void setMeCorrectionWtForW (bool corr)
 
static void setMeCorrectionWtForZ (bool corr)
 
static void setTopProcessRadiation (bool top)
 
static void setMomentumUnit (MomentumUnits unit)
 
static void setStopAtCriticalError (bool stop)
 
static void initializeKinematicCorrections (int flag)
 
static void forceMassFrom4Vector (bool flag)
 
static void forceMassFromEventRecord (int pdgid)
 
static void forceMass (int pdgid, double mass)
 
static void setMomentumConservationThreshold (double threshold)
 
static void setEventNo (int iEvt)
 

Static Public Attributes

static const int VER_MAJOR =3
 
static const int VER_MINOR =61
 
static const int DAT_DAY =29
 
static const int DAT_MONTH =9
 
static const int DAT_YEAR =15
 
static enum
Photospp::Photos::MomentumUnits 
momentumUnit = Photos::DEFAULT_MOMENTUM
 
static int EventNo =0
 
static bool isSuppressed =false
 
static bool massFrom4Vector =true
 
static vector< vector< int > * > * supBremList = 0
 
static vector< vector< int > * > * forceBremList = 0
 
static vector< pair< int,
double > * > * 
forceMassList = 0
 
static vector< int > * ignoreStatusCodeList = 0
 
static double momentum_conservation_threshold = 0.1
 
static bool meCorrectionWtForScalar =false
 
static bool meCorrectionWtForZ =false
 
static bool meCorrectionWtForW =false
 
static bool isCreateHistoryEntries =false
 
static bool IfPair =false
 
static bool IfPhot =true
 
static int historyEntriesStatus = 3
 
static double(* randomDouble )() = PhotosRandom::randomReal
 

Detailed Description

Definition at line 31 of file Photos.h.

Member Enumeration Documentation

Units

Definition at line 38 of file Photos.h.

Units

Definition at line 38 of file Photos.h.

Member Function Documentation

void Photos::createHistoryEntries ( bool  flag,
int  status 
)
static

If event record allows it, create history entries of particles before Photos processing

Definition at line 343 of file Photos.cxx.

References historyEntriesStatus, ignoreParticlesOfStatus(), and isCreateHistoryEntries.

static void Photospp::Photos::createHistoryEntries ( bool  flag,
int  status 
)
static

If event record allows it, create history entries of particles before Photos processing

void Photos::deIgnoreParticlesOfStatus ( int  status)
static

Remove 'status' from the list of ignored status codes

Definition at line 373 of file Photos.cxx.

References ignoreStatusCodeList.

static void Photospp::Photos::deIgnoreParticlesOfStatus ( int  status)
static

Remove 'status' from the list of ignored status codes

static void Photospp::Photos::forceBremForBranch ( int  count,
int  motherID,
  ... 
)
static

Force processing of a whole decay branch

void Photos::forceBremForBranch ( int  count,
int  motherID,
  ... 
)
static

Force processing of a whole decay branch

Definition at line 286 of file Photos.cxx.

References forceBremList.

void Photos::forceBremForDecay ( int  count,
int  motherID,
  ... 
)
static

Force processing of a single decay

Definition at line 270 of file Photos.cxx.

References forceBremList.

Referenced by IPHEKL_setPi0KLnoEmission().

static void Photospp::Photos::forceBremForDecay ( int  count,
int  motherID,
  ... 
)
static

Force processing of a single decay

void Photos::forceMass ( int  pdgid,
double  mass 
)
static

When particles with PDGID and -PDGID will be processed by Photos, their mass value will be given by user instead of being calculated from 4-vector.

This works only if 'forceMassFrom4Vector' is set to 'true' (default) This routine may be executed several times with different PDGID values.

Definition at line 458 of file Photos.cxx.

References forceMassList.

static void Photospp::Photos::forceMass ( int  pdgid,
double  mass 
)
static

When particles with PDGID and -PDGID will be processed by Photos, their mass value will be given by user instead of being calculated from 4-vector.

This works only if 'forceMassFrom4Vector' is set to 'true' (default) This routine may be executed several times with different PDGID values.

static void Photospp::Photos::forceMassFrom4Vector ( bool  flag)
inlinestatic

Force mass value to be sqrt(e^2-p^2) for all particle momenta taken from event record. May be important for numerical stability. May lead to faulty results due to rounding errors for hiper-relativistic electron, for example.

Definition at line 155 of file Photos.h.

References massFrom4Vector.

static void Photospp::Photos::forceMassFrom4Vector ( bool  flag)
inlinestatic

Force mass value to be sqrt(e^2-p^2) for all particle momenta taken from event record. May be important for numerical stability. May lead to faulty results due to rounding errors for hiper-relativistic electron, for example.

Definition at line 155 of file Photos.h.

References massFrom4Vector.

void Photos::forceMassFromEventRecord ( int  pdgid)
static

When particles with PDGID and -PDGID will be processed by Photos, their mass value will be taken from event record instead of being calculated from 4-vector.

This works only if 'forceMassFrom4Vector' is set to 'true' (default) This routine may be executed several times with different PDGID values.

Definition at line 452 of file Photos.cxx.

References forceMassList.

static void Photospp::Photos::forceMassFromEventRecord ( int  pdgid)
static

When particles with PDGID and -PDGID will be processed by Photos, their mass value will be taken from event record instead of being calculated from 4-vector.

This works only if 'forceMassFrom4Vector' is set to 'true' (default) This routine may be executed several times with different PDGID values.

Photos& Photospp::Photos::getInstance ( )
inline

Get instance of Photos

Definition at line 231 of file Photos.h.

Photos& Photospp::Photos::getInstance ( )
inline

Get instance of Photos

Definition at line 231 of file Photos.h.

void Photos::ignoreParticlesOfStatus ( int  status)
static

Ignore particles with given status code

Definition at line 356 of file Photos.cxx.

References ignoreStatusCodeList.

Referenced by createHistoryEntries().

static void Photospp::Photos::ignoreParticlesOfStatus ( int  status)
static

Ignore particles with given status code

void Photos::iniInfo ( )
static

Prints info on Photos initialization (reinitialization) status

Definition at line 181 of file Photos.cxx.

References IfPair, IfPhot, meCorrectionWtForScalar, meCorrectionWtForW, and meCorrectionWtForZ.

static void Photospp::Photos::iniInfo ( )
static

Prints info on Photos initialization (reinitialization) status

void Photos::initialize ( )
static

Initalize Photos with the parameters previously set via the setter methods

Definition at line 53 of file Photos.cxx.

References IfPair, IfPhot, initializeKinematicCorrections(), IPHEKL_setPi0KLnoEmission(), maxWtInterference(), meCorrectionWtForW, meCorrectionWtForZ, setExponentiation(), and suppressBremForDecay().

static void Photospp::Photos::initialize ( )
static

Initalize Photos with the parameters previously set via the setter methods

static void Photospp::Photos::initializeKinematicCorrections ( int  flag)
inlinestatic

Initialize kinematic corrections

Definition at line 149 of file Photos.h.

Referenced by initialize(), and setExponentiation().

static void Photospp::Photos::initializeKinematicCorrections ( int  flag)
inlinestatic

Initialize kinematic corrections

Definition at line 149 of file Photos.h.

void Photos::IPHEKL_setPi0KLnoEmission ( int  m)
static

Block emissions id decays pi0 and K_L -> gamma e+ e- 1 = no suppression 2 (default) = suppressed emissions in K_L -> gamma e+ e- ... and all pi0 decays

Definition at line 304 of file Photos.cxx.

References forceBremForDecay(), and suppressBremForDecay().

Referenced by initialize().

static void Photospp::Photos::IPHEKL_setPi0KLnoEmission ( int  m)
static

Block emissions id decays pi0 and K_L -> gamma e+ e- 1 = no suppression 2 (default) = suppressed emissions in K_L -> gamma e+ e- ... and all pi0 decays

static bool Photospp::Photos::isStatusCodeIgnored ( int  status)
static

Returns 'true' if status code is ignored

bool Photos::isStatusCodeIgnored ( int  status)
static

Returns 'true' if status code is ignored

Definition at line 387 of file Photos.cxx.

References ignoreStatusCodeList.

Referenced by Photospp::PhotosHepMCParticle::checkMomentumConservation(), and Photospp::PhotosHepMCParticle::getDaughters().

static void Photospp::Photos::maxWtInterference ( double  interference)
inlinestatic

Maximum interference weight

Definition at line 97 of file Photos.h.

Referenced by initialize().

static void Photospp::Photos::maxWtInterference ( double  interference)
inlinestatic

Maximum interference weight

Definition at line 97 of file Photos.h.

void Photos::processBranch ( PhotosParticle p)
static

Process decay of whole decay branch starting from given particle

Definition at line 231 of file Photos.cxx.

References Photospp::PhotosBranch::createBranches(), and Photospp::PhotosParticle::getDecayTree().

static void Photospp::Photos::processBranch ( PhotosParticle p)
static

Process decay of whole decay branch starting from given particle

static void Photospp::Photos::processParticle ( PhotosParticle p)
static

Process decay of single particle

void Photos::processParticle ( PhotosParticle p)
static

Process decay of single particle

Definition at line 225 of file Photos.cxx.

References Photospp::PhotosBranch::getSuppressionStatus(), and Photospp::PhotosBranch::process().

static void Photospp::Photos::setAlphaQED ( double  alpha)
inlinestatic

Coupling constant alpha QED

Definition at line 103 of file Photos.h.

static void Photospp::Photos::setAlphaQED ( double  alpha)
inlinestatic

Coupling constant alpha QED

Definition at line 103 of file Photos.h.

static void Photospp::Photos::setDoubleBrem ( bool  doub)
inlinestatic

Set double bremsstrahlung generation

Definition at line 109 of file Photos.h.

Referenced by setExponentiation().

static void Photospp::Photos::setDoubleBrem ( bool  doub)
inlinestatic

Set double bremsstrahlung generation

Definition at line 109 of file Photos.h.

static void Photospp::Photos::setEventNo ( int  iEvt)
inlinestatic

set event no

Definition at line 177 of file Photos.h.

References EventNo.

static void Photospp::Photos::setEventNo ( int  iEvt)
inlinestatic

set event no

Definition at line 177 of file Photos.h.

References EventNo.

static void Photospp::Photos::setExponentiation ( bool  expo)
static

Set exponentiation mode

void Photos::setExponentiation ( bool  expo)
static

Set exponentiation mode

Definition at line 403 of file Photos.cxx.

References initializeKinematicCorrections(), setDoubleBrem(), setInfraredCutOff(), and setQuatroBrem().

Referenced by initialize().

static void Photospp::Photos::setInfraredCutOff ( double  cut_off)
inlinestatic

Minimal energy (in units of decaying particle mass) for photons to be explicitly generated

Definition at line 100 of file Photos.h.

Referenced by setExponentiation().

static void Photospp::Photos::setInfraredCutOff ( double  cut_off)
inlinestatic

Minimal energy (in units of decaying particle mass) for photons to be explicitly generated

Definition at line 100 of file Photos.h.

static void Photospp::Photos::setInterference ( bool  interference)
inlinestatic

Key for interference, matrix element weight

Definition at line 106 of file Photos.h.

static void Photospp::Photos::setInterference ( bool  interference)
inlinestatic

Key for interference, matrix element weight

Definition at line 106 of file Photos.h.

static void Photospp::Photos::setMeCorrectionWtForScalar ( bool  corr)
static

Switch for complete effects of matrix element (in scalar to 2 scalars decays)

void Photos::setMeCorrectionWtForScalar ( bool  corr)
static

Switch for complete effects of matrix element (in scalar to 2 scalars decays)

Definition at line 435 of file Photos.cxx.

References meCorrectionWtForScalar.

static void Photospp::Photos::setMeCorrectionWtForW ( bool  corr)
static

Switch for complete effects of matrix element (in leptonic W decays)

void Photos::setMeCorrectionWtForW ( bool  corr)
static

Switch for complete effects of matrix element (in leptonic W decays)

Definition at line 426 of file Photos.cxx.

References meCorrectionWtForW.

static void Photospp::Photos::setMeCorrectionWtForZ ( bool  corr)
static

Switch for complete effects of matrix element (in leptonic Z decays)

void Photos::setMeCorrectionWtForZ ( bool  corr)
static

Switch for complete effects of matrix element (in leptonic Z decays)

Definition at line 431 of file Photos.cxx.

References meCorrectionWtForZ.

static void Photospp::Photos::setMomentumConservationThreshold ( double  threshold)
inlinestatic

set energy momentum conservation threshold

Definition at line 174 of file Photos.h.

References momentum_conservation_threshold.

static void Photospp::Photos::setMomentumConservationThreshold ( double  threshold)
inlinestatic

set energy momentum conservation threshold

Definition at line 174 of file Photos.h.

References momentum_conservation_threshold.

static void Photospp::Photos::setMomentumUnit ( MomentumUnits  unit)
inlinestatic

Set momentum unit

Definition at line 139 of file Photos.h.

static void Photospp::Photos::setMomentumUnit ( MomentumUnits  unit)
inlinestatic

Set momentum unit

Definition at line 139 of file Photos.h.

Referenced by Photospp::PhotosHEPEVTEvent::PhotosHEPEVTEvent().

static void Photospp::Photos::setPairEmission ( bool  ifpair)
static

Set pair emission

void Photos::setPairEmission ( bool  ifpair)
static

Set pair emission

Definition at line 416 of file Photos.cxx.

References IfPair.

static void Photospp::Photos::setPhotonEmission ( bool  ifphot)
static

Set photon emission

void Photos::setPhotonEmission ( bool  ifphot)
static

Set photon emission

Definition at line 421 of file Photos.cxx.

References IfPhot.

static void Photospp::Photos::setQuatroBrem ( bool  quatroBrem)
inlinestatic

Set bremsstrahlung generation up to multiplicity of 4

Definition at line 112 of file Photos.h.

static void Photospp::Photos::setQuatroBrem ( bool  quatroBrem)
inlinestatic

Set bremsstrahlung generation up to multiplicity of 4

Definition at line 112 of file Photos.h.

Referenced by setExponentiation().

void Photos::setRandomGenerator ( double(*)()  gen)
static

Substitute build-in generator with external one

Definition at line 397 of file Photos.cxx.

References randomDouble.

static void Photospp::Photos::setRandomGenerator ( double(*)()  gen)
static

Substitute build-in generator with external one

static void Photospp::Photos::setSeed ( int  iseed1,
int  iseed2 
)
inlinestatic

Seed for RANMAR used by fortran part of the Photos

Definition at line 94 of file Photos.h.

static void Photospp::Photos::setSeed ( int  iseed1,
int  iseed2 
)
inlinestatic

Seed for RANMAR used by fortran part of the Photos

Definition at line 94 of file Photos.h.

static void Photospp::Photos::setTopProcessRadiation ( bool  top)
inlinestatic

Set photon emission in top pair production in quark (gluon) pair annihilation

Definition at line 136 of file Photos.h.

static void Photospp::Photos::setTopProcessRadiation ( bool  top)
inlinestatic

Set photon emission in top pair production in quark (gluon) pair annihilation

Definition at line 136 of file Photos.h.

static void Photospp::Photos::suppressAll ( )
inlinestatic

Suppress all processing. Only forced decays will be processed.

Definition at line 62 of file Photos.h.

References isSuppressed.

static void Photospp::Photos::suppressAll ( )
inlinestatic

Suppress all processing. Only forced decays will be processed.

Definition at line 62 of file Photos.h.

References isSuppressed.

void Photos::suppressBremForBranch ( int  count,
int  motherID,
  ... 
)
static

Suppress processing of whole decay branch

Definition at line 254 of file Photos.cxx.

References supBremList.

static void Photospp::Photos::suppressBremForBranch ( int  count,
int  motherID,
  ... 
)
static

Suppress processing of whole decay branch

void Photos::suppressBremForDecay ( int  count,
int  motherID,
  ... 
)
static

Suppress processing of a single decay

Definition at line 238 of file Photos.cxx.

References supBremList.

Referenced by initialize(), and IPHEKL_setPi0KLnoEmission().

static void Photospp::Photos::suppressBremForDecay ( int  count,
int  motherID,
  ... 
)
static

Suppress processing of a single decay

Member Data Documentation

static int Photos::EventNo =0
static

Is event No

Definition at line 182 of file Photos.h.

Referenced by setEventNo().

static vector< vector< int > * > * Photos::forceBremList = 0
static

List of forced decays

Definition at line 194 of file Photos.h.

Referenced by Photospp::PhotosBranch::createBranches(), forceBremForBranch(), and forceBremForDecay().

static vector< pair< int, double > * > * Photos::forceMassList = 0
static

List of forced mass values

Definition at line 197 of file Photos.h.

Referenced by forceMass(), and forceMassFromEventRecord().

static int Photos::historyEntriesStatus = 3
static

Status of history entries

Definition at line 225 of file Photos.h.

Referenced by createHistoryEntries(), and Photospp::PhotosHepMCParticle::createHistoryEntry().

static bool Photos::IfPair =false
static

Flag for generating emission of pairs

Definition at line 218 of file Photos.h.

Referenced by iniInfo(), initialize(), and setPairEmission().

static bool Photos::IfPhot =true
static

Flag for generating emission of photons

Definition at line 221 of file Photos.h.

Referenced by iniInfo(), initialize(), and setPhotonEmission().

static vector< int > * Photos::ignoreStatusCodeList = 0
static

List of ignored status codes

Definition at line 200 of file Photos.h.

Referenced by deIgnoreParticlesOfStatus(), ignoreParticlesOfStatus(), and isStatusCodeIgnored().

static bool Photos::isCreateHistoryEntries =false
static

Flag for creating historic entries

Definition at line 215 of file Photos.h.

Referenced by createHistoryEntries().

static bool Photos::isSuppressed =false
static

Is in suppressed mode

Definition at line 185 of file Photos.h.

Referenced by Photospp::PhotosBranch::createBranches(), and suppressAll().

static bool Photos::massFrom4Vector =true
static

Is mass from 4-vector or from event record

Definition at line 188 of file Photos.h.

Referenced by forceMassFrom4Vector().

static bool Photos::meCorrectionWtForScalar =false
static

Flag for complete effects of matrix element (in scalars decays)

Definition at line 206 of file Photos.h.

Referenced by iniInfo(), and setMeCorrectionWtForScalar().

static bool Photos::meCorrectionWtForW =false
static

Flag for complete effects of matrix element (in leptonic W decays)

Definition at line 212 of file Photos.h.

Referenced by iniInfo(), initialize(), and setMeCorrectionWtForW().

static bool Photos::meCorrectionWtForZ =false
static

Flag for complete effects of matrix element (in leptonic Z decays)

Definition at line 209 of file Photos.h.

Referenced by iniInfo(), initialize(), and setMeCorrectionWtForZ().

static double Photos::momentum_conservation_threshold = 0.1
static

Threshold for momentum conservation check

Definition at line 203 of file Photos.h.

Referenced by Photospp::PhotosHepMCParticle::checkMomentumConservation(), and setMomentumConservationThreshold().

static double(* Photos::randomDouble)() = PhotosRandom::randomReal
static

Pointer to random generator function

Definition at line 228 of file Photos.h.

Referenced by setRandomGenerator().

static vector< vector< int > * > * Photos::supBremList = 0
static

List of suppressed decays

Definition at line 191 of file Photos.h.

Referenced by suppressBremForBranch(), and suppressBremForDecay().


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