From 6bb6e89e8bcc6e094d2773c333f2370362bb3a04 Mon Sep 17 00:00:00 2001 From: Baptiste LENIAU <baptiste.leniau@subatech.in2p3.fr> Date: Mon, 31 Aug 2015 12:01:15 +0000 Subject: [PATCH] Add a prettier terminal output when running CLASS. To use the old output use SetSoberTerminalOutput() git-svn-id: svn+ssh://svn.in2p3.fr/class@723 0e7d625b-0364-4367-a6be-d5be4a48d228 --- source/branches/BaM_Dev/src/Scenario.cxx | 229 ++++++++++++++++++++--- 1 file changed, 198 insertions(+), 31 deletions(-) diff --git a/source/branches/BaM_Dev/src/Scenario.cxx b/source/branches/BaM_Dev/src/Scenario.cxx index 4ca06a2f8..711a8a659 100755 --- a/source/branches/BaM_Dev/src/Scenario.cxx +++ b/source/branches/BaM_Dev/src/Scenario.cxx @@ -53,6 +53,7 @@ Scenario::Scenario(CLASSLogger* log, cSecond abstime):CLASSObject(log) fParcPower = 0; fZAIThreshold = -1; + fOldProgressBar = false; // Warning @@ -66,8 +67,6 @@ Scenario::Scenario(CLASSLogger* log, cSecond abstime):CLASSObject(log) } - - //________________________________________________________________________ Scenario::Scenario( cSecond abstime, CLASSLogger* log):CLASSObject(log) { @@ -89,7 +88,8 @@ Scenario::Scenario( cSecond abstime, CLASSLogger* log):CLASSObject(log) fParcPower = 0; fZAIThreshold = -1; - + fOldProgressBar = false; + // Warning @@ -102,9 +102,8 @@ Scenario::Scenario( cSecond abstime, CLASSLogger* log):CLASSObject(log) } - //________________________________________________________________________ -Scenario::Scenario( cSecond abstime ):CLASSObject(new CLASSLogger("CLASS_OUTPUT.log")) +Scenario::Scenario( cSecond abstime):CLASSObject(new CLASSLogger("CLASS_OUTPUT.log")) { @@ -124,6 +123,7 @@ Scenario::Scenario( cSecond abstime ):CLASSObject(new CLASSLogger("CLASS_OUTPUT. fParcPower = 0; fZAIThreshold = -1; + fOldProgressBar = false; // Warning @@ -137,8 +137,6 @@ Scenario::Scenario( cSecond abstime ):CLASSObject(new CLASSLogger("CLASS_OUTPUT. } - - //________________________________________________________________________ Scenario::~Scenario() { @@ -148,7 +146,6 @@ Scenario::~Scenario() } - //________________________________________________________________________ void Scenario::AddPool(Pool* Pool) { @@ -183,7 +180,6 @@ void Scenario::AddPool(Pool* Pool) } - //________________________________________________________________________ void Scenario::AddReactor(Reactor* reactor) { @@ -216,7 +212,6 @@ void Scenario::AddReactor(Reactor* reactor) } - //________________________________________________________________________ void Scenario::AddStorage(Storage* storage) { @@ -324,6 +319,7 @@ void Scenario::AddSeparationPlant(SeparationPlant* SeparationPlant) void Scenario::BuildTimeVector(cSecond t) { DBGL + fTimeStep.clear(); fTimeStep.insert( pair<cSecond ,int>(t,1) ); //********* Printing Step *********// @@ -565,7 +561,7 @@ void Scenario::BackEndEvolution() PoolDump(); DBGL } - +//________________________________________________________________________ void Scenario::PoolEvolution() { DBGL @@ -575,7 +571,7 @@ void Scenario::PoolEvolution() DBGL } - +//________________________________________________________________________ void Scenario::StorageEvolution() { DBGL @@ -585,7 +581,7 @@ void Scenario::StorageEvolution() DBGL } - +//________________________________________________________________________ void Scenario::FabricationPlantEvolution() { DBGL @@ -595,8 +591,7 @@ void Scenario::FabricationPlantEvolution() DBGL } - - +//________________________________________________________________________ void Scenario::PoolDump() { DBGL @@ -626,6 +621,8 @@ void Scenario::ReactorEvolution() void Scenario::Evolution(cSecond t) { DBGL + fCloverCount = 0; + PrintCLASSPresentation(); BuildTimeVector(t); @@ -667,14 +664,18 @@ void Scenario::Evolution(cSecond t) } } - cout << endl; + cout<<"Calculation complete successfully "<<endl<<endl; DBGL } -void Scenario::ProgressPrintout(cSecond t) -{ +//_______________________________________________________________________ +//______________________________ Out Method ______________________________ +//________________________________________________________________________ +//________________________________________________________________________ +void Scenario::OldProgressPrintout(cSecond t) +{ double Time = (fAbsoluteTime-fStartingTime)/cYear ; double Total = (t-fStartingTime)/cYear; @@ -690,22 +691,195 @@ void Scenario::ProgressPrintout(cSecond t) cout << "-"; cout << "] "; - cout << " Processed "; + //cout << " Processed "; if (Time < 10) cout << " "; if (Time < 100) cout << " "; cout << (int)Time << " / " << (int)Total << " Years \r"; if( fLog->GetVerboseLVL() < 2) cout << flush; else cout << endl; +} +//________________________________________________________________________ +void Scenario::ProgressPrintout(cSecond t) +{ + double Time = (fAbsoluteTime-fStartingTime)/cYear ; + double Total = (t-fStartingTime)/cYear; + + if(fOldProgressBar) + OldProgressPrintout(t); + + else + { + system("clear"); + /****Printing CLASS info + nuclear clover****/ + if(fCloverCount>3) + fCloverCount=0; + PrintClover(fCloverCount); + fCloverCount++; + + /****Printing Progression bar r****/ + static int ProgressBarlength = 47; + cout << "тХн"; + for(int i = 0; i < ProgressBarlength; i++) + cout <<"тФА" ; + + cout << "тХо"<<endl; + cout<<"тФВ"; + + stringstream Completed ; Completed << "\033[42m"; + for(int i = 0; i < (int)(Time/Total*ProgressBarlength); i++) + Completed<< " "; + + Completed << "\033[0m"; + + for(int i = ProgressBarlength; i >= (int)(Time/Total*ProgressBarlength); i--) + Completed << " "; + + cout<<Completed.str(); + cout<<"тФВ"<<endl; + + cout << "тХ░"; + for(int i = 0; i < ProgressBarlength; i++) + cout <<"тФА" ; + cout << "тХп"<<endl; + + + if (Time < 10) cout << " "; + if (Time < 100) cout << " "; + cout << (int)Time << " / " << (int)Total << " Years"; + cout << endl<<endl; + } INFO << " Proccessed " << (int)Time << " / " << (int)Total << " Years \r" << endl; } - //________________________________________________________________________ -//______________________________ Out Method ______________________________ +void Scenario::PrintCLASSPresentation() +{ + cout<<endl; + cout<<"тХнтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХо"<<endl; + cout<<"тФВ тЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ"<<endl; + cout<<"тФВ тЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХЧтЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХФтХРтХРтХРтХРтХЭ тФВ"<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ"<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХС тФВ"<<endl; + cout<<"тФВ тХЪтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХС тЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХС тФВ"<<endl; + cout<<"тФВ тХЪтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХЭ тХЪтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭ тФВ"<<endl; + cout<<"тФВ Version 4.1 тФВ"<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд"<<endl; + cout<<"тФВ Core Lybrary for Advance Scenario Simulation тФВ"<<endl; + cout<<"тФВ тФВ"<<endl; + cout<<"тФВ A dynamical nuclear fuel cycle code developed тФВ"<<endl; + cout<<"тФВ by the CNRS/IN2P3 & IRSN тФВ"<<endl; + cout<<"тФВ https://forge.in2p3.fr/projects/classforge тФВ"<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд"<<endl; + cout<<"тФВ Authors : тФВ"<<endl; + cout<<"тФВ B. MOUGINOT (@BaM) B. LENIAU (@BLG) тФВ"<<endl; + cout<<"тФВ F. COURTIN (@FaC) N. THIOLIERE (@NT) тФВ"<<endl; + cout<<"тХ░тФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХп"<<endl; + cout<<" "<<endl; + cout<<" BEGINING FUEL CYCLE EVOLUTION "<<endl; + cout<<" "<<endl; + cout<<"Evolution progression : "<<endl; +} //________________________________________________________________________ +void Scenario::PrintClover(int i) +{ + + if(i == 0) + { cout<<"тХнтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХо "<<endl; + cout<<"тФВ тЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ @@ "<<endl; + cout<<"тФВ тЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХЧтЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХФтХРтХРтХРтХРтХЭ тФВ @@@@@ "<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ @@@@@@ "<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХС тФВ @@@@@@@ "<<endl; + cout<<"тФВ тХЪтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХС тЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХС тФВ @@@@@@@ "<<endl; + cout<<"тФВ тХЪтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХЭ тХЪтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭ тФВ @@@@@@ @ "<<endl; + cout<<"тФВ Version 4.1 тФВ @@@@ @@@@ "<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд @@ @@@@@@ "<<endl; + cout<<"тФВ Core Lybrary for Advance Scenario Simulation тФВ @ @@@@@@@ "<<endl; + cout<<"тФВ тФВ @@ @@@@@@@ "<<endl; + cout<<"тФВ A dynamical nuclear fuel cycle code developed тФВ @ @@@@@@ "<<endl; + cout<<"тФВ by the CNRS/IN2P3 & IRSN тФВ @@@@ @@@@@ "<<endl; + cout<<"тФВ https://forge.in2p3.fr/projects/classforge тФВ @@@@@ @@@@ "<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд @@@@@@@ "<<endl; + cout<<"тФВ Authors : тФВ @@@@@@@ "<<endl; + cout<<"тФВ B. MOUGINOT (@BaM) B. LENIAU (@BLG) тФВ @@@@@@ "<<endl; + cout<<"тФВ F. COURTIN (@FaC) N. THIOLIERE (@NT) тФВ @@@@@ "<<endl; + cout<<"тХ░тФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХп @@@ "<<endl; + cout<<" "<<endl; + } + if(i == 1) + { cout<<"тХнтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХо "<<endl; + cout<<"тФВ тЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ @ @@@@@@@@ "<<endl; + cout<<"тФВ тЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХЧтЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХФтХРтХРтХРтХРтХЭ тФВ @@@@@@@@ "<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ @@@@@@@ "<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХС тФВ @@@@@@ "<<endl; + cout<<"тФВ тХЪтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХС тЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХС тФВ @@@@@ "<<endl; + cout<<"тФВ тХЪтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХЭ тХЪтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭ тФВ @@@@ "<<endl; + cout<<"тФВ Version 4.1 тФВ @@ "<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд @ "<<endl; + cout<<"тФВ Core Lybrary for Advance Scenario Simulation тФВ @ "<<endl; + cout<<"тФВ тФВ @@@@@@@ @@ @@@@@@@ "<<endl; + cout<<"тФВ A dynamical nuclear fuel cycle code developed тФВ @@@@@@@@ @@@@@@@@ "<<endl; + cout<<"тФВ by the CNRS/IN2P3 & IRSN тФВ @@@@@@@@ @@@@@@@ "<<endl; + cout<<"тФВ https://forge.in2p3.fr/projects/classforge тФВ @@@@@@ @@@@@@ "<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд @@@@@ @@@@@ "<<endl; + cout<<"тФВ Authors : тФВ @@@@ @@@@ "<<endl; + cout<<"тФВ B. MOUGINOT (@BaM) B. LENIAU (@BLG) тФВ @@ @@@ "<<endl; + cout<<"тФВ F. COURTIN (@FaC) N. THIOLIERE (@NT) тФВ @ @ "<<endl; + cout<<"тХ░тФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХп "<<endl; + cout<<" "<<endl; + } + + if(i == 2) + { cout<<"тХнтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХо "<<endl; + cout<<"тФВ тЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ @@@ "<<endl; + cout<<"тФВ тЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХЧтЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХФтХРтХРтХРтХРтХЭ тФВ @@@@@ "<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ @@@@@@ "<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХС тФВ @@@@@@@ "<<endl; + cout<<"тФВ тХЪтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХС тЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХС тФВ @@@@@@@@ "<<endl; + cout<<"тФВ тХЪтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХЭ тХЪтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭ тФВ @@ @@@@@@ "<<endl; + cout<<"тФВ Version 4.1 тФВ @@@ @@@@ "<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд @@@@@@ @@ "<<endl; + cout<<"тФВ Core Lybrary for Advance Scenario Simulation тФВ @@@@@@@@ @ "<<endl; + cout<<"тФВ тФВ @@@@@@@ @@ "<<endl; + cout<<"тФВ A dynamical nuclear fuel cycle code developed тФВ @@@@@@ @ "<<endl; + cout<<"тФВ by the CNRS/IN2P3 & IRSN тФВ @@@@@ @@@@ "<<endl; + cout<<"тФВ https://forge.in2p3.fr/projects/classforge тФВ @@ @@@@@@ "<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд @@@@@@@ "<<endl; + cout<<"тФВ Authors : тФВ @@@@@@@ "<<endl; + cout<<"тФВ B. MOUGINOT (@BaM) B. LENIAU (@BLG) тФВ @@@@@@@ "<<endl; + cout<<"тФВ F. COURTIN (@FaC) N. THIOLIERE (@NT) тФВ @@@@@ "<<endl; + cout<<"тХ░тФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХп @@@@ "<<endl; + cout<<" "<<endl; + + } + if(i == 3) + { cout<<"тХнтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХо "<<endl; + cout<<"тФВ тЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтХЧ тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ "<<endl; + cout<<"тФВ тЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХЧтЦИтЦИтХФтХРтХРтХРтХРтХЭтЦИтЦИтХФтХРтХРтХРтХРтХЭ тФВ "<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧ тФВ @@ @@ "<<endl; + cout<<"тФВ тЦИтЦИтХС тЦИтЦИтХС тЦИтЦИтХФтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХСтХЪтХРтХРтХРтХРтЦИтЦИтХС тФВ @@@@ @@@ "<<endl; + cout<<"тФВ тХЪтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХЧтЦИтЦИтХС тЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХСтЦИтЦИтЦИтЦИтЦИтЦИтЦИтХС тФВ @@@@@ @@@@@ "<<endl; + cout<<"тФВ тХЪтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХЭ тХЪтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭтХЪтХРтХРтХРтХРтХРтХРтХЭ тФВ @@@@@@ @@@@@@ "<<endl; + cout<<"тФВ Version 4.1 тФВ @@@@@@ @@@@@@@ "<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд @@@@@@@@ @@@@@@@@ "<<endl; + cout<<"тФВ Core Lybrary for Advance Scenario Simulation тФВ @@@@@@@@ @ @@@@@@@ "<<endl; + cout<<"тФВ тФВ @@ "<<endl; + cout<<"тФВ A dynamical nuclear fuel cycle code developed тФВ @@ "<<endl; + cout<<"тФВ by the CNRS/IN2P3 & IRSN тФВ @@@@ "<<endl; + cout<<"тФВ https://forge.in2p3.fr/projects/classforge тФВ @@@@@ "<<endl; + cout<<"тФЬтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФд @@@@@@ "<<endl; + cout<<"тФВ Authors : тФВ @@@@@@@ "<<endl; + cout<<"тФВ B. MOUGINOT (@BaM) B. LENIAU (@BLG) тФВ @@@@@@@@ "<<endl; + cout<<"тФВ F. COURTIN (@FaC) N. THIOLIERE (@NT) тФВ "<<endl; + cout<<"тХ░тФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтФАтХп "<<endl; + cout<<" "<<endl; + + } + +} +//________________________________________________________________________ void Scenario::ApplyZAIThreshold() { for(int i = 0; i < (int)fFabricationPlant.size(); i++) @@ -725,10 +899,7 @@ void Scenario::ApplyZAIThreshold() } - - - - +//________________________________________________________________________ void Scenario::UpdateParc() { @@ -749,9 +920,7 @@ void Scenario::UpdateParc() fIVTotal = fWaste + fTotalStorage + fTotalCooling + fFuelFabrication + fTotalInReactor; fIVInCycleTotal = fTotalStorage + fTotalCooling + fFuelFabrication + fTotalInReactor; } - - - +//________________________________________________________________________ void Scenario::ResetQuantity() { @@ -763,7 +932,6 @@ void Scenario::ResetQuantity() fIVTotal.Clear(); } - //________________________________________________________________________ void Scenario::OpenOutputTree() { @@ -791,6 +959,7 @@ void Scenario::OpenOutputTree() INFO << "\t ...OK!" << endl; } +//________________________________________________________________________ void Scenario::CloseOutputTree() { @@ -853,7 +1022,6 @@ void Scenario::OutAttach() } - //________________________________________________________________________ void Scenario::Write() { @@ -862,7 +1030,6 @@ void Scenario::Write() } - //________________________________________________________________________ void Scenario::Print() { -- GitLab