MURE
Loading...
Searching...
No Matches
FissileEvolutionControl.hxx
Go to the documentation of this file.
1/*
2 This file is part of MURE,
3 Copyright (C) 2007-2021 MURE developers.
4
5 MURE is free software: you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 MURE is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License
16 along with MURE. If not, see <http://www.gnu.org/licenses/>.
17*/
18
19#ifndef _FISSILEEVOLUTIONCONTROL_HXX_
20#define _FISSILEEVOLUTIONCONTROL_HXX_
21
27#include <fstream>
28#include <iostream>
29#include <sstream>
30#include <vector>
31#include <string>
32
33#include "EvolutionControl.hxx"
34
35class ControlMaterial;
36
37using namespace std;
38//________________________________________________________________________
39//
40// FissileEvolutionControl
42// @author MUST BE A. BIDAUD
43//________________________________________________________________________
44
46{
47 public:
49
55
57 {
58 return new FissileEvolutionControl(*this);
59 }
60
61 ~FissileEvolutionControl() override = default;
62
64
68 void ControlAfterEachMCRun() override;
69
71
76 void ControlAfterEachEvolutionStep() override;
77
78 virtual void FindNextFissileAddition();
79
80 void ExtrapolateRates() override;
81
82 void WriteControlParameters() override;
83
85
86 protected:
87
88 vector < double > fNextFissileAddition;
89 vector < double > fInitialFissileProportion;
90};
91
92#endif
Header file for EvolutionControl class.
A ControlMaterial.
Definition ControlMaterial.hxx:51
EvolutionControl allows interactions with the evolution.
Definition EvolutionControl.hxx:60
Evolution control for Fissile content.
Definition FissileEvolutionControl.hxx:46
~FissileEvolutionControl() override=default
destructor
FissileEvolutionControl * Clone() override
Definition FissileEvolutionControl.hxx:56
vector< double > fNextFissileAddition
Definition FissileEvolutionControl.hxx:88
void ControlAfterEachEvolutionStep() override
Control after the last RK step of an Evolution Step.
Definition FissileEvolutionControl.cxx:78
vector< double > fInitialFissileProportion
Definition FissileEvolutionControl.hxx:89
void WriteControlParameters() override
Write fissile proportion and addition in a file named "FISSILE_PROPS".
Definition FissileEvolutionControl.cxx:225
void ExtrapolateRates() override
Extrapolation of reaction rates on the next step from a linear fit.
Definition FissileEvolutionControl.cxx:241
void AddReactions(ControlMaterial *M)
Add reaction for building tallies (n, gamma), (n, fission), ...
Definition FissileEvolutionControl.cxx:246
FissileEvolutionControl()
Default Constructor.
Definition FissileEvolutionControl.cxx:40
void ControlAfterEachMCRun() override
Control just after each MC run.
Definition FissileEvolutionControl.cxx:58
virtual void FindNextFissileAddition()
Find the next Fissile addition needed to keep keff constant.
Definition FissileEvolutionControl.cxx:121
the namespace of the Standard C++

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