Project
Loading...
Searching...
No Matches
RecordsToAlignParams.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
15
16#ifndef ALICEO2_MFT_RECORDS_TO_ALIGN_PARAMS_H
17#define ALICEO2_MFT_RECORDS_TO_ALIGN_PARAMS_H
18
19#include <vector>
20#include <TChain.h>
21
25
27
28namespace o2
29{
30namespace mft
31{
32
34{
35 public:
38
40 ~RecordsToAlignParams() override;
41
43 void init() override;
44
45 // simple setters
46
47 void setWithControl(const bool choice) { mWithControl = choice; }
49 void setWithConstraintsRecReader(const bool choice) { mWithConstraintsRecReader = choice; }
50
52 void globalFit();
53
55 void getAlignParams(std::vector<o2::detectors::AlignParam>& alignParams) { alignParams = mAlignParams; }
56
58 void getPedeOutParams(std::vector<double>& output) { output = mPedeOutParams; }
59
61 void getPedeOutParamsErrors(std::vector<double>& output) { output = mPedeOutParamsErrors; }
62
64 void getPedeOutParamsPulls(std::vector<double>& output) { output = mPedeOutParamsPulls; }
65
67 void connectRecordReaderToChain(TChain* ch);
68
71
72 protected:
74 long mNEntriesAutoSave = 10000;
75 std::vector<o2::detectors::AlignParam> mAlignParams;
80 std::vector<double> mPedeOutParams;
81 std::vector<double> mPedeOutParamsErrors;
82 std::vector<double> mPedeOutParamsPulls;
83
85};
86
87} // namespace mft
88} // namespace o2
89
90#endif
Definition of the base alignment parameters class.
Abstract base class for the standalone alignment of MFT.
void output(const std::map< std::string, ChannelStat > &channels)
Definition rawdump.cxx:197
General class for alignment with large number of degrees of freedom, adapted from AliROOT.
Class dedicated to read MillePedeRecords from ROOT files.
void connectConstraintsRecReaderToChain(TChain *ch)
conect constraints record reader to input TChain of constraints record
o2::fwdalign::MilleRecordReader * mRecordReader
utility that handles the reading of the data records used to feed MillePede solver
void getPedeOutParams(std::vector< double > &output)
provide access to the vector of alignment corrections
~RecordsToAlignParams() override
destructor
void connectRecordReaderToChain(TChain *ch)
connect data record reader to input TChain of records
void getAlignParams(std::vector< o2::detectors::AlignParam > &alignParams)
provide access to the AlignParam vector
void globalFit()
perform the simultaneous fit of track (local) and alignement (global) parameters
long mNEntriesAutoSave
number of entries needed to cyclically call AutoSave for the output control tree
o2::fwdalign::MilleRecordReader * mConstraintsRecReader
utility that handles the reading of the constraints records
std::vector< double > mPedeOutParamsErrors
Vector to store the outputs (errors on the alignement corrections) of the MillePede simulatenous fit.
void setWithConstraintsRecReader(const bool choice)
ClassDefOverride(RecordsToAlignParams, 0)
void setNEntriesAutoSave(const int value)
void init() override
init MilliPede
void setWithControl(const bool choice)
void getPedeOutParamsErrors(std::vector< double > &output)
provide access to the vector of errors on the alignement corrections
bool mWithControl
boolean to set the use of the control tree = chi2 per track filled by MillePede LocalFit()
void getPedeOutParamsPulls(std::vector< double > &output)
provide access to the vector of pulls on the alignement corrections
std::vector< double > mPedeOutParams
Vector to store the outputs (alignment corrections) of the MillePede simulatenous fit.
bool mWithConstraintsRecReader
boolean to set to true if one wants to also read constraints records
o2::fwdalign::MillePede2 * mMillepede
Millepede2 implementation copied from AliROOT.
std::vector< o2::detectors::AlignParam > mAlignParams
vector of alignment parameters computed by MillePede simultaneous fit
std::vector< double > mPedeOutParamsPulls
Vector to store the outputs (pulls on the alignement corrections) of the MillePede simulatenous fit.
GLsizei const GLfloat * value
Definition glcorearb.h:819
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...