X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONCheck.cxx;h=af096200aa020cc2c1b2786a01181c2b07a0b96b;hb=b44d42aef3ae7543fdd2d313a9d91fea53c13d82;hp=fc47a06929dfeddeceebbdae5ff5ef453404af4a;hpb=1130977f00806b6ef0a0fa061ae98290455aa6ab;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONCheck.cxx b/MUON/AliMUONCheck.cxx index fc47a06929d..af096200aa0 100644 --- a/MUON/AliMUONCheck.cxx +++ b/MUON/AliMUONCheck.cxx @@ -63,12 +63,22 @@ ClassImp(AliMUONCheck) /// \endcond +//_____________________________________________________________________________ +const TString& AliMUONCheck::GetDefaultOutFileName() +{ + /// Default output file name + static const TString kDefaultOutFileName = "output.txt"; + return kDefaultOutFileName; +} + +//_____________________________________________________________________________ AliMUONCheck::AliMUONCheck(const char* galiceFile, const char* esdFile,Int_t firstEvent, Int_t lastEvent,const char* outDir) : TObject(), fFileName(galiceFile), fFileNameSim(), fesdFileName(esdFile), fkOutDir(outDir), +fOutFileName(GetDefaultOutFileName()), fFirstEvent(firstEvent), fLastEvent(lastEvent) { @@ -84,6 +94,7 @@ fFileName(galiceFile), fFileNameSim(galiceFileSim), fesdFileName(esdFile), fkOutDir(outDir), +fOutFileName(GetDefaultOutFileName()), fFirstEvent(firstEvent), fLastEvent(lastEvent) { @@ -336,8 +347,7 @@ AliMUONCheck::CheckESD(Bool_t pdc06TriggerResponse) gSystem->cd(fkOutDir); - FILE *outtxt=fopen("output.txt","a"); - freopen("output.txt","a",outtxt); + FILE *outtxt=fopen(fOutFileName.Data(),"a"); if(pdc06TriggerResponse){ fprintf(outtxt," \n"); @@ -450,7 +460,7 @@ AliMUONCheck::CheckKine() p->Print(""); Int_t pdg=p->GetPdgCode(); - if (abs(pdg) == 13) + if (TMath::Abs(pdg) == 13) { ++nmu2; } @@ -518,8 +528,7 @@ AliMUONCheck::CheckKine() printf("**************************************************************** \n"); gSystem->cd(fkOutDir); - FILE *outtxt=fopen("output.txt","a"); - freopen("output.txt","a",outtxt); + FILE *outtxt=fopen(fOutFileName.Data(),"a"); fprintf(outtxt," \n"); fprintf(outtxt,"=================================================================\n"); fprintf(outtxt,"================ MUONkine SUMMARY ================\n"); @@ -779,16 +788,18 @@ AliMUONCheck::CheckOccupancy(Bool_t perDetEle) const // Output values - for ( Int_t ichamber = 0; ichamber < 14; ++ichamber ) + for ( Int_t ichamber = 0; ichamber < nchambers; ++ichamber ) { printf(">>> Chamber %2d nChannels Bending %5d nChannels NonBending %5d \n", ichamber+1, cHoccupancyBending[ichamber], - cHoccupancyNonBending[ichamber]); - printf(">>> Chamber %2d Occupancy Bending %5.2f %% Occupancy NonBending %5.2f %% \n", - ichamber+1, - 100.*((Float_t) cHoccupancyBending[ichamber])/((Float_t) cHchannelsBending[ichamber]), - 100.*((Float_t) cHoccupancyNonBending[ichamber])/((Float_t) cHchannelsBending[ichamber]) ); + cHoccupancyNonBending[ichamber]); + if ( cHchannelsBending[ichamber] != 0 && cHchannelsBending[ichamber] ) { + printf(">>> Chamber %2d Occupancy Bending %5.2f %% Occupancy NonBending %5.2f %% \n", + ichamber+1, + 100.*((Float_t) cHoccupancyBending[ichamber])/((Float_t) cHchannelsBending[ichamber]), + 100.*((Float_t) cHoccupancyNonBending[ichamber])/((Float_t) cHchannelsBending[ichamber])); + } if ( perDetEle ) { @@ -801,19 +812,23 @@ AliMUONCheck::CheckOccupancy(Bool_t perDetEle) const idetele+100*(ichamber+1), dEoccupancyBending[ichamber][idetele], dEoccupancyNonBending[ichamber][idetele]); - printf(">>> DetEle %4d Occupancy Bending %5.2f %% Occupancy NonBending %5.2f %% \n", - idetele+100*(ichamber+1), - 100.*((Float_t) dEoccupancyBending[ichamber][idetele])/((Float_t) dEchannelsBending[ichamber][idetele]), - 100.*((Float_t) dEoccupancyNonBending[ichamber][idetele])/((Float_t) dEchannelsBending[ichamber][idetele])); + + if ( dEchannelsBending[ichamber][idetele] != 0 && dEchannelsBending[ichamber][idetele] !=0 ) { + printf(">>> DetEle %4d Occupancy Bending %5.2f %% Occupancy NonBending %5.2f %% \n", + idetele+100*(ichamber+1), + 100.*((Float_t) dEoccupancyBending[ichamber][idetele])/((Float_t) dEchannelsBending[ichamber][idetele]), + 100.*((Float_t) dEoccupancyNonBending[ichamber][idetele])/((Float_t) dEchannelsBending[ichamber][idetele])); + } } } } } - printf(">>> Muon Spectrometer Occupancy Bending %5.2f %% Occupancy NonBending %5.2f %% \n", - 100.*((Float_t) totaloccupancyBending)/((Float_t) totalchannelsBending), - 100.*((Float_t) totaloccupancyNonBending)/((Float_t) totalchannelsNonBending) ); - + if ( totalchannelsBending != 0 && totalchannelsNonBending != 0 ) { + printf(">>> Muon Spectrometer Occupancy Bending %5.2f %% Occupancy NonBending %5.2f %% \n", + 100.*((Float_t) totaloccupancyBending)/((Float_t) totalchannelsBending), + 100.*((Float_t) totaloccupancyNonBending)/((Float_t) totalchannelsNonBending)); + } } //_____________________________________________________________________________