Belle II Software  release-06-01-15
Photos Class Reference
Collaboration diagram for Photos:

Public Types

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

Public Member Functions

PhotosgetInstance ()
 Get instance of Photos.
 

Static Public Member Functions

static void initialize ()
 Initalize Photos with the parameters previously set via the setter methods.
 
static void iniInfo ()
 Prints info on Photos initialization (reinitialization) status.
 
static void processParticle (PhotosParticle *p)
 Process decay of single particle.
 
static void processBranch (PhotosParticle *p)
 Process decay of whole decay branch starting from given particle.
 
static void suppressBremForDecay (int count, int motherID,...)
 Suppress processing of a single decay.
 
static void suppressBremForBranch (int count, int motherID,...)
 Suppress processing of whole decay branch.
 
static void suppressAll ()
 Suppress all processing. More...
 
static void forceBremForDecay (int count, int motherID,...)
 Force processing of a single decay.
 
static void forceBremForBranch (int count, int motherID,...)
 Force processing of a whole decay branch.
 
static void IPHEKL_setPi0KLnoEmission (int m)
 Block emissions id decays pi0 and K_L -> gamma e+ e- 1 = no suppression 2 (default) = suppressed emissions in K_L -> gamma e+ e- ... More...
 
static bool IPHQRK_setQarknoEmission (int MODCOR, int PDGID)
 
static void createHistoryEntries (bool flag, int status)
 If event record allows it, create history entries of particles before Photos processing.
 
static void ignoreParticlesOfStatus (int status)
 Ignore particles with given status code.
 
static void deIgnoreParticlesOfStatus (int status)
 Remove 'status' from the list of ignored status codes.
 
static bool isStatusCodeIgnored (int status)
 Returns 'true' if status code is ignored.
 
static void setRandomGenerator (double(*gen)())
 Substitute build-in generator with external one.
 
static void setSeed (int iseed1, int iseed2)
 Seed for RANMAR used by fortran part of the Photos.
 
static void maxWtInterference (double interference)
 Maximum interference weight.
 
static void setInfraredCutOff (double cut_off)
 Minimal energy (in units of decaying particle mass) for photons to be explicitly generated.
 
static void setAlphaQED (double alpha)
 Coupling constant alpha QED.
 
static void setInterference (bool interference)
 Key for interference, matrix element weight.
 
static void setDoubleBrem (bool doub)
 Set double bremsstrahlung generation.
 
static void setQuatroBrem (bool quatroBrem)
 Set bremsstrahlung generation up to multiplicity of 4.
 
static void setCorrectionWtForW (bool corr)
 
static void setExponentiation (bool expo)
 Set exponentiation mode.
 
static void setPairEmission (bool ifpair)
 Set pair emission.
 
static void setPhotonEmission (bool ifphot)
 Set photon emission.
 
static void setMeCorrectionWtForScalar (bool corr)
 Switch for complete effects of matrix element (in scalar to 2 scalars decays)
 
static void setMeCorrectionWtForW (bool corr)
 Switch for complete effects of matrix element (in leptonic W decays)
 
static void setMeCorrectionWtForZ (bool corr)
 Switch for complete effects of matrix element (in leptonic Z decays)
 
static void setTopProcessRadiation (bool top)
 Set photon emission in top pair production in quark (gluon) pair annihilation.
 
static void setMomentumUnit (MomentumUnits unit)
 Set momentum unit.
 
static void setStopAtCriticalError (bool stop)
 
static void initializeKinematicCorrections (int flag)
 Initialize kinematic corrections.
 
static void forceMassFrom4Vector (bool flag)
 Force mass value to be sqrt(e^2-p^2) for all particle momenta taken from event record. More...
 
static void forceMassFromEventRecord (int pdgid)
 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. More...
 
static void forceMass (int pdgid, double mass)
 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. More...
 
static void setMomentumConservationThreshold (double threshold)
 set energy momentum conservation threshold
 
static void setEventNo (int iEvt)
 set event no
 

Static Public Attributes

static const int VER_MAJOR = 3
 
static const int VER_MINOR = 64
 
static const int DAT_DAY = 18
 
static const int DAT_MONTH = 2
 
static const int DAT_YEAR = 20
 
static enum Photospp::Photos::MomentumUnits momentumUnit = Photos::DEFAULT_MOMENTUM
 
static int EventNo = 0
 Is event No.
 
static bool isSuppressed = false
 Is in suppressed mode.
 
static bool massFrom4Vector = true
 Is mass from 4-vector or from event record.
 
static vector< vector< int > * > * supBremList = 0
 List of suppressed decays.
 
static vector< vector< int > * > * forceBremList = 0
 List of forced decays.
 
static vector< pair< int, double > * > * forceMassList = 0
 List of forced mass values.
 
static vector< int > * ignoreStatusCodeList = 0
 List of ignored status codes.
 
static double momentum_conservation_threshold = 0.1
 Threshold for momentum conservation check.
 
static bool meCorrectionWtForScalar = false
 Flag for complete effects of matrix element (in scalars decays)
 
static bool meCorrectionWtForZ = false
 Flag for complete effects of matrix element (in leptonic Z decays)
 
static bool meCorrectionWtForW = false
 Flag for complete effects of matrix element (in leptonic W decays)
 
static bool isCreateHistoryEntries = false
 Flag for creating historic entries.
 
static bool IfPair = false
 Flag for generating emission of pairs.
 
static bool IfPhot = true
 Flag for generating emission of photons.
 
static int historyEntriesStatus = 3
 Status of history entries.
 
static double(* randomDouble )() = PhotosRandom::randomReal
 Pointer to random generator function.
 

Private Member Functions

 Photos (const Photos &)
 
Photosoperator= (const Photos &)
 

Static Private Attributes

static Photos _instance
 

Detailed Description

Definition at line 30 of file Photos.h.

Member Function Documentation

◆ forceMass()

void 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 443 of file Photos.cc.

444  {
445  if (mass < 0.0) {
446  Log::Warning() << "Photos::forceMass: Mass must be > 0.0" << endl;
447  return;
448  }
449 
450  if (!forceMassList) forceMassList = new vector<pair<int, double>* >();
451  forceMassList->push_back(new pair<int, double>(pdgid, mass));
452  }
static vector< pair< int, double > * > * forceMassList
List of forced mass values.
Definition: Photos.h:195

◆ forceMassFrom4Vector()

static void 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 153 of file Photos.h.

153 { massFrom4Vector = flag; }
static bool massFrom4Vector
Is mass from 4-vector or from event record.
Definition: Photos.h:186

◆ forceMassFromEventRecord()

void 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 437 of file Photos.cc.

◆ IPHEKL_setPi0KLnoEmission()

void 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 299 of file Photos.cc.

◆ suppressAll()

static void suppressAll ( )
inlinestatic

Suppress all processing.

Only forced decays will be processed.

Definition at line 60 of file Photos.h.


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