MURE
Loading...
Searching...
No Matches
HNEvolutionControl.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 _HNEVOLUTIONCONTROL_HXX_
20#define _HNEVOLUTIONCONTROL_HXX_
21
27#include <fstream>
28#include <iostream>
29#include <sstream>
30#include <vector>
31#include <string>
32
33#include "EvolutionControl.hxx"
34#include "ControlMaterial.hxx"
35
36class Cell;
37class ControlMaterial;
38
39using namespace std;
40//________________________________________________________________________
41//
42// HNEvolutionControl
44// @author MUST BE A. BIDAUD
45//________________________________________________________________________
46
48{
49 public:
53 {
54 return new HNEvolutionControl(*this);
55 }
56 ~HNEvolutionControl() override = default;
57
59
64 void ControlAfterEachEvolutionStep() override;
65
66 void KeepHNProportionConstant(Cell *TheCell);
68 {
70 }
72 {
74 }
76 {
78 }
79 double GetHNProportion(ControlMaterial *TheMaterial);
80
81 protected:
85};
86
87#endif
Header file for ControlMaterial class.
Header file for EvolutionControl class.
A Cell is composed from a Shape and a Material.
Definition Cell.hxx:84
A ControlMaterial.
Definition ControlMaterial.hxx:51
EvolutionControl allows interactions with the evolution.
Definition EvolutionControl.hxx:60
EvolutionControl for heavy nuclide content control.
Definition HNEvolutionControl.hxx:48
double GetHNProportion(ControlMaterial *TheMaterial)
Definition HNEvolutionControl.cxx:107
~HNEvolutionControl() override=default
destructor
bool fIsHNProportionConstant
true for HN proportion kept constant
Definition HNEvolutionControl.hxx:82
bool IsHNProportionConstant()
Definition HNEvolutionControl.hxx:67
HNEvolutionControl * Clone() override
Definition HNEvolutionControl.hxx:52
double GetWantedHNProportion()
Definition HNEvolutionControl.hxx:75
int GetMaterialWhereHNProportionConstant()
Definition HNEvolutionControl.hxx:71
void KeepHNProportionConstant(Cell *TheCell)
Definition HNEvolutionControl.cxx:123
double fWantedHNProportion
The wanted HNProportion.
Definition HNEvolutionControl.hxx:84
void ControlAfterEachEvolutionStep() override
Control after the last RK step of an Evolution Step.
Definition HNEvolutionControl.cxx:66
int fMaterialWhereHNProportionConstant
The material number in which the HNProportion is kept constant.
Definition HNEvolutionControl.hxx:83
HNEvolutionControl()
Definition HNEvolutionControl.cxx:40
the namespace of the Standard C++

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