CLASS  5.1
Fuel Cycle Simulator
IrradiationModel Class Reference

The Bateman equation solver. More...

#include <IrradiationModel.hxx>

Inheritance diagram for IrradiationModel:
CLASSObject IM_Matrix IM_RK4

Public Member Functions

virtual EvolutionData GenerateEvolutionData (IsotopicVector IV, EvolutionData XSSet, double Power, double cycletime)
 virtual method called to perform the irradiation calculation using a set of cross section. More...
 
string GetDecay (string DecayModes, double &BR, int &Iso, int &StartPos)
 Returns a particular decay mode. More...
 
Constructors
 IrradiationModel ()
 Default constructor. More...
 
 IrradiationModel (CLASSLogger *log)
 Logger constructor. More...
 
Get Method
string GetDataFileName () const
 
string GetDataDirectoryName () const
 Path to fDataFileName. More...
 
double GetShorstestHalflife () const
 Nuclei with HL below fShorstestHalflife are cut (replaced by their daughter(s)) More...
 
void GetNuclearProcessMatrix (TMatrixT< double > &myMatrix, ZAI Mother, IsotopicVector ProductedIV, double XSValue=1)
 
void BuildReactionFiliation ()
 
string GetSpectrumType ()
 Get the type of neutron spectrum (thermal or fast) More...
 
IsotopicVector GetDecayConstant () const
 Get the decay constants. More...
 
double GetDecayConstant (const ZAI &zai) const
 Get the decay constants of ZAI. More...
 
Set Method
void SetFissionEnergy (string FissionEnergyFile)
 set Fission Energy using a file More...
 
void SetFissionEnergy (ZAI zai, double E)
 set Fission Energy for a ZAI using ZAI(Z,A,I) More...
 
void SetFissionEnergy (int Z, int A, int I, double E)
 set Fission Energy for a ZAI using the Z, A, I More...
 
void SetShortestHalfLife (double halflife)
 Set the Half Life cut. More...
 
void SetZAIThreshold (double zaithreshold)
 Set the zai threshold. More...
 
void LoadFPYield (string SponfaneusYield, string ReactionYield)
 Build Fision Yields maps. More...
 
void SetSpectrumType (string type)
 Set the type of neutron spectrum (thermal or fast) More...
 
Evolution Method
void BuildDecayMatrix ()
 Build the Decay Matrix for the futur time step. More...
 
virtual void LoadDecay ()
 Load the decay properties (HL,BR) More...
 
virtual void NuclearDataInitialization ()
 Build Decay matrices & read FpYields if any. More...
 
Other Method
void Print () const
 
int GetZAIThreshold ()
 Gives the threshold (in charge number Z). The nuclei below this threshold are not managed. 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...
 

Protected Member Functions

TMatrixT< double > GetFissionXsMatrix (EvolutionData EvolutionDataStep, double TStep)
 Return the Fission XS Matrix at the time TStep. More...
 
TMatrixT< double > GetCaptureXsMatrix (EvolutionData EvolutionDataStep, double TStep)
 Return the capture cross section matrix at the time TStep. More...
 
TMatrixT< double > Getn2nXsMatrix (EvolutionData EvolutionDataStep, double TStep)
 Return the n2n XS matrix at the time TStep. More...
 
CLASSNucleiFiliation ReadFPYield (string Yield)
 Read a CLASSYield file and return the correpsponding map. More...
 

Protected Attributes

double fShorstestHalflife
 Limit on the half life of nuclei to take it into account. More...
 
int fZAIThreshold
 Lowest Mass deal by the evolution (default 90) More...
 
string fDataFileName
 Name of the decay list. More...
 
string fDataDirectoryName
 Path to the decay list file. More...
 
map< ZAI, double > fFissionEnergy
 Store the Energy per fission use for the flux normalisation. More...
 
map< ZAI, int > fMatrixIndex
 correspondance matrix from ZAI to the column (or line) of the different Reaction/Decay matrix More...
 
vector< ZAIfReverseMatrixIndex
 correspondance matrix from the column (or line) of the different Reaction/Decay matrix to the ZAI More...
 
TMatrixT< double > fDecayMatrix
 Matrix with half life for each nuclei. More...
 
CLASSNucleiFiliation fFastDecay
 Store the nuclei being cut (HL threshold) More...
 
CLASSNucleiFiliation fNormalDecay
 Store the uncut nuclei. More...
 
IsotopicVector fDecayConstante
 List of decay constants. More...
 
CLASSNucleiFiliation fSpontaneusYield
 Store the spontaneus fission yield. More...
 
CLASSNucleiFiliation fReactionYield
 Store the reaction fission yield. More...
 
CLASSNucleiFiliation fCaptureReaction
 Store the reaction capture Filiation. More...
 
CLASSNucleiFiliation fn2nReaction
 Store the reaction n,2n Filiation. More...
 
string fSpontaneusYieldFile
 Store the name of the spontaneus fission yield file. More...
 
string fReactionYieldFile
 Store the name of the reaction fission yield file. More...
 
string fSpectrumType
 Type of the spectrum : thermal or fast. (needed for Isomeric branching ratios) More...
 
- Protected Attributes inherited from CLASSObject
CLASSLoggerfLog
 Pointer to the Log. More...
 

Detailed Description

The Bateman equation solver.

Define an IrradiationModel. An IrradiationModel is a Bateman equation solving method. This is the mother class. see derivated classes :

  • See also
    IM_Matrix
  • See also
    IM_RK4
    The aim of these class is to gather all the commom properties of all the derivated Irradiation Model.
Author
BaM
BLG
Version
3.0

Constructor & Destructor Documentation

◆ IrradiationModel() [1/2]

IrradiationModel::IrradiationModel ( )

Default constructor.

◆ IrradiationModel() [2/2]

IrradiationModel::IrradiationModel ( CLASSLogger log)

Logger constructor.

Member Function Documentation

◆ BuildDecayMatrix()

void IrradiationModel::BuildDecayMatrix ( )

Build the Decay Matrix for the futur time step.

◆ BuildReactionFiliation()

void IrradiationModel::BuildReactionFiliation ( )

◆ GenerateEvolutionData()

virtual EvolutionData IrradiationModel::GenerateEvolutionData ( IsotopicVector  IV,
EvolutionData  XSSet,
double  Power,
double  cycletime 
)
inlinevirtual

virtual method called to perform the irradiation calculation using a set of cross section.

Perform the Irradiation Calcultion using the XSSet data

Parameters
IV: isotopic vector to irradiate
XSSet: set of mean cross section to use in order to perform the depletion calculation
Power: constant power to use for irradation [W]
irradiationtime: irradiation time [s]

Reimplemented in IM_RK4, and IM_Matrix.

◆ GetCaptureXsMatrix()

TMatrixT< double > IrradiationModel::GetCaptureXsMatrix ( EvolutionData  EvolutionDataStep,
double  TStep 
)
protected

Return the capture cross section matrix at the time TStep.

This Method extract the capture cross section of an EvolutionData at the set time

Parameters
EvolutionDataStep: EvolutionData
TStep: time

◆ GetDataDirectoryName()

string IrradiationModel::GetDataDirectoryName ( ) const
inline

Path to fDataFileName.

◆ GetDataFileName()

string IrradiationModel::GetDataFileName ( ) const
inline

◆ GetDecay()

string IrradiationModel::GetDecay ( string  DecayModes,
double &  BR,
int &  Iso,
int &  StartPos 
)

Returns a particular decay mode.

Parameters
DecayModes: a list of decay modes with their branching ratios and isomeric state of the Daughters.
BR: branching ratio of the current decay mode
Iso: isomeric state of the Daughter of the current decay mode.
StartPos: the current decay mode to extract.

◆ GetDecayConstant() [1/2]

IsotopicVector IrradiationModel::GetDecayConstant ( ) const
inline

Get the decay constants.

◆ GetDecayConstant() [2/2]

double IrradiationModel::GetDecayConstant ( const ZAI zai) const

Get the decay constants of ZAI.

◆ GetFissionXsMatrix()

TMatrixT< double > IrradiationModel::GetFissionXsMatrix ( EvolutionData  EvolutionDataStep,
double  TStep 
)
protected

Return the Fission XS Matrix at the time TStep.

This method extract the fission cross section of an EvolutionData at the set time

Parameters
EvolutionDataStep: EvolutionData
TStep: time

◆ Getn2nXsMatrix()

TMatrixT< double > IrradiationModel::Getn2nXsMatrix ( EvolutionData  EvolutionDataStep,
double  TStep 
)
protected

Return the n2n XS matrix at the time TStep.

This Method extract the (n,2n) Cross section of an EvolutionData at the set time

Parameters
EvolutionDataStep: EvolutionData
TStep: time

◆ GetNuclearProcessMatrix()

void IrradiationModel::GetNuclearProcessMatrix ( TMatrixT< double > &  myMatrix,
ZAI  Mother,
IsotopicVector  ProductedIV,
double  XSValue = 1 
)

◆ GetShorstestHalflife()

double IrradiationModel::GetShorstestHalflife ( ) const
inline

Nuclei with HL below fShorstestHalflife are cut (replaced by their daughter(s))

◆ GetSpectrumType()

string IrradiationModel::GetSpectrumType ( )
inline

Get the type of neutron spectrum (thermal or fast)

◆ GetZAIThreshold()

int IrradiationModel::GetZAIThreshold ( )
inline

Gives the threshold (in charge number Z). The nuclei below this threshold are not managed.

◆ LoadDecay()

void IrradiationModel::LoadDecay ( )
virtual

Load the decay properties (HL,BR)

◆ LoadFPYield()

void IrradiationModel::LoadFPYield ( string  SponfaneusYield,
string  ReactionYield 
)

Build Fision Yields maps.

◆ NuclearDataInitialization()

void IrradiationModel::NuclearDataInitialization ( )
virtual

Build Decay matrices & read FpYields if any.

◆ Print()

void IrradiationModel::Print ( ) const

◆ ReadFPYield()

CLASSNucleiFiliation IrradiationModel::ReadFPYield ( string  Yield)
protected

Read a CLASSYield file and return the correpsponding map.

◆ SetFissionEnergy() [1/3]

void IrradiationModel::SetFissionEnergy ( string  FissionEnergyFile)

set Fission Energy using a file

This method fill the Fission Energy [eV] map using a file

Parameters
FissionEnergyFilefilename containing the Fission Energy of some nuclei (format : Z A I Energy[eV])

◆ SetFissionEnergy() [2/3]

void IrradiationModel::SetFissionEnergy ( ZAI  zai,
double  E 
)

set Fission Energy for a ZAI using ZAI(Z,A,I)

This method fill the Fission Energy map of a set ZAI

Parameters
zai: the ZAI
E: Energy released by fission for nuclei zai [eV]

◆ SetFissionEnergy() [3/3]

void IrradiationModel::SetFissionEnergy ( int  Z,
int  A,
int  I,
double  E 
)
inline

set Fission Energy for a ZAI using the Z, A, I

This method fill the Fission Energy map of a set ZAI

Parameters
Z: Z of the ZAI
A: A of the ZAI
I: I of the ZAI
E: Fission energy of the ZAI [eV]

◆ SetShortestHalfLife()

void IrradiationModel::SetShortestHalfLife ( double  halflife)
inline

Set the Half Life cut.

◆ SetSpectrumType()

void IrradiationModel::SetSpectrumType ( string  type)

Set the type of neutron spectrum (thermal or fast)

◆ SetZAIThreshold()

void IrradiationModel::SetZAIThreshold ( double  zaithreshold)
inline

Set the zai threshold.

Member Data Documentation

◆ fCaptureReaction

CLASSNucleiFiliation IrradiationModel::fCaptureReaction
protected

Store the reaction capture Filiation.

◆ fDataDirectoryName

string IrradiationModel::fDataDirectoryName
protected

Path to the decay list file.

◆ fDataFileName

string IrradiationModel::fDataFileName
protected

Name of the decay list.

◆ fDecayConstante

IsotopicVector IrradiationModel::fDecayConstante
protected

List of decay constants.

◆ fDecayMatrix

TMatrixT<double> IrradiationModel::fDecayMatrix
protected

Matrix with half life for each nuclei.

◆ fFastDecay

CLASSNucleiFiliation IrradiationModel::fFastDecay
protected

Store the nuclei being cut (HL threshold)

◆ fFissionEnergy

map<ZAI, double > IrradiationModel::fFissionEnergy
protected

Store the Energy per fission use for the flux normalisation.

◆ fMatrixIndex

map<ZAI, int> IrradiationModel::fMatrixIndex
protected

correspondance matrix from ZAI to the column (or line) of the different Reaction/Decay matrix

◆ fn2nReaction

CLASSNucleiFiliation IrradiationModel::fn2nReaction
protected

Store the reaction n,2n Filiation.

◆ fNormalDecay

CLASSNucleiFiliation IrradiationModel::fNormalDecay
protected

Store the uncut nuclei.

◆ fReactionYield

CLASSNucleiFiliation IrradiationModel::fReactionYield
protected

Store the reaction fission yield.

◆ fReactionYieldFile

string IrradiationModel::fReactionYieldFile
protected

Store the name of the reaction fission yield file.

◆ fReverseMatrixIndex

vector<ZAI> IrradiationModel::fReverseMatrixIndex
protected

correspondance matrix from the column (or line) of the different Reaction/Decay matrix to the ZAI

◆ fShorstestHalflife

double IrradiationModel::fShorstestHalflife
protected

Limit on the half life of nuclei to take it into account.

◆ fSpectrumType

string IrradiationModel::fSpectrumType
protected

Type of the spectrum : thermal or fast. (needed for Isomeric branching ratios)

◆ fSpontaneusYield

CLASSNucleiFiliation IrradiationModel::fSpontaneusYield
protected

Store the spontaneus fission yield.

◆ fSpontaneusYieldFile

string IrradiationModel::fSpontaneusYieldFile
protected

Store the name of the spontaneus fission yield file.

◆ fZAIThreshold

int IrradiationModel::fZAIThreshold
protected

Lowest Mass deal by the evolution (default 90)


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