PYTHIA  8.312
Public Member Functions | List of all members
SigmaSaSDL Class Reference

#include <SigmaTotal.h>

Inheritance diagram for SigmaSaSDL:
SigmaTotAux

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
 
ParticleDataparticleDataPtr
 Pointer to the particle data table.
 
RndmrndmPtr
 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.
 

Detailed Description

The SigmaSaSDL class parametrizes total, elastic and diffractive cross sections according to Schuler and Sjostrand, starting from Donnachie and Landshoff.

Member Function Documentation

bool calcDiff ( int  idAin,
int  idBin,
double  sIn,
double  mAin,
double  mBin 
)
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.

bool calcTotEl ( int  idAin,
int  idBin,
double  sIn,
double  mAin,
double  mBin 
)
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.

double dsigmaCD ( double  xi1,
double  xi2,
double  t1,
double  t2,
int  = 0 
)
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.

double dsigmaDD ( double  xi1,
double  xi2,
double  t,
int  = 0 
)
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.

double dsigmaEl ( double  t,
bool  useCoulomb = false,
bool  = false 
)
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.

double dsigmaSD ( double  xi,
double  t,
bool  isXB,
int  = 0 
)
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.

void init ( Info infoPtrIn)
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.


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