343 if( NbOfSamples>0 && NbOfSamples<=fEcal->MaxSampADC() )
349 cout <<
"TEcnaRun/CONSTRUCTOR> Number of required samples = " << NbOfSamples
350 <<
": OUT OF RANGE. Set to the default value (= " <<
fEcal->
MaxSampADC() <<
")."
487 const Text_t *h_name =
"CnaHeader";
488 const Text_t *h_title =
"CnaHeader";
523 cout <<
"*TEcnaRun::TEcnaRun(const TEcnaRun& dcop)> "
524 <<
" Now is the time to write a copy constructor"
556 cout <<
"*TEcnaRun::~TEcnaRun()> Entering destructor." << endl;
563 cout <<
"************************************************************************************* "
565 cout <<
"*TEcnaRun::~TEcnaRun()> Nb of calls to BuildEventsDistributions by cmsRun: "
567 cout <<
"************************************************************************************* "
574 Int_t misc_czero = 0;
579 cout <<
" fMiscDiag Counter "
580 << setw(3) <<
i <<
" = " << setw(9) <<
fMiscDiag[
i]
581 <<
" (INFO: alloc on non zero freed zone) " << endl;
588 cout <<
" Nb of fMiscDiag counters at zero: "
589 << misc_czero <<
" (total nb of counters: "
590 << fNbOfMiscDiagCounters <<
")" << endl;
694 cout <<
"!TEcnaRun::~TEcnaRun()> WRONG MANAGEMENT OF MEMORY ALLOCATIONS: fCnew = "
705 cout <<
"*TEcnaRun::~TEcnaRun()> Exiting destructor (this = " <<
this <<
")." << endl
706 <<
"~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#"
729 const Int_t& nfirst,
const Int_t&
nlast,
const Int_t& nbevts,
740 const Int_t& nfirst,
const Int_t&
nlast,
const Int_t& nbevts,
741 const Int_t& Stex,
const Int_t& run_type)
747 Int_t nrangeevts = nlast - nfirst + 1;
749 if( nrangeevts < nbevts )
751 if( nlast >= nfirst )
753 cout <<
"*TEcnaRun::GetReadyToReadData(...)> --- WARNING ---> number of events = " << nbevts
754 <<
", out of range (range = " << nfirst <<
"," << nlast <<
")" << endl
755 <<
" The number of found events will be less " << endl
756 <<
" than the number of requested events." << endl;
760 cout <<
"*TEcnaRun::GetReadyToReadData(...)> --- INFO ---> last requested event number = " << nlast
761 <<
", less than first requested event number (= " << nfirst <<
")" << endl
762 <<
" File will be read until EOF if the number of found events" << endl
763 <<
" remains less than the number of requested events." << endl;
768 Int_t ifirst = nfirst - 1;
775 Int_t nentries = 99999999;
776 if ( nfirst <= nentries )
783 if( nlast <= nentries )
785 const Text_t *h_name =
"CnaHeader";
786 const Text_t *h_title =
"CnaHeader";
797 run_number, nfirst, nlast, nbevts,
886 cout <<
"*TEcnaRun::GetReadyToReadData(...)> Allocation of 3D array for ADC distributions."
888 <<
" This number must not be too large"
889 <<
" (no failure after this message means alloc OK)." << endl;
955 cerr <<
"!TEcnaRun::GetReadyToReadData(...)> *** ERROR *** No allocation for fT2d_NbOfEvts!"
956 <<
" Pointer already not NULL " <<
fTTBELL << endl;
964 <<
"!TEcnaRun::GetReadyToReadData(...)> "
965 <<
" *** ERROR *** " << endl
966 <<
" --------------------------------------------------"
968 <<
" NULL or NEGATIVE values for arguments" << endl
969 <<
" with expected positive values:" << endl
972 <<
" Number of samples by channel = " <<
fNbSampForFic << endl
975 <<
" hence, no memory allocation for array member has been performed." << endl;
977 cout <<
"Enter: 0 and RETURN to continue or: CTRL C to exit";
984 cout <<
"*TEcnaRun::GetReadyToReadData(...)>" << endl
985 <<
" The method has been called with the following argument values:" << endl
986 <<
" Analysis name = "
992 <<
" First requested event number = "
994 <<
" Last requested event number = "
996 <<
" " <<
fStexName.Data() <<
" number = "
1001 <<
" Number of crystals in " <<
fStinName.Data() <<
" = "
1003 <<
" Number of samples by channel = "
1012 cout <<
"!TEcnaRun::GetReadyToReadData(...) > WARNING/CORRECTION:" << endl
1013 <<
"! The fisrt requested event number is not positive (nfirst = " << nfirst <<
") "
1021 cout << endl <<
"!TEcnaRun::GetReadyToReadData(...)> WARNING/CORRECTION:" << endl
1022 <<
"! The number of requested events (nbevts = " << nbevts <<
") is too large." << endl
1023 <<
"! Last event number = " << nlast <<
" > number of entries = " << nentries <<
". "
1029 cout <<
"!TEcnaRun::GetReadyToReadData(...) *** ERROR ***> "
1030 <<
" The first requested event number is greater than the number of entries."
1034 cout <<
"*TEcnaRun::GetReadyToReadData(...)> Leaving the method. fReadyToReadData = "
1064 const Int_t& i0StinEcha,
const Int_t& i0Sample,
1065 const Double_t& adcvalue)
1071 Bool_t ret_code = kFALSE;
1073 Int_t i0EventIndex = n1EventNumber - 1;
1074 Int_t i0StexStinEcna = n1StexStin - 1;
1080 if( n1StexStin>= 1 && n1StexStin <= fEcal->MaxStinEcnaInStex() )
1082 if( i0StinEcha >= 0 && i0StinEcha < fEcal->MaxCrysInStin() )
1108 cout << endl <<
"*TEcnaRun::BuildEventDistributions(...)> event " << n1EventNumber
1123 <<
" found), channel " << i0StinEcha <<
", i0Sample " << i0Sample << endl;
1129 cout <<
"!TEcnaRun::BuildEventDistributions(...)> *** ERROR ***> NOT ALLOWED if RESULT. "
1130 <<
" n1StexStin = " << n1StexStin <<
", fT1d_StexStinFromIndex["
1131 << i0StexStinEcna <<
"] = "
1141 cout <<
"!TEcnaRun, BuildEventDistributions *** ERROR ***> "
1143 <<
" fT1d_StexStinFromIndex[] ALLOCATION NOT DONE" <<
fTTBELL << endl;
1153 cout <<
"!TEcnaRun::BuildEventDistributions(...) *** ERROR ***> "
1154 <<
" sample number = " << i0Sample <<
". OUT OF BOUNDS"
1167 cout <<
"!TEcnaRun::BuildEventDistributions(...) *** ERROR ***> "
1168 <<
" channel number in " <<
fStinName.Data() <<
" = " << i0StinEcha <<
". OUT OF BOUNDS"
1176 cout <<
"!TEcnaRun::BuildEventDistributions(...) *** ERROR ***> "
1177 <<
fStinName.Data() <<
" number in " <<
fStexName.Data() <<
" = " << n1StexStin <<
". OUT OF BOUNDS"
1186 if( ret_code == kTRUE )
1205 if( i0StexEcha >= 0 && i0StexEcha < fEcal->MaxCrysEcnaInStex() )
1213 if ( i0EventIndex >= 0 && i0EventIndex < fFileHeader->fReqNbOfEvts )
1215 fT3d_distribs[i0StexEcha][i0Sample][i0EventIndex] = adcvalue;
1219 cout <<
"!TEcnaRun::BuildEventDistributions(...) *** ERROR ***> "
1220 <<
" event number = " << n1EventNumber <<
". OUT OF BOUNDS"
1228 cout <<
"!TEcnaRun::BuildEventDistributions(...) *** ERROR ***> "
1229 <<
" CHANNEL NUMBER OUT OF BOUNDS" << endl
1230 <<
" i0StexEcha number = " << i0StexEcha
1231 <<
" , n1StexStin = " << n1StexStin
1232 <<
" , i0StinEcha = " << i0StinEcha
1241 cout <<
"!TEcnaRun::BuildEventDistributions(...) *** ERROR ***> Nb of required samples = "
1247 cout <<
"!TEcnaRun::BuildEventDistributions(...) *** ERROR ***> ret_code = kFALSE "
1253 cout <<
"!TEcnaRun::BuildEventDistributions(...) *** ERROR ***> GetReadyToReadData(...) not called."
1258 if (ret_code == kFALSE)
1260 cout <<
"!TEcnaRun::BuildEventDistributions(...) > ret_code = " << ret_code <<
". event: " << n1EventNumber
1261 <<
", n1StexStin: " << n1StexStin
1262 <<
", i0StinEcha: " << i0StinEcha
1263 <<
", i0Sample: " << i0Sample
1264 <<
", adcvalue: " << adcvalue << endl;
1295 MyRootFile->
GetReadyToReadRootFile(fFileHeader->fTypAna, fFileHeader->fNbOfSamples, fFileHeader->fRunNumber,
1296 fFileHeader->fFirstReqEvtNumber, fFileHeader->fLastReqEvtNumber,
1297 fFileHeader->fReqNbOfEvts, fFileHeader->fStex,
1303 fFileHeader->fStopTime = MyRootFile->
GetStopTime();
1305 fFileHeader->fStopDate = MyRootFile->
GetStopDate();
1307 if ( ok_read == kTRUE )
1311 cout <<
"*TEcnaRun::ReadEventDistributions> Reading sample ADC values from file: " << endl
1314 Int_t i_no_data = 0;
1323 fFileHeader->fStinNumbersCalc = 1;
1334 {
for(Int_t
j=0;
j<fFileHeader->fNbOfSamples;
j++){partial_matrix(
i,
j)=(Double_t)0.;}}
1339 if(n1StexStin != -1)
1348 fFileHeader->fNbOfEvtsCalc = 1;
1352 for(Int_t i0Sample=0; i0Sample<fFileHeader->fNbOfSamples; i0Sample++)
1353 {
fT2d_NbOfEvts[i0StexEcha][i0Sample] = (Int_t)partial_matrix(i0StinCrys,i0Sample);}
1364 Double_t*** fT3d_read_distribs =
1372 for(Int_t i0Sample=0; i0Sample<fFileHeader->fNbOfSamples;i0Sample++)
1374 for(Int_t i_event=0; i_event<fFileHeader->fReqNbOfEvts; i_event++)
1376 fT3d_read_distribs[i0StexEcha][i0Sample][i_event];}
1384 if( i_no_data != 0 )
1386 cout <<
"!TEcnaRun::ReadEventDistributions(...)> *ERROR* =====> "
1387 <<
" Read failure. i_no_data = " << i_no_data <<
fTTBELL << endl;
1392 cout <<
"!TEcnaRun::ReadEventDistributions(...)> *ERROR* =====> "
1393 <<
" ROOT file not found" <<
fTTBELL << endl;
1453 cout <<
"*TEcnaRun::SampleValues()>"
1454 <<
" Sample ADC values 3D histo"
1455 <<
" (channel, sample, event number):" << endl
1456 <<
" registration for writing in results .root file."
1486 cout <<
"*TEcnaRun::GetReadyToCompute()> no data? fT2d_NbOfEvts = " <<
fT2d_NbOfEvts << endl;
1520 cout <<
" Calculation: sample expectation values over the events"
1521 <<
" for each channel." << endl;}
1529 for(Int_t
i = 0 ;
i < n_StexEcha ;
i++){
1537 if(
fT2d_ev[i0StexEcha][i0Sample] != (Double_t)0 )
1545 for (Int_t i0Sample = 0 ; i0Sample <
fNbSampForCalc ; i0Sample++)
1569 cout <<
" Calculation: sample ADC sigmas over the events "
1570 <<
" for each channel." << endl;}
1584 for(Int_t i0StexEcha = 0 ; i0StexEcha < n_StexEcha ; i0StexEcha++){
1592 if(
fT2d_sig[i0StexEcha][i0Sample] != (Double_t)0 )
1600 for (Int_t i0Sample = 0 ; i0Sample <
fNbSampForCalc ; i0Sample++)
1602 Double_t variance = (Double_t)0.;
1606 variance += ecart*ecart;
1634 cout <<
" Calculation: covariances between samples"
1635 <<
" for each channel." << endl;}
1644 for(Int_t
i = 0 ;
i < n_StexEcha ;
i++){
1646 for(Int_t
j = 0 ;
j < n_samp ;
j++){
1663 for (Int_t i0Sample = 0 ; i0Sample <
fNbSampForCalc ; i0Sample++)
1665 for (Int_t j0Sample = 0 ; j0Sample <= i0Sample; j0Sample++)
1667 fT3d_cov_ss[j0StexEcha][i0Sample][j0Sample] = (Double_t)0;
1674 fT3d_cov_ss[j0StexEcha][i0Sample][j0Sample] /= (Double_t)fNumberOfEvents;
1702 cout <<
" Calculation: correlations between samples"
1703 <<
" for each channel." << endl;}
1712 for(Int_t
i = 0 ;
i < n_StexEcha ;
i++){
1714 for(Int_t
j = 0 ;
j < n_samp ;
j++){
1723 for (Int_t i0Sample = 0 ; i0Sample <
fNbSampForCalc ; i0Sample++)
1725 for (Int_t j0Sample = 0 ; j0Sample <= i0Sample ; j0Sample++)
1727 if( (
fT3d_cov_ss[j0StexEcha][i0Sample][i0Sample] > 0) &&
1728 (
fT3d_cov_ss[j0StexEcha][j0Sample][j0Sample] > 0) )
1735 (
fT3d_cor_ss)[j0StexEcha][i0Sample][j0Sample] = (Double_t)0;
1776 cout <<
" Calculation, for all the channels, of the expectation values (over the samples 1 to "
1778 <<
" of the ADC expectation values (over the events)." << endl;}
1816 cout <<
" Calculation, for all the channels, of the expectation values (over the samples 1 to "
1818 <<
" of the ADC expectation values (over the events)." << endl;}
1824 if(
fT2d_sig[i0StexEcha][i0Sample] < 0)
1826 cout <<
"!TEcnaRun::TotalNoise() *** ERROR ***> Negative sigma!"
1868 cout <<
" Calculation, for each channel, of the sigma (over the events)" << endl
1869 <<
" of the ADC expectation values (over the samples 1 to "
1875 Double_t mean_over_events = (Double_t)0;
1879 mean_over_samples(n_event) = (Double_t)0.;
1882 mean_over_samples(n_event) +=
fT3d_distribs[i0StexEcha][i0Sample][n_event];
1884 mean_over_samples(n_event) /= (Double_t)fNbSampForCalc;
1886 mean_over_events += mean_over_samples(n_event);
1888 mean_over_events /= (Double_t)fNumberOfEvents;
1891 Double_t var = (Double_t)0;
1894 Double_t ecart = mean_over_samples(n_event) - mean_over_events;
1897 var /= (Double_t)fNumberOfEvents;
1929 TVectorD sigma_over_samples(fNumberOfEvents);
1935 cout <<
" Calculation, for each channel, of the sigma (over the events)" << endl
1936 <<
" of the ADC expectation values (over the samples 1 to "
1945 mean_over_samples(n_event) = (Double_t)0.;
1947 {mean_over_samples(n_event) +=
fT3d_distribs[i0StexEcha][i0Sample][n_event];}
1948 mean_over_samples(n_event) /= (Double_t)fNbSampForCalc;
1951 Double_t var_over_samples = (Double_t)0;
1953 {Double_t deviation =
fT3d_distribs[i0StexEcha][i0Sample][n_event] - mean_over_samples(n_event);
1954 var_over_samples += deviation*deviation;}
1955 var_over_samples /= (Double_t)fNbSampForCalc;
1957 if( var_over_samples < 0)
1958 {
cout <<
"!TEcnaRun::HighFrequencyNoise() *** ERROR ***> Negative variance! " <<
fTTBELL << endl;}
1960 {sigma_over_samples(n_event) =
sqrt(var_over_samples);}
2004 TVectorD half_cor_ss(ndim);
for(Int_t
i=0;
i<ndim;
i++){half_cor_ss(
i)=(Double_t)0.;}
2009 cout <<
" Calculation, for all the channels, of the expectation values of the" << endl
2010 <<
" correlations between the first " <<
fNbSampForCalc <<
" samples." << endl;}
2018 for (Int_t j0Sample = 0; j0Sample < i0Sample; j0Sample++)
2020 half_cor_ss(i_count) =
fT3d_cor_ss[i0StexEcha][i0Sample][j0Sample];
2026 for(Int_t i_rcor = 0; i_rcor < ndim; i_rcor++)
2065 cout <<
" Calculation of the sigmas of the (sample,sample)" << endl
2066 <<
" correlations for all the channels." << endl;}
2072 TVectorD half_cor_ss(ndim);
for(Int_t
i=0;
i<ndim;
i++){half_cor_ss(
i)=(Double_t)0.;}
2081 for (Int_t j0Sample = 0; j0Sample < i0Sample; j0Sample++)
2083 half_cor_ss(i_count) =
fT3d_cor_ss[i0StexEcha][i0Sample][j0Sample];
2089 Double_t var = (Double_t)0;
2090 for(Int_t i_rcor = 0; i_rcor < ndim; i_rcor++)
2092 Double_t ecart = half_cor_ss(i_rcor) -
fT1d_ev_cor_ss[i0StexEcha];
2095 var /= (Double_t)ndim;
2123 cout <<
" Calculation, for all the "
2124 <<
fStinName.Data() <<
"s, of the average of the Pedestals" << endl;}
2129 Int_t n1StexStinEcna = i0StexStinEcna+1;
2143 Int_t n1StinEcha = i0StinEcha+1;
2144 if( n1StexStinEcna == 10 && n1StinEcha == 11 )
2146 if( n1StexStinEcna == 11 && n1StinEcha == 11 )
2148 if( !( (n1StexStinEcna == 29 || n1StexStinEcna == 32) && n1StinEcha == 11 ) )
2152 Double_t xdivis = (Double_t)0.;
2184 cout <<
" Calculation, for all the "
2185 <<
fStinName.Data() <<
"s, of the average of the Total Noise" << endl;}
2190 Int_t n1StexStinEcna = i0StexStinEcna+1;
2204 Int_t n1StinEcha = i0StinEcha+1;
2205 if( n1StexStinEcna == 10 && n1StinEcha == 11 )
2207 if( n1StexStinEcna == 11 && n1StinEcha == 11 )
2209 if( !( (n1StexStinEcna == 29 || n1StexStinEcna == 32) && n1StinEcha == 11 ) )
2213 Double_t xdivis = (Double_t)0.;
2244 cout <<
" Calculation, for all the "
2245 <<
fStinName.Data() <<
"s, of the average of the Low Frequency Noise" << endl;}
2250 Int_t n1StexStinEcna = i0StexStinEcna+1;
2264 Int_t n1StinEcha = i0StinEcha+1;
2265 if( n1StexStinEcna == 10 && n1StinEcha == 11 )
2267 if( n1StexStinEcna == 11 && n1StinEcha == 11 )
2269 if( !( (n1StexStinEcna == 29 || n1StexStinEcna == 32) && n1StinEcha == 11 ) )
2273 Double_t xdivis = (Double_t)0.;
2304 cout <<
" Calculation, for all the "
2305 <<
fStinName.Data() <<
"s, of the average of the High Frequency Noise" << endl;}
2310 Int_t n1StexStinEcna = i0StexStinEcna+1;
2324 Int_t n1StinEcha = i0StinEcha+1;
2325 if( n1StexStinEcna == 10 && n1StinEcha == 11 )
2327 if( n1StexStinEcna == 11 && n1StinEcha == 11 )
2329 if( !( (n1StexStinEcna == 29 || n1StexStinEcna == 32) && n1StinEcha == 11 ) )
2333 Double_t xdivis = (Double_t)0.;
2364 cout <<
" Calculation, for all the "
2365 <<
fStinName.Data() <<
"s, of the average of the mean of cor(s,s)" << endl;}
2370 Int_t n1StexStinEcna = i0StexStinEcna+1;
2384 Int_t n1StinEcha = i0StinEcha+1;
2385 if( n1StexStinEcna == 10 && n1StinEcha == 11 )
2387 if( n1StexStinEcna == 11 && n1StinEcha == 11 )
2389 if( !( (n1StexStinEcna == 29 || n1StexStinEcna == 32) && n1StinEcha == 11 ) )
2393 Double_t xdivis = (Double_t)0.;
2424 cout <<
" Calculation, for all the "
2425 <<
fStinName.Data() <<
"s, of the average of the sigma of cor(s,s)" << endl;}
2430 Int_t n1StexStinEcna = i0StexStinEcna+1;
2444 Int_t n1StinEcha = i0StinEcha+1;
2445 if( n1StexStinEcna == 10 && n1StinEcha == 11 )
2447 if( n1StexStinEcna == 11 && n1StinEcha == 11 )
2449 if( !( (n1StexStinEcna == 29 || n1StexStinEcna == 32) && n1StinEcha == 11 ) )
2453 Double_t xdivis = (Double_t)0.;
2482 cout <<
" Calculation of the Low Frequency Covariances between channels" << endl;}
2489 for(Int_t i0StexEcha = 0 ; i0StexEcha < n_StexEcha ; i0StexEcha++){
2496 if(
fT2d_lf_cov[i0StexEcha][j0StexEcha] != (Double_t)0 )
2505 {mean_over_samples(i0StexEcha, n_event)=(Double_t)0.;}}
2509 { MoeOfMos(i0StexEcha)=(Double_t)0.;}
2513 cout <<
" Calculation, for each pair of channels, of the covariance (over the events)" << endl
2514 <<
" between the ADC expectation values (over the samples 1 to "
2521 MoeOfMos(i0StexEcha) = (Double_t)0;
2529 mean_over_samples(i0StexEcha, n_event) = (Double_t)0.;
2532 mean_over_samples(i0StexEcha, n_event) +=
fT3d_distribs[i0StexEcha][i0Sample][n_event];
2534 mean_over_samples(i0StexEcha, n_event) /= (Double_t)fNbSampForCalc;
2538 {MoeOfMos(i0StexEcha) += mean_over_samples(i0StexEcha, n_event);}
2539 MoeOfMos(i0StexEcha) /= (Double_t)fNumberOfEvents;
2549 for(Int_t j0StexEcha = 0; j0StexEcha <= i0StexEcha; j0StexEcha++)
2554 fT2d_lf_cov[i0StexEcha][j0StexEcha] = (Double_t)0;
2558 ( mean_over_samples(i0StexEcha, n_event) - MoeOfMos(i0StexEcha) )
2559 *( mean_over_samples(j0StexEcha, n_event) - MoeOfMos(j0StexEcha) );
2561 fT2d_lf_cov[i0StexEcha][j0StexEcha] /= (Double_t)fNumberOfEvents;
2566 if( i0StexEcha%100 == 0 ){
cout << i0StexEcha <<
"[LFN Cov], ";}
2589 cout <<
" Calculation of the Low Frequency Correlations between channels" << endl
2590 <<
" Starting allocation. "
2598 for(Int_t i0StexEcha = 0 ; i0StexEcha < n_StexEcha ; i0StexEcha++){
2606 if(
fT2d_lf_cor[i0StexEcha][j0StexEcha] != (Double_t)0 )
2618 for (Int_t j0StexEcha = 0 ; j0StexEcha <= i0StexEcha ; j0StexEcha++)
2633 fT2d_lf_cor[i0StexEcha][j0StexEcha] = (Double_t)0.;
2639 if( i0StexEcha%100 == 0 ){
cout << i0StexEcha <<
"[LFN Cor], ";}
2658 cout <<
" Calculation of the High Frequency Covariances between channels" << endl;}
2665 for(Int_t i0StexEcha = 0 ; i0StexEcha < n_StexEcha ; i0StexEcha++){
2673 if(
fT2d_hf_cov[i0StexEcha][j0StexEcha] != (Double_t)0 )
2682 {mean_over_samples(i0StexEcha, n_event)=(Double_t)0.;}}
2687 {cov_over_samp(i0StexEcha, j0StexEcha)=(Double_t)0.;}}
2691 cout <<
" Calculation of the mean (over the events)" << endl
2692 <<
" of the covariances between the channels (over the samples 1 to "
2705 mean_over_samples(i0StexEcha, n_event) = (Double_t)0.;
2707 {mean_over_samples(i0StexEcha, n_event) +=
fT3d_distribs[i0StexEcha][i0Sample][n_event];}
2708 mean_over_samples(i0StexEcha, n_event) /= (Double_t)fNbSampForCalc;
2711 if( i0StexEcha%100 == 0 ){
cout << i0StexEcha <<
"[HFNa Cov], ";}
2723 for(Int_t j0StexEcha = 0; j0StexEcha <= i0StexEcha; j0StexEcha++)
2731 cov_over_samp(i0StexEcha,j0StexEcha) = (Double_t)0;
2734 cov_over_samp(i0StexEcha,j0StexEcha) +=
2735 (
fT3d_distribs[i0StexEcha][i0Sample][n_event] - mean_over_samples(i0StexEcha, n_event) )*
2736 (
fT3d_distribs[j0StexEcha][i0Sample][n_event] - mean_over_samples(j0StexEcha, n_event) );
2738 cov_over_samp(i0StexEcha,j0StexEcha) /= (Double_t)fNbSampForCalc;
2743 fT2d_hf_cov[i0StexEcha][j0StexEcha] = (Double_t)0;
2746 fT2d_hf_cov[i0StexEcha][j0StexEcha] += cov_over_samp(i0StexEcha,j0StexEcha);
2748 fT2d_hf_cov[i0StexEcha][j0StexEcha] /= (Double_t)fNumberOfEvents;
2754 if( i0StexEcha%100 == 0 ){
cout << i0StexEcha <<
"[HFNb Cov], ";}
2777 cout <<
" Calculation of the High Frequency Correlations between channels" << endl
2778 <<
" Starting allocation. "
2786 for(Int_t i0StexEcha = 0 ; i0StexEcha < n_StexEcha ; i0StexEcha++){
2794 if(
fT2d_hf_cor[i0StexEcha][j0StexEcha] != (Double_t)0 )
2807 for (Int_t j0StexEcha = 0 ; j0StexEcha <= i0StexEcha ; j0StexEcha++)
2822 fT2d_hf_cor[i0StexEcha][j0StexEcha] = (Double_t)0.;
2829 if( i0StexEcha%100 == 0 ){
cout << i0StexEcha <<
"[HFN Cor], ";}
2865 cout <<
" Calculation of the mean, for each "
2866 <<
fStinName.Data() <<
", of the" << endl
2867 <<
" Low Frequency Correlations between channels." << endl;}
2874 for(Int_t i0StexStinEcna = 0 ; i0StexStinEcna < n_Stin ; i0StexStinEcna++){
2898 TVectorD half_LFccMos(ndim);
for(Int_t
i=0;
i<ndim;
i++){half_LFccMos(
i)=(Double_t)0.;}
2903 cout <<
" Calculation, for each "
2904 <<
fStinName.Data() <<
", of the mean of the" << endl
2905 <<
" Low Frequency cor(c,c)." << endl;}
2919 if( (i0StexEcha>= 0 && i0StexEcha < fEcal->MaxCrysEcnaInStex()) &&
2920 (j0StexEcha>= 0 && j0StexEcha < fEcal->MaxCrysEcnaInStex()) )
2921 {half_LFccMos(i_count) =
fT2d_lf_cor[i0StexEcha][j0StexEcha]; i_count++;}
2923 {
cout <<
"!TEcnaRun::LowFrequencyMeanCorrelationsBetweenStins()> Channel number out of range."
2924 <<
"i0StexEcha = " << i0StexEcha <<
", j0StexEcha = " << j0StexEcha <<
fTTBELL << endl; }
2929 for(Int_t i_rcor = 0; i_rcor < ndim; i_rcor++)
2931 fT2d_lfcc_mostins[i0StexStinEcna][j0StexStinEcna] += fabs(half_LFccMos(i_rcor));
2935 if( i0StexStinEcna%10 == 0 ){
cout << i0StexStinEcna <<
"[LFN MCtt], ";}
2963 cout <<
" Calculation of the mean, for each "
2965 <<
" High Frequency Correlations between channels." << endl;}
2972 for(Int_t i0StexStinEcna = 0 ; i0StexStinEcna < n_Stin ; i0StexStinEcna++){
2996 TVectorD half_HFccMos(ndim);
for(Int_t
i=0;
i<ndim;
i++){half_HFccMos(
i)=(Double_t)0.;}
3000 cout <<
" Calculation, for each "
3001 <<
fFlagSubDet.Data() <<
", of the mean of the" << endl
3002 <<
" High Frequency cor(c,c)." << endl;}
3017 if( (i0StexEcha>= 0 && i0StexEcha < fEcal->MaxCrysEcnaInStex()) &&
3018 (j0StexEcha>= 0 && j0StexEcha < fEcal->MaxCrysEcnaInStex()) )
3019 {half_HFccMos(i_count) =
fT2d_hf_cor[i0StexEcha][j0StexEcha]; i_count++;}
3021 {
cout <<
"!TEcnaRun::HighFrequencyMeanCorrelationsBetweenStins()> Channel number out of range."
3022 <<
"i0StexEcha = " << i0StexEcha <<
", j0StexEcha = " << j0StexEcha <<
fTTBELL << endl; }
3027 for(Int_t i_rcor = 0; i_rcor < ndim; i_rcor++)
3029 fT2d_hfcc_mostins[i0StexStinEcna][j0StexStinEcna] += fabs(half_HFccMos(i_rcor));
3033 if( i0StexStinEcna%10 == 0 ){
cout << i0StexStinEcna <<
"[HFN MCtt], ";}
3062 s_path.Append(name);
3065 Bool_t ok_open = kFALSE;
3072 cout <<
"TEcnaRun::OpenRootFile> Cannot open file " << s_path.Data() << endl;
3077 {
cout <<
"*TEcnaRun::OpenRootFile> Open ROOT file OK for file " << s_path.Data() << endl;}
3090 Bool_t ok_close = kFALSE;
3097 cout <<
"*TEcnaRun::CloseRootFile> Close ROOT file." << endl;}
3105 cout <<
"*TEcnaRun::CloseRootFile(...)> No close since no file is open."
3129 Bool_t ok_write = kFALSE;
3141 Int_t nCountEvts = 0;
3147 if ( nCountEvts <= 0 )
3151 <<
". File will not be written." << endl;
3157 cout <<
"*TEcnaRun::WriteRootFile()> Results are going to be written in the ROOT file: " << endl
3162 if( ok_write == kTRUE )
3186 Bool_t ok_write = kFALSE;
3202 cout <<
"*TEcnaRun::WriteNewRootFile()> Results are going to be written in the ROOT file: " << endl
3230 Bool_t ok_open = kFALSE;
3231 Bool_t ok_write = kFALSE;
3235 cout <<
"!TEcnaRun::WriteRootFile(...) *** ERROR ***> Writing on file already open."
3287 TString typ_name =
"?";
3288 Int_t v_nb_times = 0;
3289 Int_t v_dim_one = 0;
3290 Int_t v_dim_two = 0;
3293 Int_t v_tot_writ = 0;
3307 typ_name.Resize(MaxCar);
3308 typ_name =
"StinNumbers";
3312 v_size = v_nb_times*v_dim_one*v_dim_two;
3316 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3317 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3318 << setw(9) << v_size;}
3320 for (Int_t
i = 0;
i < v_nb_times;
i++)
3339 typ_name.Resize(MaxCar);
3344 v_size = v_nb_times*v_dim_one*v_dim_two;
3348 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3349 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3350 << setw(9) << v_size;}
3352 for (Int_t
i = 0;
i < v_nb_times;
i++)
3371 typ_name.Resize(MaxCar);
3376 v_size = v_nb_times*v_dim_one*v_dim_two;
3380 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3381 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3382 << setw(9) << v_size;}
3384 for (Int_t
i = 0;
i < v_nb_times;
i++)
3403 typ_name.Resize(MaxCar);
3408 v_size = v_nb_times*v_dim_one*v_dim_two;
3412 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3413 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3414 << setw(9) << v_size;}
3416 for (Int_t
i = 0;
i < v_nb_times;
i++)
3435 typ_name.Resize(MaxCar);
3440 v_size = v_nb_times*v_dim_one*v_dim_two;
3444 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3445 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3446 << setw(9) << v_size;}
3448 for (Int_t
i = 0;
i < v_nb_times;
i++)
3467 typ_name.Resize(MaxCar);
3468 typ_name =
"AvMeanCorss";
3472 v_size = v_nb_times*v_dim_one*v_dim_two;
3476 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3477 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3478 << setw(9) << v_size;}
3480 for (Int_t
i = 0;
i < v_nb_times;
i++)
3499 typ_name.Resize(MaxCar);
3500 typ_name =
"AvSigCorss";
3504 v_size = v_nb_times*v_dim_one*v_dim_two;
3508 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3509 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3510 << setw(9) << v_size;}
3512 for (Int_t
i = 0;
i < v_nb_times;
i++)
3531 typ_name.Resize(MaxCar);
3536 v_size = v_nb_times*v_dim_one*v_dim_two;
3540 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3541 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3542 << setw(9) << v_size;}
3544 for (Int_t
i = 0;
i < v_nb_times;
i++)
3563 typ_name.Resize(MaxCar);
3568 v_size = v_nb_times*v_dim_one*v_dim_two;
3572 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3573 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3574 << setw(9) << v_size;}
3576 for (Int_t
i = 0;
i < v_nb_times;
i++)
3595 typ_name.Resize(MaxCar);
3596 typ_name =
"MeanCorss";
3600 v_size = v_nb_times*v_dim_one*v_dim_two;
3604 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3605 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3606 << setw(9) << v_size;}
3608 for (Int_t
i = 0;
i < v_nb_times;
i++)
3627 typ_name.Resize(MaxCar);
3632 v_size = v_nb_times*v_dim_one*v_dim_two;
3636 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3637 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3638 << setw(9) << v_size;}
3640 for (Int_t
i = 0;
i < v_nb_times;
i++)
3659 typ_name.Resize(MaxCar);
3664 v_size = v_nb_times*v_dim_one*v_dim_two;
3668 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3669 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3670 << setw(9) << v_size;}
3672 for (Int_t
i = 0;
i < v_nb_times;
i++)
3691 typ_name.Resize(MaxCar);
3692 typ_name =
"SigCorss";
3696 v_size = v_nb_times*v_dim_one*v_dim_two;
3700 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3701 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3702 << setw(9) << v_size;}
3704 for (Int_t
i = 0;
i < v_nb_times;
i++)
3723 typ_name.Resize(MaxCar);
3724 typ_name =
"LFccMoStins";
3728 v_size = v_nb_times*v_dim_one*v_dim_two;
3732 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3733 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3734 << setw(9) << v_size;}
3736 for (Int_t
i = 0;
i < v_nb_times;
i++)
3755 typ_name.Resize(MaxCar);
3756 typ_name =
"HFccMoStins";
3760 v_size = v_nb_times*v_dim_one*v_dim_two;
3764 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3765 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3766 << setw(9) << v_size;}
3768 for (Int_t
i = 0;
i < v_nb_times;
i++)
3787 typ_name.Resize(MaxCar);
3788 typ_name =
"NbOfEvts";
3791 v_dim_two = argNbSampWrite;
3792 v_size = v_nb_times*v_dim_one*v_dim_two;
3796 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3797 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3798 << setw(9) << v_size;}
3800 for (Int_t
i = 0;
i < v_nb_times;
i++)
3819 typ_name.Resize(MaxCar);
3823 v_dim_two = argNbSampWrite;
3824 v_size = v_nb_times*v_dim_one*v_dim_two;
3828 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3829 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3830 << setw(9) << v_size;}
3832 for (Int_t
i = 0;
i < v_nb_times;
i++)
3851 typ_name.Resize(MaxCar);
3855 v_dim_two = argNbSampWrite;
3856 v_size = v_nb_times*v_dim_one*v_dim_two;
3860 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3861 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3862 << setw(9) << v_size;}
3864 for (Int_t
i = 0;
i < v_nb_times;
i++)
3884 typ_name.Resize(MaxCar);
3885 typ_name =
"CovCss";
3887 v_dim_one = argNbSampWrite;
3888 v_dim_two = argNbSampWrite;
3889 v_size = v_nb_times*v_dim_one*v_dim_two;
3893 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3894 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3895 << setw(9) << v_size;}
3897 for (Int_t i0StexEcha = 0; i0StexEcha < v_nb_times; i0StexEcha++)
3908 {
cout <<
" => WRITTEN ON FILE "; v_tot_writ += v_size;}
3917 typ_name.Resize(MaxCar);
3918 typ_name =
"CorCss";
3920 v_dim_one = argNbSampWrite;
3921 v_dim_two = argNbSampWrite;
3922 v_size = v_nb_times*v_dim_one*v_dim_two;
3926 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3927 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3928 << setw(9) << v_size;}
3930 for (Int_t i0StexEcha = 0; i0StexEcha < v_nb_times; i0StexEcha++)
3941 {
cout <<
" => WRITTEN ON FILE "; v_tot_writ += v_size;}
3950 typ_name.Resize(MaxCar);
3951 typ_name =
"AdcEvt";
3953 v_dim_one = argNbSampWrite;
3955 v_size = v_nb_times*v_dim_one*v_dim_two;
3959 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3960 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3961 << setw(9) << v_size;}
3963 for (Int_t i0StexEcha = 0; i0StexEcha < v_nb_times; i0StexEcha++)
3974 {
cout <<
" => WRITTEN ON FILE "; v_tot_writ += v_size;}
3983 typ_name.Resize(MaxCar);
3988 v_size = v_nb_times*v_dim_one*v_dim_two;
3992 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
3993 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
3994 << setw(9) << v_size;}
3996 for (Int_t
i = 0;
i < v_nb_times;
i++)
4015 typ_name.Resize(MaxCar);
4020 v_size = v_nb_times*v_dim_one*v_dim_two;
4024 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
4025 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
4026 << setw(9) << v_size;}
4028 for (Int_t
i = 0;
i < v_nb_times;
i++)
4047 typ_name.Resize(MaxCar);
4052 v_size = v_nb_times*v_dim_one*v_dim_two;
4056 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
4057 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
4058 << setw(9) << v_size;}
4060 for (Int_t
i = 0;
i < v_nb_times;
i++)
4079 typ_name.Resize(MaxCar);
4084 v_size = v_nb_times*v_dim_one*v_dim_two;
4088 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(18) << typ_name <<
": " << setw(4) << v_nb_times
4089 <<
" * (" << setw(4) << v_dim_one <<
"," << setw(4) << v_dim_two <<
") = "
4090 << setw(9) << v_size;}
4092 for (Int_t
i = 0;
i < v_nb_times;
i++)
4115 cout <<
"*TEcnaRun::WriteRootFile(...)> " << setw(20) <<
"TOTAL: "
4116 << setw(21) <<
"CALCULATED = " << setw(9) << v_tot
4117 <<
" => WRITTEN ON FILE = " << setw(9) << v_tot_writ << endl;}
4120 cout <<
"*TEcnaRun::WriteRootFile(...)> Write OK in file " << file_name <<
" in directory:" << endl
4164 for (Int_t i0Sample = 0; i0Sample < argNbSampWrite; i0Sample++)
4183 for (Int_t i0Sample = 0; i0Sample < argNbSampWrite; i0Sample++)
4212 for (Int_t i0Sample = 0; i0Sample < argNbSampWrite; i0Sample++)
4215 fT2d_ev[j0StexEcha][i0Sample];
4233 for (Int_t i0Sample=0; i0Sample<argNbSampWrite; i0Sample++)
4434 for (Int_t i0Sample = 0; i0Sample < argNbSampWrite; i0Sample++)
4436 for (Int_t j0Sample = 0; j0Sample < argNbSampWrite; j0Sample++)
4455 for (Int_t i0Sample = 0; i0Sample < argNbSampWrite; i0Sample++)
4457 for (Int_t j0Sample = 0; j0Sample < argNbSampWrite; j0Sample++)
4647 cout <<
"*TEcnaRun::PrintComments()> Warnings and some comments on init will be printed" << endl;
4655 cout <<
"*TEcnaRun::PrintWarnings()> Warnings will be printed" << endl;
4663 cout <<
"*TEcnaRun::PrintAllComments()> All the comments will be printed" << endl;
void TRootAdcEvt(const Int_t &, const Int_t &)
Double_t * fT1d_av_sig_corss
void LowFrequencyMeanCorrelationsBetweenSCs()
TCnaResultType * fCnaIndivResult
Int_t fCodePrintNoComment
void HighFrequencyMeanCorrelationsBetweenStins()
Double_t * fT1d_sigevt_of_evsamp
void HighFrequencyMeanCorrelationsBetweenTowers()
Int_t fBuildEvtNotSkipped
void CovariancesBetweenSamples()
Double_t * fT3d1_distribs
Bool_t OpenRootFile(const Text_t *, TString)
TEcnaParCout * fCnaParCout
Int_t fCodePrintAllComments
void TRootSSp(const Int_t &)
Double_t * fT1d_sig_cor_ss
Double_t ** fT3d2_distribs
void SetEcalSubDetector(const TString)
TEcnaHeader * fFileHeader
void LowFrequencyMeanCorrelationsBetweenTowers()
void TRootCovCss(const Int_t &, const Int_t &)
TString GetRootFileNameShort()
Int_t * fT1dCrysNumbersTable
Double_t * fT1d_av_ev_corss
Double_t ** fT2d_hfcc_mostins
Bool_t ReadEventDistributions()
void GetReadyToReadRootFile(TString, const Int_t &, const Int_t &, const Int_t &, const Int_t &, const Int_t &, const Int_t &, TString)
void SigmaOfCorrelationsBetweenSamples()
Double_t *** fT3d_distribs
void AveragedLowFrequencyNoise()
TString fRootFileNameShort
void RegisterFileParameters(const TString, const Int_t &, const Int_t &, const Int_t &, const Int_t &, const Int_t &, const Int_t &, const TString, const TString, const time_t, const time_t)
Bool_t CloseRootFile(const Text_t *)
TString GetRootFileNameShort()
void AveragedMeanOfCorrelationsBetweenSamples()
void TRootMSp(const Int_t &)
Int_t NumberOfEvents(Int_t **, const Int_t &, const Int_t &, const Int_t &)
Int_t GetCodePrint(const TString)
TVectorD ReadStinNumbers(const Int_t &)
void GetReadyToReadData(TString, const Int_t &, const Int_t &, const Int_t &, const Int_t &, const Int_t &)
void TRootCorCss(const Int_t &, const Int_t &)
Int_t GetStexStinFromIndex(const Int_t &)
TEcnaParPaths * fCnaParPaths
Int_t fMaxMsgIndexForMiscDiag
Double_t * fT2d1_hfcc_mostins
Int_t fSpecialStexStinNotIndexed
void HighFrequencyCorrelationsBetweenChannels()
Bool_t WriteNewRootFile(const TString)
TString GetRootFileName()
Int_t StexEchaForCons(const Int_t &, const Int_t &)
void MeanOfCorrelationsBetweenSamples()
TString GetRootFileName()
void LowFrequencyMeanCorrelationsBetweenStins()
Int_t MaxCrysInStinEcna(const Int_t &, const Int_t &, const TString)
Double_t * fT1d_evsamp_of_sigevt
TString GetNewRootFileNameShort()
void AveragedHighFrequencyNoise()
Bool_t BuildEventDistributions(const Int_t &, const Int_t &, const Int_t &, const Int_t &, const Double_t &)
TMatrixD ReadNumberOfEventsForSamples(const Int_t &, const Int_t &, const Int_t &)
Bool_t OpenW(const Text_t *="")
void HighFrequencyMeanCorrelationsBetweenSCs()
void HighFrequencyCovariancesBetweenChannels()
Double_t * fT2d1_lfcc_mostins
TString GetNewRootFileName()
TString fNewRootFileNameShort
TString ResultsRootFilePath()
Int_t MaxCrysEcnaInStex()
void TRootNbOfEvts(const Int_t &)
Double_t *** ReadSampleValuesSameFile(const Int_t &, const Int_t &, const Int_t &)
void HighFrequencyNoise()
Int_t Get0StexEchaFrom1StexStinAnd0StinEcha(const Int_t &, const Int_t &)
void LowFrequencyCovariancesBetweenChannels()
void LowFrequencyCorrelationsBetweenChannels()
R__EXTERN TCnaRootFile * gCnaRootFile
Int_t MaxStinEcnaInStex()
TString GetRootFileNameShort()
void CorrelationsBetweenSamples()
void StartStopDate(TString, TString)
void AveragedTotalNoise()
void fMakeResultsFileName()
Bool_t OpenR(const Text_t *="")
Int_t ** fT2dCrysNumbersTable
TString GetRootFileName()
void AveragedSigmaOfCorrelationsBetweenSamples()
Int_t fNbOfMiscDiagCounters
Int_t * fT1d_StexStinFromIndex
void StartStopTime(time_t, time_t)
Double_t * fT1d_evevt_of_sigsamp
TEcnaNumbering * fEcalNumbering
Double_t * fT1d_ev_cor_ss
TString fRootFileNameShort
Double_t ** fT2d_lfcc_mostins