ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
G4RDAugerData.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4RDAugerData.hh
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
// Author: Alfonso Mantero (Alfonso.Mantero@ge.infn.it)
28
//
29
// History:
30
// -----------
31
// 2 June 2002 First committed to cvs
32
//
33
// -------------------------------------------------------------------
34
35
// Class description:
36
// Low Energy Electromagnetic Physics
37
// This Class loads and stores all the information of auger effect (shellIds,
38
// probabilities and energies of the electrons emitted)
39
// Further documentation available from http://www.ge.infn.it/geant4/lowE
40
41
// -------------------------------------------------------------------
42
43
#ifndef G4RDAUGERDATA_HH
44
#define G4RDAUGERDATA_HH 1
45
46
#include "
globals.hh
"
47
#include <vector>
48
#include <map>
49
#include "
G4RDAugerTransition.hh
"
50
51
class
G4DataVector
;
52
53
class
G4RDAugerData
54
{
55
public
:
56
57
G4RDAugerData
();
58
59
~G4RDAugerData
();
60
61
// The method returns the number of shells in wich a
62
// vacancy can be filled by a NON-radiative transition, given the atomic number
63
size_t
NumberOfVacancies
(
G4int
Z
)
const
;
64
65
// Given the index of the vacancy (and the atomic number Z) returns its identity
66
G4int
VacancyId
(
G4int
Z,
G4int
vacancyIndex)
const
;
67
68
// Given the index of a vacancy in the atom with the atomc number Z, returns the number of
69
//shells starting from wich an electron can fill the vacancy
70
size_t
NumberOfTransitions
(
G4int
Z,
G4int
vacancyIndex)
const
;
71
72
// Given the atomic number Z, the Index of the initial vacancy shell
73
// and the index of the starting shell for the
74
// transition, returns the identity of the shell originating the electron transition
75
G4int
StartShellId
(
G4int
Z,
G4int
initialVacancyIndex,
G4int
transitionShellIndex)
const
;
76
77
// Given the atomic number , the indexes of the starting, the auger originating shell,
78
// and the transition shell Id, returns the transition energy
79
G4double
StartShellEnergy
(
G4int
Z,
G4int
vacancyIndex,
G4int
transitionId,
G4int
augerIndex)
const
;
80
81
// Given the atomic number, the index of the starting shell, the auger originating shells,
82
// and the transition shell Id, returns the transition probability
83
G4double
StartShellProb
(
G4int
Z,
G4int
vacancyIndex,
G4int
transitionId,
G4int
augerIndex)
const
;
84
85
// Given the atomic number, the index of the starting vacancy shell and the transition shell Id,
86
// returns the number of shells wich an auger electron can come from.
87
size_t
NumberOfAuger
(
G4int
Z,
G4int
initIndex,
G4int
vacancyId)
const
;
88
89
// Given the atomic number, th index of the starting and the auger originating shell,
90
// and the transition shell Id, returns the ager originating shell Id
91
size_t
AugerShellId
(
G4int
Z,
G4int
vacancyIndex,
G4int
transId,
G4int
augerIndex)
const
;
92
93
std::vector<G4RDAugerTransition>
LoadData
(
G4int
Z);
94
95
void
BuildAugerTransitionTable
();
96
97
void
PrintData
(
G4int
Z);
98
99
100
101
// Given the atomic number and the vacancy intial shell index returns
102
// the AugerTransition object related to that shell
103
104
G4RDAugerTransition
*
GetAugerTransition
(
G4int
Z,
G4int
vacancyShellIndex);
105
106
// Given the atomic number returns a vector of possible AugerTransition objects
107
std::vector<G4RDAugerTransition>*
GetAugerTransitions
(
G4int
Z);
108
109
private
:
110
111
// std::map<G4int,G4DataVector*,std::less<G4int> > idMap;
112
113
typedef
std::map<G4int,std::vector<G4RDAugerTransition>,std::less<G4int> >
trans_Table
;
114
trans_Table
augerTransitionTable
;
115
116
/*
117
std::map<G4int,std::map<G4Int,G4DataVector*,std::less<G4int> >,std::less<G4int> > transProbabilityMap;
118
std::map<G4int,std::map<G4Int,G4DataVector*,std::less<G4int> >,std::less<G4int> > transAugerIdMap;
119
*/
120
121
std::vector<G4int>
nInitShells
;
122
std::vector<G4int>
numberOfVacancies
;
123
124
};
125
126
#endif
127
128
129
130
131
geant4
tree
geant4-10.6-release
examples
advanced
eRosita
physics
include
G4RDAugerData.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:57
using
1.8.2 with
ECCE GitHub integration