ATLAS Offline Software
Loading...
Searching...
No Matches
MM_Electron Class Reference

#include <MM_Electron.h>

Collaboration diagram for MM_Electron:

Public Member Functions

 MM_Electron ()=default
 MM_Electron (float x, float y)
void setOffsetPosition (float x, float y)
void propagateElectron (float lorentzAngle, float driftVel)
void setTime (float Time)
void setCharge (float Charge)
const Amg::Vector2DgetOffsetPosition () const
float getCharge () const
float getTime () const
float getX () const
float getY () const
float getInitialX () const
float getInitialY () const

Private Attributes

Amg::Vector2D m_initialPosition {Amg::Vector2D::Zero()}
Amg::Vector2D m_offsetPosition {Amg::Vector2D::Zero()}
float m_time {-FLT_MAX}
float m_charge {-FLT_MAX}

Detailed Description

Definition at line 18 of file MM_Electron.h.

Constructor & Destructor Documentation

◆ MM_Electron() [1/2]

MM_Electron::MM_Electron ( )
default

◆ MM_Electron() [2/2]

MM_Electron::MM_Electron ( float x,
float y )

Definition at line 7 of file MM_Electron.cxx.

#define y
#define x
Amg::Vector2D m_initialPosition
Definition MM_Electron.h:37

Member Function Documentation

◆ getCharge()

float MM_Electron::getCharge ( ) const

Definition at line 27 of file MM_Electron.cxx.

27{ return m_charge; }
float m_charge
Definition MM_Electron.h:41

◆ getInitialX()

float MM_Electron::getInitialX ( ) const

Definition at line 31 of file MM_Electron.cxx.

31{ return m_initialPosition.x(); }

◆ getInitialY()

float MM_Electron::getInitialY ( ) const

Definition at line 32 of file MM_Electron.cxx.

32{ return m_initialPosition.y(); }

◆ getOffsetPosition()

const Amg::Vector2D & MM_Electron::getOffsetPosition ( ) const

Definition at line 26 of file MM_Electron.cxx.

26{ return m_offsetPosition; }
Amg::Vector2D m_offsetPosition
Definition MM_Electron.h:38

◆ getTime()

float MM_Electron::getTime ( ) const

Definition at line 28 of file MM_Electron.cxx.

28{ return m_time; }

◆ getX()

float MM_Electron::getX ( ) const

Definition at line 29 of file MM_Electron.cxx.

29{ return m_offsetPosition.x() + m_initialPosition.x(); }

◆ getY()

float MM_Electron::getY ( ) const

Definition at line 30 of file MM_Electron.cxx.

30{ return m_offsetPosition.y() + m_initialPosition.y(); }

◆ propagateElectron()

void MM_Electron::propagateElectron ( float lorentzAngle,
float driftVel )

Definition at line 11 of file MM_Electron.cxx.

11 {
12 float tanLorentzAngle = std::tan(lorentzAngle);
13 if (tanLorentzAngle == tanLorentzAngle) // checking that it's not NAN
16
17 if (driftVel > 0.)
18 m_time = m_offsetPosition.mag() / driftVel;
19 else
20 m_time = -1.;
21}
Eigen::Matrix< double, 2, 1 > Vector2D

◆ setCharge()

void MM_Electron::setCharge ( float Charge)

Definition at line 24 of file MM_Electron.cxx.

◆ setOffsetPosition()

void MM_Electron::setOffsetPosition ( float x,
float y )

Definition at line 9 of file MM_Electron.cxx.

◆ setTime()

void MM_Electron::setTime ( float Time)

Definition at line 23 of file MM_Electron.cxx.

23{ m_time = Time; }

Member Data Documentation

◆ m_charge

float MM_Electron::m_charge {-FLT_MAX}
private

Definition at line 41 of file MM_Electron.h.

41{-FLT_MAX};

◆ m_initialPosition

Amg::Vector2D MM_Electron::m_initialPosition {Amg::Vector2D::Zero()}
private

Definition at line 37 of file MM_Electron.h.

37{Amg::Vector2D::Zero()};

◆ m_offsetPosition

Amg::Vector2D MM_Electron::m_offsetPosition {Amg::Vector2D::Zero()}
private

Definition at line 38 of file MM_Electron.h.

38{Amg::Vector2D::Zero()};

◆ m_time

float MM_Electron::m_time {-FLT_MAX}
private

Definition at line 40 of file MM_Electron.h.

40{-FLT_MAX};

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