9 #ifndef Pythia8_SigmaTotal_H
10 #define Pythia8_SigmaTotal_H
12 #include "Pythia8/Info.h"
13 #include "Pythia8/ParticleData.h"
14 #include "Pythia8/PythiaStdlib.h"
15 #include "Pythia8/Settings.h"
29 SigmaTotal() : isCalc(false) {};
32 void init(Info* infoPtrIn, Settings& settings,
33 ParticleData* particleDataPtrIn );
36 bool calc(
int idA,
int idB,
double eCM);
39 bool hasSigmaTot()
const {
return isCalc;}
42 double sigmaTot()
const {
return sigTot;}
43 double sigmaEl()
const {
return sigEl;}
44 double sigmaXB()
const {
return sigXB;}
45 double sigmaAX()
const {
return sigAX;}
46 double sigmaXX()
const {
return sigXX;}
47 double sigmaAXB()
const {
return sigAXB;}
48 double sigmaND()
const {
return sigND;}
51 bool calcMBRxsecs(
int idA,
int idB,
double eCM);
54 double ddpMax()
const {
return ddpmax;}
55 double sdpMax()
const {
return sdpmax;}
56 double dpepMax()
const {
return dpepmax;}
59 double bSlopeEl()
const {
return bEl;}
60 double bSlopeXB(
double sX)
const {
return 2.*bB + alP2 * log(s/sX) ;}
61 double bSlopeAX(
double sX)
const {
return 2.*bA + alP2 * log(s/sX) ;}
62 double bSlopeXX(
double sX1,
double sX2)
const {
63 return alP2 * log( exp(4.) + s * s0 / (sX1 * sX2) ) ;}
66 double mMinXB()
const {
return mMinXBsave;}
67 double mMinAX()
const {
return mMinAXsave;}
68 double mMinAXB()
const {
return mMinAXBsave;}
69 double cRes()
const {
return CRES;}
70 double mResXB()
const {
return mResXBsave;}
71 double mResAX()
const {
return mResAXsave;}
72 double sProton()
const {
return SPROTON;}
75 double bMinSlopeXB()
const {
return max(2., 2. * bB);}
76 double bMinSlopeAX()
const {
return max(2., 2. * bA);}
77 double bMinSlopeXX()
const {
return alP2 * 4.;}
85 static const int IHADATABLE[], IHADBTABLE[], ISDTABLE[], IDDTABLE[];
86 static const double MMIN, EPSILON, ETA, X[], Y[], BETA0[], BHAD[],
87 ALPHAPRIME, CONVERTEL, CONVERTSD, CONVERTDD, MMIN0,
88 CRES, MRES0, CSD[10][8], CDD[10][9], SPROTON;
91 static const int NINTEG, NINTEG2;
92 static const double HBARC2, FFA1, FFA2,FFB1, FFB2;
95 bool isCalc, setTotal, zeroAXB, doDampen, setElastic;
96 double sigAXB2TeV, sigTotOwn, sigElOwn, sigXBOwn, sigAXOwn, sigXXOwn,
97 sigAXBOwn, maxXBOwn, maxAXOwn, maxXXOwn, maxAXBOwn, bSlope, rho,
98 lambda, tAbsMin, alphaEM0, sigmaPomP, mPomP, pPomP;
101 double MBReps, MBRalpha, MBRbeta0, MBRsigma0, m2min, dyminSDflux,
102 dyminDDflux, dyminCDflux, dyminSD, dyminDD, dyminCD,
103 dyminSigSD, dyminSigDD, dyminSigCD, sdpmax, ddpmax, dpepmax;
109 ParticleData* particleDataPtr;
112 double sigTot, sigEl, sigXB, sigAX, sigXX, sigAXB, sigND, bEl, s, bA, bB,
113 alP2, s0, mMinXBsave, mMinAXsave, mMinAXBsave, mResXBsave,
128 #endif // Pythia8_SigmaTotal_H