Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
G4AnnihilationCrossSection Class Reference

#include <G4AnnihilationCrossSection.hh>

Public Member Functions

 G4AnnihilationCrossSection ()
 
G4double GetCrossSection (int aCode, int bCode, G4double S)
 

Detailed Description

Definition at line 33 of file G4AnnihilationCrossSection.hh.

Constructor & Destructor Documentation

G4AnnihilationCrossSection::G4AnnihilationCrossSection ( )

Definition at line 31 of file G4AnnihilationCrossSection.cc.

32 {
33  // pi+ p
34  theDataSets.push_back(new G4ASCCrossSection(211, 2212, 13.7, 27.8, 0.45, 0.079));
35  // pi+ n
36  theDataSets.push_back(new G4ASCCrossSection(211, 2112, 13.7, 27.8, 0.45, 0.079));
37  // pi- p
38  theDataSets.push_back(new G4ASCCrossSection(-211, 2212, 13.7, 35.9, 0.45, 0.079));
39  // pi- n
40  theDataSets.push_back(new G4ASCCrossSection(-211, 2112, 13.7, 35.9, 0.45, 0.079));
41  // pi0 p
42  theDataSets.push_back(new G4ASCCrossSection(111, 2212, 13.7, 35.9, 0.45, 0.079));
43  // pi0 n
44  theDataSets.push_back(new G4ASCCrossSection(111, 2112, 13.7, 35.9, 0.45, 0.079));
45  // K- p
46  theDataSets.push_back(new G4ASCCrossSection(-321, 2212, 12.2, 26.4, 0.50, 0.079));
47  // K- n
48  theDataSets.push_back(new G4ASCCrossSection(-321, 2112, 12.2, 26.4, 0.50, 0.079));
49  // K0 p
50  theDataSets.push_back(new G4ASCCrossSection(-311, 2212, 12.2, 26.4, 0.50, 0.079));
51  // K0 n
52  theDataSets.push_back(new G4ASCCrossSection(-311, 2112, 12.2, 26.4, 0.50, 0.079));
53  // p- p
54  theDataSets.push_back(new G4ASCCrossSection(-2212, 2212, 22.0, 98.2, 0.46, 0.079));
55  // p- n
56  theDataSets.push_back(new G4ASCCrossSection(-2212, 2112, 22.3, 92.7, 0.46, 0.079));
57  // n- n
58  theDataSets.push_back(new G4ASCCrossSection(-2112, 2112, 22.0, 98.2, 0.46, 0.079));
59  // n- p
60  theDataSets.push_back(new G4ASCCrossSection(-2112, 2212, 22.3, 92.7, 0.46, 0.079));
61  // gamma+n and gamma+p
62  theDataSets.push_back(new G4GammaAnnCrossSection);
63 }

Member Function Documentation

G4double G4AnnihilationCrossSection::GetCrossSection ( int  aCode,
int  bCode,
G4double  S 
)
inline

Definition at line 44 of file G4AnnihilationCrossSection.hh.

45 {
46  G4double result = 0.;
47  typedef std::vector<G4VAnnihilationCrossSection*>::iterator iter;
48  iter i;
49  for(i=theDataSets.begin(); i!=theDataSets.end(); i++)
50  {
51  if((*i)->InCharge(aCode, bCode))
52  {
53  result = (*i)->GetXsec(S);
54  break;
55  }
56  }
57  return result;
58 }
G4double G4ParticleHPJENDLHEData::G4double result
double S(double temp)
double G4double
Definition: G4Types.hh:76

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