 |
Belle II Software
release-05-02-19
|
11 #include <mdst/dbobjects/BeamSpot.h>
12 #include <tracking/calibration/BeamSpotAlgorithm.h>
13 #include <tracking/calibration/BeamSpotStandAlone.h>
14 #include <tracking/calibration/calibTools.h>
16 #include <Eigen/Dense>
18 using Eigen::Vector3d;
19 using Eigen::Matrix3d;
23 using Belle2::BeamSpotCalib::getEvents;
24 using Belle2::BeamSpotCalib::runBeamSpotAnalysis;
33 static TObject* getBeamSpotObj(Vector3d ipVtx, Matrix3d ipVtxUnc, Matrix3d sizeMat)
38 TObject* obj =
static_cast<TObject*
>(payload);
48 TTree* tracks = getObjectPtr<TTree>(
"events").get();
50 runBeamSpotAnalysis, getBeamSpotObj,
BeamSpotAlgorithm()
Constructor set the prefix to BeamSpotCollector.
CalibrationAlgorithm::EResult runCalibration(TTree *tracks, const std::string &calibName, Fun1 GetEvents, Fun2 calibAnalysis, std::function< TObject *(Eigen::VectorXd, Eigen::MatrixXd, Eigen::MatrixXd)> calibObjCreator, TString m_lossFunctionOuter, TString m_lossFunctionInner)
Run the the calibration over the whole event sample.
TVector3 toTVector3(Eigen::VectorXd vIn)
Function that converts Eigen vector to ROOT vector.
TString m_lossFunctionOuter
Outer loss function (for calibration intervals of BeamSpot size parameters)
void setDescription(const std::string &description)
Set algorithm description (in constructor)
TMatrixDSym toTMatrixDSym(Eigen::MatrixXd mIn)
Function that converts Eigen symmetric matrix to ROOT matrix.
This class contains the beam spot position and size modeled as a gaussian distribution in space.
Abstract base class for different kinds of events.
virtual EResult calibrate() override
Run algo on data.
EResult
The result of calibration.
Base class for calibration algorithms.
TString m_lossFunctionInner
Inner loss function (for calibration subintervals of BeamSpot position parameters)