ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4ScreenedCoulombCrossSection Class Referenceabstract

#include <geant4/tree/geant4-10.6-release/examples/extended/electromagnetic/TestEm7/include/G4ScreenedNuclearRecoil.hh>

+ Inheritance diagram for G4ScreenedCoulombCrossSection:
+ Collaboration diagram for G4ScreenedCoulombCrossSection:

Public Types

enum  { nMassMapElements =116 }
 
typedef std::map< G4int,
G4ScreeningTables
ScreeningMap
 
typedef std::map< G4int, class
G4ParticleDefinition * > 
ParticleCache
 

Public Member Functions

 G4ScreenedCoulombCrossSection ()
 
 G4ScreenedCoulombCrossSection (const G4ScreenedCoulombCrossSection &src)
 
virtual ~G4ScreenedCoulombCrossSection ()
 
virtual void LoadData (G4String screeningKey, G4int z1, G4double m1, G4double recoilCutoff)=0
 
void BuildMFPTables (void)
 
virtual
G4ScreenedCoulombCrossSection
create ()=0
 
const G4ScreeningTablesGetScreening (G4int Z)
 
void SetVerbosity (G4int v)
 
G4ParticleDefinitionSelectRandomUnweightedTarget (const G4MaterialCutsCouple *couple)
 
G4double standardmass (G4int z1)
 
const G4_c2_functionoperator[] (G4int materialIndex)
 
- Public Member Functions inherited from G4ScreenedCoulombCrossSectionInfo
 G4ScreenedCoulombCrossSectionInfo ()
 
 ~G4ScreenedCoulombCrossSectionInfo ()
 

Protected Attributes

ScreeningMap screeningData
 
ParticleCache targetMap
 
G4int verbosity
 
std::map< G4int, G4_c2_const_ptrsigmaMap
 
std::map< G4int, G4_c2_const_ptrMFPTables
 

Static Private Attributes

static const G4double massmap [nMassMapElements+1]
 

Additional Inherited Members

- Static Public Member Functions inherited from G4ScreenedCoulombCrossSectionInfo
static const char * CVSHeaderVers ()
 
static const char * CVSFileVers ()
 

Detailed Description

Definition at line 99 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 99 of file G4ScreenedNuclearRecoil.hh

Member Typedef Documentation

Definition at line 111 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 111 of file G4ScreenedNuclearRecoil.hh

Definition at line 108 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 108 of file G4ScreenedNuclearRecoil.hh

Member Enumeration Documentation

anonymous enum
Enumerator:
nMassMapElements 

Definition at line 133 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 133 of file G4ScreenedNuclearRecoil.hh

Constructor & Destructor Documentation

G4ScreenedCoulombCrossSection::G4ScreenedCoulombCrossSection ( )
inline

Definition at line 103 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 103 of file G4ScreenedNuclearRecoil.hh

G4ScreenedCoulombCrossSection::G4ScreenedCoulombCrossSection ( const G4ScreenedCoulombCrossSection src)
inline

Definition at line 104 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 104 of file G4ScreenedNuclearRecoil.hh

G4ScreenedCoulombCrossSection::~G4ScreenedCoulombCrossSection ( )
virtual

Definition at line 128 of file G4ScreenedNuclearRecoil.cc.

View newest version in sPHENIX GitHub at line 128 of file G4ScreenedNuclearRecoil.cc

References MFPTables, and screeningData.

Member Function Documentation

void G4ScreenedCoulombCrossSection::BuildMFPTables ( void  )

Definition at line 246 of file G4ScreenedNuclearRecoil.cc.

View newest version in sPHENIX GitHub at line 246 of file G4ScreenedNuclearRecoil.cc

References emax, CEMC_TOWER::emin, G4Material::GetElementVector(), G4Material::GetMaterialTable(), G4Material::GetNumberOfElements(), G4Material::GetNumberOfMaterials(), G4Material::GetVecNbOfAtomsPerVolume(), G4Element::GetZ(), c2_factory< float_type >::log_log_interpolating_function(), material(), MFPTables, G4TrackingService::nMaterials, sigmaMap, c2_function< float_type >::xmax(), c2_function< float_type >::xmin(), and Z.

Referenced by G4ScreenedNuclearRecoil::GetMeanFreePath().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual G4ScreenedCoulombCrossSection* G4ScreenedCoulombCrossSection::create ( )
pure virtual

Implemented in G4NativeScreenedCoulombCrossSection.

Referenced by G4ScreenedNuclearRecoil::GetNewCrossSectionHandler().

+ Here is the caller graph for this function:

const G4ScreeningTables* G4ScreenedCoulombCrossSection::GetScreening ( G4int  Z)
inline

Definition at line 125 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 125 of file G4ScreenedNuclearRecoil.hh

References screeningData, and Z.

Referenced by G4ScreenedCoulombClassicalKinematics::DoCollisionStep().

+ Here is the caller graph for this function:

virtual void G4ScreenedCoulombCrossSection::LoadData ( G4String  screeningKey,
G4int  z1,
G4double  m1,
G4double  recoilCutoff 
)
pure virtual

Implemented in G4NativeScreenedCoulombCrossSection.

Referenced by G4ScreenedNuclearRecoil::GetMeanFreePath().

+ Here is the caller graph for this function:

const G4_c2_function* G4ScreenedCoulombCrossSection::operator[] ( G4int  materialIndex)
inline

Definition at line 139 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 139 of file G4ScreenedNuclearRecoil.hh

References MFPTables.

G4ParticleDefinition * G4ScreenedCoulombCrossSection::SelectRandomUnweightedTarget ( const G4MaterialCutsCouple couple)

Definition at line 165 of file G4ScreenedNuclearRecoil.cc.

View newest version in sPHENIX GitHub at line 165 of file G4ScreenedNuclearRecoil.cc

References G4UniformRand, G4StableIsotopes::GetAbundance(), G4Material::GetElementVector(), G4StableIsotopes::GetFirstIsotope(), G4IonTable::GetIon(), G4IonTable::GetIonTable(), G4StableIsotopes::GetIsotopeNucleonCount(), G4Element::GetIsotopeVector(), G4MaterialCutsCouple::GetMaterial(), G4Element::GetN(), G4Material::GetNumberOfElements(), G4StableIsotopes::GetNumberOfIsotopes(), G4Element::GetNumberOfIsotopes(), G4Element::GetRelativeAbundanceVector(), G4Material::GetTotNbOfAtomsPerVolume(), G4Material::GetVecNbOfAtomsPerVolume(), G4Element::GetZ(), k, material(), N, targetMap, and Z.

Referenced by G4ScreenedNuclearRecoil::PostStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ScreenedCoulombCrossSection::SetVerbosity ( G4int  v)
inline

Definition at line 127 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 127 of file G4ScreenedNuclearRecoil.hh

References v, and verbosity.

Referenced by G4ScreenedNuclearRecoil::GetNewCrossSectionHandler().

+ Here is the caller graph for this function:

G4double G4ScreenedCoulombCrossSection::standardmass ( G4int  z1)
inline

Definition at line 135 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 135 of file G4ScreenedNuclearRecoil.hh

References massmap, nMassMapElements, and z1.

Referenced by G4NativeScreenedCoulombCrossSection::LoadData().

+ Here is the caller graph for this function:

Member Data Documentation

const G4double G4ScreenedCoulombCrossSection::massmap
staticprivate
Initial value:
={
0, 1.007940, 4.002602, 6.941000, 9.012182, 10.811000, 12.010700,
14.006700, 15.999400, 18.998403, 20.179700, 22.989770, 24.305000, 26.981538,
28.085500,
30.973761, 32.065000, 35.453000, 39.948000, 39.098300, 40.078000, 44.955910,
47.867000,
50.941500, 51.996100, 54.938049, 55.845000, 58.933200, 58.693400, 63.546000,
65.409000,
69.723000, 72.640000, 74.921600, 78.960000, 79.904000, 83.798000, 85.467800,
87.620000,
88.905850, 91.224000, 92.906380, 95.940000, 98.000000, 101.070000, 102.905500,
106.420000,
107.868200, 112.411000, 114.818000, 118.710000, 121.760000, 127.600000,
126.904470, 131.293000,
132.905450, 137.327000, 138.905500, 140.116000, 140.907650, 144.240000,
145.000000, 150.360000,
151.964000, 157.250000, 158.925340, 162.500000, 164.930320, 167.259000,
168.934210, 173.040000,
174.967000, 178.490000, 180.947900, 183.840000, 186.207000, 190.230000,
192.217000, 195.078000,
196.966550, 200.590000, 204.383300, 207.200000, 208.980380, 209.000000,
210.000000, 222.000000,
223.000000, 226.000000, 227.000000, 232.038100, 231.035880, 238.028910,
237.000000, 244.000000,
243.000000, 247.000000, 247.000000, 251.000000, 252.000000, 257.000000,
258.000000, 259.000000,
262.000000, 261.000000, 262.000000, 266.000000, 264.000000, 277.000000,
268.000000, 281.000000,
272.000000, 285.000000, 282.500000, 289.000000, 287.500000, 292.000000}

Definition at line 153 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 153 of file G4ScreenedNuclearRecoil.hh

Referenced by standardmass().

std::map<G4int, G4_c2_const_ptr > G4ScreenedCoulombCrossSection::MFPTables
protected

Definition at line 150 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 150 of file G4ScreenedNuclearRecoil.hh

Referenced by BuildMFPTables(), operator[](), and ~G4ScreenedCoulombCrossSection().

ScreeningMap G4ScreenedCoulombCrossSection::screeningData
protected

Definition at line 145 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 145 of file G4ScreenedNuclearRecoil.hh

Referenced by GetScreening(), G4NativeScreenedCoulombCrossSection::LoadData(), and ~G4ScreenedCoulombCrossSection().

std::map<G4int, G4_c2_const_ptr > G4ScreenedCoulombCrossSection::sigmaMap
protected

Definition at line 148 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 148 of file G4ScreenedNuclearRecoil.hh

Referenced by BuildMFPTables(), and G4NativeScreenedCoulombCrossSection::LoadData().

ParticleCache G4ScreenedCoulombCrossSection::targetMap
protected

Definition at line 146 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 146 of file G4ScreenedNuclearRecoil.hh

Referenced by SelectRandomUnweightedTarget().

G4int G4ScreenedCoulombCrossSection::verbosity
protected

Definition at line 147 of file G4ScreenedNuclearRecoil.hh.

View newest version in sPHENIX GitHub at line 147 of file G4ScreenedNuclearRecoil.hh

Referenced by G4NativeScreenedCoulombCrossSection::LoadData(), and SetVerbosity().


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