Creation of a Physics Model » EQM_CANDU2.hxx
| 1 |
#ifndef _EQM_CANDU2_HXX
|
|---|---|
| 2 |
#define _EQM_CANDU2_HXX
|
| 3 |
|
| 4 |
#include "EquivalenceModel.hxx"
|
| 5 |
#include "TTree.h"
|
| 6 |
|
| 7 |
using namespace std; |
| 8 |
|
| 9 |
//-----------------------------------------------------------------------------//
|
| 10 |
//! Defines an EquivalenceModel based on neural network
|
| 11 |
|
| 12 |
/*!
|
| 13 |
The aim of these class is to constuct a fuel from an equivalence model
|
| 14 |
based on a Multi layer perceptron
|
| 15 |
|
| 16 |
@author BLG
|
| 17 |
@version 3.0
|
| 18 |
*/
|
| 19 |
//________________________________________________________________________
|
| 20 |
|
| 21 |
class EQM_CANDU2 : public EquivalenceModel |
| 22 |
{
|
| 23 |
public : |
| 24 |
/*!
|
| 25 |
\name Constructor
|
| 26 |
*/
|
| 27 |
//@{
|
| 28 |
|
| 29 |
//{
|
| 30 |
/// normal constructor
|
| 31 |
/*!
|
| 32 |
Create a EQM_PWR_MLP_MOX
|
| 33 |
\param TMVAWeightPath : PAth to the .xml file containing neural network informations : PATH/TMVAWeight.xml (total path to tmva weight)
|
| 34 |
*/
|
| 35 |
EQM_CANDU2(string TMVAWeightPath); |
| 36 |
//}
|
| 37 |
|
| 38 |
//{
|
| 39 |
/// Logger constructor
|
| 40 |
/*!
|
| 41 |
Create a EQM_PWR_MLP_MOX
|
| 42 |
\param log : use for log
|
| 43 |
\param TMVAWeightPath : PAth to the .xml file containing neural network informations : PATH/TMVAWeight.xml (total path to tmva weight)
|
| 44 |
*/
|
| 45 |
EQM_CANDU2(CLASSLogger* log, string TMVAWeightPath); |
| 46 |
//}
|
| 47 |
//@}
|
| 48 |
|
| 49 |
//{
|
| 50 |
/// Return the molar fissile fraction according fissile & ferile content using a Multi Layer Peceptron (MLP)
|
| 51 |
/*!
|
| 52 |
\param Fissil : The composition of the fissile matter
|
| 53 |
\param Fertil : The composition of the Fertil matter
|
| 54 |
\param BurnUp : Maximum achievable burn up envisaged
|
| 55 |
*/
|
| 56 |
virtual double GetFissileMolarFraction(IsotopicVector Fissil,IsotopicVector Fertil,double BurnUp); |
| 57 |
//}
|
| 58 |
|
| 59 |
/*!
|
| 60 |
\name TMVA related methods
|
| 61 |
*/
|
| 62 |
//@{
|
| 63 |
|
| 64 |
TTree* CreateTMVAInputTree(IsotopicVector Fissil,IsotopicVector Fertil,double BurnUp);//!<Create input tmva tree to be read by ExecuteTMVA |
| 65 |
double ExecuteTMVA(TTree* theTree);//!<Execute the MLP according to the input tree created by CreateTMVAInputTree |
| 66 |
|
| 67 |
//@}
|
| 68 |
|
| 69 |
private : |
| 70 |
|
| 71 |
|
| 72 |
string fTMVAWeightPath;;//!<The weight needed by TMVA to construct and execute the multilayer perceptron |
| 73 |
|
| 74 |
};
|
| 75 |
|
| 76 |
#endif
|
| 77 |
|