diff --git a/NPAnalysis/10He_Riken/Analysis b/NPAnalysis/10He_Riken/Analysis index 9eee02e64c11973ad2d0006f1e3116d822c645f8..a7758f9345dae696017a6685d5000816532e2bca 100755 Binary files a/NPAnalysis/10He_Riken/Analysis and b/NPAnalysis/10He_Riken/Analysis differ diff --git a/NPAnalysis/10He_Riken/include/ObjectManager.hh b/NPAnalysis/10He_Riken/include/ObjectManager.hh index ad0cffdcb4ad2ffa1406c27ced268970207b615c..bc9b0684a7361b53b5700a7bcb330281ffaefa54 100644 --- a/NPAnalysis/10He_Riken/include/ObjectManager.hh +++ b/NPAnalysis/10He_Riken/include/ObjectManager.hh @@ -16,6 +16,7 @@ #include <string> #include <cmath> #include <cstdlib> +#include <time.h> // ROOT #include <TROOT.h> @@ -117,7 +118,7 @@ namespace ENERGYLOSS 3 ); EnergyLoss He3StripAl = EnergyLoss ( "3He_Al.txt" , - 100 , + 1000 , 1 , 3 ); diff --git a/NPAnalysis/10He_Riken/src/Analysis.cc b/NPAnalysis/10He_Riken/src/Analysis.cc index 6e08403d67099b7c16e3e580385c1d349cc9703d..8846b467520557c55fec35a1cf44637acc0544a1 100644 --- a/NPAnalysis/10He_Riken/src/Analysis.cc +++ b/NPAnalysis/10He_Riken/src/Analysis.cc @@ -74,8 +74,15 @@ int main(int argc,char** argv) // Get Must2 Pointer: MUST2Array* M2 = (MUST2Array*) myDetector -> m_Detector["MUST2"] ; - int i; - for ( i = 0 ; i < Chain -> GetEntries() ; i ++ ) + cout << " ///////// Starting Analysis ///////// "<< endl << endl ; + + int i ,N=Chain -> GetEntries(); + + cout << " Number of Event to be treated : " << N << endl ; + + clock_t begin=clock(); + clock_t end=begin; + for ( i = 0 ; i < N ; i ++ ) { // Clear local branch for(int hh = 0 ; hh <2 ; hh++) @@ -87,7 +94,20 @@ int main(int argc,char** argv) } // Minimum code - if( i%100000 == 0 && i!=0) {cout << i << " Event annalysed "<<endl; } + if( i%10000 == 0 && i!=0) { + cout.precision(3); + end=clock(); + double TimeElapsed = (end-begin)/CLOCKS_PER_SEC; + double percent = (double)i/N ; + double TimeToWait = (TimeElapsed/percent) - TimeElapsed ; + cout << "\r Progression:" << percent*100 + << " % \t | \t Remaining time : ~" + << TimeToWait <<"s"<< flush; + } + + else if (i==N-1) cout << "\r Progression:" + << " 100% " <<endl; + Chain -> GetEntry(i); // Clear Previous Event myDetector -> ClearEventPhysics() ; @@ -121,25 +141,26 @@ int main(int argc,char** argv) { if(ELab[hit]>-1000 && ThinSi_E>0 ) { - ELab[hit]= He3StripAl.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle - 2*0.4*micrometer , // Target Thickness at 0 degree - ThetaMM2Surface ); + ELab[hit]= He3StripAl.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + 2*0.4*micrometer , // Target Thickness at 0 degree + ThetaMM2Surface ); - ELab[hit]= He3StripSi.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle - 20*micrometer , // Target Thickness at 0 degree - ThetaMM2Surface ); + ELab[hit]= He3StripSi.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + 20*micrometer , // Target Thickness at 0 degree + ThetaMM2Surface ); - ELab[hit]= He3StripAl.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle - 0.4*micrometer , // Target Thickness at 0 degree - ThetaMM2Surface ); - ELab[hit]= He3TargetWind.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle - 15*micrometer , // Target Thickness at 0 degree - ThetaN ); + ELab[hit]= He3StripAl.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + 0.4*micrometer , // Target Thickness at 0 degree + ThetaMM2Surface ); + + ELab[hit]= He3TargetWind.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + 15*micrometer , // Target Thickness at 0 degree + ThetaN ); - ELab[hit]= He3TargetGaz.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle - 1.5*mm , // Target Thickness at 0 degree - ThetaN ); + ELab[hit]= He3TargetGaz.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + 1.5*mm , // Target Thickness at 0 degree + ThetaN ); ThetaCM[hit] = myReaction -> EnergyLabToThetaCM( ELab[hit] , 1 ) /deg ; ExcitationEnergy[hit] = myReaction -> ReconstructRelativistic( ELab[hit] , ThetaLab[hit] ) ; @@ -152,23 +173,23 @@ int main(int argc,char** argv) { if(ELab[hit]>21.66)//CsI are inside a Mylar foil, plus rear alu strip { - ELab[hit]= He3TargetWind.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + ELab[hit]= He3TargetWind.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle 3*micrometer , // Target Thickness at 0 degree ThetaMM2Surface ); - ELab[hit]= He3StripAl.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + ELab[hit]= He3StripAl.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle 0.4*micrometer , // Target Thickness at 0 degree ThetaMM2Surface ); } - ELab[hit]= He3StripAl.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + ELab[hit]= He3StripAl.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle 0.4*micrometer , // Target Thickness at 0 degree ThetaMM2Surface ); - ELab[hit]= He3TargetWind.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + ELab[hit]= He3TargetWind.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle 15*micrometer , // Target Thickness at 0 degree ThetaN ); - ELab[hit]= He3TargetGaz.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle + ELab[hit]= He3TargetGaz.EvaluateInitialEnergy( ELab[hit] , // Energy of the detected particle 1.5*mm , // Target Thickness at 0 degree ThetaN ); @@ -231,8 +252,8 @@ int main(int argc,char** argv) RootOutput::getInstance()->GetTree()->Fill() ; } - cout << "A total of " << i << " event has been annalysed " << endl ; - + cout << " A total of " << i << " event has been annalysed " << endl ; + cout << endl << " ///////////////////////////////////// "<< endl<< endl ; RootOutput::getInstance()->Destroy(); return 0 ; }