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

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/utils/include/G4VAtomDeexcitation.hh>

+ Inheritance diagram for G4VAtomDeexcitation:
+ Collaboration diagram for G4VAtomDeexcitation:

Public Member Functions

 G4VAtomDeexcitation (const G4String &modname="Deexcitation")
 
virtual ~G4VAtomDeexcitation ()
 
void InitialiseAtomicDeexcitation ()
 
virtual void InitialiseForNewRun ()=0
 
virtual void InitialiseForExtraAtom (G4int Z)=0
 
void SetDeexcitationActiveRegion (const G4String &rname, G4bool valDeexcitation, G4bool valAuger, G4bool valPIXE)
 
void SetFluo (G4bool)
 
G4bool IsFluoActive () const
 
void SetAuger (G4bool)
 
G4bool IsAugerActive () const
 
void SetAugerCascade (G4bool)
 
G4bool IsAugerCascadeActive () const
 
void SetPIXE (G4bool)
 
G4bool IsPIXEActive () const
 
const G4StringGetName () const
 
const std::vector< G4bool > & GetListOfActiveAtoms () const
 
void SetVerboseLevel (G4int)
 
G4int GetVerboseLevel () const
 
G4bool CheckDeexcitationActiveRegion (G4int coupleIndex)
 
G4bool CheckAugerActiveRegion (G4int coupleIndex)
 
virtual const G4AtomicShellGetAtomicShell (G4int Z, G4AtomicShellEnumerator shell)=0
 
void GenerateParticles (std::vector< G4DynamicParticle * > *secVect, const G4AtomicShell *, G4int Z, G4int coupleIndex)
 
virtual void GenerateParticles (std::vector< G4DynamicParticle * > *secVect, const G4AtomicShell *, G4int Z, G4double gammaCut, G4double eCut)=0
 
virtual G4double GetShellIonisationCrossSectionPerAtom (const G4ParticleDefinition *, G4int Z, G4AtomicShellEnumerator shell, G4double kinE, const G4Material *mat=nullptr)=0
 
virtual G4double ComputeShellIonisationCrossSectionPerAtom (const G4ParticleDefinition *, G4int Z, G4AtomicShellEnumerator shell, G4double kinE, const G4Material *mat=nullptr)=0
 
void AlongStepDeexcitation (std::vector< G4Track * > &tracks, const G4Step &step, G4double &eLoss, G4int coupleIndex)
 

Private Member Functions

 G4VAtomDeexcitation (G4VAtomDeexcitation &)=delete
 
G4VAtomDeexcitationoperator= (const G4VAtomDeexcitation &right)=delete
 

Private Attributes

G4EmParameterstheParameters
 
const G4ParticleDefinitiongamma
 
G4ProductionCutsTabletheCoupleTable
 
G4int verbose
 
G4String name
 
G4bool isActive
 
G4bool flagAuger
 
G4bool flagAugerCascade
 
G4bool flagPIXE
 
G4bool ignoreCuts
 
G4bool isActiveLocked
 
G4bool isAugerLocked
 
G4bool isAugerCascadeLocked
 
G4bool isPIXELocked
 
std::vector< G4boolactiveZ
 
std::vector< G4boolactiveDeexcitationMedia
 
std::vector< G4boolactiveAugerMedia
 
std::vector< G4boolactivePIXEMedia
 
std::vector< G4StringactiveRegions
 
std::vector< G4booldeRegions
 
std::vector< G4boolAugerRegions
 
std::vector< G4boolPIXERegions
 
std::vector< G4DynamicParticle * > vdyn
 

Static Private Attributes

static G4int pixeIDg = -1
 
static G4int pixeIDe = -1
 

Detailed Description

Definition at line 64 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 64 of file G4VAtomDeexcitation.hh

Constructor & Destructor Documentation

G4VAtomDeexcitation::G4VAtomDeexcitation ( const G4String modname = "Deexcitation")
explicit

Definition at line 73 of file G4VAtomDeexcitation.cc.

View newest version in sPHENIX GitHub at line 73 of file G4VAtomDeexcitation.cc

References G4MUTEXLOCK, G4MUTEXUNLOCK, G4Gamma::Gamma(), gamma, G4EmParameters::Instance(), pixeIDe, pixeIDg, G4PhysicsModelCatalog::Register(), theCoupleTable, theParameters, and vdyn.

+ Here is the call graph for this function:

G4VAtomDeexcitation::~G4VAtomDeexcitation ( )
virtual

Definition at line 101 of file G4VAtomDeexcitation.cc.

View newest version in sPHENIX GitHub at line 101 of file G4VAtomDeexcitation.cc

G4VAtomDeexcitation::G4VAtomDeexcitation ( G4VAtomDeexcitation )
privatedelete

Member Function Documentation

void G4VAtomDeexcitation::AlongStepDeexcitation ( std::vector< G4Track * > &  tracks,
const G4Step step,
G4double eLoss,
G4int  coupleIndex 
)
G4bool G4VAtomDeexcitation::CheckAugerActiveRegion ( G4int  coupleIndex)
inline

Definition at line 270 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 270 of file G4VAtomDeexcitation.hh

References activeAugerMedia.

Referenced by AlongStepDeexcitation(), and GenerateParticles().

+ Here is the caller graph for this function:

virtual G4double G4VAtomDeexcitation::ComputeShellIonisationCrossSectionPerAtom ( const G4ParticleDefinition ,
G4int  Z,
G4AtomicShellEnumerator  shell,
G4double  kinE,
const G4Material mat = nullptr 
)
pure virtual

Implemented in G4UAtomicDeexcitation.

Referenced by G4EmCalculator::ComputeShellIonisationCrossSectionPerAtom().

+ Here is the caller graph for this function:

void G4VAtomDeexcitation::GenerateParticles ( std::vector< G4DynamicParticle * > *  secVect,
const G4AtomicShell as,
G4int  Z,
G4int  coupleIndex 
)

Definition at line 252 of file G4VAtomDeexcitation.cc.

View newest version in sPHENIX GitHub at line 252 of file G4VAtomDeexcitation.cc

References CheckAugerActiveRegion(), DBL_MAX, G4ProductionCutsTable::GetEnergyCutsVector(), incremental_prev_tag::idx, ignoreCuts, and theCoupleTable.

Referenced by AlongStepDeexcitation(), G4ECDecay::DecayIt(), G4ITDecay::DecayIt(), G4LivermorePolarizedPhotoElectricGDModel::SampleSecondaries(), G4DNARuddIonisationExtendedModel::SampleSecondaries(), G4DNARuddIonisationModel::SampleSecondaries(), G4DNABornIonisationModel2::SampleSecondaries(), G4DNABornIonisationModel1::SampleSecondaries(), G4LivermoreComptonModifiedModel::SampleSecondaries(), G4LivermoreComptonModel::SampleSecondaries(), G4DNAEmfietzoglouIonisationModel::SampleSecondaries(), G4LivermorePolarizedPhotoElectricModel::SampleSecondaries(), G4LivermorePhotoElectricModel::SampleSecondaries(), G4LivermorePolarizedComptonModel::SampleSecondaries(), G4DNACPA100IonisationModel::SampleSecondaries(), G4PenelopePhotoElectricModel::SampleSecondaries(), G4KleinNishinaModel::SampleSecondaries(), G4MuElecInelasticModel::SampleSecondaries(), G4MicroElecInelasticModel::SampleSecondaries(), G4PEEffectFluoModel::SampleSecondaries(), G4PenelopeComptonModel::SampleSecondaries(), G4PenelopeIonisationModel::SampleSecondaries(), G4LowEPComptonModel::SampleSecondaries(), and G4LowEPPolarizedComptonModel::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual void G4VAtomDeexcitation::GenerateParticles ( std::vector< G4DynamicParticle * > *  secVect,
const G4AtomicShell ,
G4int  Z,
G4double  gammaCut,
G4double  eCut 
)
pure virtual

Implemented in G4UAtomicDeexcitation.

const std::vector< G4bool > & G4VAtomDeexcitation::GetListOfActiveAtoms ( ) const
inline

Definition at line 248 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 248 of file G4VAtomDeexcitation.hh

References activeZ.

const G4String & G4VAtomDeexcitation::GetName ( void  ) const
inline

Definition at line 242 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 242 of file G4VAtomDeexcitation.hh

References name.

Referenced by SetDeexcitationActiveRegion().

+ Here is the caller graph for this function:

virtual G4double G4VAtomDeexcitation::GetShellIonisationCrossSectionPerAtom ( const G4ParticleDefinition ,
G4int  Z,
G4AtomicShellEnumerator  shell,
G4double  kinE,
const G4Material mat = nullptr 
)
pure virtual

Implemented in G4UAtomicDeexcitation.

Referenced by AlongStepDeexcitation(), and G4EmCalculator::GetShellIonisationCrossSectionPerAtom().

+ Here is the caller graph for this function:

G4int G4VAtomDeexcitation::GetVerboseLevel ( ) const
inline

Definition at line 258 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 258 of file G4VAtomDeexcitation.hh

References verbose.

void G4VAtomDeexcitation::InitialiseAtomicDeexcitation ( )

Definition at line 106 of file G4VAtomDeexcitation.cc.

View newest version in sPHENIX GitHub at line 106 of file G4VAtomDeexcitation.cc

References activeAugerMedia, activeDeexcitationMedia, activePIXEMedia, activeRegions, activeZ, G4EmParameters::Auger(), G4EmParameters::AugerCascade(), AugerRegions, G4EmParameters::DeexcitationIgnoreCut(), G4EmParameters::DefineRegParamForDeex(), deRegions, flagAuger, flagAugerCascade, flagPIXE, G4EmParameters::Fluo(), G4cout, G4endl, G4Element::GetElementTable(), G4RegionStore::GetInstance(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4Element::GetNumberOfElements(), G4MaterialCutsCouple::GetProductionCuts(), G4Region::GetProductionCuts(), G4ProductionCutsTable::GetProductionCutsTable(), G4RegionStore::GetRegion(), G4ProductionCutsTable::GetTableSize(), ignoreCuts, InitialiseForNewRun(), isActive, isActiveLocked, isAugerCascadeLocked, isAugerLocked, isPIXELocked, k, max, G4InuclParticleNames::nn, G4EmParameters::Pixe(), G4EmParameters::PIXECrossSectionModel(), G4EmParameters::PIXEElectronCrossSectionModel(), PIXERegions, reg, SetDeexcitationActiveRegion(), theCoupleTable, theParameters, verbose, and Z.

Referenced by DMXPhysicsList::ConstructGeneral(), LBE::ConstructGeneral(), BiasedRDPhysics::ConstructProcess(), G4RadioactiveDecayPhysics::ConstructProcess(), and G4LossTableManager::ResetParameters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual void G4VAtomDeexcitation::InitialiseForExtraAtom ( G4int  Z)
pure virtual

Implemented in G4UAtomicDeexcitation.

virtual void G4VAtomDeexcitation::InitialiseForNewRun ( )
pure virtual

Implemented in G4UAtomicDeexcitation.

Referenced by PhysicsList::ConstructEM(), and InitialiseAtomicDeexcitation().

+ Here is the caller graph for this function:

G4bool G4VAtomDeexcitation::IsAugerActive ( ) const
inline

Definition at line 217 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 217 of file G4VAtomDeexcitation.hh

References flagAuger.

Referenced by G4UAtomicDeexcitation::GenerateAuger().

+ Here is the caller graph for this function:

G4bool G4VAtomDeexcitation::IsAugerCascadeActive ( ) const
inline

Definition at line 227 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 227 of file G4VAtomDeexcitation.hh

References flagAugerCascade.

Referenced by G4UAtomicDeexcitation::GenerateAuger(), G4UAtomicDeexcitation::GenerateFluorescence(), and G4UAtomicDeexcitation::GenerateParticles().

+ Here is the caller graph for this function:

G4bool G4VAtomDeexcitation::IsFluoActive ( ) const
inline

Definition at line 207 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 207 of file G4VAtomDeexcitation.hh

References isActive.

Referenced by G4ECDecay::DecayIt(), G4ITDecay::DecayIt(), G4LivermorePolarizedPhotoElectricGDModel::Initialise(), G4LivermorePolarizedPhotoElectricModel::Initialise(), G4LivermorePhotoElectricModel::Initialise(), and G4UAtomicDeexcitation::InitialiseForNewRun().

+ Here is the caller graph for this function:

G4bool G4VAtomDeexcitation::IsPIXEActive ( ) const
inline

Definition at line 237 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 237 of file G4VAtomDeexcitation.hh

References flagPIXE.

Referenced by G4VEnergyLossProcess::BuildPhysicsTable(), G4PenelopeIonisationModel::Initialise(), and G4UAtomicDeexcitation::InitialiseForNewRun().

+ Here is the caller graph for this function:

G4VAtomDeexcitation& G4VAtomDeexcitation::operator= ( const G4VAtomDeexcitation right)
privatedelete
void G4VAtomDeexcitation::SetAuger ( G4bool  val)
inline

Definition at line 212 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 212 of file G4VAtomDeexcitation.hh

References flagAuger, and isAugerLocked.

Referenced by PhysicsList::ConstructEM().

+ Here is the caller graph for this function:

void G4VAtomDeexcitation::SetAugerCascade ( G4bool  val)
inline

Definition at line 222 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 222 of file G4VAtomDeexcitation.hh

References flagAugerCascade, and isAugerCascadeLocked.

void G4VAtomDeexcitation::SetDeexcitationActiveRegion ( const G4String rname,
G4bool  valDeexcitation,
G4bool  valAuger,
G4bool  valPIXE 
)

Definition at line 204 of file G4VAtomDeexcitation.cc.

View newest version in sPHENIX GitHub at line 204 of file G4VAtomDeexcitation.cc

References activeRegions, AugerRegions, deRegions, G4RegionStore::GetInstance(), GetName(), n, G4InuclParticleNames::nn, and PIXERegions.

Referenced by G4EmLowEParameters::DefineRegParamForDeex(), and InitialiseAtomicDeexcitation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VAtomDeexcitation::SetFluo ( G4bool  val)
inline

Definition at line 202 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 202 of file G4VAtomDeexcitation.hh

References isActive, and isActiveLocked.

Referenced by PhysicsList::ConstructEM(), G4EmDNAPhysics_stationary_option2::ConstructProcess(), and PhysListEmStandardNR::ConstructProcess().

+ Here is the caller graph for this function:

void G4VAtomDeexcitation::SetPIXE ( G4bool  val)
inline

Definition at line 232 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 232 of file G4VAtomDeexcitation.hh

References flagPIXE, and isPIXELocked.

Referenced by PhysicsList::ConstructEM().

+ Here is the caller graph for this function:

void G4VAtomDeexcitation::SetVerboseLevel ( G4int  val)
inline

Definition at line 253 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 253 of file G4VAtomDeexcitation.hh

References verbose.

Referenced by G4LossTableManager::ResetParameters().

+ Here is the caller graph for this function:

Member Data Documentation

std::vector<G4bool> G4VAtomDeexcitation::activeAugerMedia
private

Definition at line 186 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 186 of file G4VAtomDeexcitation.hh

Referenced by CheckAugerActiveRegion(), and InitialiseAtomicDeexcitation().

std::vector<G4bool> G4VAtomDeexcitation::activeDeexcitationMedia
private

Definition at line 185 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 185 of file G4VAtomDeexcitation.hh

Referenced by CheckDeexcitationActiveRegion(), and InitialiseAtomicDeexcitation().

std::vector<G4bool> G4VAtomDeexcitation::activePIXEMedia
private

Definition at line 187 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 187 of file G4VAtomDeexcitation.hh

Referenced by AlongStepDeexcitation(), and InitialiseAtomicDeexcitation().

std::vector<G4String> G4VAtomDeexcitation::activeRegions
private

Definition at line 188 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 188 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), and SetDeexcitationActiveRegion().

std::vector<G4bool> G4VAtomDeexcitation::activeZ
private

Definition at line 184 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 184 of file G4VAtomDeexcitation.hh

Referenced by AlongStepDeexcitation(), GetListOfActiveAtoms(), and InitialiseAtomicDeexcitation().

std::vector<G4bool> G4VAtomDeexcitation::AugerRegions
private

Definition at line 190 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 190 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), and SetDeexcitationActiveRegion().

std::vector<G4bool> G4VAtomDeexcitation::deRegions
private

Definition at line 189 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 189 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), and SetDeexcitationActiveRegion().

G4bool G4VAtomDeexcitation::flagAuger
private

Definition at line 174 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 174 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), IsAugerActive(), and SetAuger().

G4bool G4VAtomDeexcitation::flagAugerCascade
private

Definition at line 175 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 175 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), IsAugerCascadeActive(), and SetAugerCascade().

G4bool G4VAtomDeexcitation::flagPIXE
private

Definition at line 176 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 176 of file G4VAtomDeexcitation.hh

Referenced by AlongStepDeexcitation(), InitialiseAtomicDeexcitation(), IsPIXEActive(), and SetPIXE().

const G4ParticleDefinition* G4VAtomDeexcitation::gamma
private

Definition at line 167 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 167 of file G4VAtomDeexcitation.hh

Referenced by AlongStepDeexcitation(), and G4VAtomDeexcitation().

G4bool G4VAtomDeexcitation::ignoreCuts
private

Definition at line 177 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 177 of file G4VAtomDeexcitation.hh

Referenced by AlongStepDeexcitation(), GenerateParticles(), and InitialiseAtomicDeexcitation().

G4bool G4VAtomDeexcitation::isActive
private

Definition at line 173 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 173 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), IsFluoActive(), and SetFluo().

G4bool G4VAtomDeexcitation::isActiveLocked
private

Definition at line 179 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 179 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), and SetFluo().

G4bool G4VAtomDeexcitation::isAugerCascadeLocked
private

Definition at line 181 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 181 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), and SetAugerCascade().

G4bool G4VAtomDeexcitation::isAugerLocked
private

Definition at line 180 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 180 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), and SetAuger().

G4bool G4VAtomDeexcitation::isPIXELocked
private

Definition at line 182 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 182 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), and SetPIXE().

G4String G4VAtomDeexcitation::name
private

Definition at line 171 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 171 of file G4VAtomDeexcitation.hh

Referenced by GetName().

G4int G4VAtomDeexcitation::pixeIDe = -1
staticprivate

Definition at line 195 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 195 of file G4VAtomDeexcitation.hh

Referenced by AlongStepDeexcitation(), and G4VAtomDeexcitation().

G4int G4VAtomDeexcitation::pixeIDg = -1
staticprivate

Definition at line 194 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 194 of file G4VAtomDeexcitation.hh

Referenced by AlongStepDeexcitation(), and G4VAtomDeexcitation().

std::vector<G4bool> G4VAtomDeexcitation::PIXERegions
private

Definition at line 191 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 191 of file G4VAtomDeexcitation.hh

Referenced by InitialiseAtomicDeexcitation(), and SetDeexcitationActiveRegion().

G4ProductionCutsTable* G4VAtomDeexcitation::theCoupleTable
private

Definition at line 169 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 169 of file G4VAtomDeexcitation.hh

Referenced by AlongStepDeexcitation(), G4VAtomDeexcitation(), GenerateParticles(), and InitialiseAtomicDeexcitation().

G4EmParameters* G4VAtomDeexcitation::theParameters
private

Definition at line 166 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 166 of file G4VAtomDeexcitation.hh

Referenced by G4VAtomDeexcitation(), and InitialiseAtomicDeexcitation().

std::vector<G4DynamicParticle*> G4VAtomDeexcitation::vdyn
private

Definition at line 192 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 192 of file G4VAtomDeexcitation.hh

Referenced by AlongStepDeexcitation(), and G4VAtomDeexcitation().

G4int G4VAtomDeexcitation::verbose
private

Definition at line 170 of file G4VAtomDeexcitation.hh.

View newest version in sPHENIX GitHub at line 170 of file G4VAtomDeexcitation.hh

Referenced by GetVerboseLevel(), InitialiseAtomicDeexcitation(), and SetVerboseLevel().


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