39 pomeron_Alpha(0), pomeron_Alpha_Hard(0), pomeron_Alphaprime(0),
40 pomeron_C(0), pomeron_Gamma(0), pomeron_Gamma_Hard(0),
41 pomeron_Rsquare(0), pomeron_S(0)
56 else if (Encoding/100== 3 || Encoding/10 == 3)
122 return SigP(S) * FZ2;
127 return SigP(S)/pomeron_C *(Expand(Z(S)/2) - Expand(Z(S)));
145 return 2/pomeron_C*(1-
G4Exp(-1*Eikonal(S,impactsquare)));
151 return (pomeron_C-1)/pomeron_C *
158 return (1-
G4Exp(-2*Eikonal(S,impactsquare)))/pomeron_C;
178 return G4Exp(-2*Eikonal(S,impactsquare))/pomeron_C*
185 pomeron_Gamma=agam/
GeV/
GeV;
191 void G4PomeronCrossSection::InitForNucleon()
197 pomeron_Gamma= (2.6+3.96)/GeV/
GeV;
199 pomeron_Rsquare= 3.56/GeV/
GeV;
201 pomeron_Alpha= 0.9808;
202 pomeron_Alphaprime= 0.25/GeV/
GeV;
203 pomeron_Gamma_Hard = 0.0002/GeV/
GeV;
205 pomeron_Alpha_Hard = 1.47;
208 void G4PomeronCrossSection::InitForPion()
212 pomeron_Gamma= 2.17/GeV/
GeV;
214 pomeron_Rsquare= 2.36/GeV/
GeV;
215 pomeron_Alpha= 1.0808;
216 pomeron_Alphaprime= 0.25/GeV/
GeV;
217 pomeron_Gamma_Hard = 0.0002/GeV/
GeV;
218 pomeron_Alpha_Hard = 1.47;
221 void G4PomeronCrossSection::InitForKaon()
225 pomeron_Gamma= 1.92/GeV/
GeV;
227 pomeron_Rsquare= 1.96/GeV/
GeV;
228 pomeron_Alpha= 1.0808;
229 pomeron_Alphaprime= 0.25/GeV/
GeV;
230 pomeron_Gamma_Hard = 0.0002/GeV/
GeV;
231 pomeron_Alpha_Hard = 1.47;
234 void G4PomeronCrossSection::InitForGamma()
238 pomeron_Gamma= 2.07/GeV/
GeV;
240 pomeron_Rsquare= 2.16/GeV/
GeV;
241 pomeron_Alpha= 1.0808;
242 pomeron_Alphaprime= 0.25/GeV/
GeV;
243 pomeron_Gamma_Hard = 0.0002/GeV/
GeV;
244 pomeron_Alpha_Hard = 1.47;
251 for (
G4int j=2; j<21; j++ ) {
252 current *= -z *(j-1)/
sqr(j);
265 return 2*pomeron_C * Power(S) / Lambda(S);
270 return pomeron_Rsquare+pomeron_Alphaprime*
G4Log(S/pomeron_S);
297 return pomeron_Rsquare+pomeron_Alphaprime*
G4Log(S/pomeron_S);
302 return pomeron_Rsquare;
307 return 2*pomeron_C*PowerHard(S) / LambdaSoft(S);
312 return 2*pomeron_C*PowerHard(S)/LambdaHard(S);
static G4Pow * GetInstance()
G4double powA(G4double A, G4double y) const
G4double GetCutPomeronProbability(const G4double s, const G4double impactsquare, const G4int nPomerons)
G4double SoftEikonal(G4double s, G4double impactsquare)
G4double powN(G4double x, G4int n) const
G4double GetTotalCrossSection(const G4double s)
G4double GetInelasticProbability(const G4double s, const G4double impactsquare)
G4int GetPDGEncoding() const
static constexpr double hbarc_squared
G4double GetTotalProbability(const G4double s, const G4double impactsquare)
G4PomeronCrossSection(const G4ParticleDefinition *)
G4double factorial(G4int Z) const
G4double GetDiffractiveCrossSection(const G4double s)
G4double GetElasticProbability(const G4double s, const G4double impactsquare)
G4double GetElasticCrossSection(const G4double s)
G4double GetNondiffractiveProbability(const G4double s, const G4double impactsquare)
G4double GetDiffractiveProbability(const G4double s, const G4double impactsquare)
G4double G4Log(G4double x)
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
G4double GetInelasticCrossSection(const G4double s)
static constexpr double GeV
void Setgamma(const G4double agam)
static constexpr double pi
G4double HardEikonal(G4double s, G4double impactsquare)
G4int GetBaryonNumber() const