ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
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.

7 : m_initialPosition(x, y) {}

Member Function Documentation

◆ getCharge()

float MM_Electron::getCharge ( ) const

Definition at line 27 of file MM_Electron.cxx.

27 { return m_charge; }

◆ 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; }

◆ 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 }

◆ setCharge()

void MM_Electron::setCharge ( float  Charge)

Definition at line 24 of file MM_Electron.cxx.

24 { m_charge = Charge; }

◆ 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.

◆ m_initialPosition

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

Definition at line 37 of file MM_Electron.h.

◆ m_offsetPosition

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

Definition at line 38 of file MM_Electron.h.

◆ m_time

float MM_Electron::m_time {-FLT_MAX}
private

Definition at line 40 of file MM_Electron.h.


The documentation for this class was generated from the following files:
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
MM_Electron::m_time
float m_time
Definition: MM_Electron.h:40
x
#define x
AthExHiveOpts.Time
Time
Definition: AthExHiveOpts.py:63
MM_Electron::m_charge
float m_charge
Definition: MM_Electron.h:41
MM_Electron::m_initialPosition
Amg::Vector2D m_initialPosition
Definition: MM_Electron.h:37
drawFromPickle.tan
tan
Definition: drawFromPickle.py:36
y
#define y
MM_Electron::m_offsetPosition
Amg::Vector2D m_offsetPosition
Definition: MM_Electron.h:38