![]() |
ATLAS Offline Software
|
Hold binned correction data for local hadronic calibration procedure. More...
#include <CaloLocalHadCoeff.h>
Classes | |
class | LocalHadArea |
Definition of correction area. More... | |
class | LocalHadDimension |
Class defines binning for user dimension. More... | |
Public Types | |
typedef std::vector< float > | LocalHadCoeff |
Correction parameters for one general bin. More... | |
Public Member Functions | |
CaloLocalHadCoeff () | |
Default constructor. More... | |
CaloLocalHadCoeff (const CaloLocalHadCoeff &other)=default | |
Copy constructor. More... | |
CaloLocalHadCoeff & | operator= (const CaloLocalHadCoeff &other)=default |
CaloLocalHadCoeff (CaloLocalHadCoeff &&) noexcept=default | |
CaloLocalHadCoeff & | operator= (CaloLocalHadCoeff &&) noexcept=default |
const std::string & | getTitle () const |
return name More... | |
void | setTitle (const std::string &title) |
set name More... | |
int | getSizeAreaSet () const |
return number of areas defined for this data set More... | |
void | addArea (LocalHadArea &theArea) |
add new area More... | |
void | setArea (const int n_area, const LocalHadArea &theArea) |
replace existing area with another one More... | |
const LocalHadArea * | getArea (int n_area) const |
return area More... | |
const LocalHadArea * | getAreaFromBin (int iBin) const |
return area defined for given general iBin More... | |
const LocalHadArea * | getAreaFromBin (int iBin, int &i_area) const |
return area (and area index) defined for given general iBin More... | |
int | getSizeCoeffSet () const |
return total number of coefficient sets More... | |
void | setCoeff (const int iBin, const LocalHadCoeff &theCoeff) |
set new data More... | |
const LocalHadCoeff * | getCoeff (const int &iBin) const |
get data for given general bin number More... | |
const LocalHadCoeff * | getCoeff (const int &n_area, std::vector< float > &vars) const |
get data for given area and list of cluster variables More... | |
int | getBin (const int n_area, std::vector< float > &vars) const |
calculate general bin from vector of input cluster variables More... | |
int | getBin (const int n_area, std::vector< int > &v_indexes) const |
calculate general bin from known bins in dimensions More... | |
int | bin2indexes (const int iBin, std::vector< int > &v_dim_indx) const |
expand general bin into vector of bins for defined dimensions More... | |
bool | isNeighbour (const int iBinx, std::vector< int > &v_indx) const |
are this bins is neighbour to this indexes vector (any of their indexes differ per one ?) More... | |
bool | isFilled (const int iBin) const |
check if general bin is filled More... | |
bool | getInterpArrays (const int n_area, const std::vector< int > &dim, std::vector< float > &x, std::vector< double > &xadj, std::vector< unsigned int > &gbin) const |
for interpolation, build the vector of relative x, and global bins for interpolated array for area n_area and list of dimensions (all in case dim is empty) More... | |
Private Attributes | |
std::string | m_title |
title of data set More... | |
std::vector< LocalHadCoeff > | m_CoeffSet |
vector of correction coefficients More... | |
std::vector< LocalHadArea > | m_AreaSet |
vector of correction areas More... | |
Hold binned correction data for local hadronic calibration procedure.
defines enums and data types of CaloLocalHadCoeff
Binning definition is done via conception of 'correction areas'. One area has fixed number of dimenensions, fixed way how these dimensions have been binned and fixed number of correction parameters for each bin.
For example, em/had classification tool requires following setup: 3 correction coefficients (em fraction of bin, number of entries in bin, some error in bin) are binned in 4 dimensions: cluster eta, log10(cluster energy), log10(cluster energy density), log10(cluter depth).
There could be more, than one, correction area defined for one correction tool. For example, dead material correction have 8 different areas defined for different kind of dead material energy depositions (before presamplers, between emec and hec, before FCAL, etc)
Definition at line 41 of file CaloLocalHadCoeff.h.
typedef std::vector<float> CaloLocalHadCoeff::LocalHadCoeff |
Correction parameters for one general bin.
Definition at line 220 of file CaloLocalHadCoeff.h.
CaloLocalHadCoeff::CaloLocalHadCoeff | ( | ) |
|
default |
Copy constructor.
|
defaultnoexcept |
void CaloLocalHadCoeff::addArea | ( | LocalHadArea & | theArea | ) |
int CaloLocalHadCoeff::bin2indexes | ( | const int | iBin, |
std::vector< int > & | v_dim_indx | ||
) | const |
expand general bin into vector of bins for defined dimensions
Definition at line 301 of file CaloLocalHadCoeff.cxx.
const CaloLocalHadCoeff::LocalHadArea * CaloLocalHadCoeff::getArea | ( | int | n_area | ) | const |
return area
Definition at line 201 of file CaloLocalHadCoeff.cxx.
const CaloLocalHadCoeff::LocalHadArea * CaloLocalHadCoeff::getAreaFromBin | ( | int | iBin | ) | const |
const CaloLocalHadCoeff::LocalHadArea * CaloLocalHadCoeff::getAreaFromBin | ( | int | iBin, |
int & | i_area | ||
) | const |
return area (and area index) defined for given general iBin
Definition at line 224 of file CaloLocalHadCoeff.cxx.
int CaloLocalHadCoeff::getBin | ( | const int | n_area, |
std::vector< float > & | vars | ||
) | const |
calculate general bin from vector of input cluster variables
Definition at line 273 of file CaloLocalHadCoeff.cxx.
int CaloLocalHadCoeff::getBin | ( | const int | n_area, |
std::vector< int > & | v_indexes | ||
) | const |
calculate general bin from known bins in dimensions
Definition at line 288 of file CaloLocalHadCoeff.cxx.
const CaloLocalHadCoeff::LocalHadCoeff * CaloLocalHadCoeff::getCoeff | ( | const int & | iBin | ) | const |
const CaloLocalHadCoeff::LocalHadCoeff * CaloLocalHadCoeff::getCoeff | ( | const int & | n_area, |
std::vector< float > & | vars | ||
) | const |
get data for given area and list of cluster variables
Definition at line 259 of file CaloLocalHadCoeff.cxx.
bool CaloLocalHadCoeff::getInterpArrays | ( | const int | n_area, |
const std::vector< int > & | dim, | ||
std::vector< float > & | x, | ||
std::vector< double > & | xadj, | ||
std::vector< unsigned int > & | gbin | ||
) | const |
for interpolation, build the vector of relative x, and global bins for interpolated array for area n_area and list of dimensions (all in case dim is empty)
Definition at line 317 of file CaloLocalHadCoeff.cxx.
|
inline |
return number of areas defined for this data set
Definition at line 248 of file CaloLocalHadCoeff.h.
|
inline |
|
inline |
bool CaloLocalHadCoeff::isFilled | ( | const int | iBin | ) | const |
check if general bin is filled
Definition at line 97 of file CaloLocalHadCoeff.cxx.
bool CaloLocalHadCoeff::isNeighbour | ( | const int | iBinx, |
std::vector< int > & | v_indx | ||
) | const |
are this bins is neighbour to this indexes vector (any of their indexes differ per one ?)
Definition at line 80 of file CaloLocalHadCoeff.cxx.
|
defaultnoexcept |
|
default |
void CaloLocalHadCoeff::setArea | ( | const int | n_area, |
const LocalHadArea & | theArea | ||
) |
replace existing area with another one
Definition at line 195 of file CaloLocalHadCoeff.cxx.
void CaloLocalHadCoeff::setCoeff | ( | const int | iBin, |
const LocalHadCoeff & | theCoeff | ||
) |
set new data
Definition at line 243 of file CaloLocalHadCoeff.cxx.
|
inline |
|
private |
vector of correction areas
Definition at line 312 of file CaloLocalHadCoeff.h.
|
private |
vector of correction coefficients
Definition at line 309 of file CaloLocalHadCoeff.h.
|
private |
title of data set
Definition at line 306 of file CaloLocalHadCoeff.h.