Geant4  10.02.p03
G4ChipsPionPlusInelasticXS Class Reference

#include <G4ChipsPionPlusInelasticXS.hh>

Inheritance diagram for G4ChipsPionPlusInelasticXS:
Collaboration diagram for G4ChipsPionPlusInelasticXS:

Public Member Functions

 G4ChipsPionPlusInelasticXS ()
 
 ~G4ChipsPionPlusInelasticXS ()
 
virtual void CrossSectionDescription (std::ostream &) const
 
virtual G4bool IsIsoApplicable (const G4DynamicParticle *Pt, G4int Z, G4int A, const G4Element *elm, const G4Material *mat)
 
virtual G4double GetIsoCrossSection (const G4DynamicParticle *, G4int tgZ, G4int A, const G4Isotope *iso=0, const G4Element *elm=0, const G4Material *mat=0)
 
virtual G4double GetChipsCrossSection (G4double momentum, G4int Z, G4int N, G4int pdg)
 
- Public Member Functions inherited from G4VCrossSectionDataSet
 G4VCrossSectionDataSet (const G4String &nam="")
 
virtual ~G4VCrossSectionDataSet ()
 
virtual G4bool IsElementApplicable (const G4DynamicParticle *, G4int Z, const G4Material *mat=0)
 
G4double GetCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=0)
 
G4double ComputeCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=0)
 
virtual G4double GetElementCrossSection (const G4DynamicParticle *, G4int Z, const G4Material *mat=0)
 
virtual G4IsotopeSelectIsotope (const G4Element *, G4double kinEnergy)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
virtual void DumpPhysicsTable (const G4ParticleDefinition &)
 
virtual G4int GetVerboseLevel () const
 
virtual void SetVerboseLevel (G4int value)
 
G4double GetMinKinEnergy () const
 
void SetMinKinEnergy (G4double value)
 
G4double GetMaxKinEnergy () const
 
void SetMaxKinEnergy (G4double value)
 
const G4StringGetName () const
 

Static Public Member Functions

static const char * Default_Name ()
 

Private Member Functions

G4double CalculateCrossSection (G4int F, G4int I, G4int PDG, G4int Z, G4int N, G4double Momentum)
 
G4int GetFunctions (G4int tZ, G4int tN, G4double *y, G4double *z)
 
G4double CrossSectionLin (G4int targZ, G4int targN, G4double P)
 
G4double CrossSectionLog (G4int targZ, G4int targN, G4double lP)
 
G4double CrossSectionFormula (G4int targZ, G4int targN, G4double P, G4double lP)
 
G4double ThresholdMomentum (G4int targZ, G4int targN)
 
G4double EquLinearFit (G4double X, G4int N, G4double X0, G4double DX, G4double *Y)
 

Private Attributes

G4double lastSig
 
G4doublelastLEN
 
G4doublelastHEN
 
G4double lastE
 
G4int lastPDG
 
G4int lastN
 
G4int lastZ
 
G4double lastP
 
G4double lastTH
 
G4double lastCS
 
G4int lastI
 
std::vector< G4double * > * LEN
 
std::vector< G4double * > * HEN
 
G4int j
 
std::vector< G4intcolN
 
std::vector< G4intcolZ
 
std::vector< G4doublecolP
 
std::vector< G4doublecolTH
 
std::vector< G4doublecolCS
 

Additional Inherited Members

- Protected Member Functions inherited from G4VCrossSectionDataSet
void SetName (const G4String &)
 
- Protected Attributes inherited from G4VCrossSectionDataSet
G4int verboseLevel
 

Detailed Description

Definition at line 48 of file G4ChipsPionPlusInelasticXS.hh.

Constructor & Destructor Documentation

◆ G4ChipsPionPlusInelasticXS()

G4ChipsPionPlusInelasticXS::G4ChipsPionPlusInelasticXS ( )

Definition at line 55 of file G4ChipsPionPlusInelasticXS.cc.

56 {
57  // Initialization of the
58  lastLEN=0; // Pointer to lastArray of LowEn CS
59  lastHEN=0; // Pointer to lastArray of HighEn CS
60  lastN=0; // The last N of calculated nucleus
61  lastZ=0; // The last Z of calculated nucleus
62  lastP=0.; // Last used in cross section Momentum
63  lastTH=0.; // Last threshold momentum
64  lastCS=0.; // Last value of the Cross Section
65  lastI=0; // The last position in the DAMDB
66  LEN = new std::vector<G4double*>;
67  HEN = new std::vector<G4double*>;
68 }
G4VCrossSectionDataSet(const G4String &nam="")
std::vector< G4double * > * LEN
std::vector< G4double * > * HEN

◆ ~G4ChipsPionPlusInelasticXS()

G4ChipsPionPlusInelasticXS::~G4ChipsPionPlusInelasticXS ( )

Definition at line 71 of file G4ChipsPionPlusInelasticXS.cc.

72 {
73  G4int lens=LEN->size();
74  for(G4int i=0; i<lens; ++i) delete[] (*LEN)[i];
75  delete LEN;
76  G4int hens=HEN->size();
77  for(G4int i=0; i<hens; ++i) delete[] (*HEN)[i];
78  delete HEN;
79 }
int G4int
Definition: G4Types.hh:78
std::vector< G4double * > * LEN
std::vector< G4double * > * HEN

Member Function Documentation

◆ CalculateCrossSection()

G4double G4ChipsPionPlusInelasticXS::CalculateCrossSection ( G4int  F,
G4int  I,
G4int  PDG,
G4int  Z,
G4int  N,
G4double  Momentum 
)
private

Definition at line 182 of file G4ChipsPionPlusInelasticXS.cc.

184 {
185  static const G4double THmin=27.; // default minimum Momentum (MeV/c) Threshold
186  static const G4double THmiG=THmin*.001; // minimum Momentum (GeV/c) Threshold
187  static const G4double dP=10.; // step for the LEN (Low ENergy) table MeV/c
188  static const G4double dPG=dP*.001; // step for the LEN (Low ENergy) table GeV/c
189  static const G4int nL=105; // A#of LEN points in E (step 10 MeV/c)
190  static const G4double Pmin=THmin+(nL-1)*dP; // minP for the HighE part with safety
191  static const G4double Pmax=227000.; // maxP for the HEN (High ENergy) part 227 GeV
192  static const G4int nH=224; // A#of HEN points in lnE
193  static const G4double milP=G4Log(Pmin);// Low logarithm energy for the HEN part
194  static const G4double malP=G4Log(Pmax);// High logarithm energy (each 2.75 percent)
195  static const G4double dlP=(malP-milP)/(nH-1); // Step in log energy in the HEN part
196  static const G4double milPG=G4Log(.001*Pmin);// Low logarithmEnergy for HEN part GeV/c
197  G4double sigma=0.;
198  if(F&&I) sigma=0.; // @@ *!* Fake line *!* to use F & I !!!Temporary!!!
199  //G4double A=targN+targZ; // A of the target
200  if(F<=0) // This isotope was not the last used isotop
201  {
202  if(F<0) // This isotope was found in DAMDB =-----=> RETRIEVE
203  {
204  G4int sync=LEN->size();
205  if(sync<=I) G4cerr<<"*!*G4ChipsPiMinusNuclCS::CalcCrosSect:Sync="<<sync<<"<="<<I<<G4endl;
206  lastLEN=(*LEN)[I]; // Pointer to prepared LowEnergy cross sections
207  lastHEN=(*HEN)[I]; // Pointer to prepared High Energy cross sections
208  }
209  else // This isotope wasn't calculated before => CREATE
210  {
211  lastLEN = new G4double[nL]; // Allocate memory for the new LEN cross sections
212  lastHEN = new G4double[nH]; // Allocate memory for the new HEN cross sections
213  // --- Instead of making a separate function ---
214  G4double P=THmiG; // Table threshold in GeV/c
215  for(G4int k=0; k<nL; k++)
216  {
217  lastLEN[k] = CrossSectionLin(targZ, targN, P);
218  P+=dPG;
219  }
220  G4double lP=milPG;
221  for(G4int n=0; n<nH; n++)
222  {
223  lastHEN[n] = CrossSectionLog(targZ, targN, lP);
224  lP+=dlP;
225  }
226  // --- End of possible separate function
227  // *** The synchronization check ***
228  G4int sync=LEN->size();
229  if(sync!=I)
230  {
231  G4cerr<<"***G4ChipsPiMinusNuclCS::CalcCrossSect: Sinc="<<sync<<"#"<<I<<", Z=" <<targZ
232  <<", N="<<targN<<", F="<<F<<G4endl;
233  //G4Exception("G4PiMinusNuclearCS::CalculateCS:","39",FatalException,"DBoverflow");
234  }
235  LEN->push_back(lastLEN); // remember the Low Energy Table
236  HEN->push_back(lastHEN); // remember the High Energy Table
237  } // End of creation of the new set of parameters
238  } // End of parameters udate
239  // =-----------------= NOW the Magic Formula =-------------------------=
240  if (Momentum<lastTH) return 0.; // It must be already checked in the interface class
241  else if (Momentum<Pmin) // High Energy region
242  {
243  sigma=EquLinearFit(Momentum,nL,THmin,dP,lastLEN);
244  }
245  else if (Momentum<Pmax) // High Energy region
246  {
247  G4double lP=G4Log(Momentum);
248  sigma=EquLinearFit(lP,nH,milP,dlP,lastHEN);
249  }
250  else // UHE region (calculation, not frequent)
251  {
252  G4double P=0.001*Momentum; // Approximation formula is for P in GeV/c
253  sigma=CrossSectionFormula(targZ, targN, P, G4Log(P));
254  }
255  if(sigma<0.) return 0.;
256  return sigma;
257 }
G4double CrossSectionFormula(G4int targZ, G4int targN, G4double P, G4double lP)
static const G4int nH
static const G4int nL
G4double EquLinearFit(G4double X, G4int N, G4double X0, G4double DX, G4double *Y)
int G4int
Definition: G4Types.hh:78
static double P[]
Char_t n[5]
G4double CrossSectionLin(G4int targZ, G4int targN, G4double P)
G4double G4Log(G4double x)
Definition: G4Log.hh:230
std::vector< G4double * > * LEN
std::vector< G4double * > * HEN
#define G4endl
Definition: G4ios.hh:61
double G4double
Definition: G4Types.hh:76
G4double CrossSectionLog(G4int targZ, G4int targN, G4double lP)
static const G4double THmin
G4GLOB_DLL std::ostream G4cerr
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CrossSectionDescription()

void G4ChipsPionPlusInelasticXS::CrossSectionDescription ( std::ostream &  outFile) const
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 82 of file G4ChipsPionPlusInelasticXS.cc.

83 {
84  outFile << "G4ChipsPionPlusInelasticXS provides the inelastic cross\n"
85  << "section for pion+ nucleus scattering as a function of incident\n"
86  << "momentum. The cross section is calculated using M. Kossov's\n"
87  << "CHIPS parameterization of cross section data.\n";
88 }
Here is the caller graph for this function:

◆ CrossSectionFormula()

G4double G4ChipsPionPlusInelasticXS::CrossSectionFormula ( G4int  targZ,
G4int  targN,
G4double  P,
G4double  lP 
)
private

Definition at line 289 of file G4ChipsPionPlusInelasticXS.cc.

291 {
292  G4double sigma=0.;
293  if(tZ==1 && !tN) // PiPlus-Proton interaction from G4QuasiElRatios
294  {
295  G4double ld=lP-3.5;
296  G4double ld2=ld*ld;
297  G4double p2=P*P;
298  G4double p4=p2*p2;
299  G4double sp=std::sqrt(P);
300  G4double lm=lP-.32;
301  G4double md=lm*lm+.04;
302  G4double El=(.0557*ld2+2.4+6./sp)/(1.+3./p4);
303  G4double To=(.3*ld2+22.3+5./sp)/(1.+1./p4);
304  sigma=(To-El)+.1/md;
305  }
306  else if(tZ==1 && tN==1) // pimp_tot
307  {
308  G4double p2=P*P;
309  G4double d=lP-2.7;
310  G4double f=lP+1.25;
311  G4double gg=lP-.017;
312  sigma=(.55*d*d+38.+23./std::sqrt(P))/(1.+.3/p2/p2)+18./(f*f+.1089)+.02/(gg*gg+.0025);
313  }
314  else if(tZ<97 && tN<152) // General solution
315  {
316  G4double d=lP-4.2;
317  G4double p2=P*P;
318  G4double p4=p2*p2;
319  G4double a=tN+tZ; // A of the target
320  G4double al=G4Log(a);
321  G4double sa=std::sqrt(a);
322  G4double ssa=std::sqrt(sa);
323  G4double a2=a*a;
324  G4double c=41.*G4Exp(al*.68)*(1.+44./a2)/(1.+8./a)/(1.+200./a2/a2);
325  G4double f=290.*ssa/(1.+34./a/ssa);
326  G4double gg=-1.32-al*.043;
327  G4double u=lP-gg;
328  G4double h=al*(.4-.055*al);
329  G4double r=.01+a2*5.E-8;
330  sigma=(c+d*d)/(1.+(.2-.009*sa)/p4)+f/(u*u+h*h)/(1.+r/p2);
331  }
332  else
333  {
334  G4cerr<<"-Warning-G4ChipsPiPlusNuclearCroSect::CSForm:*Bad A* Z="<<tZ<<", N="<<tN<<G4endl;
335  sigma=0.;
336  }
337  if(sigma<0.) return 0.;
338  return sigma;
339 }
Float_t d
static double P[]
G4double G4Log(G4double x)
Definition: G4Log.hh:230
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
Definition: G4Exp.hh:183
#define G4endl
Definition: G4ios.hh:61
double G4double
Definition: G4Types.hh:76
static const G4double a2
G4GLOB_DLL std::ostream G4cerr
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CrossSectionLin()

G4double G4ChipsPionPlusInelasticXS::CrossSectionLin ( G4int  targZ,
G4int  targN,
G4double  P 
)
private

Definition at line 276 of file G4ChipsPionPlusInelasticXS.cc.

277 {
278  G4double lP=G4Log(P);
279  return CrossSectionFormula(tZ, tN, P, lP);
280 }
G4double CrossSectionFormula(G4int targZ, G4int targN, G4double P, G4double lP)
static double P[]
G4double G4Log(G4double x)
Definition: G4Log.hh:230
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CrossSectionLog()

G4double G4ChipsPionPlusInelasticXS::CrossSectionLog ( G4int  targZ,
G4int  targN,
G4double  lP 
)
private

Definition at line 283 of file G4ChipsPionPlusInelasticXS.cc.

284 {
285  G4double P=G4Exp(lP);
286  return CrossSectionFormula(tZ, tN, P, lP);
287 }
G4double CrossSectionFormula(G4int targZ, G4int targN, G4double P, G4double lP)
static double P[]
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
Definition: G4Exp.hh:183
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Default_Name()

static const char* G4ChipsPionPlusInelasticXS::Default_Name ( )
inlinestatic

Definition at line 57 of file G4ChipsPionPlusInelasticXS.hh.

57 {return "ChipsPionPlusInelasticXS";}
Here is the call graph for this function:
Here is the caller graph for this function:

◆ EquLinearFit()

G4double G4ChipsPionPlusInelasticXS::EquLinearFit ( G4double  X,
G4int  N,
G4double  X0,
G4double  DX,
G4double Y 
)
private

Definition at line 341 of file G4ChipsPionPlusInelasticXS.cc.

342 {
343  if(DX<=0. || N<2)
344  {
345  G4cerr<<"***G4ChipsPionPlusInelasticXS::EquLinearFit: DX="<<DX<<", N="<<N<<G4endl;
346  return Y[0];
347  }
348 
349  G4int N2=N-2;
350  G4double d=(X-X0)/DX;
351  G4int jj=static_cast<int>(d);
352  if (jj<0) jj=0;
353  else if(jj>N2) jj=N2;
354  d-=jj; // excess
355  G4double yi=Y[jj];
356  G4double sigma=yi+(Y[jj+1]-yi)*d;
357 
358  return sigma;
359 }
Float_t d
Float_t Y
int G4int
Definition: G4Types.hh:78
Float_t X
#define G4endl
Definition: G4ios.hh:61
**D E S C R I P T I O N
double G4double
Definition: G4Types.hh:76
G4GLOB_DLL std::ostream G4cerr
Here is the caller graph for this function:

◆ GetChipsCrossSection()

G4double G4ChipsPionPlusInelasticXS::GetChipsCrossSection ( G4double  momentum,
G4int  Z,
G4int  N,
G4int  pdg 
)
virtual

!The slave functions must provide cross-sections in millibarns (mb) !! (not in IU)

Definition at line 111 of file G4ChipsPionPlusInelasticXS.cc.

112 {
113 
114  G4bool in=false; // By default the isotope must be found in the AMDB
115  if(tgN!=lastN || tgZ!=lastZ) // The nucleus was not the last used isotope
116  {
117  in = false; // By default the isotope haven't be found in AMDB
118  lastP = 0.; // New momentum history (nothing to compare with)
119  lastN = tgN; // The last N of the calculated nucleus
120  lastZ = tgZ; // The last Z of the calculated nucleus
121  lastI = colN.size(); // Size of the Associative Memory DB in the heap
122  j = 0; // A#0f records found in DB for this projectile
123  if(lastI) for(G4int i=0; i<lastI; i++) // AMDB exists, try to find the (Z,N) isotope
124  {
125  if(colN[i]==tgN && colZ[i]==tgZ) // Try the record "i" in the AMDB
126  {
127  lastI=i; // Remember the index for future fast/last use
128  lastTH =colTH[i]; // The last THreshold (A-dependent)
129  if(pMom<=lastTH)
130  {
131  return 0.; // Energy is below the Threshold value
132  }
133  lastP =colP [i]; // Last Momentum (A-dependent)
134  lastCS =colCS[i]; // Last CrossSect (A-dependent)
135  in = true; // This is the case when the isotop is found in DB
136  // Momentum pMom is in IU ! @@ Units
137  lastCS=CalculateCrossSection(-1,j,211,lastZ,lastN,pMom); // read & update
138  if(lastCS<=0. && pMom>lastTH) // Correct the threshold (@@ No intermediate Zeros)
139  {
140  lastCS=0.;
141  lastTH=pMom;
142  }
143  break; // Go out of the LOOP
144  }
145  j++; // Increment a#0f records found in DB
146  }
147  if(!in) // This isotope has not been calculated previously
148  {
150  lastCS=CalculateCrossSection(0,j,211,lastZ,lastN,pMom); //calculate & create
151  //if(lastCS>0.) // It means that the AMBD was initialized
152  //{
153 
154  lastTH = 0; //ThresholdEnergy(tgZ, tgN); // The Threshold Energy which is now the last
155  colN.push_back(tgN);
156  colZ.push_back(tgZ);
157  colP.push_back(pMom);
158  colTH.push_back(lastTH);
159  colCS.push_back(lastCS);
160  //} // M.K. Presence of H1 with high threshold breaks the syncronization
161  return lastCS*millibarn;
162  } // End of creation of the new set of parameters
163  else
164  {
165  colP[lastI]=pMom;
166  colCS[lastI]=lastCS;
167  }
168  } // End of parameters udate
169  else if(pMom<=lastTH)
170  {
171  return 0.; // Momentum is below the Threshold Value -> CS=0
172  }
173  else // It is the last used -> use the current tables
174  {
175  lastCS=CalculateCrossSection(1,j,211,lastZ,lastN,pMom); // Only read and UpdateDB
176  lastP=pMom;
177  }
178  return lastCS*millibarn;
179 }
ifstream in
Definition: comparison.C:7
int G4int
Definition: G4Types.hh:78
G4double CalculateCrossSection(G4int F, G4int I, G4int PDG, G4int Z, G4int N, G4double Momentum)
bool G4bool
Definition: G4Types.hh:79
static const double millibarn
Definition: G4SIunits.hh:105
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetFunctions()

G4int G4ChipsPionPlusInelasticXS::GetFunctions ( G4int  tZ,
G4int  tN,
G4double y,
G4double z 
)
private
Here is the caller graph for this function:

◆ GetIsoCrossSection()

G4double G4ChipsPionPlusInelasticXS::GetIsoCrossSection ( const G4DynamicParticle Pt,
G4int  tgZ,
G4int  A,
const G4Isotope iso = 0,
const G4Element elm = 0,
const G4Material mat = 0 
)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 99 of file G4ChipsPionPlusInelasticXS.cc.

103 {
104  G4double pMom=Pt->GetTotalMomentum();
105  G4int tgN = A - tgZ;
106 
107  return GetChipsCrossSection(pMom, tgZ, tgN, 211);
108 }
G4double GetTotalMomentum() const
int G4int
Definition: G4Types.hh:78
virtual G4double GetChipsCrossSection(G4double momentum, G4int Z, G4int N, G4int pdg)
double A(double temperature)
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsIsoApplicable()

G4bool G4ChipsPionPlusInelasticXS::IsIsoApplicable ( const G4DynamicParticle Pt,
G4int  Z,
G4int  A,
const G4Element elm,
const G4Material mat 
)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 90 of file G4ChipsPionPlusInelasticXS.cc.

93 {
94  return true;
95 }
Here is the caller graph for this function:

◆ ThresholdMomentum()

G4double G4ChipsPionPlusInelasticXS::ThresholdMomentum ( G4int  targZ,
G4int  targN 
)
private

Definition at line 260 of file G4ChipsPionPlusInelasticXS.cc.

261 {
262  static const G4double third=1./3.;
263  static const G4double pM = G4PionPlus::PionPlus()->Definition()->GetPDGMass(); // Projectile mass in MeV
264  static const G4double tpM= pM+pM; // Doubled projectile mass (MeV)
265  G4double tA=tZ+tN;
266  if(tZ<.99 || tN<0.) return 0.;
267  else if(tZ==1 && tN==0) return 300.; // A threshold on the free proton
268  //G4double dE=1.263*tZ/(1.+G4Pow::GetInstance()->powA(tA,third));
269  G4double dE=tZ/(1.+G4Pow::GetInstance()->powA(tA,third)); // Safety for diffused edge of the nucleus (QE)
270  G4double tM=931.5*tA;
271  G4double T=dE+dE*(dE/2+pM)/tM;
272  return std::sqrt(T*(tpM+T));
273 }
static G4Pow * GetInstance()
Definition: G4Pow.cc:55
static G4PionPlus * Definition()
Definition: G4PionPlus.cc:52
static const G4double dE
static G4PionPlus * PionPlus()
Definition: G4PionPlus.cc:98
static const G4double third
G4double powA(G4double A, G4double y) const
Definition: G4Pow.hh:259
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ colCS

std::vector<G4double> G4ChipsPionPlusInelasticXS::colCS
private

Definition at line 104 of file G4ChipsPionPlusInelasticXS.hh.

◆ colN

std::vector<G4int> G4ChipsPionPlusInelasticXS::colN
private

Definition at line 100 of file G4ChipsPionPlusInelasticXS.hh.

◆ colP

std::vector<G4double> G4ChipsPionPlusInelasticXS::colP
private

Definition at line 102 of file G4ChipsPionPlusInelasticXS.hh.

◆ colTH

std::vector<G4double> G4ChipsPionPlusInelasticXS::colTH
private

Definition at line 103 of file G4ChipsPionPlusInelasticXS.hh.

◆ colZ

std::vector<G4int> G4ChipsPionPlusInelasticXS::colZ
private

Definition at line 101 of file G4ChipsPionPlusInelasticXS.hh.

◆ HEN

std::vector<G4double*>* G4ChipsPionPlusInelasticXS::HEN
private

Definition at line 97 of file G4ChipsPionPlusInelasticXS.hh.

◆ j

G4int G4ChipsPionPlusInelasticXS::j
private

Definition at line 99 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastCS

G4double G4ChipsPionPlusInelasticXS::lastCS
private

Definition at line 94 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastE

G4double G4ChipsPionPlusInelasticXS::lastE
private

Definition at line 88 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastHEN

G4double* G4ChipsPionPlusInelasticXS::lastHEN
private

Definition at line 87 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastI

G4int G4ChipsPionPlusInelasticXS::lastI
private

Definition at line 95 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastLEN

G4double* G4ChipsPionPlusInelasticXS::lastLEN
private

Definition at line 86 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastN

G4int G4ChipsPionPlusInelasticXS::lastN
private

Definition at line 90 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastP

G4double G4ChipsPionPlusInelasticXS::lastP
private

Definition at line 92 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastPDG

G4int G4ChipsPionPlusInelasticXS::lastPDG
private

Definition at line 89 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastSig

G4double G4ChipsPionPlusInelasticXS::lastSig
private

Definition at line 85 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastTH

G4double G4ChipsPionPlusInelasticXS::lastTH
private

Definition at line 93 of file G4ChipsPionPlusInelasticXS.hh.

◆ lastZ

G4int G4ChipsPionPlusInelasticXS::lastZ
private

Definition at line 91 of file G4ChipsPionPlusInelasticXS.hh.

◆ LEN

std::vector<G4double*>* G4ChipsPionPlusInelasticXS::LEN
private

Definition at line 96 of file G4ChipsPionPlusInelasticXS.hh.


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