Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
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::G4AnnihilationCrossSection ( )

Definition at line 30 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

◆ GetCrossSection()

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}
double G4double
Definition: G4Types.hh:64

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