forked from AliceO2Group/AliceO2
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
MCH standalone alignment module (AliceO2Group#12583)
* MCH standalone alignment module with a common part(for both MCH and MTF) of mathematics basic codes moved to a common path under O2/Detectors/ForwardAlign Co-Authored-By: javierecc <[email protected]> * Please consider the following formatting changes (#4) * Removed from PR * Fixing formatting issue * Add missing header for filesystem * Fix warning with dereferenced iterator * Remove re-initialisation of magfield for trackfitter and move residual QA plots to O2Physics task * Update comment for track selection * Remove unused function * Remove re-definition of magfield which is set already with CCDB finalisation * Fixing CI build errors --------- Co-authored-by: javierecc <[email protected]> Co-authored-by: ALICE Builder <[email protected]>
- Loading branch information
1 parent
dc4c7dd
commit d43b949
Showing
41 changed files
with
3,645 additions
and
187 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
# Copyright 2019-2020 CERN and copyright holders of ALICE O2. | ||
# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. | ||
# All rights not expressly granted are reserved. | ||
# | ||
# This software is distributed under the terms of the GNU General Public | ||
# License v3 (GPL Version 3), copied verbatim in the file "COPYING". | ||
# | ||
# In applying this license CERN does not waive the privileges and immunities | ||
# granted to it by virtue of its status as an Intergovernmental Organization | ||
# or submit itself to any jurisdiction. | ||
|
||
o2_add_library(ForwardAlign | ||
SOURCES src/MatrixSparse.cxx | ||
src/MatrixSq.cxx | ||
src/MillePede2.cxx | ||
src/MillePedeRecord.cxx | ||
src/MilleRecordReader.cxx | ||
src/MilleRecordWriter.cxx | ||
src/MinResSolve.cxx | ||
src/RectMatrix.cxx | ||
src/SymBDMatrix.cxx | ||
src/SymMatrix.cxx | ||
src/VectorSparse.cxx | ||
PUBLIC_LINK_LIBRARIES O2::CCDB | ||
O2::Steer | ||
ROOT::TreePlayer) | ||
|
||
o2_target_root_dictionary(ForwardAlign | ||
HEADERS include/ForwardAlign/MatrixSparse.h | ||
include/ForwardAlign/MatrixSq.h | ||
include/ForwardAlign/MillePede2.h | ||
include/ForwardAlign/MillePedeRecord.h | ||
include/ForwardAlign/MilleRecordReader.h | ||
include/ForwardAlign/MilleRecordWriter.h | ||
include/ForwardAlign/MinResSolve.h | ||
include/ForwardAlign/RectMatrix.h | ||
include/ForwardAlign/SymBDMatrix.h | ||
include/ForwardAlign/SymMatrix.h | ||
include/ForwardAlign/VectorSparse.h | ||
LINKDEF src/ForwardAlignLinkDef.h) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -13,15 +13,15 @@ | |
/// \brief Sparse matrix class (from AliROOT), used as a global matrix for MillePede2 | ||
/// \author [email protected] | ||
|
||
#ifndef ALICEO2_MFT_MATRIXSPARSE_H | ||
#define ALICEO2_MFT_MATRIXSPARSE_H | ||
#ifndef ALICEO2_FWDALIGN_MATRIXSPARSE_H | ||
#define ALICEO2_FWDALIGN_MATRIXSPARSE_H | ||
|
||
#include "MFTAlignment/MatrixSq.h" | ||
#include "MFTAlignment/VectorSparse.h" | ||
#include "ForwardAlign/MatrixSq.h" | ||
#include "ForwardAlign/VectorSparse.h" | ||
|
||
namespace o2 | ||
{ | ||
namespace mft | ||
namespace fwdalign | ||
{ | ||
|
||
/// \class MatrixSparse | ||
|
@@ -157,7 +157,7 @@ inline Double_t& MatrixSparse::DiagElem(Int_t row) | |
} | ||
} | ||
|
||
} // namespace mft | ||
} // namespace fwdalign | ||
} // namespace o2 | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -13,15 +13,15 @@ | |
/// \brief Abstract class (from AliROOT) for square matrix used for millepede2 operation | ||
/// \author [email protected] | ||
|
||
#ifndef ALICEO2_MFT_MATRIXSQ_H | ||
#define ALICEO2_MFT_MATRIXSQ_H | ||
#ifndef ALICEO2_FWDALIGN_MATRIXSQ_H | ||
#define ALICEO2_FWDALIGN_MATRIXSQ_H | ||
|
||
#include <TMatrixDBase.h> | ||
#include <TVectorD.h> | ||
|
||
namespace o2 | ||
{ | ||
namespace mft | ||
namespace fwdalign | ||
{ | ||
|
||
/// \class MatrixSq | ||
|
@@ -153,7 +153,7 @@ inline void MatrixSq::MultiplyByVec(const TVectorD& vecIn, TVectorD& vecOut) con | |
MultiplyByVec(vecIn.GetMatrixArray(), vecOut.GetMatrixArray()); | ||
} | ||
|
||
} // namespace mft | ||
} // namespace fwdalign | ||
} // namespace o2 | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -13,20 +13,20 @@ | |
/// \author [email protected] | ||
/// \brief Class dedicated to read MillePedeRecords from ROOT files | ||
|
||
#ifndef ALICEO2_MFT_MILLERECORD_READER_H | ||
#define ALICEO2_MFT_MILLERECORD_READER_H | ||
#ifndef ALICEO2_FWDALIGN_MILLERECORD_READER_H | ||
#define ALICEO2_FWDALIGN_MILLERECORD_READER_H | ||
|
||
#include <Rtypes.h> | ||
#include <TString.h> | ||
#include <TChain.h> | ||
#include <TFile.h> | ||
#include <TTree.h> | ||
|
||
#include "MFTAlignment/MillePedeRecord.h" | ||
#include "ForwardAlign/MillePedeRecord.h" | ||
|
||
namespace o2 | ||
{ | ||
namespace mft | ||
namespace fwdalign | ||
{ | ||
|
||
class MilleRecordReader | ||
|
@@ -51,7 +51,7 @@ class MilleRecordReader | |
bool isReadEntryOk() const { return mIsReadEntryOk; } | ||
|
||
/// \brief return the record | ||
o2::mft::MillePedeRecord* getRecord() { return mRecord; }; | ||
o2::fwdalign::MillePedeRecord* getRecord() { return mRecord; }; | ||
|
||
/// \brief return the ID of the current record in the TTree | ||
long getCurrentDataID() const { return mCurrentDataID; } | ||
|
@@ -65,20 +65,23 @@ class MilleRecordReader | |
/// \brief return the number of entries | ||
Long64_t getNEntries() const { return mNEntries; } | ||
|
||
/// \brief return the name of record data tree | ||
TString getDataTreeName() const { return mDataTreeName; } | ||
|
||
protected: | ||
TChain* mDataTree; ///< TChain container that stores the records | ||
bool mIsSuccessfulInit; ///< boolean to monitor the success of the initialization | ||
bool mIsConstraintsRec; ///< boolean to know if these are data records or constraints records | ||
bool mIsReadEntryOk; ///< boolean to know if the last operation readNextEntry() was ok | ||
TString mDataTreeName; ///< name of the record TTree/TChain | ||
TString mDataBranchName; ///< name of the branch where records will be stored | ||
o2::mft::MillePedeRecord* mRecord; ///< the running record | ||
Long64_t mCurrentDataID; ///< counter indicating the ID of the current record in the tree | ||
Long64_t mNEntries; ///< number of entries in the read TChain | ||
TChain* mDataTree; ///< TChain container that stores the records | ||
bool mIsSuccessfulInit; ///< boolean to monitor the success of the initialization | ||
bool mIsConstraintsRec; ///< boolean to know if these are data records or constraints records | ||
bool mIsReadEntryOk; ///< boolean to know if the last operation readNextEntry() was ok | ||
TString mDataTreeName; ///< name of the record TTree/TChain | ||
TString mDataBranchName; ///< name of the branch where records will be stored | ||
o2::fwdalign::MillePedeRecord* mRecord; ///< the running record | ||
Long64_t mCurrentDataID; ///< counter indicating the ID of the current record in the tree | ||
Long64_t mNEntries; ///< number of entries in the read TChain | ||
|
||
ClassDef(MilleRecordReader, 0); | ||
}; | ||
} // namespace mft | ||
} // namespace fwdalign | ||
} // namespace o2 | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,21 +11,21 @@ | |
|
||
/// \file MilleRecordWriter.h | ||
/// \author [email protected] | ||
/// \brief Class dedicated to write MillePedeRecords to output file for MFT | ||
/// \brief Class dedicated to write MillePedeRecords to output file for FWDALIGN | ||
|
||
#ifndef ALICEO2_MFT_MILLERECORD_WRITER_H | ||
#define ALICEO2_MFT_MILLERECORD_WRITER_H | ||
#ifndef ALICEO2_FWDALIGN_MILLERECORD_WRITER_H | ||
#define ALICEO2_FWDALIGN_MILLERECORD_WRITER_H | ||
|
||
#include <Rtypes.h> | ||
#include <TString.h> | ||
|
||
#include "MFTAlignment/MillePedeRecord.h" | ||
#include "ForwardAlign/MillePedeRecord.h" | ||
|
||
class TFile; | ||
class TTree; | ||
namespace o2 | ||
{ | ||
namespace mft | ||
namespace fwdalign | ||
{ | ||
|
||
class MilleRecordWriter | ||
|
@@ -53,7 +53,7 @@ class MilleRecordWriter | |
bool isInitOk() const { return mIsSuccessfulInit; } | ||
|
||
/// \brief return the record | ||
o2::mft::MillePedeRecord* getRecord() { return mRecord; }; | ||
o2::fwdalign::MillePedeRecord* getRecord() { return mRecord; }; | ||
|
||
/// \brief return the ID of the current record in the TTree | ||
Long64_t getCurrentDataID() const { return mCurrentDataID; } | ||
|
@@ -71,20 +71,20 @@ class MilleRecordWriter | |
void setRecordWeight(double wgh); | ||
|
||
protected: | ||
TTree* mDataTree; ///< TTree container that stores the records | ||
TFile* mDataFile; ///< output file where the records are written | ||
bool mIsSuccessfulInit; ///< boolean to monitor the success of the initialization | ||
bool mIsConstraintsRec; ///< boolean to know if these are data records or constraints records | ||
long mNEntriesAutoSave; ///< max entries in the buffer after which TTree::AutoSave() is automatically used | ||
TString mDataFileName; ///< name of the output file that will store the record TTree | ||
TString mDataTreeName; ///< name of the record TTree | ||
TString mDataBranchName; ///< name of the branch where records will be stored | ||
o2::mft::MillePedeRecord* mRecord; ///< the running record | ||
Long64_t mCurrentDataID; ///< counter increasing when adding a record to the tree | ||
TTree* mDataTree; ///< TTree container that stores the records | ||
TFile* mDataFile; ///< output file where the records are written | ||
bool mIsSuccessfulInit; ///< boolean to monitor the success of the initialization | ||
bool mIsConstraintsRec; ///< boolean to know if these are data records or constraints records | ||
long mNEntriesAutoSave; ///< max entries in the buffer after which TTree::AutoSave() is automatically used | ||
TString mDataFileName; ///< name of the output file that will store the record TTree | ||
TString mDataTreeName; ///< name of the record TTree | ||
TString mDataBranchName; ///< name of the branch where records will be stored | ||
o2::fwdalign::MillePedeRecord* mRecord; ///< the running record | ||
Long64_t mCurrentDataID; ///< counter increasing when adding a record to the tree | ||
|
||
ClassDef(MilleRecordWriter, 0); | ||
}; | ||
} // namespace mft | ||
} // namespace fwdalign | ||
} // namespace o2 | ||
|
||
#endif |
Oops, something went wrong.