Belle II Software  release-05-02-19
BeamSpot.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Eugenio Paoloni *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <TMatrixDSym.h>
14 #include <TVector3.h>
15 
16 namespace Belle2 {
24  class BeamSpot: public TObject {
25  public:
26 
35  { }
36 
38  ~BeamSpot() {}
39 
40 
42  bool operator==(const BeamSpot& b) const
43  {
44  return
45  b.m_IPPosition == m_IPPosition &&
46  b.m_IPPositionCovMatrix == m_IPPositionCovMatrix &&
47  b.m_sizeCovMatrix == m_sizeCovMatrix;
48  }
49 
52  void setSizeCovMatrix(const TMatrixDSym& size)
53  {
54  m_sizeCovMatrix = size;
55  }
56 
61  void setIP(const TVector3& ipPosition, const TMatrixDSym& covariance)
62  {
63  m_IPPosition = ipPosition;
64  m_IPPositionCovMatrix = covariance;
65  }
66 
68  const TVector3& getIPPosition() const
69  {
70  return m_IPPosition;
71  }
72 
74  const TMatrixDSym& getIPPositionCovMatrix() const
75  {
77  }
78 
80  const TMatrixDSym& getSizeCovMatrix() const
81  {
83  }
84 
87  TMatrixDSym getCovVertex() const
88  {
90  }
91 
93  static unsigned short getGlobalUniqueID() { return 1; }
94 
95  private:
96 
99  TVector3 m_IPPosition;
100 
102  TMatrixDSym m_IPPositionCovMatrix;
103 
106  TMatrixDSym m_sizeCovMatrix;
107 
108  ClassDef(BeamSpot, 2);
109  };
110 
112 } //Belle2 namespace
Belle2::BeamSpot::m_IPPosition
TVector3 m_IPPosition
Beam spot position defined as the average position of the primary vertex.
Definition: BeamSpot.h:107
Belle2::BeamSpot::operator==
bool operator==(const BeamSpot &b) const
equality operator
Definition: BeamSpot.h:50
Belle2::BeamSpot::~BeamSpot
~BeamSpot()
Destructor.
Definition: BeamSpot.h:46
Belle2::BeamSpot::setSizeCovMatrix
void setSizeCovMatrix(const TMatrixDSym &size)
Set the covariance matrix of the size of the IP position.
Definition: BeamSpot.h:60
Belle2::BeamSpot::getCovVertex
TMatrixDSym getCovVertex() const
Get the total covariance matrix of theIP position (for compatibility with BeamParameters)
Definition: BeamSpot.h:95
Belle2::BeamSpot::BeamSpot
BeamSpot()
default constructor IP position at the nominal origin error on the position 0 in all directions Lumin...
Definition: BeamSpot.h:40
Belle2::BeamSpot::getIPPosition
const TVector3 & getIPPosition() const
Get the IP position.
Definition: BeamSpot.h:76
Belle2::BeamSpot
This class contains the beam spot position and size modeled as a gaussian distribution in space.
Definition: BeamSpot.h:32
Belle2::BeamSpot::getSizeCovMatrix
const TMatrixDSym & getSizeCovMatrix() const
Get the covariance matrix of the size of the IP position modeled as a gaussian.
Definition: BeamSpot.h:88
Belle2::BeamSpot::m_sizeCovMatrix
TMatrixDSym m_sizeCovMatrix
Size of the luminous region modeled with a three dimensional gaussian.
Definition: BeamSpot.h:114
Belle2::BeamSpot::m_IPPositionCovMatrix
TMatrixDSym m_IPPositionCovMatrix
CovMatrix of the measured beam spot position.
Definition: BeamSpot.h:110
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::BeamSpot::setIP
void setIP(const TVector3 &ipPosition, const TMatrixDSym &covariance)
Set the IP position and its error matrix.
Definition: BeamSpot.h:69
Belle2::BeamSpot::getIPPositionCovMatrix
const TMatrixDSym & getIPPositionCovMatrix() const
Get the covariance matrix of the measured IP position.
Definition: BeamSpot.h:82
Belle2::BeamSpot::ClassDef
ClassDef(BeamSpot, 2)
beam spot position and size
Belle2::BeamSpot::getGlobalUniqueID
static unsigned short getGlobalUniqueID()
Return unique ID of BeamSpot in global Millepede calibration (1)
Definition: BeamSpot.h:101