CLASS  5.1
Fuel Cycle Simulator
EQ_OneParameter Class Reference

Determines how to build a fresh fuel. More...

#include <EQ_OneParameter.hxx>

Inheritance diagram for EQ_OneParameter:
EquivalenceModel CLASSObject

Public Member Functions

void BookTMVAReader ()
 
vector< float > CreateTMVAInput (IsotopicVector TheFreshfuel, double ThisTime)
 Create input tmva tree to be read by ExecuteTMVA. More...
 
double CalculateTargetParameter (IsotopicVector TheFuel, string TargetParameterName)
 Get a fuel parameter associated to the fuel —> ex : BurnUpMax, keffBOC, keffEOC, ... More...
 
double CalculateBurnUpMax (IsotopicVector TheFuel, map< string, double > ModelParameter)
 Calculate the BU max associated to a fuel composition based on MLP prediction (suitable for PWR) More...
 
double CalculateKeffAtBOC (IsotopicVector TheFuel)
 Calculate the keff at BOC associated to a fuel composition based on MLP prediction (suitable for SFR) More...
 
string GetTMVAXMLFilePath ()
 
string GetTMVANFOFilePath ()
 
void SetTMVAXMLFilePath (string TMVAXMLFilePath)
 
void SetTMVANFOFilePath (string TMVANFOFilePath)
 
Constructor/Desctructor
 EQ_OneParameter (string TMVAXMLFilePath, string TMVANFOFilePath)
 Default constructor with path. More...
 
 EQ_OneParameter (CLASSLogger *log, string TMVAXMLFilePath, string TMVANFOFilePath)
 Logger constructor with path. More...
 
 EQ_OneParameter (string TMVANFOFilePath)
 Default constructor without Eq Model. More...
 
 EQ_OneParameter (CLASSLogger *log, string TMVANFOFilePath)
 Logger constructor Without Eq Model. More...
 
virtual ~EQ_OneParameter ()
 Destructor. More...
 
Fuel Construction Method
virtual map< string, vector< double > > BuildFuel (double BurnUp, double HMMass, map< string, vector< IsotopicVector > > StreamArray, map< string, double > StreamListMassFractionMin, map< string, double > StreamListMassFractionMax, map< int, string > StreamListPriority, map< string, bool > StreamListIsBuffer)
 BuildFuel function. More...
 
Get/Set Method
int GetStreamListNumber ()
 
int GetMaxIterration () const
 Max iterration in build fueld algorythm. More...
 
double GetTargetParameterStDev ()
 Get the precision on fTargetParameterStDev. More...
 
double GetStreamListEqMMassFractionMax (string keyword)
 
double GetStreamListEqMMassFractionMin (string keyword)
 
double GetPCMPrecision ()
 Get the precision on $\langle k \rangle$ prediction []. Neural network predictor constructors. More...
 
void SetModelParameter (string sMP, double dMP)
 Set Model Parameters precised in NFO file. More...
 
map< string, double > GetModelParameter ()
 Get Model Parameters precised in NFO file. More...
 
void SetNonZaiTMVAVariable (string snZP, double dnZP)
 Set NonZaiTMVAVariables. More...
 
vector< pair< double, string > > GetNonZaiTMVAVariables ()
 Get NonZaiTMVAVariables. More...
 
void SetMaxIterration (int val)
 Max iteration in build fuel algorithm. More...
 
void SetTargetParameterStDev (double TPSD)
 Set the precision on Target Parameter. More...
 
void SetStreamListEqMMassFractionMax (string keyword, double value)
 
void SetStreamListEqMMassFractionMin (string keyword, double value)
 
void SetPCMPrecision (double pcm)
 Set the precision on $\langle k \rangle$ prediction [pcm]. Neural network predictor constructors. More...
 
Time <-> Burnup conversion
double SecondToBurnup (double Second)
 
double BurnupToSecond (double BurnUp)
 
- Public Member Functions inherited from EquivalenceModel
map< string, IsotopicVectorGetAllStreamList ()
 
double SecondToBurnup (double Second)
 
double BurnupToSecond (double BurnUp)
 
bool isIVInDomain (IsotopicVector IV)
 
void StocksTotalMassCalculation (map< string, vector< IsotopicVector > > const &Stocks)
 
void ConvertMassToLambdaVector (string MaterialDenomination, vector< double > &lambda, double MaterialMassNeeded, vector< IsotopicVector > Stocks)
 
 EquivalenceModel ()
 Default constructor with path. More...
 
 EquivalenceModel (CLASSLogger *log)
 Logger constructor with path. More...
 
virtual ~EquivalenceModel ()
 Destructor. More...
 
- Public Member Functions inherited from CLASSObject
 CLASSObject ()
 Normal Constructor. More...
 
 CLASSObject (CLASSLogger *log)
 Log Constructor. More...
 
virtual CLASSObjectClone ()
 Correct way to copy a CLASSObject in case of derivation. More...
 
void SetLog (CLASSLogger *log)
 Set the CLASSLogger. More...
 
CLASSLoggerGetLog ()
 Return the Pointer to the Log. More...
 

Reading NFO related Method

bool fUseTMVAPredictor
 Bool that says if we need a TMVA predictor. If not, fuel fraction isimpoased by the FP. More...
 
map< string, double > fStreamListEqMMassFractionMax
 Map that contains lists of stream according to the EqModel with mass maximum fraction. More...
 
map< string, double > fStreamListEqMMassFractionMin
 Map that contains lists of stream according to the EqModel with mass minimum fraction. More...
 
string fPredictorType
 Type of predictor used in Equivalence Model (ex: MLP) More...
 
string fOutput
 Type of output calculated by the predictor. More...
 
string fBuffer
 Name of material used as buffer in fuel. More...
 
map< string, double > fModelParameter
 Map of equivalence model parameter. More...
 
vector< pair< double, string > > fListOfNonZaiTMVAVariables
 
map< ZAI, string > fMapOfTMVAVariableNames
 !< List of TMVA input variable names that are not ZAIs More...
 
double fTargetParameterStDev
 Precision on target parameter calculation. More...
 
double fMaximalBU
 The Maximum burn-up of the model in GWd/t. More...
 
string fTargetParameter
 Type of target parameter optimized in build fuel (ex. BUmax) More...
 
int fMaxIterration
 Max iterrations in build fueld algorithm. More...
 
string fTMVAXMLFilePath
 The weight needed by TMVA to construct and execute the multilayer perceptron. More...
 
string fTMVANFOFilePath
 The weight needed by TMVA to construct and execute the multilayer perceptron. More...
 
CLASSReaderfReader
 
map< string, EQOP_MthPtrfKeyword
 
map< ZAI, pair< double, double > > fZAILimits
 Fresh fuel range : map<ZAI<min edge ,max edge >> More...
 
string fInformationFile
 file containing Reactor Type, Fuel type, HM mass, Power, time vector, and TMVA input variables names (looks the manual for format details) More...
 
string fDBFType
 Fuel Type (e.g MOX, UOX, ThU, ThPu ...) More...
 
string fDBRType
 Reactor Type (e.g PWR, FBR-Na, ADS..) More...
 
void ReadNFO ()
 
virtual void ReadLine (string line)
 
virtual void LoadKeyword ()
 
void ReadZAIlimits (const string &line)
 
void ReadType (const string &line)
 
void ReadZAIName (const string &line)
 ReadZAIName : read the zai name in the TMWA MLP model. More...
 
void ReadMaxBurnUp (const string &line)
 ReadMaxBurnUp : read a guessed (very overestimated) maximum burnup a fuel can reach (purpose : algorithm initialization) More...
 
void ReadSpecificPower (const string &line)
 ReadSpecificPower : read the Specific Power of the DataBase. More...
 
void ReadTargetParameter (const string &line)
 ReadTargetParameter : type of target parameter optimized in build fuel (ex. BUmax) More...
 
void ReadNonZaiTMVAVariables (const string &line)
 ReadNonZaiTMVAVariables : read the NonZai variables for the predictor (ex : Nbatch, Specific power) More...
 
void ReadOutput (const string &line)
 ReadOutput : read the output type of the predictor (ex : kinf) More...
 
void ReadBuffer (const string &line)
 ReadBuffer : read the Buffer material name in the fuel. More...
 
void ReadModelParameter (const string &line)
 ReadModelParameter : read the name of equivalence model parameter. More...
 
void ReadPredictorType (const string &line)
 ReadPredictorType: read the type of predictor used (ex : MLP) More...
 
void ReadTargetParameterStDev (const string &line)
 ReadTargetParameterStDev: read the target parameter standard deviation. More...
 
void PrintInfo ()
 
void ReadList (const string &line)
 ReadFissil : read the zai name in the TMWA MLP model starts with "k_fissil" keyword. More...
 
void ReadEqMaxFraction (const string &line)
 
void ReadEqMinFraction (const string &line)
 
IsotopicVector BuildFuelToTest (map< string, vector< double > > &lambda, map< string, vector< IsotopicVector > > const &StreamArray, double HMMass, map< string, bool > StreamListIsBuffer)
 
void CheckTargetParameterConsistency (map< int, string > StreamListPriority, map< string, double > TargetParameterMin, map< string, double > TargetParameterMax)
 

Additional Inherited Members

- Protected Member Functions inherited from EquivalenceModel
void SetLambdaToErrorCode (vector< double > &lambda)
 
- Protected Attributes inherited from EquivalenceModel
map< string, IsotopicVectorfStreamList
 
double fSpecificPower
 The specific power in W/gHM (HM: heavy Metal) More...
 
map< string, EQM_MthPtrfKeyword
 
bool freaded
 
map< ZAI, pair< double, double > > fZAILimits
 Fresh fuel range : map<ZAI<min edge ,max edge >> More...
 
map< string, double > fTotalMassInStocks
 Total mass in each vector of stock. More...
 
map< string, double > fLambdaMax
 Total lambda of available stocks. More...
 
- Protected Attributes inherited from CLASSObject
CLASSLoggerfLog
 Pointer to the Log. More...
 

Detailed Description

Determines how to build a fresh fuel.

Define an EQ_OneParameter. The aim of these class is to gather all the commum properties of all Equivalence Model.

Warning
Never instantiate EQ_OneParameter in your CLASS input but it's derivated class
See also
EQM_FBR_BakerRoss_MOX.
EQM_PWR_MLP_MOX
EQM_FBR_MLP_Keff.hxx
EQM_PWR_MLP_MOX_Am
EQM_FBR_MLP_Keff_BOUND
EQM_PWR_POL_UO2
EQM_MLP_Kinf.hxx
EQM_PWR_QUAD_MOX
EQM_PWR_LIN_MOX
Author
BLG
BaM
FaC
Version
3.0

Constructor & Destructor Documentation

◆ EQ_OneParameter() [1/4]

EQ_OneParameter::EQ_OneParameter ( string  TMVAXMLFilePath,
string  TMVANFOFilePath 
)

Default constructor with path.

◆ EQ_OneParameter() [2/4]

EQ_OneParameter::EQ_OneParameter ( CLASSLogger log,
string  TMVAXMLFilePath,
string  TMVANFOFilePath 
)

Logger constructor with path.

◆ EQ_OneParameter() [3/4]

EQ_OneParameter::EQ_OneParameter ( string  TMVANFOFilePath)

Default constructor without Eq Model.

◆ EQ_OneParameter() [4/4]

EQ_OneParameter::EQ_OneParameter ( CLASSLogger log,
string  TMVANFOFilePath 
)

Logger constructor Without Eq Model.

◆ ~EQ_OneParameter()

EQ_OneParameter::~EQ_OneParameter ( )
virtual

Destructor.

Member Function Documentation

◆ BookTMVAReader()

void EQ_OneParameter::BookTMVAReader ( )

◆ BuildFuel()

map< string, vector< double > > EQ_OneParameter::BuildFuel ( double  BurnUp,
double  HMMass,
map< string, vector< IsotopicVector > >  StreamArray,
map< string, double >  StreamListMassFractionMin,
map< string, double >  StreamListMassFractionMax,
map< int, string >  StreamListPriority,
map< string, bool >  StreamListIsBuffer 
)
virtual

BuildFuel function.

Build the fuel following the equivalance model with the proper requierment in term of mass, burnup....

Parameters
doubleburnup reached by the fuel at the end of irradiation
doubleHMMass, Heavy metal mass needed
map< string , vector <IsotopicVector> > StreamArray, the string is the stream code (fissile fertile ,...) the IsotopicVector the fraction of each IV to take in the (fissile, fertile,..) stock .

Search for the minimum and maximum fraction of each material in fuel ///

Search for the fraction of each material in fuel ///

Reimplemented from EquivalenceModel.

◆ BuildFuelToTest()

IsotopicVector EQ_OneParameter::BuildFuelToTest ( map< string, vector< double > > &  lambda,
map< string, vector< IsotopicVector > > const &  StreamArray,
double  HMMass,
map< string, bool >  StreamListIsBuffer 
)

◆ BurnupToSecond()

double EQ_OneParameter::BurnupToSecond ( double  BurnUp)
inline

◆ CalculateBurnUpMax()

double EQ_OneParameter::CalculateBurnUpMax ( IsotopicVector  TheFuel,
map< string, double >  ModelParameter 
)

Calculate the BU max associated to a fuel composition based on MLP prediction (suitable for PWR)

◆ CalculateKeffAtBOC()

double EQ_OneParameter::CalculateKeffAtBOC ( IsotopicVector  TheFuel)

Calculate the keff at BOC associated to a fuel composition based on MLP prediction (suitable for SFR)

◆ CalculateTargetParameter()

double EQ_OneParameter::CalculateTargetParameter ( IsotopicVector  TheFuel,
string  TargetParameterName 
)

Get a fuel parameter associated to the fuel —> ex : BurnUpMax, keffBOC, keffEOC, ...

◆ CheckTargetParameterConsistency()

void EQ_OneParameter::CheckTargetParameterConsistency ( map< int, string >  StreamListPriority,
map< string, double >  TargetParameterMin,
map< string, double >  TargetParameterMax 
)

◆ CreateTMVAInput()

vector< float > EQ_OneParameter::CreateTMVAInput ( IsotopicVector  TheFreshfuel,
double  ThisTime 
)

Create input tmva tree to be read by ExecuteTMVA.

◆ GetMaxIterration()

int EQ_OneParameter::GetMaxIterration ( ) const
inline

Max iterration in build fueld algorythm.

◆ GetModelParameter()

map<string, double> EQ_OneParameter::GetModelParameter ( )
inline

Get Model Parameters precised in NFO file.

◆ GetNonZaiTMVAVariables()

vector< pair<double, string> > EQ_OneParameter::GetNonZaiTMVAVariables ( )
inline

Get NonZaiTMVAVariables.

◆ GetPCMPrecision()

double EQ_OneParameter::GetPCMPrecision ( )
inline

Get the precision on $\langle k \rangle$ prediction []. Neural network predictor constructors.

◆ GetStreamListEqMMassFractionMax()

double EQ_OneParameter::GetStreamListEqMMassFractionMax ( string  keyword)
inline

◆ GetStreamListEqMMassFractionMin()

double EQ_OneParameter::GetStreamListEqMMassFractionMin ( string  keyword)
inline

◆ GetStreamListNumber()

int EQ_OneParameter::GetStreamListNumber ( )
inline

◆ GetTargetParameterStDev()

double EQ_OneParameter::GetTargetParameterStDev ( )
inline

Get the precision on fTargetParameterStDev.

◆ GetTMVANFOFilePath()

string EQ_OneParameter::GetTMVANFOFilePath ( )
inline

◆ GetTMVAXMLFilePath()

string EQ_OneParameter::GetTMVAXMLFilePath ( )
inline

◆ LoadKeyword()

void EQ_OneParameter::LoadKeyword ( )
virtual

◆ PrintInfo()

void EQ_OneParameter::PrintInfo ( )

◆ ReadBuffer()

void EQ_OneParameter::ReadBuffer ( const string &  line)

ReadBuffer : read the Buffer material name in the fuel.

Parameters
line: line suppossed to contain the Buffer information starts with "k_buffer" keyword

◆ ReadEqMaxFraction()

void EQ_OneParameter::ReadEqMaxFraction ( const string &  line)

◆ ReadEqMinFraction()

void EQ_OneParameter::ReadEqMinFraction ( const string &  line)

◆ ReadLine()

void EQ_OneParameter::ReadLine ( string  line)
virtual

◆ ReadList()

void EQ_OneParameter::ReadList ( const string &  line)

ReadFissil : read the zai name in the TMWA MLP model starts with "k_fissil" keyword.

Parameters
line: line suppossed to contain the fissil list

◆ ReadMaxBurnUp()

void EQ_OneParameter::ReadMaxBurnUp ( const string &  line)

ReadMaxBurnUp : read a guessed (very overestimated) maximum burnup a fuel can reach (purpose : algorithm initialization)

Parameters
line: line suppossed to contain the ZAI name starts with "k_maxburnup" keyword

◆ ReadModelParameter()

void EQ_OneParameter::ReadModelParameter ( const string &  line)

ReadModelParameter : read the name of equivalence model parameter.

Parameters
line: line suppossed to contain the Buffer information starts with "k_modelparameter" keyword

◆ ReadNFO()

void EQ_OneParameter::ReadNFO ( )

◆ ReadNonZaiTMVAVariables()

void EQ_OneParameter::ReadNonZaiTMVAVariables ( const string &  line)

ReadNonZaiTMVAVariables : read the NonZai variables for the predictor (ex : Nbatch, Specific power)

Parameters
line: line suppossed to contain the NonZai variables for TMVA starts with "k_nonZAIforTMVA" keyword

◆ ReadOutput()

void EQ_OneParameter::ReadOutput ( const string &  line)

ReadOutput : read the output type of the predictor (ex : kinf)

Parameters
line: line suppossed to contain the Specific Power information starts with "k_output" keyword

◆ ReadPredictorType()

void EQ_OneParameter::ReadPredictorType ( const string &  line)

ReadPredictorType: read the type of predictor used (ex : MLP)

Parameters
line: line suppossed to contain the Buffer information starts with "k_predictortype" keyword

◆ ReadSpecificPower()

void EQ_OneParameter::ReadSpecificPower ( const string &  line)

ReadSpecificPower : read the Specific Power of the DataBase.

Parameters
line: line suppossed to contain the Specific Power information starts with "k_specpower" keyword

◆ ReadTargetParameter()

void EQ_OneParameter::ReadTargetParameter ( const string &  line)

ReadTargetParameter : type of target parameter optimized in build fuel (ex. BUmax)

Parameters
line: line suppossed to contain the Target Parameter information starts with "k_targetparameter" keyword

◆ ReadTargetParameterStDev()

void EQ_OneParameter::ReadTargetParameterStDev ( const string &  line)

ReadTargetParameterStDev: read the target parameter standard deviation.

Parameters
line: line suppossed to contain the Buffer information starts with "k_targetparameterstdev" keyword

◆ ReadType()

void EQ_OneParameter::ReadType ( const string &  line)

◆ ReadZAIlimits()

void EQ_OneParameter::ReadZAIlimits ( const string &  line)

◆ ReadZAIName()

void EQ_OneParameter::ReadZAIName ( const string &  line)

ReadZAIName : read the zai name in the TMWA MLP model.

Parameters
line: line suppossed to contain the ZAI name starts with "k_zainame" keyword

◆ SecondToBurnup()

double EQ_OneParameter::SecondToBurnup ( double  Second)
inline

◆ SetMaxIterration()

void EQ_OneParameter::SetMaxIterration ( int  val)
inline

Max iteration in build fuel algorithm.

◆ SetModelParameter()

void EQ_OneParameter::SetModelParameter ( string  sMP,
double  dMP 
)
inline

Set Model Parameters precised in NFO file.

◆ SetNonZaiTMVAVariable()

void EQ_OneParameter::SetNonZaiTMVAVariable ( string  snZP,
double  dnZP 
)

Set NonZaiTMVAVariables.

◆ SetPCMPrecision()

void EQ_OneParameter::SetPCMPrecision ( double  pcm)
inline

Set the precision on $\langle k \rangle$ prediction [pcm]. Neural network predictor constructors.

◆ SetStreamListEqMMassFractionMax()

void EQ_OneParameter::SetStreamListEqMMassFractionMax ( string  keyword,
double  value 
)
inline

◆ SetStreamListEqMMassFractionMin()

void EQ_OneParameter::SetStreamListEqMMassFractionMin ( string  keyword,
double  value 
)
inline

◆ SetTargetParameterStDev()

void EQ_OneParameter::SetTargetParameterStDev ( double  TPSD)
inline

Set the precision on Target Parameter.

◆ SetTMVANFOFilePath()

void EQ_OneParameter::SetTMVANFOFilePath ( string  TMVANFOFilePath)
inline

◆ SetTMVAXMLFilePath()

void EQ_OneParameter::SetTMVAXMLFilePath ( string  TMVAXMLFilePath)
inline

Member Data Documentation

◆ fBuffer

string EQ_OneParameter::fBuffer
protected

Name of material used as buffer in fuel.

◆ fDBFType

string EQ_OneParameter::fDBFType
protected

Fuel Type (e.g MOX, UOX, ThU, ThPu ...)

◆ fDBRType

string EQ_OneParameter::fDBRType
protected

Reactor Type (e.g PWR, FBR-Na, ADS..)

◆ fInformationFile

string EQ_OneParameter::fInformationFile
protected

file containing Reactor Type, Fuel type, HM mass, Power, time vector, and TMVA input variables names (looks the manual for format details)

◆ fKeyword

map<string, EQOP_MthPtr> EQ_OneParameter::fKeyword
protected

◆ fListOfNonZaiTMVAVariables

vector< pair<double, string> > EQ_OneParameter::fListOfNonZaiTMVAVariables
protected

◆ fMapOfTMVAVariableNames

map<ZAI, string> EQ_OneParameter::fMapOfTMVAVariableNames
protected

!< List of TMVA input variable names that are not ZAIs

List of TMVA input variable names (read from fMLPInformationFile ) , name depends on the training step

◆ fMaximalBU

double EQ_OneParameter::fMaximalBU
protected

The Maximum burn-up of the model in GWd/t.

◆ fMaxIterration

int EQ_OneParameter::fMaxIterration
protected

Max iterrations in build fueld algorithm.

◆ fModelParameter

map<string, double> EQ_OneParameter::fModelParameter
protected

Map of equivalence model parameter.

◆ fOutput

string EQ_OneParameter::fOutput
protected

Type of output calculated by the predictor.

◆ fPredictorType

string EQ_OneParameter::fPredictorType
protected

Type of predictor used in Equivalence Model (ex: MLP)

◆ fReader

CLASSReader* EQ_OneParameter::fReader
protected

◆ fStreamListEqMMassFractionMax

map< string , double> EQ_OneParameter::fStreamListEqMMassFractionMax
protected

Map that contains lists of stream according to the EqModel with mass maximum fraction.

◆ fStreamListEqMMassFractionMin

map< string , double> EQ_OneParameter::fStreamListEqMMassFractionMin
protected

Map that contains lists of stream according to the EqModel with mass minimum fraction.

◆ fTargetParameter

string EQ_OneParameter::fTargetParameter
protected

Type of target parameter optimized in build fuel (ex. BUmax)

◆ fTargetParameterStDev

double EQ_OneParameter::fTargetParameterStDev
protected

Precision on target parameter calculation.

◆ fTMVANFOFilePath

string EQ_OneParameter::fTMVANFOFilePath
protected

The weight needed by TMVA to construct and execute the multilayer perceptron.

◆ fTMVAXMLFilePath

string EQ_OneParameter::fTMVAXMLFilePath
protected

The weight needed by TMVA to construct and execute the multilayer perceptron.

◆ fUseTMVAPredictor

bool EQ_OneParameter::fUseTMVAPredictor
protected

Bool that says if we need a TMVA predictor. If not, fuel fraction isimpoased by the FP.

◆ fZAILimits

map< ZAI, pair<double,double> > EQ_OneParameter::fZAILimits
protected

Fresh fuel range : map<ZAI<min edge ,max edge >>


The documentation for this class was generated from the following files: