Geant4  10.03
G4VAtomDeexcitation Class Referenceabstract

#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.

Constructor & Destructor Documentation

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

Definition at line 70 of file G4VAtomDeexcitation.cc.

References 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 88 of file G4VAtomDeexcitation.cc.

G4VAtomDeexcitation::G4VAtomDeexcitation ( G4VAtomDeexcitation )
privatedelete

Member Function Documentation

G4bool G4VAtomDeexcitation::CheckAugerActiveRegion ( G4int  coupleIndex)
inline

Definition at line 268 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 
)
inline

Definition at line 274 of file G4VAtomDeexcitation.hh.

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

Referenced by AlongStepDeexcitation(), G4ECDecay::DecayIt(), G4ITDecay::DecayIt(), G4LivermorePolarizedPhotoElectricGDModel::SampleSecondaries(), G4DNARuddIonisationModel::SampleSecondaries(), G4DNARuddIonisationExtendedModel::SampleSecondaries(), G4DNABornIonisationModel2::SampleSecondaries(), G4DNABornIonisationModel1::SampleSecondaries(), G4LivermoreComptonModifiedModel::SampleSecondaries(), G4LivermoreComptonModel::SampleSecondaries(), G4DNAEmfietzoglouIonisationModel::SampleSecondaries(), G4LivermorePhotoElectricModel::SampleSecondaries(), G4LivermorePolarizedPhotoElectricModel::SampleSecondaries(), G4LivermorePolarizedComptonModel::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 246 of file G4VAtomDeexcitation.hh.

References activeZ.

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

Definition at line 240 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 256 of file G4VAtomDeexcitation.hh.

References verbose.

void G4VAtomDeexcitation::InitialiseAtomicDeexcitation ( )
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 215 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 225 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 205 of file G4VAtomDeexcitation.hh.

References isActive.

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

+ Here is the caller graph for this function:

G4bool G4VAtomDeexcitation::IsPIXEActive ( ) const
inline

Definition at line 235 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 210 of file G4VAtomDeexcitation.hh.

References flagAuger, and isAugerLocked.

Referenced by PhysicsList::ConstructEM(), and EmStandardPhysics::ConstructProcess().

+ Here is the caller graph for this function:

void G4VAtomDeexcitation::SetAugerCascade ( G4bool  val)
inline

Definition at line 220 of file G4VAtomDeexcitation.hh.

References flagAugerCascade, and isAugerCascadeLocked.

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

Definition at line 191 of file G4VAtomDeexcitation.cc.

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

Referenced by G4EmParameters::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 200 of file G4VAtomDeexcitation.hh.

References isActive, and isActiveLocked.

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

+ Here is the caller graph for this function:

void G4VAtomDeexcitation::SetPIXE ( G4bool  val)
inline

Definition at line 230 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 251 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 188 of file G4VAtomDeexcitation.hh.

Referenced by CheckAugerActiveRegion(), and InitialiseAtomicDeexcitation().

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

Definition at line 189 of file G4VAtomDeexcitation.hh.

Referenced by AlongStepDeexcitation(), and InitialiseAtomicDeexcitation().

std::vector<G4String> G4VAtomDeexcitation::activeRegions
private
std::vector<G4bool> G4VAtomDeexcitation::activeZ
private
std::vector<G4bool> G4VAtomDeexcitation::AugerRegions
private
std::vector<G4bool> G4VAtomDeexcitation::deRegions
private
G4bool G4VAtomDeexcitation::flagAuger
private

Definition at line 176 of file G4VAtomDeexcitation.hh.

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

G4bool G4VAtomDeexcitation::flagAugerCascade
private
G4bool G4VAtomDeexcitation::flagPIXE
private
const G4ParticleDefinition* G4VAtomDeexcitation::gamma
private

Definition at line 169 of file G4VAtomDeexcitation.hh.

Referenced by AlongStepDeexcitation(), and G4VAtomDeexcitation().

G4bool G4VAtomDeexcitation::ignoreCuts
private
G4bool G4VAtomDeexcitation::isActive
private

Definition at line 175 of file G4VAtomDeexcitation.hh.

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

G4bool G4VAtomDeexcitation::isActiveLocked
private

Definition at line 181 of file G4VAtomDeexcitation.hh.

Referenced by InitialiseAtomicDeexcitation(), and SetFluo().

G4bool G4VAtomDeexcitation::isAugerCascadeLocked
private

Definition at line 183 of file G4VAtomDeexcitation.hh.

Referenced by InitialiseAtomicDeexcitation(), and SetAugerCascade().

G4bool G4VAtomDeexcitation::isAugerLocked
private

Definition at line 182 of file G4VAtomDeexcitation.hh.

Referenced by InitialiseAtomicDeexcitation(), and SetAuger().

G4bool G4VAtomDeexcitation::isPIXELocked
private

Definition at line 184 of file G4VAtomDeexcitation.hh.

Referenced by InitialiseAtomicDeexcitation(), and SetPIXE().

G4String G4VAtomDeexcitation::name
private

Definition at line 173 of file G4VAtomDeexcitation.hh.

Referenced by GetName(), and InitialiseAtomicDeexcitation().

G4int G4VAtomDeexcitation::pixeIDe = -1
staticprivate

Definition at line 197 of file G4VAtomDeexcitation.hh.

Referenced by AlongStepDeexcitation(), and G4VAtomDeexcitation().

G4int G4VAtomDeexcitation::pixeIDg = -1
staticprivate

Definition at line 196 of file G4VAtomDeexcitation.hh.

Referenced by AlongStepDeexcitation(), and G4VAtomDeexcitation().

std::vector<G4bool> G4VAtomDeexcitation::PIXERegions
private
G4ProductionCutsTable* G4VAtomDeexcitation::theCoupleTable
private
G4EmParameters* G4VAtomDeexcitation::theParameters
private

Definition at line 168 of file G4VAtomDeexcitation.hh.

Referenced by G4VAtomDeexcitation(), and InitialiseAtomicDeexcitation().

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

Definition at line 194 of file G4VAtomDeexcitation.hh.

Referenced by AlongStepDeexcitation(), and G4VAtomDeexcitation().

G4int G4VAtomDeexcitation::verbose
private

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