Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
G4AugerTransition.hh
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26//
27// $Id: G4AugerTransition.hh v0.1
28//
29//
30// Author: Alfonso Mantero (Alfosno.Mantero@ge.infn.it)
31//
32// History:
33// -----------
34// 1 Jun 2002: first Commited to CVS
35// -------------------------------------------------------------------
36
37// Class description:
38// Low Energy Electromagnetic Physics
39// This Class stores all the information of auger effect relative
40// to one main vacancy in a atom, like possible auger emission with
41// relative probabilites, originating shell's Ids, probabilities of
42// transition and auger electron energies.
43// Further documentation available from http://www.ge.infn.it/geant4/lowE
44
45// -------------------------------------------------------------------
46
47#ifndef G4AugerTransition_h
48#define G4AugerTransition_h 1
49
50#include "G4DataVector.hh"
51#include "globals.hh"
52#include <vector>
53#include <map>
54
56
57public:
58
59 G4AugerTransition(G4int finalShell, std::vector<G4int> transIds,
60 const std::map<G4int, std::vector<G4int>, std::less<G4int> >* idMap,
61 const std::map<G4int, G4DataVector, std::less<G4int> >* energyMap,
62 const std::map<G4int, G4DataVector, std::less<G4int> >* probabilityMap);
63
65
66// All the data stored and provided by this class are relative to a
67// given vacancy, whose identity is provided by the FinalShellId() method,
68// in an atom of a given material
69
70// Returns the ids of the shells from wich an auger electron culd came from, given the shell
71// from wich the transition electron comes from.
72
73 const std::vector<G4int>* AugerOriginatingShellIds(G4int startShellId) const;
74
75// Returns the ids of the shells from wich an electron cuuld fill the vacancy in finalShellId
76
77 const std::vector<G4int>* TransitionOriginatingShellIds() const;
78
79// Returns the energiess of the possible auger electrons, given th shell
80// from wich the transition electron comes from.
81
82 const G4DataVector* AugerTransitionEnergies(G4int startShellId) const;
83
84// Returns the emission probabilities of the auger electrons, given th shell
85// from wich the transition electron comes from.
86
87 const G4DataVector* AugerTransitionProbabilities(G4int startShellId) const;
88
89// returns the id of the shell in wich the transition electron arrives
90
91 G4int FinalShellId() const;
92
93// Returns the id of the shell from wich come the auger electron , given the shell
94// from wich the transition electron comes from and the index number.
95
96 G4int AugerOriginatingShellId(G4int index, G4int startShellId) const;
97
98// Returns the energy of the auger electron, given the shell
99// from wich the transition electron comes from and the index number.
100
101 G4double AugerTransitionEnergy(G4int index, G4int startShellId) const;
102
103// Returns the probability of the auger emission, given the shell
104// from wich the transition electron comes from and the index number.
105
106 G4double AugerTransitionProbability(G4int index, G4int startShellId) const;
107
108// Returns the id of the shell form wich the transition electron come from
109
111
112
113private:
114
115 G4int finalShellId;
116 std::map<G4int,std::vector<G4int>,std::less<G4int> > augerOriginatingShellIdsMap;
117 std::map<G4int,G4DataVector,std::less<G4int> > augerTransitionEnergiesMap;
118 std::map<G4int,G4DataVector,std::less<G4int> > augerTransitionProbabilitiesMap;
119 std::vector<G4int> transitionOriginatingShellIds;
120
121};
122
123#endif
124
125
double G4double
Definition: G4Types.hh:64
int G4int
Definition: G4Types.hh:66
G4int AugerOriginatingShellId(G4int index, G4int startShellId) const
G4int FinalShellId() const
const std::vector< G4int > * AugerOriginatingShellIds(G4int startShellId) const
const G4DataVector * AugerTransitionEnergies(G4int startShellId) const
const G4DataVector * AugerTransitionProbabilities(G4int startShellId) const
G4double AugerTransitionEnergy(G4int index, G4int startShellId) const
const std::vector< G4int > * TransitionOriginatingShellIds() const
G4double AugerTransitionProbability(G4int index, G4int startShellId) const
G4int TransitionOriginatingShellId(G4int index) const