ATLAS Offline Software
Loading...
Searching...
No Matches
InDet::BeamSpotData Class Referencefinal

#include <BeamSpotData.h>

Collaboration diagram for InDet::BeamSpotData:

Public Member Functions

 BeamSpotData (int status, float posX, float posY, float posZ, float sigmaX, float sigmaY, float sigmaZ, float tiltX, float tiltY, float sigmaXY)
 BeamSpotData ()=delete
const Amg::Vector3DbeamPos () const noexcept
float beamSigma (int i) const noexcept
 Returns the beam sigma for the i-th error matrix element.
float beamSigmaXY () const noexcept
float beamTilt (int i) const noexcept
 Returns the beam sigma for the i+3-th error matrix element (the 'tilt')
int beamStatus () const noexcept
const Trk::RecVertexbeamVtx () const noexcept

Private Attributes

int m_status
std::array< float, 6 > m_errPar
Amg::Vector3D m_beamPos
Trk::RecVertex m_vertex

Detailed Description

Definition at line 19 of file BeamSpotData.h.

Constructor & Destructor Documentation

◆ BeamSpotData() [1/2]

InDet::BeamSpotData::BeamSpotData ( int status,
float posX,
float posY,
float posZ,
float sigmaX,
float sigmaY,
float sigmaZ,
float tiltX,
float tiltY,
float sigmaXY )

Definition at line 13 of file BeamSpotData.cxx.

15 :
16 m_status { status },
19 {
20#ifndef SIMULATIONBASE
21 float sigmaX_tilt = std::tan(tiltX) * sigmaZ;
22 float sigmaY_tilt = std::tan(tiltY) * sigmaZ;
23 float sigmaX_all = std::sqrt(sigmaX*sigmaX + sigmaX_tilt*sigmaX_tilt);
24 float sigmaY_all = std::sqrt(sigmaY*sigmaY + sigmaY_tilt*sigmaY_tilt);
25 Amg::MatrixX beamErr(3, 3);
26 beamErr.setZero();
27 beamErr.fillSymmetric(0, 0, sigmaX_all*sigmaX_all);
28 beamErr.fillSymmetric(0, 1, sigmaXY);
29 beamErr.fillSymmetric(1, 1, sigmaY_all*sigmaY_all);
30 beamErr.fillSymmetric(0, 2, std::tan(tiltX)*sigmaZ*sigmaZ);
31 beamErr.fillSymmetric(1, 2, std::tan(tiltY)*sigmaZ*sigmaZ);
32 beamErr.fillSymmetric(2, 2, sigmaZ*sigmaZ);
33 m_vertex = Trk::RecVertex(m_beamPos, beamErr);
34#endif
35 }
std::array< float, 6 > m_errPar
Amg::Vector3D m_beamPos
Trk::RecVertex m_vertex
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
status
Definition merge.py:16

◆ BeamSpotData() [2/2]

InDet::BeamSpotData::BeamSpotData ( )
delete

Member Function Documentation

◆ beamPos()

const Amg::Vector3D & InDet::BeamSpotData::beamPos ( ) const
inlinenoexcept

Definition at line 68 of file BeamSpotData.h.

68{ return m_beamPos; }

◆ beamSigma()

float InDet::BeamSpotData::beamSigma ( int i) const
inlinenoexcept

Returns the beam sigma for the i-th error matrix element.

Returns
The matrix element as float
Parameters
ithe requested index

Definition at line 70 of file BeamSpotData.h.

70{ return m_errPar[i]; }

◆ beamSigmaXY()

float InDet::BeamSpotData::beamSigmaXY ( ) const
inlinenoexcept

Definition at line 72 of file BeamSpotData.h.

72{ return m_errPar[5]; }

◆ beamStatus()

int InDet::BeamSpotData::beamStatus ( ) const
inlinenoexcept

Definition at line 76 of file BeamSpotData.h.

76{ return m_status; }

◆ beamTilt()

float InDet::BeamSpotData::beamTilt ( int i) const
inlinenoexcept

Returns the beam sigma for the i+3-th error matrix element (the 'tilt')

Returns
The (i + 3)th element as float
Parameters
ithe requested index after the addition of 3

Definition at line 74 of file BeamSpotData.h.

74{ return m_errPar[3+i]; }

◆ beamVtx()

const Trk::RecVertex & InDet::BeamSpotData::beamVtx ( ) const
inlinenoexcept

Definition at line 79 of file BeamSpotData.h.

79{ return m_vertex; }

Member Data Documentation

◆ m_beamPos

Amg::Vector3D InDet::BeamSpotData::m_beamPos
private

Definition at line 60 of file BeamSpotData.h.

◆ m_errPar

std::array<float, 6> InDet::BeamSpotData::m_errPar
private

Definition at line 58 of file BeamSpotData.h.

◆ m_status

int InDet::BeamSpotData::m_status
private

Definition at line 56 of file BeamSpotData.h.

◆ m_vertex

Trk::RecVertex InDet::BeamSpotData::m_vertex
private

Definition at line 63 of file BeamSpotData.h.


The documentation for this class was generated from the following files: