43#ifndef G4PENELOPEPHOTOELECTRICMODEL_HH
44#define G4PENELOPEPHOTOELECTRICMODEL_HH 1
62 const G4String& processName =
"PenPhotoElec");
static const G4double emax
const G4AtomicTransitionManager * fTransitionManager
void Initialise(const G4ParticleDefinition *, const G4DataVector &) override
G4VAtomDeexcitation * fAtomDeexcitation
G4String WriteTargetShell(size_t shellID)
void InitialiseLocal(const G4ParticleDefinition *, G4VEmModel *masterModel) override
void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy) override
G4PenelopePhotoElectricModel(const G4ParticleDefinition *p=nullptr, const G4String &processName="PenPhotoElec")
G4double SampleElectronDirection(G4double energy)
void SetVerbosityLevel(G4int lev)
G4double fIntrinsicLowEnergyLimit
G4double GetShellCrossSection(G4int Z, size_t shellID, G4double energy)
G4PenelopePhotoElectricModel & operator=(const G4PenelopePhotoElectricModel &right)=delete
G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double kinEnergy, G4double Z, G4double A=0, G4double cut=0, G4double emax=DBL_MAX) override
size_t GetNumberOfShellXS(G4int)
G4ParticleChangeForGamma * fParticleChange
size_t SelectRandomShell(G4int Z, G4double energy)
static G4PhysicsTable * fLogAtomicShellXS[fMaxZ+1]
void ReadDataFile(G4int Z)
virtual ~G4PenelopePhotoElectricModel()
G4double fIntrinsicHighEnergyLimit
void SetParticle(const G4ParticleDefinition *)
G4PenelopePhotoElectricModel(const G4PenelopePhotoElectricModel &)=delete
G4int GetVerbosityLevel()
const G4ParticleDefinition * fParticle
G4double energy(const ThreeVector &p, const G4double m)