Geant4  10.00.p02
G4ScreenedCoulombCrossSection Class Referenceabstract

#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)
 

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

Detailed Description

Definition at line 95 of file G4ScreenedNuclearRecoil.hh.

Member Typedef Documentation

Member Enumeration Documentation

anonymous enum
Enumerator
nMassMapElements 

Definition at line 123 of file G4ScreenedNuclearRecoil.hh.

Constructor & Destructor Documentation

G4ScreenedCoulombCrossSection::G4ScreenedCoulombCrossSection ( )
inline

Definition at line 99 of file G4ScreenedNuclearRecoil.hh.

G4ScreenedCoulombCrossSection::G4ScreenedCoulombCrossSection ( const G4ScreenedCoulombCrossSection src)
inline

Definition at line 100 of file G4ScreenedNuclearRecoil.hh.

G4ScreenedCoulombCrossSection::~G4ScreenedCoulombCrossSection ( )
virtual

Definition at line 125 of file G4ScreenedNuclearRecoil.cc.

References MFPTables, and screeningData.

Member Function Documentation

void G4ScreenedCoulombCrossSection::BuildMFPTables ( void  )

Definition at line 224 of file G4ScreenedNuclearRecoil.cc.

References G4Material::GetElementVector(), G4Material::GetMaterialTable(), G4Material::GetNumberOfElements(), G4Material::GetNumberOfMaterials(), G4Material::GetVecNbOfAtomsPerVolume(), G4Element::GetZ(), c2_factory< float_type >::log_log_interpolating_function(), MFPTables, sigmaMap, c2_function< float_type >::xmax(), and c2_function< float_type >::xmin().

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 117 of file G4ScreenedNuclearRecoil.hh.

References screeningData.

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 128 of file G4ScreenedNuclearRecoil.hh.

References MFPTables.

G4ParticleDefinition * G4ScreenedCoulombCrossSection::SelectRandomUnweightedTarget ( const G4MaterialCutsCouple couple)
void G4ScreenedCoulombCrossSection::SetVerbosity ( G4int  v)
inline

Definition at line 118 of file G4ScreenedNuclearRecoil.hh.

References verbosity.

Referenced by G4ScreenedNuclearRecoil::GetNewCrossSectionHandler().

+ Here is the caller graph for this function:

G4double G4ScreenedCoulombCrossSection::standardmass ( G4int  z1)
inline

Definition at line 125 of file G4ScreenedNuclearRecoil.hh.

References massmap, and nMassMapElements.

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 140 of file G4ScreenedNuclearRecoil.hh.

Referenced by standardmass().

std::map<G4int, G4_c2_const_ptr > G4ScreenedCoulombCrossSection::MFPTables
protected
ScreeningMap G4ScreenedCoulombCrossSection::screeningData
protected
std::map<G4int, G4_c2_const_ptr > G4ScreenedCoulombCrossSection::sigmaMap
protected
ParticleCache G4ScreenedCoulombCrossSection::targetMap
protected

Definition at line 134 of file G4ScreenedNuclearRecoil.hh.

Referenced by SelectRandomUnweightedTarget().

G4int G4ScreenedCoulombCrossSection::verbosity
protected

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