|
CbmRoot
|
Task for detailed charge-size analysis of STS hits. More...
#include <CbmStsHitAna.h>
Public Member Functions | |
| CbmStsHitAna () | |
| ~CbmStsHitAna ()=default | |
| CbmStsHitAna (std::string cal_par_file) | |
| Constructor. | |
| InitStatus | Init () |
| void | Exec (Option_t *) |
| void | Finish () |
| void | SetCutMap (CbmCutMap *map) |
| Set the cut map for analysis. | |
| void | UserAlignment (const std::map< int32_t, std::vector< double > > &user_mat) |
| User defined sensor translations. | |
| virtual void | DrawResults () |
| Virtual function to draw analysis results. | |
Protected Member Functions | |
| void | LoadSetup () |
| Load the STS setup and fill the map with XYZ boundaries for each STS setup element. It maps the first z strip for each module depending on the size of the sensor. | |
| void | SaveToFile () |
| It write all mapped objects to the FairRunAna sink file. | |
| ClassDef (CbmStsAnaBase, 1) | |
Protected Attributes | |
| uint | entry_ {0} |
| std::unique_ptr< TFile > | fReportFile |
| std::unordered_set< int32_t > | fAddressBook |
| std::map< std::string, std::unique_ptr< TGraphErrors > > | fG1D |
| std::map< std::string, std::unique_ptr< TH1D > > | fH1D |
| std::map< std::string, std::unique_ptr< TH2D > > | fH2D |
| std::map< std::string, std::shared_ptr< TH2D > > | fH2DShared |
| std::map< std::string, std::unique_ptr< TCanvas > > | fCanvas |
| int | nb_sts_station_ {8} |
| std::unordered_map< int32_t, std::vector< double > > | fStsGeoInfo |
| std::map< int32_t, std::vector< double > > | fUserAlignment |
| std::unordered_map< int32_t, int > | fFirstZStrip |
| CbmCutMap * | fAnalysisCuts {nullptr} |
| int | fRunId {-1} |
Private Member Functions | |
| void | BookHistograms (int32_t) |
| void | ProcessEvent (CbmEvent *) |
| Process an Cbm events It filters event based on the provided CbmCutMap. | |
| void | ProcessHit (CbmStsHit *hit, bool belong_to_trk=false) |
| Process an STS hit It filters hits based on the provided CbmCutMap and fill the corresponding histogram. | |
| void | ProcessGlobalTrack (CbmGlobalTrack *) |
| Process an STS hit attached to a Track It filters hits based on the provided CbmCutMap and check the track filters. | |
| ClassDef (CbmStsHitAna, 1) | |
Private Attributes | |
| uint32_t | fMaxCluSize {10} |
| std::vector< const char * > | fHitModifier |
| std::unique_ptr< CbmStsParSetModule > | fModuleParSet |
| std::string | fCalibrationFile |
| TClonesArray * | fCbmEvtArray {nullptr} |
| TClonesArray * | fGlbTrkArray {nullptr} |
| TClonesArray * | fStsTrkArray {nullptr} |
| TClonesArray * | fRchTrkArray {nullptr} |
| TClonesArray * | fMchTrkArray {nullptr} |
| TClonesArray * | fTrdTrkArray {nullptr} |
| TClonesArray * | fTofTrkArray {nullptr} |
| TClonesArray * | fStsHitArray {nullptr} |
| TClonesArray * | fStsCluArray {nullptr} |
Task for detailed charge-size analysis of STS hits.
This class inherits from FairTask and CbmStsAnaBase and is designed to perform detailed analysis of charge and size correlations in STS (Silicon Tracking System) hits.
Key functionalities include:
Definition at line 51 of file CbmStsHitAna.h.
| CbmStsHitAna::CbmStsHitAna | ( | ) |
|
default |
| CbmStsHitAna::CbmStsHitAna | ( | std::string | cal_par_file | ) |
Constructor.
| cal_par_file | charge calibration file |
Definition at line 15 of file CbmStsHitAna.cxx.
References fHitModifier.
|
private |
Definition at line 47 of file CbmStsHitAna.cxx.
References cbm_sts_utils::ChargeBinning(), CbmStsAnaBase::fH1D, CbmStsAnaBase::fH2D, fHitModifier, fMaxCluSize, fModuleParSet, CbmStsAnaBase::fStsGeoInfo, cbm_sts_utils::kStsClock, cbm_sts_utils::kStsDx, and cbm_sts_utils::kStsDy.
Referenced by ProcessHit().
|
protectedinherited |
References CbmStsAnaBase().
|
private |
References CbmStsHitAna().
|
inlinevirtualinherited |
Virtual function to draw analysis results.
Reimplemented in CbmStsTimeCal.
Definition at line 65 of file CbmStsAnaBase.h.
| void CbmStsHitAna::Exec | ( | Option_t * | ) |
Definition at line 209 of file CbmStsHitAna.cxx.
References CbmStsAnaBase::entry_, fCbmEvtArray, fStsHitArray, kGlobalTrack, kStsHit, ProcessEvent(), and ProcessHit().
| void CbmStsHitAna::Finish | ( | ) |
Definition at line 236 of file CbmStsHitAna.cxx.
References CbmStsAnaBase::fH1D, CbmStsAnaBase::fH2D, and CbmStsAnaBase::SaveToFile().
| InitStatus CbmStsHitAna::Init | ( | ) |
Definition at line 17 of file CbmStsHitAna.cxx.
References fCalibrationFile, fCbmEvtArray, fGlbTrkArray, fHitModifier, fMchTrkArray, fModuleParSet, fRchTrkArray, fStsCluArray, fStsHitArray, fStsTrkArray, fTofTrkArray, fTrdTrkArray, and CbmStsAnaBase::LoadSetup().
|
protectedinherited |
Load the STS setup and fill the map with XYZ boundaries for each STS setup element. It maps the first z strip for each module depending on the size of the sensor.
Definition at line 27 of file CbmStsAnaBase.cxx.
References fFirstZStrip, fStsGeoInfo, CbmStsElement::GetAddress(), CbmStsElement::GetDaughter(), CbmStsSetup::GetModule(), CbmStsElement::GetNofDaughters(), CbmStsSetup::GetNofModules(), CbmStsSetup::GetNofStations(), CbmStsElement::GetPnode(), CbmStsSetup::GetStation(), CbmStsStation::GetXmax(), CbmStsStation::GetXmin(), CbmStsStation::GetYmax(), CbmStsStation::GetYmin(), CbmStsStation::GetZ(), CbmStsSetup::Init(), CbmStsSetup::Instance(), CbmStsSetup::IsInit(), and nb_sts_station_.
Referenced by CbmEventVertexDca::Init(), CbmStsCorrelation::Init(), CbmStsEfficiency::Init(), CbmStsHitAna::Init(), CbmStsRecoBeamSpot::Init(), and CbmStsResolution::Init().
|
private |
Process an Cbm events It filters event based on the provided CbmCutMap.
Definition at line 99 of file CbmStsHitAna.cxx.
References CbmStsAnaBase::fAnalysisCuts, fGlbTrkArray, fStsHitArray, CbmEvent::GetIndex(), CbmEvent::GetNofData(), kGlobalTrack, kStsHit, ProcessGlobalTrack(), and ProcessHit().
Referenced by Exec().
|
private |
Process an STS hit attached to a Track It filters hits based on the provided CbmCutMap and check the track filters.
Definition at line 150 of file CbmStsHitAna.cxx.
References CbmStsAnaBase::fAnalysisCuts, fMchTrkArray, fRchTrkArray, fStsHitArray, fStsTrkArray, fTofTrkArray, fTrdTrkArray, CbmGlobalTrack::GetChi2(), CbmGlobalTrack::GetMuchTrackIndex(), CbmGlobalTrack::GetNDF(), CbmGlobalTrack::GetRichRingIndex(), CbmStsTrack::GetStsHitIndex(), CbmGlobalTrack::GetStsTrackIndex(), CbmGlobalTrack::GetTofTrackIndex(), CbmGlobalTrack::GetTrdTrackIndex(), kGlobalTrackChi2, kGlobalTrackMuchSize, kGlobalTrackMvdSize, kGlobalTrackPval, kGlobalTrackRichSize, kGlobalTrackStsSize, kGlobalTrackTofSize, kGlobalTrackTrdSize, and ProcessHit().
Referenced by ProcessEvent().
|
private |
Process an STS hit It filters hits based on the provided CbmCutMap and fill the corresponding histogram.
| hit | StsHit to proccess |
| belong_to_trk | Specify that the hit belongs to a track, branching the histogram filling |
Definition at line 118 of file CbmStsHitAna.cxx.
References BookHistograms(), CbmStsAnaBase::fAddressBook, CbmStsAnaBase::fAnalysisCuts, CbmStsAnaBase::fH1D, CbmStsAnaBase::fH2D, fHitModifier, fStsCluArray, CbmHit::GetAddress(), cbm_sts_utils::GetHitChargeAsy(), cbm_sts_utils::GetHitChargeB(), cbm_sts_utils::GetHitChargeF(), cbm_sts_utils::GetHitCluSizeB(), cbm_sts_utils::GetHitCluSizeF(), cbm_sts_utils::GetHitTimeB(), cbm_sts_utils::GetHitTimeF(), CbmPixelHit::GetX(), and CbmPixelHit::GetY().
Referenced by Exec(), ProcessEvent(), and ProcessGlobalTrack().
|
protectedinherited |
It write all mapped objects to the FairRunAna sink file.
Definition at line 95 of file CbmStsAnaBase.cxx.
References fG1D, fH1D, fH2D, fH2DShared, and gr.
Referenced by CbmSpillCheck::Finish(), CbmStsChannelQA::Finish(), CbmStsCorrelation::Finish(), CbmStsHitAna::Finish(), CbmStsResolution::Finish(), CbmStsTimeCal::Finish(), CbmEventVertexDca::FinishTask(), CbmStsEfficiency::FinishTask(), and CbmStsRecoBeamSpot::FinishTask().
|
inherited |
Set the cut map for analysis.
| cutMap | Pointer to the CbmCutMap object. |
Definition at line 21 of file CbmStsAnaBase.cxx.
References fAnalysisCuts.
|
inlineinherited |
User defined sensor translations.
| user_mat | Input translations. |
Definition at line 60 of file CbmStsAnaBase.h.
References fUserAlignment.
|
protectedinherited |
Definition at line 68 of file CbmStsAnaBase.h.
Referenced by CbmEventVertexDca::Exec(), CbmStsChannelQA::Exec(), CbmStsCorrelation::Exec(), CbmStsEfficiency::Exec(), CbmStsHitAna::Exec(), CbmStsRecoBeamSpot::Exec(), CbmStsResolution::Exec(), and CbmStsTimeCal::Exec().
|
protectedinherited |
Definition at line 70 of file CbmStsAnaBase.h.
Referenced by CbmStsChannelQA::BookHistograms(), CbmStsTimeCal::BookHistograms(), CbmStsChannelQA::CheckDeadChannels(), CbmStsChannelQA::CheckNoisyChannels(), CbmStsTimeCal::CheckTimeWalk(), CbmStsTimeCal::CheckTiming(), CbmStsTimeCal::DrawResults(), CbmStsChannelQA::Exec(), CbmStsTimeCal::FindGlobalOffset(), CbmStsChannelQA::GenerateReport(), and CbmStsHitAna::ProcessHit().
|
protectedinherited |
Definition at line 84 of file CbmStsAnaBase.h.
Referenced by CbmStsTimeCal::CheckTiming(), CbmStsEfficiency::Exec(), CbmStsRecoBeamSpot::Exec(), CbmEventVertexDca::ProcessEvent(), CbmStsCorrelation::ProcessEvent(), CbmStsHitAna::ProcessEvent(), CbmStsResolution::ProcessEvent(), CbmEventVertexDca::ProcessGlobalTrack(), CbmStsEfficiency::ProcessGlobalTrack(), CbmStsHitAna::ProcessGlobalTrack(), CbmStsResolution::ProcessGlobalTrack(), CbmStsCorrelation::ProcessHit(), CbmStsEfficiency::ProcessHit(), CbmStsHitAna::ProcessHit(), CbmStsRecoBeamSpot::ProcessHit(), CbmStsResolution::ProcessHit(), and SetCutMap().
|
private |
Definition at line 70 of file CbmStsHitAna.h.
Referenced by Init().
|
protectedinherited |
Definition at line 75 of file CbmStsAnaBase.h.
|
private |
Definition at line 72 of file CbmStsHitAna.h.
|
protectedinherited |
Definition at line 82 of file CbmStsAnaBase.h.
Referenced by LoadSetup().
|
protectedinherited |
Definition at line 71 of file CbmStsAnaBase.h.
Referenced by CbmSpillCheck::BookHistograms(), CbmStsTimeCal::CheckTimeWalk(), CbmStsTimeCal::DrawResults(), CbmSpillCheck::Exec(), CbmStsTimeCal::FindGlobalOffset(), CbmSpillCheck::Finish(), and SaveToFile().
|
private |
Definition at line 74 of file CbmStsHitAna.h.
Referenced by Init(), and ProcessEvent().
|
protectedinherited |
Definition at line 72 of file CbmStsAnaBase.h.
Referenced by CbmEventVertexDca::BookHistograms(), CbmStsEfficiency::BookHistograms(), CbmStsHitAna::BookHistograms(), CbmEventVertexDca::CheckVertex(), CbmSpillCheck::Finish(), CbmStsChannelQA::Finish(), CbmStsCorrelation::Finish(), CbmStsHitAna::Finish(), CbmStsTimeCal::Finish(), CbmEventVertexDca::ProcessEvent(), CbmStsEfficiency::ProcessEvent(), CbmStsEfficiency::ProcessGlobalTrack(), CbmStsHitAna::ProcessHit(), and SaveToFile().
|
protectedinherited |
Definition at line 73 of file CbmStsAnaBase.h.
Referenced by CbmStsRecoBeamSpot::BeamSpotReco(), CbmEventVertexDca::BookHistograms(), CbmStsChannelQA::BookHistograms(), CbmStsCorrelation::BookHistograms(), CbmStsEfficiency::BookHistograms(), CbmStsHitAna::BookHistograms(), CbmStsRecoBeamSpot::BookHistograms(), CbmStsResolution::BookHistograms(), CbmStsTimeCal::BookHistograms(), CbmStsCorrelation::BuildCorrelation(), CbmStsResolution::BuildResidual(), CbmStsChannelQA::CheckDeadChannels(), CbmStsEfficiency::CheckEfficiency(), CbmStsChannelQA::CheckNoisyChannels(), CbmStsTimeCal::CheckTimeWalk(), CbmStsTimeCal::CheckTiming(), CbmEventVertexDca::CheckVertex(), CbmStsTimeCal::DrawResults(), CbmStsEfficiency::Efficiency(), CbmStsChannelQA::Exec(), CbmStsTimeCal::FindModuleOffset(), CbmSpillCheck::Finish(), CbmStsChannelQA::Finish(), CbmStsCorrelation::Finish(), CbmStsHitAna::Finish(), CbmStsTimeCal::Finish(), CbmStsChannelQA::GenerateReport(), CbmStsEfficiency::ProcessHit(), CbmStsHitAna::ProcessHit(), and SaveToFile().
|
protectedinherited |
Definition at line 74 of file CbmStsAnaBase.h.
Referenced by CbmEventVertexDca::BookHistograms(), and SaveToFile().
|
private |
Definition at line 67 of file CbmStsHitAna.h.
Referenced by BookHistograms(), CbmStsHitAna(), CbmStsHitAna(), Init(), and ProcessHit().
|
private |
Definition at line 66 of file CbmStsHitAna.h.
Referenced by BookHistograms().
|
private |
Definition at line 77 of file CbmStsHitAna.h.
Referenced by Init(), and ProcessGlobalTrack().
|
private |
Definition at line 69 of file CbmStsHitAna.h.
Referenced by BookHistograms(), and Init().
|
private |
Definition at line 76 of file CbmStsHitAna.h.
Referenced by Init(), and ProcessGlobalTrack().
|
protectedinherited |
Definition at line 69 of file CbmStsAnaBase.h.
Referenced by CbmStsTimeCal::DrawResults(), and CbmStsTimeCal::Init().
|
protectedinherited |
Definition at line 86 of file CbmStsAnaBase.h.
Referenced by CbmStsTimeCal::CbmStsTimeCal(), and CbmStsTimeCal::Init().
|
private |
Definition at line 82 of file CbmStsHitAna.h.
Referenced by Init(), and ProcessHit().
|
protectedinherited |
Definition at line 78 of file CbmStsAnaBase.h.
Referenced by CbmStsCorrelation::BookHistograms(), CbmStsEfficiency::BookHistograms(), CbmStsHitAna::BookHistograms(), CbmStsRecoBeamSpot::BookHistograms(), CbmStsResolution::BookHistograms(), CbmStsEfficiency::CheckEfficiency(), CbmStsEfficiency::FinishTask(), and LoadSetup().
|
private |
Definition at line 81 of file CbmStsHitAna.h.
Referenced by Exec(), Init(), ProcessEvent(), and ProcessGlobalTrack().
|
private |
Definition at line 75 of file CbmStsHitAna.h.
Referenced by Init(), and ProcessGlobalTrack().
|
private |
Definition at line 79 of file CbmStsHitAna.h.
Referenced by Init(), and ProcessGlobalTrack().
|
private |
Definition at line 78 of file CbmStsHitAna.h.
Referenced by Init(), and ProcessGlobalTrack().
|
protectedinherited |
Definition at line 80 of file CbmStsAnaBase.h.
Referenced by UserAlignment().
|
protectedinherited |
Definition at line 77 of file CbmStsAnaBase.h.
Referenced by CbmStsRecoBeamSpot::BeamSpotReco(), CbmStsCorrelation::BuildCorrelation(), and LoadSetup().