CbmRoot
Loading...
Searching...
No Matches
CbmBbaAlignmentMcbmTask Class Reference

an example of alignment using BBA package More...

#include <CbmBbaAlignmentMcbmTask.h>

Inheritance diagram for CbmBbaAlignmentMcbmTask:
[legend]
Collaboration diagram for CbmBbaAlignmentMcbmTask:
[legend]

Classes

struct  AlignmentBody
 
struct  Sensor
 
struct  TrackContainer
 
class  Trajectory
 

Public Types

enum  TrackingMode { kSts , kMcbm }
 

Public Member Functions

 CbmBbaAlignmentMcbmTask (const char *name="CbmBbaAlignmentMcbmTask", Int_t iVerbose=0, TString histoFileName="./CbmBbaAlignmentHisto.root")
 
 ~CbmBbaAlignmentMcbmTask ()
 
Int_t GetZtoNStation (Double_t getZ)
 
InitStatus Init ()
 
void Exec (Option_t *opt)
 
void Finish ()
 
void SetMcbmTrackingMode ()
 
void SetStsTrackingMode ()
 
void SetSimulatedMisalignmentRange (double range)
 
void SetRandomSeed (int seed)
 
void SetMatrixOutFileName (TString sMatrixOutFileName)
 

Private Member Functions

const CbmBbaAlignmentMcbmTaskoperator= (const CbmBbaAlignmentMcbmTask &)
 
 CbmBbaAlignmentMcbmTask (const CbmBbaAlignmentMcbmTask &)
 
void WriteHistosCurFile (TObject *obj)
 
void ApplyAlignment (const std::vector< double > &par)
 
double CostFunction (const std::vector< double > &par)
 
void ApplyConstraints (std::vector< double > &par)
 
void ConstrainStation (std::vector< double > &par, int iSta, int ixyz)
 
 ClassDef (CbmBbaAlignmentMcbmTask, 1)
 

Private Attributes

TrackingMode fTrackingMode = TrackingMode::kMcbm
 
TClonesArray * fInputGlobalTracks {nullptr}
 
TClonesArray * fInputStsTracks {nullptr}
 
TClonesArray * fInputMcTracks {nullptr}
 
TClonesArray * fInputGlobalTrackMatches {nullptr}
 
TClonesArray * fInputStsTrackMatches {nullptr}
 
int fNthreads = 1
 
CbmKfTrackFitter< cbm::algo::kf::DoFitTime::NfFitter
 
std::vector< TrackContainerfTracks
 
TString fsMatrixOutFileName {"AlignmentMatrices_finetuning.root"}
 
TString fHistoFileName {"CbmBbaAlignmentHisto.root"}
 
TFile * fHistoFile {nullptr}
 
TDirectory * fHistoDir {nullptr}
 
Int_t fNEvents {0}
 
Int_t fMaxNtracks {0}
 
int fNtrackingStations {0}
 
int fNalignmentBodies {0}
 
double fCostIdeal {1.e10}
 
double fCostInitial {0.}
 
double fSimulatedMisalignmentRange {0.}
 
int fRandomSeed {1}
 
double fChi2Total {0.}
 
long fNdfTotal {0}
 
long fFixedNdf {-1}
 
std::vector< SensorfSensors
 
std::vector< AlignmentBodyfAlignmentBodies
 
std::vector< TH1F * > hResidualsBeforeAlignmentX {}
 
std::vector< TH1F * > hResidualsBeforeAlignmentY {}
 
std::vector< TH1F * > hResidualsAfterAlignmentX {}
 
std::vector< TH1F * > hResidualsAfterAlignmentY {}
 
std::vector< TH1F * > hPullsBeforeAlignmentX {}
 
std::vector< TH1F * > hPullsBeforeAlignmentY {}
 
std::vector< TH1F * > hPullsAfterAlignmentX {}
 
std::vector< TH1F * > hPullsAfterAlignmentY {}
 

Detailed Description

an example of alignment using BBA package

Definition at line 34 of file CbmBbaAlignmentMcbmTask.h.

Member Enumeration Documentation

◆ TrackingMode

Enumerator
kSts 
kMcbm 

Definition at line 56 of file CbmBbaAlignmentMcbmTask.h.

Constructor & Destructor Documentation

◆ CbmBbaAlignmentMcbmTask() [1/2]

CbmBbaAlignmentMcbmTask::CbmBbaAlignmentMcbmTask ( const char * name = "CbmBbaAlignmentMcbmTask",
Int_t iVerbose = 0,
TString histoFileName = "./CbmBbaAlignmentHisto.root" )

Definition at line 162 of file CbmBbaAlignmentMcbmTask.cxx.

References fHistoDir, fHistoFile, and fHistoFileName.

Referenced by CbmBbaAlignmentMcbmTask(), ClassDef(), and operator=().

◆ ~CbmBbaAlignmentMcbmTask()

CbmBbaAlignmentMcbmTask::~CbmBbaAlignmentMcbmTask ( )

Definition at line 186 of file CbmBbaAlignmentMcbmTask.cxx.

◆ CbmBbaAlignmentMcbmTask() [2/2]

CbmBbaAlignmentMcbmTask::CbmBbaAlignmentMcbmTask ( const CbmBbaAlignmentMcbmTask & )
private

Member Function Documentation

◆ ApplyAlignment()

void CbmBbaAlignmentMcbmTask::ApplyAlignment ( const std::vector< double > & par)
private

◆ ApplyConstraints()

void CbmBbaAlignmentMcbmTask::ApplyConstraints ( std::vector< double > & par)
private

Definition at line 609 of file CbmBbaAlignmentMcbmTask.cxx.

References ConstrainStation(), and fNtrackingStations.

◆ ClassDef()

CbmBbaAlignmentMcbmTask::ClassDef ( CbmBbaAlignmentMcbmTask ,
1  )
private

◆ ConstrainStation()

void CbmBbaAlignmentMcbmTask::ConstrainStation ( std::vector< double > & par,
int iSta,
int ixyz )
private

Definition at line 588 of file CbmBbaAlignmentMcbmTask.cxx.

References fAlignmentBodies.

Referenced by ApplyConstraints().

◆ CostFunction()

◆ Exec()

◆ Finish()

◆ GetZtoNStation()

Int_t CbmBbaAlignmentMcbmTask::GetZtoNStation ( Double_t getZ)

◆ Init()

◆ operator=()

const CbmBbaAlignmentMcbmTask & CbmBbaAlignmentMcbmTask::operator= ( const CbmBbaAlignmentMcbmTask & )
private

◆ SetMatrixOutFileName()

void CbmBbaAlignmentMcbmTask::SetMatrixOutFileName ( TString sMatrixOutFileName)
inline

Definition at line 53 of file CbmBbaAlignmentMcbmTask.h.

References fsMatrixOutFileName.

◆ SetMcbmTrackingMode()

void CbmBbaAlignmentMcbmTask::SetMcbmTrackingMode ( )
inline

Definition at line 47 of file CbmBbaAlignmentMcbmTask.h.

References fTrackingMode, and kMcbm.

◆ SetRandomSeed()

void CbmBbaAlignmentMcbmTask::SetRandomSeed ( int seed)
inline

Definition at line 51 of file CbmBbaAlignmentMcbmTask.h.

References fRandomSeed.

◆ SetSimulatedMisalignmentRange()

void CbmBbaAlignmentMcbmTask::SetSimulatedMisalignmentRange ( double range)
inline

Definition at line 50 of file CbmBbaAlignmentMcbmTask.h.

References fSimulatedMisalignmentRange.

◆ SetStsTrackingMode()

void CbmBbaAlignmentMcbmTask::SetStsTrackingMode ( )
inline

Definition at line 48 of file CbmBbaAlignmentMcbmTask.h.

References fTrackingMode, and kSts.

◆ WriteHistosCurFile()

void CbmBbaAlignmentMcbmTask::WriteHistosCurFile ( TObject * obj)
private

Definition at line 1184 of file CbmBbaAlignmentMcbmTask.cxx.

References WriteHistosCurFile().

Referenced by Finish(), and WriteHistosCurFile().

Member Data Documentation

◆ fAlignmentBodies

std::vector<AlignmentBody> CbmBbaAlignmentMcbmTask::fAlignmentBodies
private

Definition at line 175 of file CbmBbaAlignmentMcbmTask.h.

Referenced by ApplyAlignment(), ConstrainStation(), and Finish().

◆ fChi2Total

double CbmBbaAlignmentMcbmTask::fChi2Total {0.}
private

Definition at line 169 of file CbmBbaAlignmentMcbmTask.h.

Referenced by CostFunction().

◆ fCostIdeal

double CbmBbaAlignmentMcbmTask::fCostIdeal {1.e10}
private

Definition at line 162 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish().

◆ fCostInitial

double CbmBbaAlignmentMcbmTask::fCostInitial {0.}
private

Definition at line 163 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish().

◆ fFitter

CbmKfTrackFitter<cbm::algo::kf::DoFitTime::N> CbmBbaAlignmentMcbmTask::fFitter
private

Definition at line 143 of file CbmBbaAlignmentMcbmTask.h.

Referenced by CostFunction(), Exec(), Finish(), and Init().

◆ fFixedNdf

long CbmBbaAlignmentMcbmTask::fFixedNdf {-1}
private

Definition at line 171 of file CbmBbaAlignmentMcbmTask.h.

Referenced by CostFunction(), and Finish().

◆ fHistoDir

TDirectory* CbmBbaAlignmentMcbmTask::fHistoDir {nullptr}
private

Definition at line 153 of file CbmBbaAlignmentMcbmTask.h.

Referenced by CbmBbaAlignmentMcbmTask(), Finish(), and Init().

◆ fHistoFile

TFile* CbmBbaAlignmentMcbmTask::fHistoFile {nullptr}
private

Definition at line 152 of file CbmBbaAlignmentMcbmTask.h.

Referenced by CbmBbaAlignmentMcbmTask(), and Finish().

◆ fHistoFileName

TString CbmBbaAlignmentMcbmTask::fHistoFileName {"CbmBbaAlignmentHisto.root"}
private

Definition at line 151 of file CbmBbaAlignmentMcbmTask.h.

Referenced by CbmBbaAlignmentMcbmTask(), and Finish().

◆ fInputGlobalTrackMatches

TClonesArray* CbmBbaAlignmentMcbmTask::fInputGlobalTrackMatches {nullptr}
private

Definition at line 138 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Init().

◆ fInputGlobalTracks

TClonesArray* CbmBbaAlignmentMcbmTask::fInputGlobalTracks {nullptr}
private

Definition at line 134 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Exec(), and Init().

◆ fInputMcTracks

TClonesArray* CbmBbaAlignmentMcbmTask::fInputMcTracks {nullptr}
private

Definition at line 137 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Init().

◆ fInputStsTrackMatches

TClonesArray* CbmBbaAlignmentMcbmTask::fInputStsTrackMatches {nullptr}
private

Definition at line 139 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Init().

◆ fInputStsTracks

TClonesArray* CbmBbaAlignmentMcbmTask::fInputStsTracks {nullptr}
private

Definition at line 135 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Exec(), and Init().

◆ fMaxNtracks

Int_t CbmBbaAlignmentMcbmTask::fMaxNtracks {0}
private

Definition at line 157 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Exec().

◆ fNalignmentBodies

int CbmBbaAlignmentMcbmTask::fNalignmentBodies {0}
private

Definition at line 160 of file CbmBbaAlignmentMcbmTask.h.

Referenced by ApplyAlignment(), and Finish().

◆ fNdfTotal

long CbmBbaAlignmentMcbmTask::fNdfTotal {0}
private

Definition at line 170 of file CbmBbaAlignmentMcbmTask.h.

Referenced by CostFunction().

◆ fNEvents

Int_t CbmBbaAlignmentMcbmTask::fNEvents {0}
private

Definition at line 155 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Exec().

◆ fNthreads

int CbmBbaAlignmentMcbmTask::fNthreads = 1
private

Definition at line 141 of file CbmBbaAlignmentMcbmTask.h.

Referenced by CostFunction(), and Init().

◆ fNtrackingStations

int CbmBbaAlignmentMcbmTask::fNtrackingStations {0}
private

Definition at line 159 of file CbmBbaAlignmentMcbmTask.h.

Referenced by ApplyConstraints(), Finish(), and Init().

◆ fRandomSeed

int CbmBbaAlignmentMcbmTask::fRandomSeed {1}
private

Definition at line 167 of file CbmBbaAlignmentMcbmTask.h.

Referenced by SetRandomSeed().

◆ fSensors

std::vector<Sensor> CbmBbaAlignmentMcbmTask::fSensors
private

Definition at line 174 of file CbmBbaAlignmentMcbmTask.h.

Referenced by ApplyAlignment(), and Finish().

◆ fSimulatedMisalignmentRange

double CbmBbaAlignmentMcbmTask::fSimulatedMisalignmentRange {0.}
private

Definition at line 165 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and SetSimulatedMisalignmentRange().

◆ fsMatrixOutFileName

TString CbmBbaAlignmentMcbmTask::fsMatrixOutFileName {"AlignmentMatrices_finetuning.root"}
private

Definition at line 150 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and SetMatrixOutFileName().

◆ fTrackingMode

TrackingMode CbmBbaAlignmentMcbmTask::fTrackingMode = TrackingMode::kMcbm
private

◆ fTracks

std::vector<TrackContainer> CbmBbaAlignmentMcbmTask::fTracks
private

Definition at line 146 of file CbmBbaAlignmentMcbmTask.h.

Referenced by ApplyAlignment(), CostFunction(), Exec(), Finish(), and Init().

◆ hPullsAfterAlignmentX

std::vector<TH1F*> CbmBbaAlignmentMcbmTask::hPullsAfterAlignmentX {}
private

Definition at line 186 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and Init().

◆ hPullsAfterAlignmentY

std::vector<TH1F*> CbmBbaAlignmentMcbmTask::hPullsAfterAlignmentY {}
private

Definition at line 187 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and Init().

◆ hPullsBeforeAlignmentX

std::vector<TH1F*> CbmBbaAlignmentMcbmTask::hPullsBeforeAlignmentX {}
private

Definition at line 184 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and Init().

◆ hPullsBeforeAlignmentY

std::vector<TH1F*> CbmBbaAlignmentMcbmTask::hPullsBeforeAlignmentY {}
private

Definition at line 185 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and Init().

◆ hResidualsAfterAlignmentX

std::vector<TH1F*> CbmBbaAlignmentMcbmTask::hResidualsAfterAlignmentX {}
private

Definition at line 181 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and Init().

◆ hResidualsAfterAlignmentY

std::vector<TH1F*> CbmBbaAlignmentMcbmTask::hResidualsAfterAlignmentY {}
private

Definition at line 182 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and Init().

◆ hResidualsBeforeAlignmentX

std::vector<TH1F*> CbmBbaAlignmentMcbmTask::hResidualsBeforeAlignmentX {}
private

Definition at line 179 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and Init().

◆ hResidualsBeforeAlignmentY

std::vector<TH1F*> CbmBbaAlignmentMcbmTask::hResidualsBeforeAlignmentY {}
private

Definition at line 180 of file CbmBbaAlignmentMcbmTask.h.

Referenced by Finish(), and Init().


The documentation for this class was generated from the following files: