Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4AtomicDeexcitation Class Reference

#include <G4AtomicDeexcitation.hh>

Public Member Functions

 G4AtomicDeexcitation ()
 
 ~G4AtomicDeexcitation ()
 
std::vector< G4DynamicParticle * > * GenerateParticles (G4int Z, G4int shellId)
 
void SetCutForSecondaryPhotons (G4double cut)
 
void SetCutForAugerElectrons (G4double cut)
 
void ActivateAugerElectronProduction (G4bool val)
 

Detailed Description

Definition at line 51 of file G4AtomicDeexcitation.hh.

Constructor & Destructor Documentation

◆ G4AtomicDeexcitation()

G4AtomicDeexcitation::G4AtomicDeexcitation ( )

Definition at line 48 of file G4AtomicDeexcitation.cc.

48 :
49 minGammaEnergy(100.*eV),
50 minElectronEnergy(100.*eV),
51 fAuger(false)
52{
53
54 G4cout << " ********************************************************** " << G4endl;
55 G4cout << " * W A R N I N G ! ! ! * " << G4endl;
56 G4cout << " ********************************************************** " << G4endl;
57 G4cout << " * * " << G4endl;
58 G4cout << " * Class G4AtomicDeexcitation is obsolete. It has been * " << G4endl;
59 G4cout << " * discontinued and is going to be removed by next Geant4 * " << G4endl;
60 G4cout << " * release please migrate to G4UAtomDeexcitation. * " << G4endl;
61 G4cout << " * * " << G4endl;
62 G4cout << " ********************************************************** " << G4endl;
63
64 augerVacancyId=0;
65 newShellId=0;
66}
#define G4endl
Definition: G4ios.hh:57
G4GLOB_DLL std::ostream G4cout

◆ ~G4AtomicDeexcitation()

G4AtomicDeexcitation::~G4AtomicDeexcitation ( )

Definition at line 68 of file G4AtomicDeexcitation.cc.

69{}

Member Function Documentation

◆ ActivateAugerElectronProduction()

void G4AtomicDeexcitation::ActivateAugerElectronProduction ( G4bool  val)

Definition at line 491 of file G4AtomicDeexcitation.cc.

492{
493 fAuger = val;
494}

Referenced by G4hImpactIonisation::ActivateAugerElectronProduction().

◆ GenerateParticles()

std::vector< G4DynamicParticle * > * G4AtomicDeexcitation::GenerateParticles ( G4int  Z,
G4int  shellId 
)

Definition at line 71 of file G4AtomicDeexcitation.cc.

72{
73
74 std::vector<G4DynamicParticle*>* vectorOfParticles;
75 vectorOfParticles = new std::vector<G4DynamicParticle*>;
76
77 G4DynamicParticle* aParticle;
78 G4int provShellId = 0;
79 G4int counter = 0;
80
81 // The aim of this loop is to generate more than one fluorecence photon
82 // from the same ionizing event
83 do
84 {
85 if (counter == 0)
86 // First call to GenerateParticles(...):
87 // givenShellId is given by the process
88 {
89 provShellId = SelectTypeOfTransition(Z, givenShellId);
90
91 if ( provShellId >0)
92 {
93 aParticle = GenerateFluorescence(Z,givenShellId,provShellId);
94 }
95 else if ( provShellId == -1)
96 {
97 aParticle = GenerateAuger(Z, givenShellId);
98 }
99 else
100 {
101 G4Exception("G4AtomicDeexcitation::Constructor", "de0002", JustWarning, "Transition selection invalid, energy local deposited");
102 }
103 }
104 else
105 // Following calls to GenerateParticles(...):
106 // newShellId is given by GenerateFluorescence(...)
107 {
108 provShellId = SelectTypeOfTransition(Z,newShellId);
109 if (provShellId >0)
110 {
111 aParticle = GenerateFluorescence(Z,newShellId,provShellId);
112 }
113 else if ( provShellId == -1)
114 {
115 aParticle = GenerateAuger(Z, newShellId);
116 }
117 else
118 {
119 G4Exception("G4AtomicDeexcitation::constructor", "de0002", JustWarning, "Transition selection invalid, energy local deposited" );
120 }
121 }
122 counter++;
123 if (aParticle != 0) {vectorOfParticles->push_back(aParticle);}
124 else {provShellId = -2;}
125 }
126
127 // Look this in a particular way: only one auger emitted! // ????
128 while (provShellId > -2);
129
130 // debug
131 // if (vectorOfParticles->size() > 0) {
132 // G4cout << " DEEXCITATION!" << G4endl;
133 // }
134
135 return vectorOfParticles;
136}
@ JustWarning
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
Definition: G4Exception.cc:35
int G4int
Definition: G4Types.hh:85

Referenced by G4hImpactIonisation::PostStepDoIt().

◆ SetCutForAugerElectrons()

void G4AtomicDeexcitation::SetCutForAugerElectrons ( G4double  cut)

Definition at line 486 of file G4AtomicDeexcitation.cc.

487{
488 minElectronEnergy = cut;
489}

◆ SetCutForSecondaryPhotons()

void G4AtomicDeexcitation::SetCutForSecondaryPhotons ( G4double  cut)

Definition at line 481 of file G4AtomicDeexcitation.cc.

482{
483 minGammaEnergy = cut;
484}

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