Geant4-11
source
processes
hadronic
models
lend
src
MCGIDI_quantitiesLookupMode.cc
Go to the documentation of this file.
1
/*
2
# <<BEGIN-copyright>>
3
# <<END-copyright>>
4
*/
5
6
#include "
MCGIDI.h
"
7
8
/* ---- MCGIDI_quantitiesLookupModes ---- */
9
/*
10
=========================================================
11
*/
12
MCGIDI_quantitiesLookupModes::MCGIDI_quantitiesLookupModes
(
int
projectilesPOPID ) {
13
14
mProjectilesPOPID
= projectilesPOPID;
15
mProjectileEnergy
= -1.;
16
mGroupIndex
= -1;
17
mProjectileEnergyForGroupIndex
= -1.;
18
mTemperature
= 0.;
19
mCrossSectionMode
=
MCGIDI_quantityLookupMode_pointwise
;
20
mMultiplicityMode
=
MCGIDI_quantityLookupMode_pointwise
;
21
}
22
/*
23
=========================================================
24
*/
25
MCGIDI_quantitiesLookupModes::~MCGIDI_quantitiesLookupModes
( ) {
26
27
}
28
/*
29
=========================================================
30
*/
31
int
MCGIDI_quantitiesLookupModes::setGroupIndex
(
GIDI_settings
const
&settings,
bool
encloseOutOfRange ) {
32
33
GIDI_settings_particle
const
*particle = settings.
getParticle
(
mProjectilesPOPID
);
34
if
( particle == NULL )
throw
1;
35
36
mGroupIndex
= particle->
getGroupIndexFromEnergy
(
mProjectileEnergy
, encloseOutOfRange );
37
if
(
mGroupIndex
== -3 )
throw
1;
38
39
mProjectileEnergyForGroupIndex
=
mProjectileEnergy
;
40
if
(
mGroupIndex
< 0 )
mProjectileEnergyForGroupIndex
= -1;
41
return
(
mGroupIndex
);
42
}
43
/*
44
=========================================================
45
*/
46
enum
MCGIDI_quantityLookupMode
MCGIDI_quantitiesLookupModes::getMode
( std::string
const
&quantity )
const
{
47
48
if
( quantity == std::string(
"cross section"
) ) {
49
return
(
mCrossSectionMode
); }
50
else
if
( quantity == std::string(
"multiplicity"
) ) {
51
return
(
mMultiplicityMode
); }
52
else
{
53
throw
1;
54
}
55
}
56
/*
57
=========================================================
58
*/
59
std::vector<std::string>
MCGIDI_quantitiesLookupModes::getListOfLookupQuanities
( )
const
{
60
61
std::vector<std::string> quanities;
62
63
quanities.push_back( std::string(
"cross section"
) );
64
quanities.push_back( std::string(
"multiplicity"
) );
65
66
return
( quanities );
67
}
68
/*
69
=========================================================
70
*/
71
void
MCGIDI_quantitiesLookupModes::setMode
( std::string
const
&quantity,
enum
MCGIDI_quantityLookupMode
mode ) {
72
73
if
( quantity == std::string(
"cross section"
) ) {
74
mCrossSectionMode
= mode; }
75
else
if
( quantity == std::string(
"multiplicity"
) ) {
76
mMultiplicityMode
= mode; }
77
else
{
78
throw
1;
79
}
80
}
81
/*
82
=========================================================
83
*/
84
void
MCGIDI_quantitiesLookupModes::setModeAll
(
enum
MCGIDI_quantityLookupMode
mode ) {
85
86
mCrossSectionMode
= mode;
87
mMultiplicityMode
= mode;
88
}
MCGIDI.h
MCGIDI_quantityLookupMode
MCGIDI_quantityLookupMode
Definition:
MCGIDI.h:77
MCGIDI_quantityLookupMode_pointwise
@ MCGIDI_quantityLookupMode_pointwise
Definition:
MCGIDI.h:78
GIDI_settings_particle
Definition:
GIDI_settings.hh:188
GIDI_settings_particle::getGroupIndexFromEnergy
int getGroupIndexFromEnergy(double e_in, bool encloseOutOfRange) const
Definition:
GIDI_settings.hh:206
GIDI_settings
Definition:
GIDI_settings.hh:224
GIDI_settings::getParticle
GIDI_settings_particle const * getParticle(int PoPId) const
Definition:
GIDI_settings.cc:40
MCGIDI_quantitiesLookupModes::getMode
enum MCGIDI_quantityLookupMode getMode(std::string const &quantity) const
Definition:
MCGIDI_quantitiesLookupMode.cc:46
MCGIDI_quantitiesLookupModes::mGroupIndex
int mGroupIndex
Definition:
MCGIDI.h:87
MCGIDI_quantitiesLookupModes::mProjectileEnergyForGroupIndex
double mProjectileEnergyForGroupIndex
Definition:
MCGIDI.h:88
MCGIDI_quantitiesLookupModes::MCGIDI_quantitiesLookupModes
MCGIDI_quantitiesLookupModes(int projectilesPOPID)
Definition:
MCGIDI_quantitiesLookupMode.cc:12
MCGIDI_quantitiesLookupModes::setGroupIndex
int setGroupIndex(GIDI_settings const &settings, bool encloseOutOfRange)
Definition:
MCGIDI_quantitiesLookupMode.cc:31
MCGIDI_quantitiesLookupModes::~MCGIDI_quantitiesLookupModes
~MCGIDI_quantitiesLookupModes()
Definition:
MCGIDI_quantitiesLookupMode.cc:25
MCGIDI_quantitiesLookupModes::mProjectileEnergy
double mProjectileEnergy
Definition:
MCGIDI.h:86
MCGIDI_quantitiesLookupModes::mProjectilesPOPID
int mProjectilesPOPID
Definition:
MCGIDI.h:85
MCGIDI_quantitiesLookupModes::setMode
void setMode(std::string const &quantity, enum MCGIDI_quantityLookupMode mode)
Definition:
MCGIDI_quantitiesLookupMode.cc:71
MCGIDI_quantitiesLookupModes::setModeAll
void setModeAll(enum MCGIDI_quantityLookupMode mode)
Definition:
MCGIDI_quantitiesLookupMode.cc:84
MCGIDI_quantitiesLookupModes::getListOfLookupQuanities
std::vector< std::string > getListOfLookupQuanities() const
Definition:
MCGIDI_quantitiesLookupMode.cc:59
MCGIDI_quantitiesLookupModes::mMultiplicityMode
enum MCGIDI_quantityLookupMode mMultiplicityMode
Definition:
MCGIDI.h:91
MCGIDI_quantitiesLookupModes::mTemperature
double mTemperature
Definition:
MCGIDI.h:89
MCGIDI_quantitiesLookupModes::mCrossSectionMode
enum MCGIDI_quantityLookupMode mCrossSectionMode
Definition:
MCGIDI.h:90
Generated by
1.9.3