From efba70903d04971c861f187732e4b4f6faf81e38 Mon Sep 17 00:00:00 2001 From: Baptiste Mouginot <mouginot.baptiste@gmail.com> Date: Wed, 17 Sep 2014 13:25:20 +0000 Subject: [PATCH] del THU/PU git-svn-id: svn+ssh://svn.in2p3.fr/class@385 0e7d625b-0364-4367-a6be-d5be4a48d228 --- .../include/PWR_THPU_FabricationPlant.hxx | 45 ------ .../include/PWR_THU_FabricationPlant.hxx | 46 ------ source/branches/CLASSV3/include/Scenario.hxx | 7 +- .../CLASSV3/include/SeparationPlant.hxx | 152 ++++++++++++++++++ 4 files changed, 158 insertions(+), 92 deletions(-) delete mode 100644 source/branches/CLASSV3/include/PWR_THPU_FabricationPlant.hxx delete mode 100644 source/branches/CLASSV3/include/PWR_THU_FabricationPlant.hxx create mode 100644 source/branches/CLASSV3/include/SeparationPlant.hxx diff --git a/source/branches/CLASSV3/include/PWR_THPU_FabricationPlant.hxx b/source/branches/CLASSV3/include/PWR_THPU_FabricationPlant.hxx deleted file mode 100644 index 428e367a2..000000000 --- a/source/branches/CLASSV3/include/PWR_THPU_FabricationPlant.hxx +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef __PWR_THPU_FabricationPlant_HXX__ -#define __PWR_THPU_FabricationPlant_HXX__ - -/*! - \file - \brief Header file for FabricationPlant class. - - The aim of the Class is to manage evolution of FabricationPlant - - - @author BaM, Marc - @version 2.0 - */ - - - -#include <vector> -#include <map> - -#include "FabricationPlant.hxx" - -using namespace std; -typedef long long int cSecond; - -class PWR_THPU_FabricationPlant : public FabricationPlant -{ - //on utilise les constructeur de la classe FabricationPlant - // dans le code :MyFabricationPlant *FP_MOX = new FabricationPlant(gCLASS.GetLog(),Stock, ReUsable); - //on a besoin de surcherger le constructeur que si -public : - PWR_THPU_FabricationPlant(); - PWR_THPU_FabricationPlant(CLASSLogger* log); - - PWR_THPU_FabricationPlant(CLASSLogger* log, Storage* storage, Storage* reusable, double fabricationtime = 365.25*24*3600*2); - ///< Normal Destructor. - ~PWR_THPU_FabricationPlant(); - - void BuildFuelForReactor(int ReactorId); //obligatoire, c'est un peu la base -protected : -//********* Private Method *********// -// mettre ici les méthodes dont on a besoin dans sa fonction BuildFuelForReactor perso - -}; - -#endif diff --git a/source/branches/CLASSV3/include/PWR_THU_FabricationPlant.hxx b/source/branches/CLASSV3/include/PWR_THU_FabricationPlant.hxx deleted file mode 100644 index 2698854ab..000000000 --- a/source/branches/CLASSV3/include/PWR_THU_FabricationPlant.hxx +++ /dev/null @@ -1,46 +0,0 @@ -#ifndef __PWR_THU_FabricationPlant_HXX__ -#define __PWR_THU_FabricationPlant_HXX__ - -/*! - \file - \brief Header file for FabricationPlant class. - - The aim of the Class is to manage evolution of FabricationPlant - - - @author BaM, Marc - @version 2.0 - */ - - - -#include <vector> -#include <map> - -#include "FabricationPlant.hxx" - - -using namespace std; -typedef long long int cSecond; - -class PWR_THU_FabricationPlant : public FabricationPlant -{ - //on utilise les constructeur de la classe FabricationPlant - // dans le code :MyFabricationPlant *FP_MOX = new FabricationPlant(gCLASS.GetLog(),Stock, ReUsable); - //on a besoin de surcherger le constructeur que si -public : - PWR_THU_FabricationPlant(); - PWR_THU_FabricationPlant(CLASSLogger* log); - - PWR_THU_FabricationPlant(CLASSLogger* log, Storage* storage, Storage* reusable, double fabricationtime = 365.25*24*3600*2); - ///< Normal Destructor. - ~PWR_THU_FabricationPlant(); - - void BuildFuelForReactor(int ReactorId); //obligatoire, c'est un peu la base -protected : -//********* Private Method *********// -// mettre ici les méthodes dont on a besoin dans sa fonction BuildFuelForReactor perso - -}; - -#endif diff --git a/source/branches/CLASSV3/include/Scenario.hxx b/source/branches/CLASSV3/include/Scenario.hxx index a90bfcfd6..bd7511f43 100755 --- a/source/branches/CLASSV3/include/Scenario.hxx +++ b/source/branches/CLASSV3/include/Scenario.hxx @@ -156,11 +156,15 @@ public : */ //@{ - void AddPool(Pool* Pool); ///< Add A TF to the Park + void AddPool(Pool* Pool); ///< Add a Pool to the Park void AddReactor(Reactor* reactor); ///< Add a Reactor to the Park void AddStorage(Storage* storage); ///< Add a Storage to the Park void AddFabricationPlant(FabricationPlant* fabricationplant); ///< Add a Storage to the Park + void Add(Pool* Pool) {AddPool(Pool);} ///< Add a Pool to the Park + void Add(Reactor* reactor) {AddReactor(reactor);} ///< Add a Reactor to the Park + void Add(Storage* storage) {AddStorage(storage);} ///< Add a Storage to the Park + void Add(FabricationPlant* fabricationplant) {AddFabricationPlant(fabricationplant);}///< Add a Storage to the Park //@} @@ -250,6 +254,7 @@ protected : vector<Pool*> fPool; ///< Vector of Pool vector<Reactor*> fReactor; ///< Vector of Reactor vector<FabricationPlant*> fFabricationPlant; ///< Vector of FabricationPlant + vector<SeparationPlant*> fSeparationPlant; ///< Vector of FabricationPlant DecayDataBank* fDecayDataBase; //!< Pointer to the Decay DataBase diff --git a/source/branches/CLASSV3/include/SeparationPlant.hxx b/source/branches/CLASSV3/include/SeparationPlant.hxx new file mode 100644 index 000000000..8de81f287 --- /dev/null +++ b/source/branches/CLASSV3/include/SeparationPlant.hxx @@ -0,0 +1,152 @@ +#ifndef __SeparationPlant_HXX__ +#define __SeparationPlant_HXX__ +/*! + \file + \brief Header file for SeparationPlant class. + */ + +#include <string> +#include <map> + +#include "CLASSBackEnd.hxx" +#include "Storage.hxx" +#include "IsotopicVector.hxx" + +using namespace std; +typedef long long int cSecond; + +class CLASSBackEnd; +class CLASSLogger; +class DecayDataBank; + +//-----------------------------------------------------------------------------// +/*! + Define a SeparationPlant. + The aim of the Class is to separate an IV into several IV (MA, Pu, PF, etc...) and to send it to corresponding storage + + @author NT + @version 1.0 + */ +//________________________________________________________________________ + + + +class SeparationPlant : public CLASSBackEnd +{ +public : + + +//********* Constructor/Destructor Method *********// + + /*! + \name Constructor/Desctructor + */ + //@{ + + SeparationPlant(); ///< Normal Constructor. + + //{ + /// Special Constructor. + /*! + Make a new SeparationPlant + \param Log CLASSLogger used for the log... + \param separationtime duration of the SeparationPlant + */ + SeparationPlant(CLASSLogger* Log, cSecond separationtime = 0. *3600.*24.*365.25); //!< + //} + + + + ~SeparationPlant(); ///< Normal Destructor. + //@} + + + + +//********* Set Method *********// + + /*! + \name Set Method + */ + //@{ + + + void SetStorageDestination(CLASSBackEnd* storagedestination, IsotopicVector isotopicvector, cSecond destinationstartingtime); + + void AddIV(IsotopicVector IV); + + void SetPutToWaste(bool val) { fPutToWaste = val; } //!< Set True if IV goes to waste after cooling false instead + + + using CLASSBackEnd::SetName; + + //@} + + + + +//********* Get Method *********// + + /*! + \name Get Method + */ + //@{ + + bool GetPutToWaste() const { return fPutToWaste; } //!< Return True if IV goes to waste after cooling false instead + + //@} + + + + +//********* IsotopicVector Managment Method *********// + + /*! + \name IsotopicVector Managment Method + */ + //@{ + + vector<cSecond> GetCoolingStartingTime() const + { return GetIVArrayArrivalTime(); } //!< Return the vector of Cooling Sstarting Time + //@} + + + + +//********* Other Method *********// + + //@} + /*! + \name Other Method + */ + //@{ + + + //@} + +protected : + + + +//********* Internal Parameter *********// + bool fPutToWaste; //!< True if IV goes to waste after cooling false instead + vector<CLASSBackEnd* > fDestinationStorage; //!< Vector containing destination storage of the IV in the Separation Plant + vector<IsotopicVector > fDestinationStorageIV; //!< Vector containing destination storage of the IV in the Separation Plant + vector<cSecond> fDestinationStorageStartingTime; //!< Vector containing destination storage starting time of the IV in the Separation Plant + +//********* Isotopic Quantity *********// +//--------- Cooling ---------// + vector<int> fCoolingIndex; ///< Vector of the Cooling Index + int fCoolingLastIndex; //!< Number of Cooling IV Treated + vector<int> fCoolingEndOfCycle; //!< Index of the Cooling IV reaching the End of a Cooling Cycle + + +//********* Private Method *********// + + + + + ClassDef(SeparationPlant,3); +}; + +#endif -- GitLab