MURE
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
MeshTally.hxx
Go to the documentation of this file.
1 #ifndef _MESHTALLY_HXX_
2 #define _MESHTALLY_HXX_
3 
9 #include "MureHeaders.hxx"
10 #include <vector>
11 using namespace std;
12 
14 
23 class MeshTally
24 {
25  public:
26  MeshTally();
27  virtual MeshTally *Clone(){return 0;} //<! The "Virtual Copy Constructor"
28  virtual ~MeshTally(){}
29  virtual string Print(){return "";}
30 
31 };
32 
33 
35 
41 class TMeshTally: public MeshTally
42 {
43  public:
47  TMeshTally();
48  TMeshTally(const TMeshTally & mt); //<! copy contructor
49  MeshTally *Clone() {return new TMeshTally(*this);} //<! the Clone method
80  void AddMesh(string meshtype="rectangular", int type=1, string particle="N", string obs="flux");
90  void SetCorA(string cora);
101  void SetCorB(string corb);
114  void SetCorC(string corc);
115 
126  void SetDoseParameter(int H=10, int InterpolationMethod=1, string Units="sievert", double NormFactor=1.0);
127 
128  string Print();
129 
130  private:
131  vector<int> fMeshType;
132  vector<int> fType;
133  vector<string> fMeshParticle;
134  vector<string> fMeshObs;
135 
136  vector<string> fMeshcora;
137  vector<string> fMeshcorb;
138  vector<string> fMeshcorc;
139 
140  int fH;
143  double fNormFactor;
144 };
145 
147 
153 class FMeshTally: public MeshTally
154 {
155  public:
166  FMeshTally(string meshtype="rectangular", string particle="N");
167  FMeshTally(const FMeshTally & mt); //<! copy contructor
169  MeshTally *Clone() {return new FMeshTally(*this);} //<! the Clone method
170 
179  void SetOrigin(vector<double> Origin){fOrigin=Origin;}
189  void SetCylinderAxis(double x=0., double y=0., double z=1.);
199  void SetCylinderVector(double x=1., double y=0., double z=0.);
200 
209  void SetIMesh(vector<double> IMESH){fIMESH=IMESH;}
210 
227  void SetIFineGrid(vector<int> IINTS);
228 
237  void SetJMesh(vector<double> JMESH){fJMESH=JMESH;}
238 
248  void SetJFineGrid(vector<int> JINTS);
249 
259  void SetKMesh(vector<double> KMESH);
260 
270  void SetKFineGrid(vector<int> KINTS);
271 
272  string Print();
273 
274  private:
275  string fType;
276  string fParticle;
277  vector<double> fOrigin;
278 
279  vector<double> fAxis;
280  vector<double> fVector;
281 
282  vector<double> fIMESH;
283  vector<double> fJMESH;
284  vector<double> fKMESH;
285  vector<int> fIINTS;
286  vector<int> fJINTS;
287  vector<int> fKINTS;
288  bool fIfineGrid;
289  bool fJfineGrid;
290  bool fKfineGrid;
291 };
292 
293 #endif
vector< string > fMeshParticle
Vector that contains all the define mesh particule.
Definition: MeshTally.hxx:133
void SetOrigin(vector< double > Origin)
Definition: MeshTally.hxx:179
int fDoseUnits
1=(rem/h)/(particles/cm2-sec), 2=(sieverts/h)/(particles/cm2-sec)
Definition: MeshTally.hxx:142
bool fIfineGrid
wether a fine grid is defined in i
Definition: MeshTally.hxx:288
virtual string Print()
Definition: MeshTally.hxx:29
bool fKfineGrid
wether a fine grid is defined in k
Definition: MeshTally.hxx:290
vector< int > fMeshType
Vector that contains the geometry mesh type.
Definition: MeshTally.hxx:131
Define a MCNPX TMeshTally.
Definition: MeshTally.hxx:41
string fType
TMeshTally type.
Definition: MeshTally.hxx:275
string fParticle
TMeshTally type.
Definition: MeshTally.hxx:276
vector< string > fMeshObs
Vector that contains all the define mesh observable.
Definition: MeshTally.hxx:134
vector< string > fMeshcorc
Vector that contains all the define mesh corc.
Definition: MeshTally.hxx:138
bool fJfineGrid
wether a fine grid is defined in j
Definition: MeshTally.hxx:289
vector< double > fJMESH
Second coarse mesh grid.
Definition: MeshTally.hxx:283
void SetIMesh(vector< double > IMESH)
Definition: MeshTally.hxx:209
double fNormFactor
normalization factor for dose
Definition: MeshTally.hxx:143
Define a MeshTally class (abstract).
Definition: MeshTally.hxx:23
vector< double > fAxis
Axis coordinates of a cylindrical mesh.
Definition: MeshTally.hxx:279
vector< int > fType
Vector that contains all the define TMeshTally type.
Definition: MeshTally.hxx:132
vector< int > fIINTS
First fine mesh grid bins.
Definition: MeshTally.hxx:285
~FMeshTally()
Definition: MeshTally.hxx:168
File including all headers.
MeshTally * Clone()
Definition: MeshTally.hxx:49
vector< int > fJINTS
Second fine mesh grid bins.
Definition: MeshTally.hxx:286
Define a MCNPX TMeshTally.
Definition: MeshTally.hxx:153
MeshTally * Clone()
Definition: MeshTally.hxx:169
int fH
dose equivalent
Definition: MeshTally.hxx:140
vector< double > fOrigin
Origin of the mesh.
Definition: MeshTally.hxx:277
void SetJMesh(vector< double > JMESH)
Definition: MeshTally.hxx:237
virtual MeshTally * Clone()
Definition: MeshTally.hxx:27
vector< int > fKINTS
Third fine mesh grid bins.
Definition: MeshTally.hxx:287
vector< double > fKMESH
Third coarse mesh grid.
Definition: MeshTally.hxx:284
virtual ~MeshTally()
Definition: MeshTally.hxx:28
vector< double > fVector
theta axis reference of a cylindrical mesh
Definition: MeshTally.hxx:280
~TMeshTally()
Definition: MeshTally.hxx:50
int fInterpolationMethod
fInterpolationMethod
Definition: MeshTally.hxx:141
vector< string > fMeshcora
Vector that contains all the define mesh cora.
Definition: MeshTally.hxx:136
vector< double > fIMESH
First coarse mesh grid.
Definition: MeshTally.hxx:282
vector< string > fMeshcorb
Vector that contains all the define mesh corb.
Definition: MeshTally.hxx:137

MURE Project, documentation generated by Doxygen 1.8.5 - Mon Nov 17 2014