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
G4IsotopeMagneticMomentTable.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4IsotopeMagneticMomentTable.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
#ifndef G4IsotopeMagneticMomentTable_h
27
#define G4IsotopeMagneticMomentTable_h 1
28
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
29
//
30
// MODULE: G4IsotopeMagneticMomentTable.hh
31
//
32
// Date: 16/03/07
33
// Author: H.Kurashige
34
//
35
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
36
//
37
// HISTORY
39
40
//
41
#include "
globals.hh
"
42
#include "
G4IsotopeProperty.hh
"
43
#include "
G4VIsotopeTable.hh
"
44
#include "
G4Ions.hh
"
45
#include "
G4ParticleTable.hh
"
46
#include "
G4IonTable.hh
"
47
#include "
G4DecayTable.hh
"
48
49
#include <vector>
50
52
//
53
class
G4IsotopeMagneticMomentTable
:
public
G4VIsotopeTable
54
{
55
// class description
56
// G4IsotopeMagneticMomentTable is the table of pointers to G4IsotopeProperty,
57
// which has magnetic moment and spin.
58
// Data File name is given by G4IONMAGNETICMOMENT
59
//
60
public
:
61
//
62
typedef
std::vector<G4IsotopeProperty*>
G4IsotopeList
;
63
typedef
std::vector<G4String>
G4IsotopeNameList
;
64
65
public
:
66
// constructor
67
//
68
G4IsotopeMagneticMomentTable
();
69
70
protected
:
71
// hide copy construictor and assignment operator as protected
72
G4IsotopeMagneticMomentTable
(
const
G4IsotopeMagneticMomentTable
&
right
);
73
G4IsotopeMagneticMomentTable
&
operator=
(
const
G4IsotopeMagneticMomentTable
&
right
);
74
75
public
:
76
// destructor
77
virtual
~G4IsotopeMagneticMomentTable
();
78
79
public
:
80
// with description
81
//
82
virtual
G4bool
FindIsotope
(
G4IsotopeProperty
* property);
83
// The FindIsotope function will replace the pure virtual one defined in the
84
// abstract base class G4VIstopeTable. We don't use this fuction in this
85
// implementation, instead we use the next function.
86
//
87
virtual
G4IsotopeProperty
*
GetIsotope
(
G4int
Z
,
G4int
A
,
G4double
E
,
88
G4Ions::G4FloatLevelBase
flb=G4Ions::G4FloatLevelBase::no_Float);
89
virtual
G4IsotopeProperty
*
GetIsotopeByIsoLvl
(
G4int
Z
,
G4int
A
,
G4int
lvl=0);
90
//
91
// again it will replace the pure virtual one in the abstract base class.
92
//
93
// Z: Atomic Number
94
// A: Atomic Mass
95
// E: Excitaion energy
96
// flb: floating level base (enum defined in G4Ions.hh)
97
// -- currently ignored
98
// or
99
// G4int level: isomer level
100
//
101
102
private
:
103
G4int
GetVerboseLevel
()
const
;
104
// get Verbose Level defined in G4ParticleTable
105
106
private
:
107
108
G4IsotopeList
fIsotopeList
;
109
110
static
const
G4double
levelTolerance
;
111
static
const
G4double
nuclearMagneton
;
112
};
113
114
115
inline
116
G4int
G4IsotopeMagneticMomentTable::GetVerboseLevel
()
const
117
{
118
return
G4ParticleTable::GetParticleTable
()->
GetVerboseLevel
();
119
}
120
121
#endif
122
123
124
125
126
127
geant4
tree
geant4-10.6-release
source
particles
utils
include
G4IsotopeMagneticMomentTable.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:24
using
1.8.2 with
ECCE GitHub integration