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

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/pii/include/G4PixeCrossSectionHandler.hh>

+ Collaboration diagram for G4PixeCrossSectionHandler:

Public Member Functions

 G4PixeCrossSectionHandler ()
 
 G4PixeCrossSectionHandler (G4IInterpolator *interpolation, const G4String &modelK="ecpssr", const G4String &modelL="ecpssr", const G4String &modelM="ecpssr", G4double minE=1 *CLHEP::keV, G4double maxE=0.1 *CLHEP::GeV, G4int nBins=200, G4double unitE=CLHEP::MeV, G4double unitData=CLHEP::barn, G4int minZ=6, G4int maxZ=92)
 
virtual ~G4PixeCrossSectionHandler ()
 
void Initialise (G4IInterpolator *interpolation, const G4String &modelK="ecpssr", const G4String &modelL="ecpssr", const G4String &modelM="ecpssr", G4double minE=1 *CLHEP::keV, G4double maxE=0.1 *CLHEP::GeV, G4int nBins=200, G4double unitE=CLHEP::MeV, G4double unitData=CLHEP::barn, G4int minZ=6, G4int maxZ=92)
 
G4int SelectRandomAtom (const G4Material *material, G4double e) const
 
G4int SelectRandomShell (G4int Z, G4double e) const
 
G4double FindValue (G4int Z, G4double e) const
 
G4double FindValue (G4int Z, G4double e, G4int shellIndex) const
 
G4double ValueForMaterial (const G4Material *material, G4double e) const
 
void LoadShellData (const G4String &dataFile)
 
G4double MicroscopicCrossSection (const G4ParticleDefinition *particleDef, G4double kineticEnergy, G4double Z, G4double deltaCut) const
 
void PrintData () const
 
void Clear ()
 

Private Member Functions

 G4PixeCrossSectionHandler (const G4PixeCrossSectionHandler &)
 
G4PixeCrossSectionHandleroperator= (const G4PixeCrossSectionHandler &right)
 
G4int NumberOfComponents (G4int Z) const
 
void ActiveElements ()
 
void BuildForMaterials ()
 
std::vector< G4IDataSet * > * BuildCrossSectionsForMaterials (const G4DataVector &energyVector)
 
G4IInterpolatorCreateInterpolation ()
 
const G4IInterpolatorGetInterpolation () const
 

Private Attributes

G4IInterpolatorinterpolation
 
G4double eMin
 
G4double eMax
 
G4int nBins
 
G4double unit1
 
G4double unit2
 
G4int zMin
 
G4int zMax
 
G4DataVector activeZ
 
std::map< G4int, G4IDataSet
*, std::less< G4int > > 
dataMap
 
std::vector< G4IDataSet * > * crossSections
 
std::vector< G4StringcrossModel
 

Detailed Description

Definition at line 59 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 59 of file G4PixeCrossSectionHandler.hh

Constructor & Destructor Documentation

G4PixeCrossSectionHandler::G4PixeCrossSectionHandler ( )

Definition at line 60 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 60 of file G4PixeCrossSectionHandler.cc

References ActiveElements(), barn, crossSections, GeV, Initialise(), interpolation, keV, and MeV.

+ Here is the call graph for this function:

G4PixeCrossSectionHandler::G4PixeCrossSectionHandler ( G4IInterpolator interpolation,
const G4String modelK = "ecpssr",
const G4String modelL = "ecpssr",
const G4String modelM = "ecpssr",
G4double  minE = 1*CLHEP::keV,
G4double  maxE = 0.1*CLHEP::GeV,
G4int  nBins = 200,
G4double  unitE = CLHEP::MeV,
G4double  unitData = CLHEP::barn,
G4int  minZ = 6,
G4int  maxZ = 92 
)

Definition at line 70 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 70 of file G4PixeCrossSectionHandler.cc

References ActiveElements(), crossModel, and crossSections.

+ Here is the call graph for this function:

G4PixeCrossSectionHandler::~G4PixeCrossSectionHandler ( )
virtual

Definition at line 97 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 97 of file G4PixeCrossSectionHandler.cc

References crossSections, dataMap, interpolation, n, and pos().

+ Here is the call graph for this function:

G4PixeCrossSectionHandler::G4PixeCrossSectionHandler ( const G4PixeCrossSectionHandler )
private

Member Function Documentation

void G4PixeCrossSectionHandler::ActiveElements ( )
private

Definition at line 575 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 575 of file G4PixeCrossSectionHandler.cc

References activeZ, G4DataVector::contains(), FatalException, G4Exception(), G4Material::GetElementVector(), G4Material::GetMaterialTable(), G4Material::GetNumberOfElements(), G4Material::GetNumberOfMaterials(), G4Element::GetZ(), mat, material(), G4TrackingService::nMaterials, Z, zMax, and zMin.

Referenced by Clear(), and G4PixeCrossSectionHandler().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::vector< G4IDataSet * > * G4PixeCrossSectionHandler::BuildCrossSectionsForMaterials ( const G4DataVector energyVector)
private

Definition at line 632 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 632 of file G4PixeCrossSectionHandler.cc

References G4IDataSet::AddComponent(), bin, G4IInterpolator::Clone(), CreateInterpolation(), Acts::VectorHelpers::cross(), e, FatalException, FindValue(), G4Exception(), G4Material::GetAtomicNumDensityVector(), G4Material::GetElementVector(), G4Material::GetMaterialTable(), G4Material::GetNumberOfElements(), G4Material::GetNumberOfMaterials(), mat, material(), G4TrackingService::nMaterials, Z, zMax, and zMin.

Referenced by BuildForMaterials().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4PixeCrossSectionHandler::BuildForMaterials ( )
private

Definition at line 405 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 405 of file G4PixeCrossSectionHandler.cc

References BuildCrossSectionsForMaterials(), crossSections, eMax, eMin, FatalException, G4Exception(), mat, and nBins.

Referenced by LoadShellData().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4PixeCrossSectionHandler::Clear ( )

Definition at line 209 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 209 of file G4PixeCrossSectionHandler.cc

References ActiveElements(), activeZ, dataMap, and pos().

+ Here is the call graph for this function:

G4IInterpolator * G4PixeCrossSectionHandler::CreateInterpolation ( )
private

Definition at line 604 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 604 of file G4PixeCrossSectionHandler.cc

References algorithm.

Referenced by BuildCrossSectionsForMaterials(), and Initialise().

+ Here is the caller graph for this function:

G4double G4PixeCrossSectionHandler::FindValue ( G4int  Z,
G4double  e 
) const

Definition at line 235 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 235 of file G4PixeCrossSectionHandler.cc

References dataMap, G4IDataSet::FindValue(), G4cout, G4endl, and pos().

Referenced by BuildCrossSectionsForMaterials(), SelectRandomShell(), and ValueForMaterial().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PixeCrossSectionHandler::FindValue ( G4int  Z,
G4double  e,
G4int  shellIndex 
) const

Definition at line 258 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 258 of file G4PixeCrossSectionHandler.cc

References dataMap, G4IDataSet::FindValue(), G4cout, G4endl, G4IDataSet::GetComponent(), G4IDataSet::NumberOfComponents(), and pos().

+ Here is the call graph for this function:

const G4IInterpolator* G4PixeCrossSectionHandler::GetInterpolation ( ) const
inlineprivate

Definition at line 130 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 130 of file G4PixeCrossSectionHandler.hh

References interpolation.

void G4PixeCrossSectionHandler::Initialise ( G4IInterpolator interpolation,
const G4String modelK = "ecpssr",
const G4String modelL = "ecpssr",
const G4String modelM = "ecpssr",
G4double  minE = 1*CLHEP::keV,
G4double  maxE = 0.1*CLHEP::GeV,
G4int  nBins = 200,
G4double  unitE = CLHEP::MeV,
G4double  unitData = CLHEP::barn,
G4int  minZ = 6,
G4int  maxZ = 92 
)

Definition at line 125 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 125 of file G4PixeCrossSectionHandler.cc

References algorithm, CreateInterpolation(), crossModel, eMax, eMin, interpolation, maxE, maxZ, minE, nBins, unit1, unit2, zMax, and zMin.

Referenced by G4PixeCrossSectionHandler().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4PixeCrossSectionHandler::LoadShellData ( const G4String dataFile)

Definition at line 179 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 179 of file G4PixeCrossSectionHandler.cc

References activeZ, BuildForMaterials(), G4IInterpolator::Clone(), crossModel, crossSections, dataMap, interpolation, G4IDataSet::LoadData(), and Z.

Referenced by G4hImpactIonisation::PostStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PixeCrossSectionHandler::MicroscopicCrossSection ( const G4ParticleDefinition particleDef,
G4double  kineticEnergy,
G4double  Z,
G4double  deltaCut 
) const

Definition at line 694 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 694 of file G4PixeCrossSectionHandler.cc

References Acts::VectorHelpers::cross(), source.hepunit::electron_mass_c2, energy, G4ParticleDefinition::GetPDGMass(), G4ParticleDefinition::GetPDGSpin(), and source.hepunit::twopi_mc2_rcl2.

+ Here is the call graph for this function:

G4int G4PixeCrossSectionHandler::NumberOfComponents ( G4int  Z) const
private

Definition at line 610 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 610 of file G4PixeCrossSectionHandler.cc

References dataMap, G4cout, G4endl, n, G4IDataSet::NumberOfComponents(), and pos().

+ Here is the call graph for this function:

G4PixeCrossSectionHandler& G4PixeCrossSectionHandler::operator= ( const G4PixeCrossSectionHandler right)
private
void G4PixeCrossSectionHandler::PrintData ( void  ) const

Definition at line 158 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 158 of file G4PixeCrossSectionHandler.cc

References dataMap, G4cout, G4endl, pos(), G4IDataSet::PrintData(), and z.

+ Here is the call graph for this function:

G4int G4PixeCrossSectionHandler::SelectRandomAtom ( const G4Material material,
G4double  e 
) const

Definition at line 447 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 447 of file G4PixeCrossSectionHandler.cc

References Acts::VectorHelpers::cross(), G4IDataSet::FindValue(), G4UniformRand, G4IDataSet::GetComponent(), G4Material::GetElementVector(), G4Material::GetIndex(), G4Material::GetNumberOfElements(), G4Material::GetZ(), k, and Z.

Referenced by G4hImpactIonisation::PostStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4PixeCrossSectionHandler::SelectRandomShell ( G4int  Z,
G4double  e 
) const

Definition at line 537 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 537 of file G4PixeCrossSectionHandler.cc

References dataMap, G4IDataSet::FindValue(), FindValue(), G4UniformRand, G4IDataSet::GetComponent(), G4IDataSet::NumberOfComponents(), and pos().

Referenced by G4hImpactIonisation::PostStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PixeCrossSectionHandler::ValueForMaterial ( const G4Material material,
G4double  e 
) const

Definition at line 298 of file G4PixeCrossSectionHandler.cc.

View newest version in sPHENIX GitHub at line 298 of file G4PixeCrossSectionHandler.cc

References FindValue(), G4Material::GetElementVector(), G4Material::GetNumberOfElements(), G4Material::GetVecNbOfAtomsPerVolume(), and Z.

+ Here is the call graph for this function:

Member Data Documentation

G4DataVector G4PixeCrossSectionHandler::activeZ
private

Definition at line 144 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 144 of file G4PixeCrossSectionHandler.hh

Referenced by ActiveElements(), Clear(), and LoadShellData().

std::vector<G4String> G4PixeCrossSectionHandler::crossModel
private

Definition at line 153 of file G4PixeCrossSectionHandler.hh.

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

Referenced by G4PixeCrossSectionHandler(), Initialise(), and LoadShellData().

std::vector<G4IDataSet*>* G4PixeCrossSectionHandler::crossSections
private

Definition at line 151 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 151 of file G4PixeCrossSectionHandler.hh

Referenced by BuildForMaterials(), G4PixeCrossSectionHandler(), LoadShellData(), and ~G4PixeCrossSectionHandler().

std::map<G4int,G4IDataSet*,std::less<G4int> > G4PixeCrossSectionHandler::dataMap
private

Definition at line 147 of file G4PixeCrossSectionHandler.hh.

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

Referenced by Clear(), FindValue(), LoadShellData(), NumberOfComponents(), PrintData(), SelectRandomShell(), and ~G4PixeCrossSectionHandler().

G4double G4PixeCrossSectionHandler::eMax
private

Definition at line 135 of file G4PixeCrossSectionHandler.hh.

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

Referenced by BuildForMaterials(), and Initialise().

G4double G4PixeCrossSectionHandler::eMin
private

Definition at line 134 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 134 of file G4PixeCrossSectionHandler.hh

Referenced by BuildForMaterials(), and Initialise().

G4IInterpolator* G4PixeCrossSectionHandler::interpolation
private

Definition at line 132 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 132 of file G4PixeCrossSectionHandler.hh

Referenced by G4PixeCrossSectionHandler(), GetInterpolation(), Initialise(), LoadShellData(), and ~G4PixeCrossSectionHandler().

G4int G4PixeCrossSectionHandler::nBins
private

Definition at line 136 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 136 of file G4PixeCrossSectionHandler.hh

Referenced by BuildForMaterials(), and Initialise().

G4double G4PixeCrossSectionHandler::unit1
private

Definition at line 138 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 138 of file G4PixeCrossSectionHandler.hh

Referenced by Initialise().

G4double G4PixeCrossSectionHandler::unit2
private

Definition at line 139 of file G4PixeCrossSectionHandler.hh.

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

Referenced by Initialise().

G4int G4PixeCrossSectionHandler::zMax
private

Definition at line 142 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 142 of file G4PixeCrossSectionHandler.hh

Referenced by ActiveElements(), BuildCrossSectionsForMaterials(), and Initialise().

G4int G4PixeCrossSectionHandler::zMin
private

Definition at line 141 of file G4PixeCrossSectionHandler.hh.

View newest version in sPHENIX GitHub at line 141 of file G4PixeCrossSectionHandler.hh

Referenced by ActiveElements(), BuildCrossSectionsForMaterials(), and Initialise().


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