CLASS  5.1
Fuel Cycle Simulator
XSModel.hxx
Go to the documentation of this file.
1 #ifndef _XSMODEL_
2 #define _XSMODEL_
3 
4 
14 #include "EvolutionData.hxx"
15 #include "CLASSObject.hxx"
16 
17 #include <iostream>
18 #include <map>
19 
20 using namespace std;
21 
22 class IsotopicVector;
23 
24 class XSModel;
25 #ifndef __ROOTCLING__
26 typedef void (XSModel::*XSM_MthPtr)( const string & ) ;
27 #endif
28 
29 //-----------------------------------------------------------------------------//
31 
45 //________________________________________________________________________
46 
47 
48 class XSModel : public CLASSObject
49 {
50 
51  public :
52 
57 
58  XSModel();
59 
60  XSModel(CLASSLogger* log);
61 
62  virtual ~XSModel();
63 
65 
66 
71 
72  //{
74 
80  //}
81  virtual EvolutionData GetCrossSections(IsotopicVector IV,double t = 0) = 0 ;
82 
84 
91  virtual bool isIVInDomain(IsotopicVector IV) ;
93 
94  void ReadNFO();
95  virtual void ReadLine(string line);
96 
97 
98  void ReadZAIlimits(const string &line);
99  void ReadType(const string &line);
100  void ReadRParam(const string &line);
101 
102  virtual void LoadKeyword();
103 
104 
105  void SetZAIThreshold(int Z_Threshold){fZAIThreshold = Z_Threshold;}
106  int GetZAIThreshold(){return fZAIThreshold;}
107 
108  protected :
109  bool freaded;
111 
112  double fDBPower;
113  double fDBHMMass;
114  string fDBFType;
115  string fDBRType;
116 
117  map< ZAI, pair<double,double> > fZAILimits;
118 
119 #ifndef __ROOTCLING__
120  map<string, XSM_MthPtr> fKeyword;
121 #endif
122 
124 };
125 
126 #endif
127 
string fDBFType
Fuel Type (e.g MOX, UOX, ThU, ThPu ...)
Definition: XSModel.hxx:114
map< string, XSM_MthPtr > fKeyword
Definition: XSModel.hxx:120
Header file for EvolutionData class.
double fDBPower
Power of the data base (read from fMLPInformationFile )
Definition: XSModel.hxx:112
void(XSModel::* XSM_MthPtr)(const string &)
Definition: XSModel.hxx:26
Allows to store & operate on radioactive sample.
Definition: IsotopicVector.hxx:37
bool freaded
Definition: XSModel.hxx:109
int GetZAIThreshold()
Get the Z threshold.
Definition: XSModel.hxx:106
double fDBHMMass
Heavy metal mass of the data base (read from fMLPInformationFile )
Definition: XSModel.hxx:113
Definition: CLASSBackEndDict.cxx:37
map< ZAI, pair< double, double > > fZAILimits
Fresh fuel range : map<ZAI<min edge ,max edge >>
Definition: XSModel.hxx:117
Stores fuel inventory evolution , mean cross sections evolution, flux evolution, power ...
Definition: EvolutionData.hxx:54
string fDBRType
Reactor Type (e.g PWR, FBR-Na, ADS..)
Definition: XSModel.hxx:115
Object to handle output messages.
Definition: CLASSLogger.hxx:144
void SetZAIThreshold(int Z_Threshold)
Set the Z threshold : ZAI with Z < fZAIThreshold are not manage by CLASS.
Definition: XSModel.hxx:105
Define common proporties of all objects.
Definition: CLASSObject.hxx:39
int fZAIThreshold
Z threshold for handling nuclei mean cross section (take only ZAI reaction of Z>= fZAIThresold) ...
Definition: XSModel.hxx:123
string fInformationFile
file containing Reactor Type, Fuel type, HM mass, Power, time vector, and TMVA input variables names ...
Definition: XSModel.hxx:110
Header file for CLASSObject class.
Defines a mean cross section predictor.
Definition: XSModel.hxx:48