Geant4.10
|
#include <G4PAIPhotonModel.hh>
Protected Member Functions | |
G4double | MaxSecondaryEnergy (const G4ParticleDefinition *, G4double kinEnergy) |
![]() | |
G4ParticleChangeForLoss * | GetParticleChangeForLoss () |
G4ParticleChangeForGamma * | GetParticleChangeForGamma () |
const G4MaterialCutsCouple * | CurrentCouple () const |
void | SetCurrentElement (const G4Element *) |
Additional Inherited Members | |
![]() | |
G4ElementData * | fElementData |
G4VParticleChange * | pParticleChange |
G4PhysicsTable * | xSectionTable |
const std::vector< G4double > * | theDensityFactor |
const std::vector< G4int > * | theDensityIdx |
size_t | idxTable |
Definition at line 69 of file G4PAIPhotonModel.hh.
G4PAIPhotonModel::G4PAIPhotonModel | ( | const G4ParticleDefinition * | p = 0 , |
const G4String & | nam = "PAIPhoton" |
||
) |
Definition at line 80 of file G4PAIPhotonModel.cc.
References G4Electron::Electron(), G4Gamma::Gamma(), and G4Positron::Positron().
|
virtual |
Definition at line 129 of file G4PAIPhotonModel.cc.
void G4PAIPhotonModel::BuildLambdaVector | ( | const G4MaterialCutsCouple * | matCutsCouple | ) |
Definition at line 470 of file G4PAIPhotonModel.cc.
References DBL_MAX, DBL_MIN, G4cout, G4endl, GetdNdxPhotonCut(), GetdNdxPlasmonCut(), G4ProductionCutsTable::GetEnergyCutsVector(), G4GeometryTolerance::GetInstance(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4ProductionCutsTable::GetProductionCutsTable(), G4GeometryTolerance::GetSurfaceTolerance(), G4ProductionCutsTable::GetTableSize(), idxG4ElectronCut, idxG4GammaCut, python.hepunit::keV, G4InuclParticleNames::lambda, and G4PhysicsVector::PutValue().
Referenced by Initialise(), and InitTest().
void G4PAIPhotonModel::BuildLambdaVector | ( | const G4MaterialCutsCouple * | matCutsCouple, |
G4double | photEnergy, | ||
G4double | eTkin | ||
) |
Definition at line 558 of file G4PAIPhotonModel.cc.
References DBL_MAX, DBL_MIN, G4cout, G4endl, GetdNdxPhotonCut(), GetdNdxPlasmonCut(), G4GeometryTolerance::GetInstance(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4ProductionCutsTable::GetProductionCutsTable(), G4GeometryTolerance::GetSurfaceTolerance(), G4ProductionCutsTable::GetTableSize(), python.hepunit::keV, G4InuclParticleNames::lambda, and G4PhysicsVector::PutValue().
void G4PAIPhotonModel::BuildPAIonisationTable | ( | ) |
Definition at line 350 of file G4PAIPhotonModel.cc.
References DBL_MIN, python.hepunit::eV, G4PAIxSection::GetIntegralCerenkov(), G4PAIxSection::GetIntegralPAIdEdx(), G4PAIxSection::GetIntegralPAIxSection(), G4PAIxSection::GetIntegralPlasmon(), G4PhysicsVector::GetLowEdgeEnergy(), G4PAIxSection::GetMeanEnergyLoss(), G4SandiaTable::GetSandiaMatTablePAI(), G4PAIxSection::GetSplineEnergy(), G4PAIxSection::GetSplineSize(), G4PAIxSection::Initialize(), G4PhysicsTable::insertAt(), MaxSecondaryEnergy(), python.hepunit::proton_mass_c2, G4PhysicsFreeVector::PutValue(), and G4PhysicsVector::PutValue().
Referenced by Initialise(), and InitTest().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 811 of file G4PAIPhotonModel.cc.
References G4VEmModel::CurrentCouple(), python.hepunit::eplus, GetdEdxCut(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), and python.hepunit::proton_mass_c2.
void G4PAIPhotonModel::ComputeSandiaPhotoAbsCof | ( | ) |
Definition at line 302 of file G4PAIPhotonModel.cc.
References G4Material::GetMaterialTable(), G4SandiaTable::GetPhotoAbsorpCof(), G4SandiaTable::SandiaIntervals(), and G4SandiaTable::SandiaMixing().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 862 of file G4PAIPhotonModel.cc.
References G4VEmModel::CurrentCouple(), GetdNdxPhotonCut(), GetdNdxPlasmonCut(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4ProductionCutsTable::GetProductionCutsTable(), G4ProductionCutsTable::GetTableSize(), idxG4GammaCut, MaxSecondaryEnergy(), G4INCL::Math::min(), and python.hepunit::proton_mass_c2.
Reimplemented from G4VEmModel.
Definition at line 1692 of file G4PAIPhotonModel.cc.
|
virtual |
Implements G4VEmFluctuationModel.
Definition at line 1642 of file G4PAIPhotonModel.cc.
References python.hepunit::eplus, G4DynamicParticle::GetCharge(), G4Material::GetElectronDensity(), G4DynamicParticle::GetKineticEnergy(), G4DynamicParticle::GetMass(), and python.hepunit::twopi_mc2_rcl2.
G4double G4PAIPhotonModel::GetAlongStepTransfer | ( | G4PhysicsTable * | pTable, |
G4PhysicsLogVector * | pVector, | ||
G4int | iPlace, | ||
G4double | scaledTkin, | ||
G4double | step, | ||
G4double | cof | ||
) |
Definition at line 1496 of file G4PAIPhotonModel.cc.
References DBL_MAX, G4UniformRand, GetEnergyTransfer(), G4PhysicsVector::GetLowEdgeEnergy(), G4InuclParticleNames::lambda, position, and G4INCL::DeJongSpin::shoot().
Referenced by SampleFluctuations().
Definition at line 769 of file G4PAIPhotonModel.cc.
References python.hepunit::eV.
Referenced by ComputeDEDXPerVolume().
Definition at line 678 of file G4PAIPhotonModel.cc.
References python.hepunit::eV.
Referenced by BuildLambdaVector(), CrossSectionPerVolume(), and GetXscPerVolume().
Definition at line 723 of file G4PAIPhotonModel.cc.
References python.hepunit::eV.
Referenced by BuildLambdaVector(), CrossSectionPerVolume(), and GetXscPerVolume().
G4double G4PAIPhotonModel::GetEnergyTransfer | ( | G4PhysicsTable * | pTable, |
G4int | iPlace, | ||
G4double | position, | ||
G4int | iTransfer | ||
) |
Definition at line 1391 of file G4PAIPhotonModel.cc.
References G4UniformRand.
Referenced by GetAlongStepTransfer(), and GetPostStepTransfer().
G4double G4PAIPhotonModel::GetPostStepTransfer | ( | G4PhysicsTable * | pTable, |
G4PhysicsLogVector * | pVector, | ||
G4int | iPlace, | ||
G4double | scaledTkin | ||
) |
Definition at line 1313 of file G4PAIPhotonModel.cc.
References G4UniformRand, GetEnergyTransfer(), G4PhysicsVector::GetLowEdgeEnergy(), and position.
Referenced by SampleSecondaries(), and TestSecondaries().
G4double G4PAIPhotonModel::GetXscPerVolume | ( | const G4Material * | , |
const G4ParticleDefinition * | p, | ||
G4double | kineticEnergy, | ||
G4double | photonCut, | ||
G4double | cutEnergy, | ||
G4double | maxEnergy | ||
) |
Definition at line 935 of file G4PAIPhotonModel.cc.
References G4VEmModel::CurrentCouple(), GetdNdxPhotonCut(), GetdNdxPlasmonCut(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4ProductionCutsTable::GetProductionCutsTable(), G4ProductionCutsTable::GetTableSize(), MaxSecondaryEnergy(), G4INCL::Math::min(), and python.hepunit::proton_mass_c2.
|
virtual |
Implements G4VEmModel.
Definition at line 165 of file G4PAIPhotonModel.cc.
References BuildLambdaVector(), BuildPAIonisationTable(), G4Region::FindCouple(), G4Material::GetMaterialTable(), G4Material::GetNumberOfMaterials(), G4VEmModel::GetParticleChangeForLoss(), G4SandiaTable::Initialize(), and eplot::material.
|
inlinevirtual |
|
virtual |
Definition at line 238 of file G4PAIPhotonModel.cc.
References BuildLambdaVector(), BuildPAIonisationTable(), G4MaterialCutsCouple::GetMaterial(), G4Material::GetMaterialTable(), G4Material::GetName(), G4Material::GetNumberOfMaterials(), G4VEmModel::GetParticleChangeForLoss(), G4SandiaTable::Initialize(), and eplot::material.
|
protectedvirtual |
Reimplemented from G4VEmModel.
Definition at line 1674 of file G4PAIPhotonModel.cc.
References python.hepunit::electron_mass_c2, and G4ParticleDefinition::GetPDGMass().
Referenced by BuildPAIonisationTable(), CrossSectionPerVolume(), GetXscPerVolume(), SampleSecondaries(), and TestSecondaries().
|
virtual |
Implements G4VEmFluctuationModel.
Definition at line 1431 of file G4PAIPhotonModel.cc.
References GetAlongStepTransfer(), G4DynamicParticle::GetDefinition(), G4DynamicParticle::GetKineticEnergy(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), and python.hepunit::proton_mass_c2.
|
virtual |
Implements G4VEmModel.
Definition at line 1011 of file G4PAIPhotonModel.cc.
References G4Electron::Electron(), python.hepunit::electron_mass_c2, fStopAndKill, G4cout, G4endl, G4UniformRand, G4Gamma::Gamma(), G4DynamicParticle::GetDefinition(), G4DynamicParticle::GetKineticEnergy(), G4DynamicParticle::GetMass(), G4DynamicParticle::GetMomentumDirection(), GetPostStepTransfer(), MaxSecondaryEnergy(), G4INCL::Math::min(), G4VParticleChange::ProposeTrackStatus(), python.hepunit::proton_mass_c2, CLHEP::Hep3Vector::rotateUz(), G4DynamicParticle::SetDefinition(), G4DynamicParticle::SetKineticEnergy(), G4DynamicParticle::SetMomentumDirection(), G4ParticleChangeForLoss::SetProposedKineticEnergy(), G4ParticleChangeForLoss::SetProposedMomentumDirection(), python.hepunit::twopi, and CLHEP::Hep3Vector::unit().
G4double G4PAIPhotonModel::TestSecondaries | ( | G4MaterialCutsCouple * | matCC, |
G4DynamicParticle * | dp, | ||
G4double | tmin, | ||
G4double | maxEnergy | ||
) |
Definition at line 1173 of file G4PAIPhotonModel.cc.
References G4Electron::Electron(), python.hepunit::electron_mass_c2, G4cout, G4endl, G4UniformRand, G4Gamma::Gamma(), G4DynamicParticle::GetDefinition(), G4DynamicParticle::GetKineticEnergy(), G4DynamicParticle::GetMass(), G4MaterialCutsCouple::GetMaterial(), G4DynamicParticle::GetMomentumDirection(), G4Material::GetName(), GetPostStepTransfer(), MaxSecondaryEnergy(), G4INCL::Math::min(), python.hepunit::proton_mass_c2, CLHEP::Hep3Vector::rotateUz(), G4DynamicParticle::SetDefinition(), G4DynamicParticle::SetKineticEnergy(), G4DynamicParticle::SetMomentumDirection(), G4ParticleChangeForLoss::SetProposedKineticEnergy(), G4ParticleChangeForLoss::SetProposedMomentumDirection(), python.hepunit::twopi, and CLHEP::Hep3Vector::unit().