Belle II Software  release-08-01-10
BeamSpotAlgorithm.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 
11 #include <calibration/CalibrationAlgorithm.h>
12 
13 namespace Belle2 {
22  public:
23 
26 
28  virtual ~BeamSpotAlgorithm() {}
29 
31  void setOuterLoss(const std::string& loss) { m_lossFunctionOuter = loss; }
32 
34  void setInnerLoss(const std::string& loss) { m_lossFunctionInner = loss; }
35  protected:
36 
38  virtual EResult calibrate() override;
39 
40  private:
42  TString m_lossFunctionOuter = "pow(rawTime - 2.0, 2) + 10 * pow(maxGap, 2)";
43 
45  TString m_lossFunctionInner = "pow(rawTime - 0.5, 2) + 10 * pow(maxGap, 2)";
46 
47  };
49 } // namespace Belle2
50 
51 
Class implementing BeamSpot calibration algorithm.
TString m_lossFunctionOuter
Outer loss function (for calibration intervals of BeamSpot size parameters)
void setInnerLoss(const std::string &loss)
Set inner loss function (for calibration subintervals)
void setOuterLoss(const std::string &loss)
Set outer loss function (for calibration intervals)
virtual ~BeamSpotAlgorithm()
Destructor.
virtual EResult calibrate() override
Run algo on data.
BeamSpotAlgorithm()
Constructor set the prefix to BeamSpotCollector.
TString m_lossFunctionInner
Inner loss function (for calibration subintervals of BeamSpot position parameters)
Base class for calibration algorithms.
EResult
The result of calibration.
Abstract base class for different kinds of events.