|
CbmRoot
|
Task for reconstructing the beam spot using STS hits. More...
#include <CbmStsRecoBeamSpot.h>
Public Member Functions | |
| CbmStsRecoBeamSpot ()=default | |
| ~CbmStsRecoBeamSpot ()=default | |
| void | AddTarget (CbmTarget *target=nullptr) |
| Add a CbmTarget object to the list of targets. | |
| void | AddTarget (std::string trg_name="", CbmTarget *target=nullptr) |
| Add a CbmTarget object to the list of targets with a key as trg_name. | |
| void | Exec (Option_t *) |
| InitStatus | Init () |
| void | FinishTask () |
| 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 | BeamSpotReco () |
| Reconstruct the beam spot at each target planes. | |
| void | BookHistograms () |
| TVector3 | ExtrapolateTrackTo (CbmPixelHit *, CbmPixelHit *, CbmTarget *) |
| Extrapolate a track-let to a target plane. | |
| void | ProcessEvent (CbmEvent *) |
| Process an Cbm events It filters event based on the provided CbmCutMap. | |
| void | ProcessStsTrack (CbmGlobalTrack *) |
| Process an STS track. | |
| void | ProcessHit (CbmStsHit *) |
| Process an STS hit It filters hits based on the provided CbmCutMap. | |
| ClassDef (CbmStsRecoBeamSpot, 1) | |
Private Attributes | |
| double | fSampleRangeXmin {-10} |
| double | fSampleRangeXmax {+10} |
| double | fSampleRangeYmin {-10} |
| double | fSampleRangeYmax {+10} |
| double | fSampleRangeZmin {-10} |
| double | fSampleRangeZmax {+10} |
| double | fSampleBinSizeX {0.01} |
| double | fSampleBinSizeY {0.01} |
| double | fSampleBinSizeZ {0.01} |
| std::vector< CbmStsTrack * > | fStsTrks |
| std::map< int32_t, std::vector< CbmStsHit * > > | fStsHits |
| std::map< std::string, CbmTarget * > | fTargets |
| TClonesArray * | fCbmEvtArray {nullptr} |
| TClonesArray * | fStsTrkArray {nullptr} |
| TClonesArray * | fStsHitArray {nullptr} |
| TClonesArray * | fStsCluArray {nullptr} |
Task for reconstructing the beam spot using STS hits.
This class inherits from FairTask and CbmStsAnaBase. It provides functionality for reconstructing the beam spot at different planes defined by CbmTarget using STS hits.
Definition at line 36 of file CbmStsRecoBeamSpot.h.
|
default |
Referenced by ClassDef().
|
default |
| void CbmStsRecoBeamSpot::AddTarget | ( | CbmTarget * | target = nullptr | ) |
Add a CbmTarget object to the list of targets.
Position and rotation are the only relevant members of such class for this task.
| target | CbmTarget ptr to be added |
Definition at line 9 of file CbmStsRecoBeamSpot.cxx.
References AddTarget().
Referenced by AddTarget().
| void CbmStsRecoBeamSpot::AddTarget | ( | std::string | trg_name = "", |
| CbmTarget * | target = nullptr ) |
Add a CbmTarget object to the list of targets with a key as trg_name.
| trg_name | key under which the |
| target | will be stored. If the key is an empty string, added targets will be named as target_<n_of_targets>. |
Definition at line 10 of file CbmStsRecoBeamSpot.cxx.
References fTargets.
|
private |
Reconstruct the beam spot at each target planes.
Definition at line 94 of file CbmStsRecoBeamSpot.cxx.
References cos(), ExtrapolateTrackTo(), CbmStsAnaBase::fH2D, fStsHits, fTargets, and CbmStsAnaBase::nb_sts_station_.
Referenced by Exec().
|
private |
Definition at line 18 of file CbmStsRecoBeamSpot.cxx.
References CbmStsAnaBase::fH2D, fSampleBinSizeX, fSampleBinSizeY, fSampleBinSizeZ, fSampleRangeXmax, fSampleRangeXmin, fSampleRangeYmax, fSampleRangeYmin, fSampleRangeZmax, fSampleRangeZmin, CbmStsAnaBase::fStsGeoInfo, fTargets, CbmStsAddress::GetElementId(), and kStsUnit.
Referenced by Init().
|
protectedinherited |
References CbmStsAnaBase().
|
private |
References CbmStsRecoBeamSpot().
|
inlinevirtualinherited |
Virtual function to draw analysis results.
Reimplemented in CbmStsTimeCal.
Definition at line 65 of file CbmStsAnaBase.h.
| void CbmStsRecoBeamSpot::Exec | ( | Option_t * | ) |
Definition at line 157 of file CbmStsRecoBeamSpot.cxx.
References BeamSpotReco(), CbmStsAnaBase::entry_, CbmStsAnaBase::fAnalysisCuts, fCbmEvtArray, fStsHitArray, ProcessEvent(), and ProcessHit().
|
private |
Extrapolate a track-let to a target plane.
Definition at line 76 of file CbmStsRecoBeamSpot.cxx.
References CbmTarget::GetPosition(), CbmTarget::GetRotation(), CbmPixelHit::GetX(), CbmPixelHit::GetY(), and CbmHit::GetZ().
Referenced by BeamSpotReco().
| void CbmStsRecoBeamSpot::FinishTask | ( | ) |
Definition at line 132 of file CbmStsRecoBeamSpot.cxx.
References CbmStsAnaBase::SaveToFile().
| InitStatus CbmStsRecoBeamSpot::Init | ( | ) |
Definition at line 186 of file CbmStsRecoBeamSpot.cxx.
References BookHistograms(), fCbmEvtArray, fStsCluArray, fStsHitArray, fTargets, 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 135 of file CbmStsRecoBeamSpot.cxx.
References fStsHitArray, CbmEvent::GetIndex(), CbmEvent::GetNofData(), kStsHit, and ProcessHit().
Referenced by Exec().
|
private |
Process an STS hit It filters hits based on the provided CbmCutMap.
Definition at line 146 of file CbmStsRecoBeamSpot.cxx.
References CbmStsAnaBase::fAnalysisCuts, fStsCluArray, fStsHits, CbmHit::GetAddress(), CbmStsAddress::GetElementId(), and kStsUnit.
Referenced by Exec(), and ProcessEvent().
|
private |
Process an STS track.
|
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().
|
protectedinherited |
Definition at line 75 of file CbmStsAnaBase.h.
|
private |
Definition at line 85 of file CbmStsRecoBeamSpot.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().
|
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().
|
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 75 of file CbmStsRecoBeamSpot.h.
Referenced by BookHistograms().
|
private |
Definition at line 76 of file CbmStsRecoBeamSpot.h.
Referenced by BookHistograms().
|
private |
Definition at line 77 of file CbmStsRecoBeamSpot.h.
Referenced by BookHistograms().
|
private |
Definition at line 68 of file CbmStsRecoBeamSpot.h.
Referenced by BookHistograms().
|
private |
Definition at line 67 of file CbmStsRecoBeamSpot.h.
Referenced by BookHistograms().
|
private |
Definition at line 70 of file CbmStsRecoBeamSpot.h.
Referenced by BookHistograms().
|
private |
Definition at line 69 of file CbmStsRecoBeamSpot.h.
Referenced by BookHistograms().
|
private |
Definition at line 72 of file CbmStsRecoBeamSpot.h.
Referenced by BookHistograms().
|
private |
Definition at line 71 of file CbmStsRecoBeamSpot.h.
Referenced by BookHistograms().
|
private |
Definition at line 88 of file CbmStsRecoBeamSpot.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 87 of file CbmStsRecoBeamSpot.h.
Referenced by Exec(), Init(), and ProcessEvent().
|
private |
Definition at line 80 of file CbmStsRecoBeamSpot.h.
Referenced by BeamSpotReco(), and ProcessHit().
|
private |
Definition at line 86 of file CbmStsRecoBeamSpot.h.
|
private |
Definition at line 79 of file CbmStsRecoBeamSpot.h.
|
private |
Definition at line 82 of file CbmStsRecoBeamSpot.h.
Referenced by AddTarget(), BeamSpotReco(), BookHistograms(), and Init().
|
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().