ATLAS Offline Software
MuonSpectrometer
MuonDigitization
MM_Digitization
src
MM_IonizationCluster.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
MM_Digitization/MM_IonizationCluster.h
"
6
7
MM_IonizationCluster::MM_IonizationCluster
(
float
HitX,
float
IonizationX,
float
IonizationY) :
8
m_HitX(HitX), m_IonizationStart(IonizationX, IonizationY) {}
9
10
void
MM_IonizationCluster::createElectrons
(
int
nElectrons) {
11
m_Electrons
.reserve(nElectrons);
12
for
(
int
iElectron = 0; iElectron < nElectrons; iElectron++)
13
m_Electrons
.push_back(std::make_unique<MM_Electron>(
m_IonizationStart
.x() +
m_HitX
,
m_IonizationStart
.y()));
14
}
15
16
void
MM_IonizationCluster::propagateElectrons
(
float
lorentzAngle,
float
driftVel) {
17
for
(
auto
&
Electron
:
m_Electrons
)
Electron
->propagateElectron(lorentzAngle, driftVel);
18
}
19
20
// accessors
21
std::vector<std::unique_ptr<MM_Electron>>&
MM_IonizationCluster::getElectrons
() {
return
m_Electrons
; }
MM_IonizationCluster::createElectrons
void createElectrons(int nElectrons)
Definition:
MM_IonizationCluster.cxx:10
MM_IonizationCluster.h
MM_IonizationCluster::m_IonizationStart
Amg::Vector2D m_IonizationStart
Definition:
MM_IonizationCluster.h:31
MM_IonizationCluster::getElectrons
std::vector< std::unique_ptr< MM_Electron > > & getElectrons()
Definition:
MM_IonizationCluster.cxx:21
MM_IonizationCluster::propagateElectrons
void propagateElectrons(float lorentzAngle, float driftVel)
Definition:
MM_IonizationCluster.cxx:16
MM_IonizationCluster::m_Electrons
std::vector< std::unique_ptr< MM_Electron > > m_Electrons
Definition:
MM_IonizationCluster.h:29
MM_IonizationCluster::MM_IonizationCluster
MM_IonizationCluster()=default
Electron
Class describing an electron.
MM_IonizationCluster::m_HitX
float m_HitX
Definition:
MM_IonizationCluster.h:30
Generated on Sun Dec 22 2024 21:14:35 for ATLAS Offline Software by
1.8.18