CLASS
5.1
Fuel Cycle Simulator
|
The Bateman equation solver. More...
#include <IrradiationModel.hxx>
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... | |
![]() | |
CLASSObject () | |
Normal Constructor. More... | |
CLASSObject (CLASSLogger *log) | |
Log Constructor. More... | |
virtual CLASSObject * | Clone () |
Correct way to copy a CLASSObject in case of derivation. More... | |
void | SetLog (CLASSLogger *log) |
Set the CLASSLogger. More... | |
CLASSLogger * | GetLog () |
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< ZAI > | fReverseMatrixIndex |
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... | |
![]() | |
CLASSLogger * | fLog |
Pointer to the Log. More... | |
The Bateman equation solver.
Define an IrradiationModel. An IrradiationModel is a Bateman equation solving method. This is the mother class. see derivated classes :
IrradiationModel::IrradiationModel | ( | ) |
Default constructor.
IrradiationModel::IrradiationModel | ( | CLASSLogger * | log | ) |
Logger constructor.
void IrradiationModel::BuildDecayMatrix | ( | ) |
Build the Decay Matrix for the futur time step.
void IrradiationModel::BuildReactionFiliation | ( | ) |
|
inlinevirtual |
virtual method called to perform the irradiation calculation using a set of cross section.
Perform the Irradiation Calcultion using the XSSet data
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] |
|
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
EvolutionDataStep | : EvolutionData |
TStep | : time |
|
inline |
Path to fDataFileName.
|
inline |
string IrradiationModel::GetDecay | ( | string | DecayModes, |
double & | BR, | ||
int & | Iso, | ||
int & | StartPos | ||
) |
Returns a particular decay mode.
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. |
|
inline |
Get the decay constants.
|
protected |
Return the Fission XS Matrix at the time TStep.
This method extract the fission cross section of an EvolutionData at the set time
EvolutionDataStep | : EvolutionData |
TStep | : time |
|
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
EvolutionDataStep | : EvolutionData |
TStep | : time |
void IrradiationModel::GetNuclearProcessMatrix | ( | TMatrixT< double > & | myMatrix, |
ZAI | Mother, | ||
IsotopicVector | ProductedIV, | ||
double | XSValue = 1 |
||
) |
|
inline |
Nuclei with HL below fShorstestHalflife are cut (replaced by their daughter(s))
|
inline |
Get the type of neutron spectrum (thermal or fast)
|
inline |
Gives the threshold (in charge number Z). The nuclei below this threshold are not managed.
|
virtual |
Load the decay properties (HL,BR)
void IrradiationModel::LoadFPYield | ( | string | SponfaneusYield, |
string | ReactionYield | ||
) |
Build Fision Yields maps.
|
virtual |
Build Decay matrices & read FpYields if any.
void IrradiationModel::Print | ( | ) | const |
|
protected |
Read a CLASSYield file and return the correpsponding map.
void IrradiationModel::SetFissionEnergy | ( | string | FissionEnergyFile | ) |
set Fission Energy using a file
This method fill the Fission Energy [eV] map using a file
FissionEnergyFile | filename containing the Fission Energy of some nuclei (format : Z A I Energy[eV]) |
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
zai | : the ZAI |
E | : Energy released by fission for nuclei zai [eV] |
|
inline |
|
inline |
Set the Half Life cut.
void IrradiationModel::SetSpectrumType | ( | string | type | ) |
Set the type of neutron spectrum (thermal or fast)
|
inline |
Set the zai threshold.
|
protected |
Store the reaction capture Filiation.
|
protected |
Path to the decay list file.
|
protected |
Name of the decay list.
|
protected |
List of decay constants.
|
protected |
Matrix with half life for each nuclei.
|
protected |
Store the nuclei being cut (HL threshold)
|
protected |
Store the Energy per fission use for the flux normalisation.
|
protected |
correspondance matrix from ZAI to the column (or line) of the different Reaction/Decay matrix
|
protected |
Store the reaction n,2n Filiation.
|
protected |
Store the uncut nuclei.
|
protected |
Store the reaction fission yield.
|
protected |
Store the name of the reaction fission yield file.
|
protected |
correspondance matrix from the column (or line) of the different Reaction/Decay matrix to the ZAI
|
protected |
Limit on the half life of nuclei to take it into account.
|
protected |
Type of the spectrum : thermal or fast. (needed for Isomeric branching ratios)
|
protected |
Store the spontaneus fission yield.
|
protected |
Store the name of the spontaneus fission yield file.
|
protected |
Lowest Mass deal by the evolution (default 90)