PYTHIA
8.312
|
#include <SigmaTotal.h>
Public Member Functions | |
SigmaSaSDL () | |
Constructor. | |
virtual void | init (Info *infoPtrIn) |
Store pointers and initialize data members. More... | |
double | sigmaTotal (int idAin, int idBin, double sIn, double mAin, double mBin) |
Fast method uniquely to return total cross section. More... | |
virtual bool | calcTotEl (int idAin, int idBin, double sIn, double mAin, double mBin) |
Calculate integrated total/elastic cross sections. More... | |
virtual double | dsigmaEl (double t, bool useCoulomb=false, bool=false) |
Differential elastic cross section. More... | |
virtual bool | calcDiff (int idAin, int idBin, double sIn, double mAin, double mBin) |
Calculate integrated diffractive cross sections. More... | |
virtual double | dsigmaSD (double xi, double t, bool isXB, int=0) |
Differential single diffractive cross section. More... | |
virtual double | dsigmaDD (double xi1, double xi2, double t, int=0) |
Differential double diffractive cross section. More... | |
virtual double | dsigmaCD (double xi1, double xi2, double t1, double t2, int=0) |
Differential central diffractive cross section. More... | |
virtual double | mMinCD () |
Minimal central diffractive mass. | |
Public Member Functions inherited from SigmaTotAux | |
SigmaTotAux () | |
Constructor. | |
virtual | ~SigmaTotAux () |
Destructor. | |
virtual bool | calcTot (int, int, double) |
Calculate total cros section only. Only implemented for SigmaSaSDL. | |
virtual bool | splitDiff () |
Possibility to separate xi and t choices for diffraction. | |
pair< double, double > | tRange (double sIn, double s1In, double s2In, double s3In, double s4In) |
bool | tInRange (double tIn, double sIn, double s1In, double s2In, double s3In, double s4In) |
double | pFormFac (double tIn) |
Commonly used proton form factor. | |
Additional Inherited Members | |
Public Attributes inherited from SigmaTotAux | |
bool | isExpEl |
Store total and elastic cross section properties. | |
bool | hasCou |
double | sigTot |
double | rhoOwn |
double | sigEl |
double | bEl |
double | sigTotCou |
double | sigElCou |
double | sigXB |
Store diffractive cross sections. Possibly also sigmaND. | |
double | sigAX |
double | sigXX |
double | sigAXB |
double | sigNDtmp |
Protected Member Functions inherited from SigmaTotAux | |
virtual bool | initCoulomb (Settings &settings, ParticleData *particleDataPtrIn) |
Initialize Coulomb correction parameters. More... | |
virtual bool | addCoulomb () |
Add Coulomb corrections to the elastic and total cross sections. More... | |
virtual double | dsigmaElCoulomb (double t) |
Coulomb contribution to the differential elastic cross sections. More... | |
Protected Attributes inherited from SigmaTotAux | |
int | idA |
Initialization data, normally only set once. | |
int | idB |
bool | tryCoulomb |
Add Coulomb corrections to the elastic cross section. | |
double | chgSgn |
double | tAbsMin |
double | lambda |
double | phaseCst |
ParticleData * | particleDataPtr |
Pointer to the particle data table. | |
Rndm * | rndmPtr |
Pointer to the random number generator. | |
Static Protected Attributes inherited from SigmaTotAux | |
static const int | NPOINTS = 1000 |
Constants: could only be changed in the code itself. More... | |
static const double | ALPHAEM = 0.00729353 |
alpha_em(0). More... | |
static const double | CONVERTEL = 0.0510925 |
Conversion coefficients = 1/(16pi) * (mb <-> GeV^2). | |
static const double | MPROTON = 0.9382720 |
Proton and pion masses, and their squares. Euler's constant. | |
static const double | SPROTON = 0.8803544 |
static const double | MPION = 0.1349766 |
static const double | SPION = 0.0182187 |
static const double | GAMMAEUL = 0.577215665 |
static const double | TABSREF = 2e-3 |
Reference scale for nominal definition of t slope. | |
static const double | TABSMAX = 1. |
static const double | MINSLOPEEL = 10. |
The SigmaSaSDL class parametrizes total, elastic and diffractive cross sections according to Schuler and Sjostrand, starting from Donnachie and Landshoff.
|
virtual |
Calculate integrated diffractive cross sections.
Diffractive cross sections.
Find appropriate combination of incoming beams.
Use simple behaviour close to threshold; around 10 GeV for normal hadrons.
Ordinary hadron-hadron collisions.
Lookup coefficients for single and double diffraction.
Single diffractive scattering A + B -> X + B cross section.
Extension to low energies.
Single diffractive scattering A + B -> A + X cross section.
Extension to low energies.
Order single diffractive correctly.
Double diffractive scattering A + B -> X1 + X2 cross section.
Extension to low energies.
Central diffractive scattering A + B -> A + X + B, only p and pbar.
Option with user-requested damping of diffractive cross sections.
gamma + p: loop over VMD states on side A.
Lookup coefficients for single and double diffraction.
Single diffractive scattering A + B -> X + B cross section.
Single diffractive scattering A + B -> A + X cross section.
Double diffractive scattering A + B -> X1 + X2 cross section.
End of VMD loop.
Order single diffractive correctly.
Option with user-requested damping of diffractive cross sections.
gamma + gamma: loop over VMD states on sides A and B.
Lookup coefficients for single and double diffraction.
Single diffractive scattering A + B -> X + B cross section.
Single diffractive scattering A + B -> A + X cross section.
Double diffractive scattering A + B -> X1 + X2 cross section.
End of VMD loop.
Option with user-requested damping of diffractive cross sections.
No diffractive scattering for Pomeron + p.
Assuming calcTotEl has already been called, nondiffractive can be found.
Done.
Reimplemented from SigmaTotAux.
|
virtual |
Calculate integrated total/elastic cross sections.
Calculate total and (integrated) elastic cross sections.
Find appropriate combination of incoming beams.
Ordinary hadron-hadron collisions. Total cross section.
Elastic slope parameter and cross section.
gamma + p and p + gamma.
Loop over VMD states on side A for elastic cross section.
gamma + gamma
Loop over VMD states on side A and B for elastic cross section.
Primitive implementation of Pomeron + p. No elastic scattering.
Possibly add Coulomb correction and interference.
Done.
Reimplemented from SigmaTotAux.
|
virtual |
Differential central diffractive cross section.
Differential central diffractive cross sections. Simple extension of single diffraction, but without normalization.
Ordinary hadron-hadron collisions.
Calculate mass; checked to be above threshold.
Weight associated with differential AB -> AX cross section.
Weight associated with differential AB -> XB cross section.
Optional weight to tilt the mass spectrum.
Done.
No central diffraction for gamma + p, gamma + gamma or Pomeron + p.
Reimplemented from SigmaTotAux.
|
virtual |
Differential double diffractive cross section.
Calculate masses and check that they are above threshold. Optional weight.
Ordinary hadron-hadron collisions.
Return differential AB -> X1X2 cross section value.
gamma + p: loop over VMD states on side A.
Mass thresholds depend on VMD state.
Calculate and sum differential AB -> X1X2 cross section value.
gamma + gamma: loop over VMD states on side A and B.
Mass thresholds depend on VMD state.
Calculate and sum differential AB -> X1X2 cross section value.
No diffractive scattering for Pomeron + p.
Reimplemented from SigmaTotAux.
|
virtual |
Differential elastic cross section.
Ordinary hadron-hadron collisions.
gamma + p and p + gamma: loop over VMD states on side A.
Elastic slope parameter and cross section.
Hadronic contribution: simple exponential.
gamma + gamma: loop over VMD states on side A and B.
Elastic slope parameter and cross section.
Hadronic contribution: simple exponential.
No elastic scattering for Pomeron + p.
Possibly add Coulomb contribution and interference.
Done.
Reimplemented from SigmaTotAux.
|
virtual |
Differential single diffractive cross section.
Differential single diffractive cross sections.
Calculate mass; later checked to be above threshold. Optional weight.
Ordinary hadron-hadron collisions.
Separate XB and AX cases since A and B masses/couplings may differ.
Return differential AB -> XB cross section value.
Return differential AB -> AX cross section value.
gamma + p: loop over VMD states on side A.
Mass thresholds depend on VMD state.
Calculate and sum differential AB -> XB cross section value.
Calculate and sum differential AB -> AX cross section value.
gamma + gamma: loop over VMD states on side A and B.
Mass thresholds depend on VMD state.
Calculate and sum differential AB -> XB cross section value.
Calculate and sum differential AB -> AX cross section value.
No diffractive scattering for Pomeron + p.
Reimplemented from SigmaTotAux.
|
virtual |
Store pointers and initialize data members.
Store pointer to Info and initialize data members.
Store pointer.
Use shorthand for settings
Initialize parameters for Coulomb corrections to elastic scattering.
User-set values to dampen diffractive cross sections.
Parameters for diffractive systems.
Diffractive mass spectrum starts at m + mMin0 and has a low-mass enhancement, factor cRes, up to around m + mRes0. Special for CD.
Derived quantities.
Implements SigmaTotAux.
double sigmaTotal | ( | int | idAin, |
int | idBin, | ||
double | sIn, | ||
double | mAin, | ||
double | mBin | ||
) |
Fast method uniquely to return total cross section.
Calculate total cross section only, for fast decision.
Minimum action needed for total cross section.