ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
Protected Attributes | |
G4ParticleChangeForGamma * | fParticleChangeForGamma |
Protected Attributes inherited from G4VEmModel | |
G4ElementData * | fElementData |
G4VParticleChange * | pParticleChange |
G4PhysicsTable * | xSectionTable |
const G4Material * | pBaseMaterial |
const std::vector< G4double > * | theDensityFactor |
const std::vector< G4int > * | theDensityIdx |
size_t | idxTable |
G4bool | lossFlucFlag |
G4double | inveplus |
G4double | pFactor |
Private Types | |
typedef std::map< G4String, G4String, std::less< G4String > > | MapFile |
typedef std::map< G4String, G4MicroElecCrossSectionDataSet *, std::less< G4String > > | MapData |
typedef std::map< double, std::map< double, double > > | TriDimensionMap |
typedef std::map< double, std::vector< double > > | VecMap |
Private Member Functions | |
G4double | Theta (G4ParticleDefinition *aParticleDefinition, G4double k, G4double integrDiff) |
G4double | LinLinInterpolate (G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2) |
G4double | LogLogInterpolate (G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2) |
G4double | LinLogInterpolate (G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2) |
G4double | QuadInterpolator (G4double e11, G4double e12, G4double e21, G4double e22, G4double x11, G4double x12, G4double x21, G4double x22, G4double t1, G4double t2, G4double t, G4double e) |
G4double | RandomizeCosTheta (G4double k) |
G4MicroElecElasticModel & | operator= (const G4MicroElecElasticModel &right) |
G4MicroElecElasticModel (const G4MicroElecElasticModel &) | |
Private Attributes | |
G4Material * | nistSi |
G4double | killBelowEnergy |
G4double | lowEnergyLimit |
G4double | lowEnergyLimitOfModel |
G4double | highEnergyLimit |
G4bool | isInitialised |
G4int | verboseLevel |
MapFile | tableFile |
MapData | tableData |
TriDimensionMap | eDiffCrossSectionData |
std::vector< double > | eTdummyVec |
VecMap | eVecm |
Additional Inherited Members | |
Protected Member Functions inherited from G4VEmModel | |
G4ParticleChangeForLoss * | GetParticleChangeForLoss () |
G4ParticleChangeForGamma * | GetParticleChangeForGamma () |
virtual G4double | MaxSecondaryEnergy (const G4ParticleDefinition *, G4double kineticEnergy) |
const G4MaterialCutsCouple * | CurrentCouple () const |
void | SetCurrentElement (const G4Element *) |
Definition at line 51 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 51 of file G4MicroElecElasticModel.hh
|
private |
Definition at line 97 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 97 of file G4MicroElecElasticModel.hh
|
private |
Definition at line 94 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 94 of file G4MicroElecElasticModel.hh
|
private |
Definition at line 123 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 123 of file G4MicroElecElasticModel.hh
|
private |
Definition at line 128 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 128 of file G4MicroElecElasticModel.hh
G4MicroElecElasticModel::G4MicroElecElasticModel | ( | const G4ParticleDefinition * | p = 0 , |
const G4String & | nam = "MicroElecElasticModel" |
||
) |
Definition at line 49 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 49 of file G4MicroElecElasticModel.cc
References eV, G4NistManager::FindOrBuildMaterial(), fParticleChangeForGamma, G4cout, G4endl, highEnergyLimit, G4NistManager::Instance(), killBelowEnergy, lowEnergyLimit, lowEnergyLimitOfModel, MeV, nistSi, G4VEmModel::SetHighEnergyLimit(), G4VEmModel::SetLowEnergyLimit(), and verboseLevel.
|
virtual |
Definition at line 83 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 83 of file G4MicroElecElasticModel.cc
References eVecm, pos(), and tableData.
|
private |
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 216 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 216 of file G4MicroElecElasticModel.cc
References cm, DBL_MAX, eV, FatalException, G4MicroElecCrossSectionDataSet::FindValue(), G4cout, G4endl, G4Exception(), G4Material::GetBaseMaterial(), G4ParticleDefinition::GetParticleName(), G4Material::GetTotNbOfAtomsPerVolume(), highEnergyLimit, killBelowEnergy, nistSi, pos(), tableData, and verboseLevel.
|
inline |
Definition at line 76 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 76 of file G4MicroElecElasticModel.hh
References killBelowEnergy.
|
virtual |
Implements G4VEmModel.
Definition at line 102 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 102 of file G4MicroElecElasticModel.cc
References cm, e, eDiffCrossSectionData, G4InuclParticleNames::electron, G4Electron::ElectronDefinition(), eTdummyVec, eV, eVecm, FatalException, fParticleChangeForGamma, G4cout, G4endl, G4Exception(), G4VEmModel::GetParticleChangeForGamma(), G4ParticleDefinition::GetParticleName(), highEnergyLimit, G4VEmModel::HighEnergyLimit(), isInitialised, G4MicroElecCrossSectionDataSet::LoadData(), lowEnergyLimit, G4VEmModel::LowEnergyLimit(), MeV, G4VEmModel::SetHighEnergyLimit(), G4VEmModel::SetLowEnergyLimit(), tableData, tableFile, and verboseLevel.
|
private |
Definition at line 388 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 388 of file G4MicroElecElasticModel.cc
Referenced by QuadInterpolator().
|
private |
Definition at line 374 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 374 of file G4MicroElecElasticModel.cc
References d1, d2, and G4Exp().
|
private |
Definition at line 402 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 402 of file G4MicroElecElasticModel.cc
|
private |
|
private |
Definition at line 417 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 417 of file G4MicroElecElasticModel.cc
References LinLinInterpolate().
Definition at line 447 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 447 of file G4MicroElecElasticModel.cc
References G4Electron::ElectronDefinition(), eV, G4UniformRand, pi, Theta(), and theta().
Referenced by SampleSecondaries().
|
virtual |
Implements G4VEmModel.
Definition at line 272 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 272 of file G4MicroElecElasticModel.cc
References CLHEP::Hep3Vector::cross(), fParticleChangeForGamma, fStopAndKill, G4cout, G4endl, G4UniformRand, G4DynamicParticle::GetKineticEnergy(), G4DynamicParticle::GetMomentumDirection(), highEnergyLimit, killBelowEnergy, CLHEP::Hep3Vector::orthogonal(), phi, pi, G4VParticleChange::ProposeLocalEnergyDeposit(), G4ParticleChangeForGamma::ProposeMomentumDirection(), G4VParticleChange::ProposeTrackStatus(), RandomizeCosTheta(), return(), G4ParticleChangeForGamma::SetProposedKineticEnergy(), CLHEP::Hep3Vector::unit(), and verboseLevel.
Definition at line 140 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 140 of file G4MicroElecElasticModel.hh
References CLHEP::eV, G4Exception(), JustWarning, and killBelowEnergy.
|
private |
Definition at line 319 of file G4MicroElecElasticModel.cc.
View newest version in sPHENIX GitHub at line 319 of file G4MicroElecElasticModel.cc
References G4Electron::ElectronDefinition(), k, t1, t2, and theta().
Referenced by RandomizeCosTheta().
|
private |
Definition at line 125 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 125 of file G4MicroElecElasticModel.hh
Referenced by Initialise().
|
private |
Definition at line 126 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 126 of file G4MicroElecElasticModel.hh
Referenced by Initialise().
|
private |
Definition at line 129 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 129 of file G4MicroElecElasticModel.hh
Referenced by Initialise(), and ~G4MicroElecElasticModel().
|
protected |
Definition at line 80 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 80 of file G4MicroElecElasticModel.hh
Referenced by G4MicroElecElasticModel(), Initialise(), and SampleSecondaries().
|
private |
Definition at line 88 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 88 of file G4MicroElecElasticModel.hh
Referenced by CrossSectionPerVolume(), G4MicroElecElasticModel(), Initialise(), and SampleSecondaries().
|
private |
Definition at line 89 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 89 of file G4MicroElecElasticModel.hh
Referenced by Initialise().
|
private |
Definition at line 85 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 85 of file G4MicroElecElasticModel.hh
Referenced by CrossSectionPerVolume(), G4MicroElecElasticModel(), GetKillBelowThreshold(), SampleSecondaries(), and SetKillBelowThreshold().
|
private |
Definition at line 86 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 86 of file G4MicroElecElasticModel.hh
Referenced by G4MicroElecElasticModel(), and Initialise().
|
private |
Definition at line 87 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 87 of file G4MicroElecElasticModel.hh
Referenced by G4MicroElecElasticModel().
|
private |
Definition at line 84 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 84 of file G4MicroElecElasticModel.hh
Referenced by CrossSectionPerVolume(), and G4MicroElecElasticModel().
|
private |
Definition at line 98 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 98 of file G4MicroElecElasticModel.hh
Referenced by CrossSectionPerVolume(), Initialise(), and ~G4MicroElecElasticModel().
|
private |
Definition at line 95 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 95 of file G4MicroElecElasticModel.hh
Referenced by Initialise().
|
private |
Definition at line 90 of file G4MicroElecElasticModel.hh.
View newest version in sPHENIX GitHub at line 90 of file G4MicroElecElasticModel.hh
Referenced by CrossSectionPerVolume(), G4MicroElecElasticModel(), Initialise(), and SampleSecondaries().