Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4ChatterjeeCrossSection Class Reference

#include <G4ChatterjeeCrossSection.hh>

Static Public Member Functions

static G4double ComputeCrossSection (G4double K, G4double cb, G4double resA13, G4double amu1, G4int idx, G4int Z, G4int resA)
 

Detailed Description

Definition at line 40 of file G4ChatterjeeCrossSection.hh.

Member Function Documentation

◆ ComputeCrossSection()

G4double G4ChatterjeeCrossSection::ComputeCrossSection ( G4double K,
G4double cb,
G4double resA13,
G4double amu1,
G4int idx,
G4int Z,
G4int resA )
static

Definition at line 56 of file G4ChatterjeeCrossSection.cc.

59{
60 G4double sig;
61 G4double Kc = std::min(K, emax);
62
63 // parameterisation for neutron
64 if(0 == Z) {
65 G4double landa = paramC[idx][3]/resA13 + paramC[idx][4];
66 G4double mu = (paramC[idx][5] + paramC[idx][6]*resA13)*resA13;
67 G4double nu = std::abs((paramC[idx][7]*resA + paramC[idx][8]*resA13)*resA13
68 + paramC[idx][9]);
69 sig = landa*Kc + mu + nu/Kc;
70
71 // parameterisation for charged
72 } else {
73 //JMQ 20.04.2015 1.5 F
74 G4double ec = cb;
75 //G4double ec = 1.44 * Z * resZ / (1.5*resA13 + paramC[idx][10]);
76 G4double ecsq = ec*ec;
77 G4double p = paramC[idx][0] + paramC[idx][1]/ec + paramC[idx][2]/(ecsq);
78 G4double landa = paramC[idx][3]*resA + paramC[idx][4];
79 G4double mu = paramC[idx][5]*amu1;
80 G4double nu = amu1* (paramC[idx][7] + paramC[idx][8]*ec + paramC[idx][9]*ecsq);
81 G4double q = landa - nu/ecsq - 2*p*ec;
82 G4double r = mu + 2*nu/ec + p*ecsq;
83 G4double ji= std::max(Kc, ec);
84 if(Kc < ec) { sig = p*Kc*Kc + q*Kc + r; }
85 else { sig = p*(Kc - ji)*(Kc - ji) + landa*Kc + mu + nu*(2 - Kc/ji)/ji; }
86 }
87 sig = std::max(sig, 0.0);
88 //G4cout << "Kc= " << Kc << " A= " << resA << " A13= " << resA13 << " cb= " << cb
89 // << " idx= " << idx << " Z= " << Z << " amu1= " << amu1 << " sig= " << sig <<G4endl;
90 return sig;
91}
double G4double
Definition G4Types.hh:83

Referenced by G4EvaporationProbability::CrossSection(), and G4PreCompoundFragment::CrossSection().


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