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

#include <CaloHadWeight.h>

Collaboration diagram for CaloHadWeight:

Classes

struct  HadData

Public Member Functions

 CaloHadWeight ()
 CaloHadWeight (const int &nBinEta, const float &MinEta, const float &MaxEta, const int &nBinSampling, const int &MinSampling, const int &MaxSampling, const int &nBinLogEClus, const float &MinLogEClus, const float &MaxLogEClus, const int &nBinLogEDensCell, const float &MinLogEDensCell, const float &MaxLogEDensCell)
const int & getNbinsEta () const
const float & getEtaMin () const
const float & getEtaMax () const
const int & getNbinsSampling () const
const int & getSamplingMin () const
const int & getSamplingMax () const
const int & getNbinsLogEClus () const
const float & getLogEClusMin () const
const float & getLogEClusMax () const
const int & getNbinsLogEDensCell () const
const float & getLogEDensCellMin () const
const float & getLogEDensCellMax () const
const struct HadDatagetHadData (const float &eta, const int &sampling, const float &logEClus, const float &logEDensCell) const
void setHadData (const float &eta, const int &sampling, const float &logEClus, const float &logEDensCell, const struct HadData &theData)

Private Member Functions

int getEtaSamplingBin (const float &eta, const int &sampling) const
int getBin (const float &eta, const int &sampling, const float &logEClus, const float &logEDensCell) const

Private Attributes

int m_nBinEta
int m_nBinSampling
int m_nBinLogEClus
int m_nBinLogEDensCell
float m_MinEta
int m_MinSampling
float m_MinLogEClus
float m_MinLogEDensCell
float m_MaxEta
int m_MaxSampling
float m_MaxLogEClus
float m_MaxLogEDensCell
std::vector< int > m_indexEtaSampling
std::vector< struct HadDatam_data

Detailed Description

Definition at line 19 of file CaloHadWeight.h.

Constructor & Destructor Documentation

◆ CaloHadWeight() [1/2]

CaloHadWeight::CaloHadWeight ( )

Definition at line 9 of file CaloHadWeight.cxx.

◆ CaloHadWeight() [2/2]

CaloHadWeight::CaloHadWeight ( const int & nBinEta,
const float & MinEta,
const float & MaxEta,
const int & nBinSampling,
const int & MinSampling,
const int & MaxSampling,
const int & nBinLogEClus,
const float & MinLogEClus,
const float & MaxLogEClus,
const int & nBinLogEDensCell,
const float & MinLogEDensCell,
const float & MaxLogEDensCell )

Definition at line 26 of file CaloHadWeight.cxx.

39 : m_nBinEta (nBinEta),
40 m_nBinSampling (nBinSampling),
41 m_nBinLogEClus (nBinLogEClus),
42 m_nBinLogEDensCell (nBinLogEDensCell),
43 m_MinEta (MinEta),
44 m_MinSampling (MinSampling),
45 m_MinLogEClus (MinLogEClus),
46 m_MinLogEDensCell (MinLogEDensCell),
47 m_MaxEta (MaxEta),
48 m_MaxSampling (MaxSampling),
49 m_MaxLogEClus (MaxLogEClus),
50 m_MaxLogEDensCell (MaxLogEDensCell)
51{
53}
std::vector< int > m_indexEtaSampling

Member Function Documentation

◆ getBin()

int CaloHadWeight::getBin ( const float & eta,
const int & sampling,
const float & logEClus,
const float & logEDensCell ) const
private

Definition at line 98 of file CaloHadWeight.cxx.

99{
100 int iLogEClus,iLogEDensCell;
101
102 const int iEtaSampling = getEtaSamplingBin(eta, sampling);
103 if ( iEtaSampling > -1 && m_indexEtaSampling[iEtaSampling] > -1 ) {
104 iLogEClus = (int)((logEClus-m_MinLogEClus)/(m_MaxLogEClus-m_MinLogEClus)*m_nBinLogEClus);
105 if ( iLogEClus >= 0 && iLogEClus < m_nBinLogEClus ) {
107 if ( iLogEDensCell >= 0 && iLogEDensCell < m_nBinLogEDensCell ) {
108 return (iLogEDensCell + m_nBinLogEDensCell *
109 (iLogEClus + m_nBinLogEClus *
110 m_indexEtaSampling[iEtaSampling]));
111 }
112 }
113 }
114 return -1;
115}
Scalar eta() const
pseudorapidity method
int getEtaSamplingBin(const float &eta, const int &sampling) const

◆ getEtaMax()

const float & CaloHadWeight::getEtaMax ( ) const
inline

Definition at line 51 of file CaloHadWeight.h.

51{return m_MaxEta;}

◆ getEtaMin()

const float & CaloHadWeight::getEtaMin ( ) const
inline

Definition at line 50 of file CaloHadWeight.h.

50{return m_MinEta;}

◆ getEtaSamplingBin()

int CaloHadWeight::getEtaSamplingBin ( const float & eta,
const int & sampling ) const
private

Definition at line 84 of file CaloHadWeight.cxx.

85{
86 int iEta,iSampling;
87
89 if ( iEta >= 0 && iEta < m_nBinEta ) {
90 iSampling = sampling-m_MinSampling;
91 if ( iSampling >= 0 && iSampling < m_nBinSampling ) {
92 return (iEta*m_nBinSampling+iSampling);
93 }
94 }
95 return (-1);
96}
setScale setgFexType iEta

◆ getHadData()

const struct CaloHadWeight::HadData * CaloHadWeight::getHadData ( const float & eta,
const int & sampling,
const float & logEClus,
const float & logEDensCell ) const

Definition at line 55 of file CaloHadWeight.cxx.

56{
57 int iBin = getBin(eta,sampling,logEClus,logEDensCell);
58 if ( iBin > -1 && iBin < (int)m_data.size() )
59 return (& m_data[iBin]);
60 else
61 return nullptr;
62}
std::vector< struct HadData > m_data
int getBin(const float &eta, const int &sampling, const float &logEClus, const float &logEDensCell) const

◆ getLogEClusMax()

const float & CaloHadWeight::getLogEClusMax ( ) const
inline

Definition at line 59 of file CaloHadWeight.h.

59{return m_MaxLogEClus;}

◆ getLogEClusMin()

const float & CaloHadWeight::getLogEClusMin ( ) const
inline

Definition at line 58 of file CaloHadWeight.h.

58{return m_MinLogEClus;}

◆ getLogEDensCellMax()

const float & CaloHadWeight::getLogEDensCellMax ( ) const
inline

Definition at line 63 of file CaloHadWeight.h.

63{return m_MaxLogEDensCell;}

◆ getLogEDensCellMin()

const float & CaloHadWeight::getLogEDensCellMin ( ) const
inline

Definition at line 62 of file CaloHadWeight.h.

62{return m_MinLogEDensCell;}

◆ getNbinsEta()

const int & CaloHadWeight::getNbinsEta ( ) const
inline

Definition at line 49 of file CaloHadWeight.h.

49{return m_nBinEta;}

◆ getNbinsLogEClus()

const int & CaloHadWeight::getNbinsLogEClus ( ) const
inline

Definition at line 57 of file CaloHadWeight.h.

57{return m_nBinLogEClus;}

◆ getNbinsLogEDensCell()

const int & CaloHadWeight::getNbinsLogEDensCell ( ) const
inline

Definition at line 61 of file CaloHadWeight.h.

61{return m_nBinLogEDensCell;}

◆ getNbinsSampling()

const int & CaloHadWeight::getNbinsSampling ( ) const
inline

Definition at line 53 of file CaloHadWeight.h.

53{return m_nBinSampling;}

◆ getSamplingMax()

const int & CaloHadWeight::getSamplingMax ( ) const
inline

Definition at line 55 of file CaloHadWeight.h.

55{return m_MaxSampling;}

◆ getSamplingMin()

const int & CaloHadWeight::getSamplingMin ( ) const
inline

Definition at line 54 of file CaloHadWeight.h.

54{return m_MinSampling;}

◆ setHadData()

void CaloHadWeight::setHadData ( const float & eta,
const int & sampling,
const float & logEClus,
const float & logEDensCell,
const struct HadData & theData )

Definition at line 67 of file CaloHadWeight.cxx.

67 {
68
69 const int iEtaSampling = getEtaSamplingBin(eta, sampling);
70 if ( iEtaSampling > -1 ) {
71 if ( m_indexEtaSampling[iEtaSampling] == -1 ) {
72 const int iFilledSamplings = m_data.size()/(m_nBinLogEClus*m_nBinLogEDensCell);
73 m_indexEtaSampling[iEtaSampling] = iFilledSamplings;
74 m_data.resize((iFilledSamplings+1)*(m_nBinLogEClus*m_nBinLogEDensCell));
75 }
76 const int iBin = getBin(eta,sampling,logEClus,logEDensCell);
77 if ( iBin > -1 ) {
78 m_data[iBin] = theData;
79 }
80 }
81}

Member Data Documentation

◆ m_data

std::vector<struct HadData> CaloHadWeight::m_data
private

Definition at line 90 of file CaloHadWeight.h.

◆ m_indexEtaSampling

std::vector<int> CaloHadWeight::m_indexEtaSampling
private

Definition at line 89 of file CaloHadWeight.h.

◆ m_MaxEta

float CaloHadWeight::m_MaxEta
private

Definition at line 84 of file CaloHadWeight.h.

◆ m_MaxLogEClus

float CaloHadWeight::m_MaxLogEClus
private

Definition at line 86 of file CaloHadWeight.h.

◆ m_MaxLogEDensCell

float CaloHadWeight::m_MaxLogEDensCell
private

Definition at line 87 of file CaloHadWeight.h.

◆ m_MaxSampling

int CaloHadWeight::m_MaxSampling
private

Definition at line 85 of file CaloHadWeight.h.

◆ m_MinEta

float CaloHadWeight::m_MinEta
private

Definition at line 79 of file CaloHadWeight.h.

◆ m_MinLogEClus

float CaloHadWeight::m_MinLogEClus
private

Definition at line 81 of file CaloHadWeight.h.

◆ m_MinLogEDensCell

float CaloHadWeight::m_MinLogEDensCell
private

Definition at line 82 of file CaloHadWeight.h.

◆ m_MinSampling

int CaloHadWeight::m_MinSampling
private

Definition at line 80 of file CaloHadWeight.h.

◆ m_nBinEta

int CaloHadWeight::m_nBinEta
private

Definition at line 74 of file CaloHadWeight.h.

◆ m_nBinLogEClus

int CaloHadWeight::m_nBinLogEClus
private

Definition at line 76 of file CaloHadWeight.h.

◆ m_nBinLogEDensCell

int CaloHadWeight::m_nBinLogEDensCell
private

Definition at line 77 of file CaloHadWeight.h.

◆ m_nBinSampling

int CaloHadWeight::m_nBinSampling
private

Definition at line 75 of file CaloHadWeight.h.


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