MURE
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
FissileEvolutionControl Class Reference

Evolution control for Fissile content. More...

#include <FissileEvolutionControl.hxx>

Inheritance diagram for FissileEvolutionControl:
EvolutionControl

Public Member Functions

 FissileEvolutionControl ()
 Default Constructor.
 
 FissileEvolutionControl (const FissileEvolutionControl &ev)
 Copy constructor.
 
FissileEvolutionControlClone () override
 
 ~FissileEvolutionControl () override=default
 destructor
 
void ControlAfterEachMCRun () override
 Control just after each MC run.
 
void ControlAfterEachEvolutionStep () override
 Control after the last RK step of an Evolution Step.
 
virtual void FindNextFissileAddition ()
 Find the next Fissile addition needed to keep keff constant.
 
void ExtrapolateRates () override
 Extrapolation of reaction rates on the next step from a linear fit.
 
void WriteControlParameters () override
 Write fissile proportion and addition in a file named "FISSILE_PROPS".
 
void AddReactions (ControlMaterial *M)
 Add reaction for building tallies (n, gamma), (n, fission), ...
 
- Public Member Functions inherited from EvolutionControl
 EvolutionControl ()
 Default Constructor.
 
 EvolutionControl (const EvolutionControl &ev)
 Copy constructor.
 
virtual EvolutionControlClone ()
 
virtual ~EvolutionControl ()
 destructor
 
virtual void ControlBeforeFirstMCRun ()
 
virtual void ControlAfterRestart (int RestartRun)
 control at the very beginning of the evolution, before any MC run
 
virtual void ControlBeforeEachSubStep ()
 Control just before each sub-step in an Evolution Step.
 
virtual void ControlAfterLastMCRun ()
 
void SetMCRunTime (vector< double > T)
 Control at the end of evolution, after the last Evolution Step (or MC run if evolution end on a MC run)
 
vector< double > & GetMCRunTimes ()
 
void SetWantedKeff (double keff=1.)
 
void SetWantedHNProportion (double HNproportion=0.01)
 
double GetWantedHNProportion ()
 
void SetLockToInitialKeff (bool flag=true)
 
void SetConstantPower (bool flag=true)
 
bool IsConstantPower ()
 
void SetFuelReprocessing (FuelReprocessing *processing)
 
FuelReprocessingGetFuelReprocessing ()
 
virtual void CalculateCoeffsAtStep (int s)
 Abstract method ; to be overloaded.
 
virtual void SetRunFuelTemperatureCoeff (bool flag=true)
 Abstract method ; to be overloaded.
 
virtual void SetRunVoidCoeff (bool flag=true)
 Abstract method ; to be overloaded.
 
virtual void SetRunModeratorTemperatureCoeff (bool flag=true)
 Abstract method ; to be overloaded.
 
virtual void SetRunPoisonReactivityWorth (bool flag=true)
 Abstract method ; to be overloaded.
 
virtual void SetCriticalitySource (MCSource *s)
 Abstract method ; to be overloaded.
 
virtual void LaunchReactivityCoeffsCalculations ()
 Abstract method ; to be overloaded.
 
virtual void ControlKeff (double Time)
 Abstract method ; to be overloaded.
 
void RunMCCriticality (string FileName)
 Run MC only for a Kcode (no tally)
 
virtual double EstimatedKeff ()
 Extrapolation of Keff on the next step from a linear fit.
 
virtual void FindKeffSlope ()
 Find the slope of Keff base on previous run (fit)
 
virtual void FindAbsorptionSlope ()
 Find the slope of Aborption base on previous run (fit)
 
virtual void FindFissionSlope ()
 Find the slope of Fission base on previous run (fit)
 
virtual void FindNuFissionSlope ()
 Find the slope of Fission*nu base on previous run (fit)
 
virtual void WriteCurrentRates ()
 Write absorpstion, fission, ... rates in ABS, FISS, ... files.
 
void PrintKeffWarning ()
 Print Keff estimation warnings.
 
void FindNextCoefs (double value, vector< double > &V, double &Slope, double &Intersept, int &LastMCRunNumber)
 Fit a vector and return the fitted parameters.
 

Protected Attributes

vector< double > fNextFissileAddition
 
vector< double > fInitialFissileProportion
 
- Protected Attributes inherited from EvolutionControl
vector< double > fMCRunTimes
 Time at which MC run is performed.
 
bool fConstantPower
 whether or not keep a constant power
 
double fWantedKeff
 The wanted Keff of the problem.
 
double fWantedHNProportion
 The wanted heavy nuclide proportion.
 
vector< double > fMCTime
 vector of last MC run time (for fits)
 
vector< double > fMCKeff
 vector of last MC run Keff
 
vector< double > fMCDeltaKeff
 vector of last MC run Keff error
 
double fOldKeff
 The previous MC keff result.
 
bool fLockToInitialKeff
 for keff control.
 
vector< double > fKeffWarningTime
 Times at which estimate keff differs from MC keff at 3sigma.
 
vector< double > fKeffWarningGap
 |Estimate keff - Mcnp Keff|
 
vector< double > fKeffWarning3sigma
 3sigma on MC keff
 
vector< int > fKeffWarningMCNum
 The MC run number of the warning.
 
double fFitKeffSlope
 slope to find the Keff extrapolation
 
double fFitKeffIntersept
 intersept to find the Keff extrapolation
 
vector< double > fMCAbs
 vector of last MC run's global total absorption rate.
 
vector< double > fMCDeltaAbs
 vector of last MC run global Absorption rate (-2) error
 
double fFitAbsSlope
 slope to find extrapolated Absorption value.
 
double fFitAbsIntercept
 Absorption intercept for the extrapolation.
 
vector< double > fMCFiss
 vector of last MC run's global fission rate.
 
vector< double > fMCDeltaFiss
 vector of last MC run's global fission rate error.
 
double fFitFissSlope
 slope of linear fit of the fission rate.
 
double fFitFissIntercept
 intersept of linear fit of the fission rate.
 
vector< double > fMCNuFiss
 vector of last MC run's global nu*fission rate.
 
vector< double > fMCDeltaNuFiss
 vector of last MC run's global nu*fission rate error
 
double fFitNuFissSlope
 slope of linear fit of the nu*fission rate.
 
double fFitNuFissIntercept
 intersept of linear fit of the nu*fission rate.
 
double fSumOfFission
 sum of all (n, fission) reaction in a cell
 
double fSumOfCapture
 sum of all (n, gamma) reaction in a cell
 
double fSumOfN2N
 sum of all (n, 2n) reaction in a cell
 
double fTNF
 the Tally normalization Factor
 
FuelReprocessingfFuelReprocessing
 the FuelReprocessing
 

Additional Inherited Members

- Protected Member Functions inherited from EvolutionControl
virtual void InitVector ()
 build vector used in fits full of 0.
 

Detailed Description

Evolution control for Fissile content.

Constructor & Destructor Documentation

◆ FissileEvolutionControl() [1/2]

FissileEvolutionControl::FissileEvolutionControl ( )

Default Constructor.

By default the tally normalization factor is <0. This mean that the power will be used to normalized tallies. The Constant power is assumed and the wanted Keff is set to 1.

◆ FissileEvolutionControl() [2/2]

FissileEvolutionControl::FissileEvolutionControl ( const FissileEvolutionControl ev)

Copy constructor.

◆ ~FissileEvolutionControl()

FissileEvolutionControl::~FissileEvolutionControl ( )
overridedefault

destructor

Member Function Documentation

◆ AddReactions()

void FissileEvolutionControl::AddReactions ( ControlMaterial M)

Add reaction for building tallies (n, gamma), (n, fission), ...

◆ Clone()

FissileEvolutionControl * FissileEvolutionControl::Clone ( )
inlineoverridevirtual

< Correct way to copy a FissileEvolutionControl in case of derivation

Reimplemented from EvolutionControl.

◆ ControlAfterEachEvolutionStep()

void FissileEvolutionControl::ControlAfterEachEvolutionStep ( )
overridevirtual

Control after the last RK step of an Evolution Step.

In this method, EvolutionControl::ControlAfterEachEvolutionStep is called, Global reaction rates are calculated for the ControlMaterial and a EvolutiveSystem::TransmogrifyEvolvingAtoms is called

Reimplemented from EvolutionControl.

◆ ControlAfterEachMCRun()

void FissileEvolutionControl::ControlAfterEachMCRun ( )
overridevirtual

Control just after each MC run.

In this method, call EvolutionControl::ControlAfterEachMCRun() and update fInitialFissileProportion.

Reimplemented from EvolutionControl.

◆ ExtrapolateRates()

void FissileEvolutionControl::ExtrapolateRates ( )
overridevirtual

Extrapolation of reaction rates on the next step from a linear fit.

Reimplemented from EvolutionControl.

◆ FindNextFissileAddition()

void FissileEvolutionControl::FindNextFissileAddition ( )
virtual

Find the next Fissile addition needed to keep keff constant.

◆ WriteControlParameters()

void FissileEvolutionControl::WriteControlParameters ( )
overridevirtual

Write fissile proportion and addition in a file named "FISSILE_PROPS".

Reimplemented from EvolutionControl.

Member Data Documentation

◆ fInitialFissileProportion

vector< double > FissileEvolutionControl::fInitialFissileProportion
protected

◆ fNextFissileAddition

vector< double > FissileEvolutionControl::fNextFissileAddition
protected

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

MURE Project, documentation generated by Doxygen 1.9.7 - Fri Jan 19 2024