diff --git a/core/base/CbmMatchRecoToMC.cxx b/core/base/CbmMatchRecoToMC.cxx index 06cde85da1ee0e3ee38d452b341e05690a5c63ab..bfc38f266550d183ff2116ed9ab1b400728566b0 100644 --- a/core/base/CbmMatchRecoToMC.cxx +++ b/core/base/CbmMatchRecoToMC.cxx @@ -397,21 +397,18 @@ void CbmMatchRecoToMC::ReadAndCreateDataBranches() { // TOF fTofPoints = mcManager->InitBranch("TofPoint"); - fTofHitDigiMatches = - static_cast<TClonesArray*>(ioman->GetObject("TofHitDigiMatch")); + fTofHitDigiMatches = static_cast<TClonesArray*>(ioman->GetObject("TofHitDigiMatch")); /// FIXME: Temporary fix to catch all versions of the TOF Hit to Digi Match /// array. To be removed after a full review of the TOF reco if (nullptr == fTofHitDigiMatches) { - fTofHitDigiMatches = - static_cast<TClonesArray*>(ioman->GetObject(" TofCalDigiMatch")); + fTofHitDigiMatches = static_cast<TClonesArray*>(ioman->GetObject("TofCalDigiMatch")); if (nullptr == fTofHitDigiMatches) { LOG(warning) << "CbmMatchRecoToMC::ReadAndCreateDataBranches()" << " no TOF Hit to Digi array found!"; } // if (nullptr == fTofHitDigiMatches) else { - LOG(info) - << "CbmMatchRecoToMC: Using alternative TOF Hit to Digi match array!"; + LOG(info) << "CbmMatchRecoToMC: Using alternative TOF Hit to Digi match array!"; } // else of if (nullptr == fTofHitDigiMatches) } // if (nullptr == fTofHitDigiMatches) @@ -529,15 +526,19 @@ void CbmMatchRecoToMC::MatchHitsTof(const TClonesArray* HitDigiMatches, Int_t iDigiIdx = lDigi.GetIndex(); if (iNbTofDigis <= iDigiIdx) { - LOG(error) - << "CbmTofHitFinderQa::FillHistos => Digi index from Hit #" << iHit - << " is bigger than nb entries in Digis arrays => ignore it!!!"; + LOG(error) << "CbmMatchRecoToMC::MatchHitsTof => Digi index from Hit #" << iHit + << " is bigger than nb entries in Digis arrays => ignore it!!!"; continue; } // if( iNbTofDigis <= iDigiIdx ) pTofDigi = fDigiManager->Get<CbmTofDigi>(iDigiIdx); pMatchDigiPnt = fDigiManager->GetMatch(ECbmModuleId::kTof, iDigiIdx); Int_t iNbPointsDigi = pMatchDigiPnt->GetNofLinks(); + if (iNbPointsDigi <= 0) { + LOG(error) << "CbmMatchRecoToMC::MatchHitsTof => No entries in Digi to point match for Hit #" << iHit << ": " + << iNbPointsDigi << " (digi index is " << iDigiIdx << "/" << iNbTofDigis << " => ignore it!!!"; + continue; + } // if( iNbTofDigis <= iDigiIdx ) CbmLink lTruePoint = pMatchDigiPnt->GetMatchedLink(); // Point generating the Digi Int_t iTruePointIdx = lTruePoint.GetIndex(); diff --git a/macro/mcbm/mcbm_digi.C b/macro/mcbm/mcbm_digi.C index 037bdf65a331d07edc41a92b6b015d1c13392d79..c9b286f54bb2f9a979eb58a047166f2442783a84 100644 --- a/macro/mcbm/mcbm_digi.C +++ b/macro/mcbm/mcbm_digi.C @@ -28,12 +28,13 @@ **/ -void mcbm_digi(Int_t nEvents = 3, // Number of events to process - TString dataSet = "data/test", // Data set for file names - Double_t eventRate = 1.e7, // Interaction rate [1/s] - Double_t timeSliceLength = 1.e4, // Length of time-slice [ns] - Bool_t eventMode = kTRUE // Event-by-event mode -) { +void mcbm_digi(Int_t nEvents = 3, // Number of events to process + TString dataSet = "data/test", // Data set for file names + Double_t eventRate = 1.e7, // Interaction rate [1/s] + Double_t timeSliceLength = 1.e4, // Length of time-slice [ns] + Bool_t eventMode = kTRUE // Event-by-event mode +) +{ // --- Logger settings ---------------------------------------------------- FairLogger::GetLogger()->SetLogScreenLevel("INFO"); diff --git a/macro/mcbm/mcbm_hadron_analysis.C b/macro/mcbm/mcbm_hadron_analysis.C index 4d8fa753e10eaf052939a8c721fc15f307ddbf9c..3c99633099e04c0ca0cb1223a67f8b0ed73902b4 100644 --- a/macro/mcbm/mcbm_hadron_analysis.C +++ b/macro/mcbm/mcbm_hadron_analysis.C @@ -1,6 +1,5 @@ -void mcbm_hadron_analysis(Int_t nEvents = 10, - TString setup = "mcbm_beam_2020_03", - const char* output = "data/test") { +void mcbm_hadron_analysis(Int_t nEvents = 10, TString setup = "mcbm_beam_2020_03", const char* output = "data/test") +{ TString dataset(output); TString InputFile = dataset + ".tra.root"; TString DigiFile = dataset + ".event.raw.root"; diff --git a/macro/mcbm/mcbm_match_check.C b/macro/mcbm/mcbm_match_check.C index 17d2ed54c16e864745b978f37cde16b1c4a49997..fcf4bdbb00a4973acae4c9a77a75b7a8e4b86630 100644 --- a/macro/mcbm/mcbm_match_check.C +++ b/macro/mcbm/mcbm_match_check.C @@ -1,6 +1,5 @@ -void mcbm_match_check(Int_t nEvents = 10, - TString setup = "mcbm_beam_2020_03", - const char* output = "data/test") { +void mcbm_match_check(Int_t nEvents = 10, TString setup = "mcbm_beam_2020_03", const char* output = "data/test") +{ TString dataset(output); TString InputFile = dataset + ".tra.root"; TString DigiFile = dataset + ".event.raw.root"; @@ -58,9 +57,7 @@ void mcbm_match_check(Int_t nEvents = 10, std::cout << "Macro finished successfully." << std::endl; std::cout << "Output file is " << OutFile << std::endl; std::cout << "Parameter file is " << ParFile << std::endl; - std::cout << "Real time " << rtime << " s, CPU time " << ctime << "s" - << std::endl - << std::endl; + std::cout << "Real time " << rtime << " s, CPU time " << ctime << "s" << std::endl << std::endl; // ------------------------------------------------------------------------ // ----- Resource monitoring ------------------------------------------ diff --git a/macro/mcbm/mcbm_reco_event.C b/macro/mcbm/mcbm_reco_event.C index 22499e2ead37a12331dc305749397f29268e4c47..8da61069eedc3132f2e77e4efe60cd9a7f6055ae 100644 --- a/macro/mcbm/mcbm_reco_event.C +++ b/macro/mcbm/mcbm_reco_event.C @@ -13,9 +13,8 @@ // -------------------------------------------------------------------------- -void mcbm_reco_event(Int_t nEvents = 3, - TString dataset = "data/test", - const char* setupName = "mcbm_beam_2020_03") { +void mcbm_reco_event(Int_t nEvents = 3, TString dataset = "data/test", const char* setupName = "mcbm_beam_2020_03") +{ // ======================================================================== // Adjust this part according to your requirements diff --git a/macro/mcbm/mcbm_transport.C b/macro/mcbm/mcbm_transport.C index fcc358296796e81eae10088ef6fd0754d84237a1..46b5c5b6268dc690c3a87099de93fc64ba374ab5 100644 --- a/macro/mcbm/mcbm_transport.C +++ b/macro/mcbm/mcbm_transport.C @@ -14,14 +14,12 @@ void SetTrack(CbmTransport*, Double_t, Int_t, Double_t, Double_t, Double_t); -void mcbm_transport( - Int_t nEvents = 10, - const char* setupName = "mcbm_beam_2020_03", - // const char* setupName = "mcbm_beam_2019_11", - // const char* setupName = "mcbm_beam_2019_03", - // const char* setupName = "sis18_mcbm_25deg_long", - const char* output = "data/test", - const char* inputFile = "") { +void mcbm_transport(Int_t nEvents = 10, const char* setupName = "mcbm_beam_2020_03", + // const char* setupName = "mcbm_beam_2019_11", + // const char* setupName = "mcbm_beam_2019_03", + // const char* setupName = "sis18_mcbm_25deg_long", + const char* output = "data/test", const char* inputFile = "") +{ // --- Define the beam angle ---------------------------------------------- Double_t beamRotY = 25.; // ------------------------------------------------------------------------