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.

References G4cout, and G4endl.

00048                                           :
00049   minGammaEnergy(100.*eV),
00050   minElectronEnergy(100.*eV),
00051   fAuger(false)
00052 {
00053 
00054   G4cout << " ********************************************************** " << G4endl; 
00055   G4cout << " *                  W A R N I N G ! ! !                   * " << G4endl;
00056   G4cout << " ********************************************************** " << G4endl;
00057   G4cout << " *                                                        * " << G4endl; 
00058   G4cout << " *  Class G4AtomicDeexcitation is obsolete. It has been   * " << G4endl;
00059   G4cout << " * discontinued and is going to be removed by next Geant4 * " << G4endl; 
00060   G4cout << " *     release please migrate to G4UAtomDeexcitation.     * " << G4endl;
00061   G4cout << " *                                                        * " << G4endl;
00062   G4cout << " ********************************************************** " << G4endl; 
00063 
00064   augerVacancyId=0;
00065   newShellId=0;
00066 }

G4AtomicDeexcitation::~G4AtomicDeexcitation (  ) 

Definition at line 68 of file G4AtomicDeexcitation.cc.

00069 {}


Member Function Documentation

void G4AtomicDeexcitation::ActivateAugerElectronProduction ( G4bool  val  ) 

Definition at line 491 of file G4AtomicDeexcitation.cc.

Referenced by G4hImpactIonisation::ActivateAugerElectronProduction().

00492 {
00493   fAuger = val;
00494 }

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

Definition at line 71 of file G4AtomicDeexcitation.cc.

References G4Exception(), and JustWarning.

Referenced by G4hImpactIonisation::PostStepDoIt().

00072 { 
00073 
00074   std::vector<G4DynamicParticle*>* vectorOfParticles;
00075   vectorOfParticles = new std::vector<G4DynamicParticle*>;
00076 
00077   G4DynamicParticle* aParticle;
00078   G4int provShellId = 0;
00079   G4int counter = 0;
00080   
00081   // The aim of this loop is to generate more than one fluorecence photon 
00082   // from the same ionizing event 
00083   do
00084     {
00085       if (counter == 0) 
00086         // First call to GenerateParticles(...):
00087         // givenShellId is given by the process
00088         {
00089           provShellId = SelectTypeOfTransition(Z, givenShellId);
00090           
00091           if  ( provShellId >0) 
00092             {
00093               aParticle = GenerateFluorescence(Z,givenShellId,provShellId);  
00094             }
00095           else if ( provShellId == -1)
00096             {
00097               aParticle = GenerateAuger(Z, givenShellId);
00098             }
00099           else
00100             {
00101               G4Exception("G4AtomicDeexcitation::Constructor", "de0002", JustWarning, "Transition selection invalid, energy local deposited");
00102             }
00103         }
00104       else 
00105         // Following calls to GenerateParticles(...):
00106         // newShellId is given by GenerateFluorescence(...)
00107         {
00108           provShellId = SelectTypeOfTransition(Z,newShellId);
00109           if  (provShellId >0)
00110             {
00111               aParticle = GenerateFluorescence(Z,newShellId,provShellId);
00112             }
00113           else if ( provShellId == -1)
00114             {
00115               aParticle = GenerateAuger(Z, newShellId);
00116             }
00117           else
00118             {
00119               G4Exception("G4AtomicDeexcitation::constructor", "de0002", JustWarning, "Transition selection invalid, energy local deposited" );
00120             }
00121         }
00122       counter++;
00123       if (aParticle != 0) {vectorOfParticles->push_back(aParticle);}
00124       else {provShellId = -2;}
00125     }
00126   
00127   // Look this in a particular way: only one auger emitted! // ????
00128   while (provShellId > -2); 
00129 
00130   // debug  
00131   // if (vectorOfParticles->size() > 0) {
00132   //   G4cout << " DEEXCITATION!" << G4endl;
00133   // }
00134 
00135   return vectorOfParticles;
00136 }

void G4AtomicDeexcitation::SetCutForAugerElectrons ( G4double  cut  ) 

Definition at line 486 of file G4AtomicDeexcitation.cc.

00487 {
00488   minElectronEnergy = cut;
00489 }

void G4AtomicDeexcitation::SetCutForSecondaryPhotons ( G4double  cut  ) 

Definition at line 481 of file G4AtomicDeexcitation.cc.

00482 {
00483   minGammaEnergy = cut;
00484 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:51:28 2013 for Geant4 by  doxygen 1.4.7