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
G4StableIsotopes.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//
28#ifndef G4StableIsotopes_h
29#define G4StableIsotopes_h 1
30
31// Class Description
32// class utility that knows about all naturally occuring isotopes.;
33// to be used in your process implementation in case you need this.
34// Class Description - End
35
36
37// class, that knows the stable isotopes for all elements.
38// H.P. Wellisch, 21. Nov. 1997
39// Accessable by name, and Z
40//
41// To loop over all isotopes for element with protonount Z
42// G4StableIsotopes theIso;
43// for (G4int i=0; i<theIso.GetNumberOfIsotopes(); i++)
44// {
45// G4double fracInPercent=theIso.GetAbundance(theIso.GetFirstIsotope(Z)+i);
46// }
47//
48#include "globals.hh"
49
51{
52
53public:
54
55G4String GetName(G4int Z) {return elementName[Z-1];}
56G4int GetNumberOfIsotopes(G4int Z) {return nIsotopes[Z-1];}
57G4int GetFirstIsotope(G4int Z) {return start[Z-1];}
58G4int GetIsotopeNucleonCount(G4int number) {return nucleonCount[number];}
59G4double GetAbundance(G4int number) {return abundance[number];}
60G4int GetProtonCount(G4int Z) {return protonCount[Z-1];}
61
62private:
63
64static const G4int protonCount[92];
65static const G4String elementName[92];
66static const G4int nIsotopes[92];
67static const G4int start[92];
68static const G4int nucleonCount[287];
69static const G4double abundance[287];
70};
71
72#endif
double G4double
Definition: G4Types.hh:64
int G4int
Definition: G4Types.hh:66
G4int GetProtonCount(G4int Z)
G4double GetAbundance(G4int number)
G4String GetName(G4int Z)
G4int GetFirstIsotope(G4int Z)
G4int GetNumberOfIsotopes(G4int Z)
G4int GetIsotopeNucleonCount(G4int number)