49 #ifndef G4VAtomDeexcitation_h
50 #define G4VAtomDeexcitation_h 1
184 std::vector<G4bool> activeZ;
185 std::vector<G4bool> activeDeexcitationMedia;
186 std::vector<G4bool> activeAugerMedia;
187 std::vector<G4bool> activePIXEMedia;
188 std::vector<G4String> activeRegions;
189 std::vector<G4bool> deRegions;
190 std::vector<G4bool> AugerRegions;
191 std::vector<G4bool> PIXERegions;
192 std::vector<G4DynamicParticle*> vdyn;
194 static G4int pixeIDg;
195 static G4int pixeIDe;
211 if(val) { isActive =
true; }
222 if(val) { isActive =
true; }
244 nameElectronPIXE =
n;
256 return nameElectronPIXE;
259 inline const std::vector<G4bool>&
278 return (isActive || activeDeexcitationMedia[coupleIndex]);
285 return (flagAuger || activeAugerMedia[coupleIndex]);
295 if (theCoupleTable) {
298 if(gCut < as->BindingEnergy()) {
301 if (theCoupleTable) {
void SetPIXEElectronCrossSectionModel(const G4String &)
const std::vector< G4double > * GetEnergyCutsVector(size_t pcIdx) const
G4bool CheckDeexcitationActiveRegion(G4int coupleIndex)
void InitialiseAtomicDeexcitation()
G4bool IsFluoActive() const
void AlongStepDeexcitation(std::vector< G4Track * > &tracks, const G4Step &step, G4double &eLoss, G4int coupleIndex)
G4bool IsPIXEActive() const
virtual G4double GetShellIonisationCrossSectionPerAtom(const G4ParticleDefinition *, G4int Z, G4AtomicShellEnumerator shell, G4double kinE, const G4Material *mat=0)=0
void SetDeexcitationActiveRegion(const G4String &rname, G4bool valDeexcitation, G4bool valAuger, G4bool valPIXE)
void SetPIXECrossSectionModel(const G4String &)
const std::vector< G4bool > & GetListOfActiveAtoms() const
G4int GetVerboseLevel() const
G4bool IsAugerActive() const
void SetVerboseLevel(G4int)
virtual const G4AtomicShell * GetAtomicShell(G4int Z, G4AtomicShellEnumerator shell)=0
const G4String & PIXEElectronCrossSectionModel() const
G4VAtomDeexcitation(const G4String &modname="Deexcitation", const G4String &pixename="")
virtual G4double ComputeShellIonisationCrossSectionPerAtom(const G4ParticleDefinition *, G4int Z, G4AtomicShellEnumerator shell, G4double kinE, const G4Material *mat=0)=0
G4bool CheckAugerActiveRegion(G4int coupleIndex)
virtual void InitialiseForExtraAtom(G4int Z)=0
const G4String & GetName() const
virtual ~G4VAtomDeexcitation()
virtual void InitialiseForNewRun()=0
const G4String & PIXECrossSectionModel() const
void GenerateParticles(std::vector< G4DynamicParticle * > *secVect, const G4AtomicShell *, G4int Z, G4int coupleIndex)