ATLAS Offline Software
MuonSpectrometer
MuonDigitization
MM_Digitization
MM_Digitization
MM_IonizationCluster.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MM_DIGITIZATION_MM_IONIZATIONCLUSTER_H
6
#define MM_DIGITIZATION_MM_IONIZATIONCLUSTER_H
7
//
8
// MM_IonizationCluster.cxx
9
// Primary Ionization Cluster made up of primary electrons
10
//
11
12
#include <memory>
13
#include <vector>
14
#include "
GeoPrimitives/GeoPrimitives.h
"
15
#include "
MM_Digitization/MM_Electron.h
"
16
17
class
MM_IonizationCluster
{
18
public
:
19
MM_IonizationCluster
() =
default
;
20
MM_IonizationCluster
(
float
HitX,
float
IonizationX,
float
IonizationY);
21
void
createElectrons
(
int
nElectrons);
22
void
propagateElectrons
(
float
lorentzAngle,
float
driftVel);
23
std::vector<std::unique_ptr<MM_Electron>>&
getElectrons
();
24
float
getHitX
()
const
{
return
m_HitX
; }
25
const
Amg::Vector2D
&
getIonizationStart
()
const
{
return
m_IonizationStart
; }
26
27
private
:
28
// Members supplied by user
29
std::vector<std::unique_ptr<MM_Electron>>
m_Electrons
;
30
float
m_HitX
{0.0F};
31
Amg::Vector2D
m_IonizationStart
{
Amg::Vector2D::Zero
()};
32
};
33
34
#endif
MM_IonizationCluster::createElectrons
void createElectrons(int nElectrons)
Definition:
MM_IonizationCluster.cxx:10
MM_IonizationCluster::getIonizationStart
const Amg::Vector2D & getIonizationStart() const
Definition:
MM_IonizationCluster.h:25
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition:
GeoPrimitives.h:48
MM_Electron.h
MM_IonizationCluster::m_IonizationStart
Amg::Vector2D m_IonizationStart
Definition:
MM_IonizationCluster.h:31
MM_IonizationCluster
Definition:
MM_IonizationCluster.h:17
GeoPrimitives.h
MM_IonizationCluster::getHitX
float getHitX() const
Definition:
MM_IonizationCluster.h:24
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
MM_IonizationCluster::m_HitX
float m_HitX
Definition:
MM_IonizationCluster.h:30
generate::Zero
void Zero(TH1D *hin)
Definition:
generate.cxx:32
Generated on Thu Nov 7 2024 21:21:14 for ATLAS Offline Software by
1.8.18