Geant4
9.6.p02
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
geant4_9_6_p02
source
processes
hadronic
models
lend
include
G4LENDManager.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
#ifndef G4LENDManager_h
27
#define G4LENDManager_h 1
28
29
// Class Description
30
// Manager of LEND (Low Energy Nuclear Data) target (nucleus)
31
// LEND is Geant4 interface for GIDI (General Interaction Data Interface)
32
// which gives a discription of nuclear and atomic reactions, such as
33
// Binary collision cross sections
34
// Particle number multiplicity distributions of reaction products
35
// Energy and angular distributions of reaction products
36
// Derived calculational constants
37
// GIDI is developped at Lawrence Livermore National Laboratory
38
// Class Description - End
39
40
// 071025 First implementation done by T. Koi (SLAC/SCCS)
41
// 101118 Name modifications for release T. Koi (SLAC/PPA)
42
43
#include "
G4LENDHeader.hh
"
44
#include "
G4ParticleDefinition.hh
"
45
#include "
G4NistElementBuilder.hh
"
46
#include "
G4IonTable.hh
"
47
48
#include <map>
49
50
struct
lend_target
51
{
52
// properties for the traget
53
G4GIDI
*
lend
;
54
G4GIDI_target
*
target
;
55
56
G4ParticleDefinition
*
proj
;
57
G4int
target_code
;
58
G4String
evaluation
;
59
};
60
61
62
63
class
G4LENDManager
64
{
65
66
static
G4LENDManager
* lend_manager;
67
68
protected
:
69
G4LENDManager
();
70
G4LENDManager
(
const
G4LENDManager
& ){;};
71
72
~G4LENDManager
();
73
74
public
:
75
static
G4LENDManager
*
GetInstance
()
76
{
77
if
( lend_manager == NULL) lend_manager =
new
G4LENDManager
();
78
return
lend_manager;
79
};
80
81
G4GIDI_target
*
GetLENDTarget
(
G4ParticleDefinition
* ,
G4String
,
G4int
iZ ,
G4int
iA ,
G4int
iM = 0 );
82
std::vector< G4String >
IsLENDTargetAvailable
(
G4ParticleDefinition
* ,
G4int
iZ ,
G4int
iA ,
G4int
iM = 0 );
83
G4int
GetNucleusEncoding
(
G4int
iZ ,
G4int
iA )
// GroundState only
84
{
return
ionTable->
GetNucleusEncoding
( iZ , iA ); };
85
86
G4NistElementBuilder
*
GetNistElementBuilder
(){
return
nistElementBuilder; };
87
88
G4int
GetVerboseLevel
(){
return
verboseLevel; };
89
G4bool
RequestChangeOfVerboseLevel
(
G4int
);
90
91
private
:
92
93
G4int
verboseLevel;
94
95
std::vector< lend_target > v_lend_target;
96
97
// proj
98
std::map< G4ParticleDefinition* , G4GIDI* > proj_lend_map;
99
100
// std::map< G4ParticleDefinition* , std::vector< G4int > > proj_checked_map;
101
102
G4IonTable
* ionTable;
103
104
G4NistElementBuilder
* nistElementBuilder;
105
106
void
printBanner();
107
108
};
109
110
#endif
Generated on Sat May 25 2013 14:34:00 for Geant4 by
1.8.4