#include <MaterialAccountingGroup.h>
Classes | |
class | BoundingBox |
Public Member Functions | |
bool | addDetector (const MaterialAccountingDetector &detector) |
buffer material from a detector, if the detector is inside the DetLayer bounds More... | |
MaterialAccountingStep | average (void) const |
return the average normalized material accounting informations More... | |
double | averageEnergyLoss (void) const |
return the average normalized energy loss density factor for Bethe-Bloch More... | |
double | averageLength (void) const |
return the average normalized layer thickness More... | |
double | averageRadiationLengths (void) const |
return the average normalized number of radiation lengths More... | |
const std::vector< GlobalPoint > & | elements (void) const |
void | endOfTrack (void) |
commit the buffer and reset the "already hit by this track" flag More... | |
std::pair< double, double > | getBoundingR () const |
Return the bouding limit in R for the hosted Group. More... | |
std::pair< double, double > | getBoundingZ () const |
Return the bouding limit in Z for the hosted Group. More... | |
std::string | info (void) const |
get some infos More... | |
bool | inside (const MaterialAccountingDetector &detector) const |
check if detector is inside any part of this layer More... | |
MaterialAccountingGroup (const std::string &name, const DDCompactView &geometry) | |
explicit constructors More... | |
const std::string & | name (void) const |
get the layer name More... | |
void | savePlots (void) |
save the plots More... | |
double | sigmaEnergyLoss (void) const |
return the sigma of the normalized energy loss density factor for Bethe-Bloch More... | |
double | sigmaLength (void) const |
return the sigma of the normalized layer thickness More... | |
double | sigmaRadiationLengths (void) const |
return the sigma of the normalized number of radiation lengths More... | |
unsigned int | tracks (void) const |
return the number of tracks that hit this layer More... | |
~MaterialAccountingGroup (void) | |
destructor More... | |
Private Member Functions | |
MaterialAccountingGroup (const MaterialAccountingGroup &layer)=delete | |
stop default copy ctor More... | |
MaterialAccountingGroup & | operator= (const MaterialAccountingGroup &layer)=delete |
stop default assignment operator More... | |
void | savePlot (TH1F *plot, const std::string &name) |
void | savePlot (TProfile *plot, float average, const std::string &name) |
Private Attributes | |
MaterialAccountingStep | m_accounting |
BoundingBox | m_boundingbox |
MaterialAccountingStep | m_buffer |
bool | m_counted |
TH1F * | m_dedx_spectrum |
TProfile * | m_dedx_vs_eta |
TProfile * | m_dedx_vs_r |
TProfile * | m_dedx_vs_z |
std::vector< GlobalPoint > | m_elements |
MaterialAccountingStep | m_errors |
TFile * | m_file |
std::string | m_name |
TH1F * | m_radlen_spectrum |
TProfile * | m_radlen_vs_eta |
TProfile * | m_radlen_vs_r |
TProfile * | m_radlen_vs_z |
unsigned int | m_tracks |
Static Private Attributes | |
static const double | s_tolerance |
Definition at line 19 of file MaterialAccountingGroup.h.
MaterialAccountingGroup::MaterialAccountingGroup | ( | const std::string & | name, |
const DDCompactView & | geometry | ||
) |
explicit constructors
Definition at line 23 of file MaterialAccountingGroup.cc.
References ALCARECOTkAlBeamHalo_cff::filter, MaterialAccountingGroup::BoundingBox::grow(), mps_fire::i, DDFilteredView::logicalPart(), LogTrace, m_boundingbox, m_dedx_spectrum, m_dedx_vs_eta, m_dedx_vs_r, m_dedx_vs_z, m_elements, m_name, m_radlen_spectrum, m_radlen_vs_eta, m_radlen_vs_r, m_radlen_vs_z, name(), DDFilteredView::next(), perp(), position, MaterialAccountingGroup::BoundingBox::range_r(), MaterialAccountingGroup::BoundingBox::range_z(), s_tolerance, DDBase< N, C >::toString(), DDFilteredView::translation(), and z.
MaterialAccountingGroup::~MaterialAccountingGroup | ( | void | ) |
destructor
Definition at line 88 of file MaterialAccountingGroup.cc.
References m_dedx_spectrum, m_dedx_vs_eta, m_dedx_vs_r, m_dedx_vs_z, m_radlen_spectrum, m_radlen_vs_eta, m_radlen_vs_r, and m_radlen_vs_z.
|
privatedelete |
stop default copy ctor
bool MaterialAccountingGroup::addDetector | ( | const MaterialAccountingDetector & | detector | ) |
buffer material from a detector, if the detector is inside the DetLayer bounds
Definition at line 132 of file MaterialAccountingGroup.cc.
References hgcalTestNeighbor_cfi::detector, inside(), m_buffer, and m_counted.
|
inline |
return the average normalized material accounting informations
Definition at line 91 of file MaterialAccountingGroup.h.
References m_accounting, and m_tracks.
Referenced by endOfTrack().
|
inline |
return the average normalized energy loss density factor for Bethe-Bloch
Definition at line 100 of file MaterialAccountingGroup.h.
References MaterialAccountingStep::energyLoss(), m_accounting, and m_tracks.
Referenced by savePlots(), and sigmaEnergyLoss().
|
inline |
return the average normalized layer thickness
Definition at line 94 of file MaterialAccountingGroup.h.
References MaterialAccountingStep::length(), m_accounting, and m_tracks.
Referenced by sigmaLength().
|
inline |
return the average normalized number of radiation lengths
Definition at line 97 of file MaterialAccountingGroup.h.
References m_accounting, m_tracks, and MaterialAccountingStep::radiationLengths().
Referenced by savePlots(), and sigmaRadiationLengths().
|
inline |
void MaterialAccountingGroup::endOfTrack | ( | void | ) |
commit the buffer and reset the "already hit by this track" flag
Definition at line 144 of file MaterialAccountingGroup.cc.
References average(), MaterialAccountingStep::energyLoss(), MaterialAccountingStep::in(), m_accounting, m_buffer, m_counted, m_dedx_spectrum, m_dedx_vs_eta, m_dedx_vs_r, m_dedx_vs_z, m_errors, m_radlen_spectrum, m_radlen_vs_eta, m_radlen_vs_r, m_radlen_vs_z, m_tracks, MaterialAccountingStep::out(), MaterialAccountingStep::radiationLengths(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
|
inline |
Return the bouding limit in R for the hosted Group.
Definition at line 85 of file MaterialAccountingGroup.h.
References m_boundingbox, and MaterialAccountingGroup::BoundingBox::range_r().
|
inline |
Return the bouding limit in Z for the hosted Group.
Definition at line 88 of file MaterialAccountingGroup.h.
References m_boundingbox, and MaterialAccountingGroup::BoundingBox::range_z().
std::string MaterialAccountingGroup::info | ( | void | ) | const |
get some infos
Definition at line 208 of file MaterialAccountingGroup.cc.
References alignBH_cfg::fixed, m_boundingbox, m_elements, m_name, MillePedeFileConverter_cfg::out, MaterialAccountingGroup::BoundingBox::range_r(), and MaterialAccountingGroup::BoundingBox::range_z().
bool MaterialAccountingGroup::inside | ( | const MaterialAccountingDetector & | detector | ) | const |
check if detector is inside any part of this layer
Definition at line 103 of file MaterialAccountingGroup.cc.
References hgcalTestNeighbor_cfi::detector, mps_fire::i, MaterialAccountingGroup::BoundingBox::inside(), LogTrace, m_boundingbox, m_elements, mag(), position, MaterialAccountingGroup::BoundingBox::range_r(), MaterialAccountingGroup::BoundingBox::range_z(), and s_tolerance.
Referenced by addDetector().
|
inline |
get the layer name
Definition at line 123 of file MaterialAccountingGroup.h.
References m_name.
Referenced by config.CFG::__str__(), validation.Sample::digest(), MaterialAccountingGroup(), and savePlot().
|
privatedelete |
stop default assignment operator
|
private |
Definition at line 167 of file MaterialAccountingGroup.cc.
References svgfig::canvas(), m_file, name(), and plotFactory::plot.
Referenced by savePlots().
|
private |
Definition at line 180 of file MaterialAccountingGroup.cc.
References svgfig::canvas(), mps_splice::line, m_file, name(), and plotFactory::plot.
void MaterialAccountingGroup::savePlots | ( | void | ) |
save the plots
Definition at line 220 of file MaterialAccountingGroup.cc.
References averageEnergyLoss(), averageRadiationLengths(), m_dedx_spectrum, m_dedx_vs_eta, m_dedx_vs_r, m_dedx_vs_z, m_file, m_name, m_radlen_spectrum, m_radlen_vs_eta, m_radlen_vs_r, m_radlen_vs_z, and savePlot().
|
inline |
return the sigma of the normalized energy loss density factor for Bethe-Bloch
Definition at line 115 of file MaterialAccountingGroup.h.
References averageEnergyLoss(), MaterialAccountingStep::energyLoss(), m_errors, m_tracks, and mathSSE::sqrt().
|
inline |
return the sigma of the normalized layer thickness
Definition at line 103 of file MaterialAccountingGroup.h.
References averageLength(), MaterialAccountingStep::length(), m_errors, m_tracks, and mathSSE::sqrt().
|
inline |
return the sigma of the normalized number of radiation lengths
Definition at line 108 of file MaterialAccountingGroup.h.
References averageRadiationLengths(), m_errors, m_tracks, MaterialAccountingStep::radiationLengths(), and mathSSE::sqrt().
|
inline |
return the number of tracks that hit this layer
Definition at line 120 of file MaterialAccountingGroup.h.
References m_tracks.
|
private |
Definition at line 144 of file MaterialAccountingGroup.h.
Referenced by average(), averageEnergyLoss(), averageLength(), averageRadiationLengths(), and endOfTrack().
|
private |
Definition at line 143 of file MaterialAccountingGroup.h.
Referenced by getBoundingR(), getBoundingZ(), info(), inside(), and MaterialAccountingGroup().
|
private |
Definition at line 148 of file MaterialAccountingGroup.h.
Referenced by addDetector(), and endOfTrack().
|
private |
Definition at line 147 of file MaterialAccountingGroup.h.
Referenced by addDetector(), and endOfTrack().
|
private |
Definition at line 151 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 154 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 156 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 155 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 142 of file MaterialAccountingGroup.h.
Referenced by elements(), info(), inside(), and MaterialAccountingGroup().
|
private |
Definition at line 145 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), sigmaEnergyLoss(), sigmaLength(), and sigmaRadiationLengths().
|
mutableprivate |
Definition at line 162 of file MaterialAccountingGroup.h.
Referenced by savePlot(), and savePlots().
|
private |
Definition at line 141 of file MaterialAccountingGroup.h.
Referenced by info(), MaterialAccountingGroup(), name(), and savePlots().
|
private |
Definition at line 152 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 157 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 159 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 158 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 146 of file MaterialAccountingGroup.h.
Referenced by average(), averageEnergyLoss(), averageLength(), averageRadiationLengths(), endOfTrack(), sigmaEnergyLoss(), sigmaLength(), sigmaRadiationLengths(), and tracks().
|
staticprivate |
Definition at line 165 of file MaterialAccountingGroup.h.
Referenced by inside(), and MaterialAccountingGroup().