Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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 53 of file G4AtomicDeexcitation.hh.

Constructor & Destructor Documentation

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 }
G4GLOB_DLL std::ostream G4cout
static constexpr double eV
Definition: G4SIunits.hh:215
#define G4endl
Definition: G4ios.hh:61
G4AtomicDeexcitation::~G4AtomicDeexcitation ( )

Definition at line 68 of file G4AtomicDeexcitation.cc.

69 {}

Member Function Documentation

void G4AtomicDeexcitation::ActivateAugerElectronProduction ( G4bool  val)

Definition at line 491 of file G4AtomicDeexcitation.cc.

492 {
493  fAuger = val;
494 }

Here is the caller graph for this function:

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 }
int G4int
Definition: G4Types.hh:78
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition: G4Exception.cc:41

Here is the call graph for this function:

Here is the caller graph for this function:

void G4AtomicDeexcitation::SetCutForAugerElectrons ( G4double  cut)

Definition at line 486 of file G4AtomicDeexcitation.cc.

487 {
488  minElectronEnergy = cut;
489 }
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: