#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... | |
void | endOfTrack (void) |
commit the buffer and reset the "already hit by this track" flag 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) | |
stop default copy ctor More... | |
MaterialAccountingGroup & | operator= (const MaterialAccountingGroup &layer) |
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 double const | s_tolerance = 0.01 |
Definition at line 18 of file MaterialAccountingGroup.h.
MaterialAccountingGroup::MaterialAccountingGroup | ( | const std::string & | name, |
const DDCompactView & | geometry | ||
) |
explicit constructors
Definition at line 22 of file MaterialAccountingGroup.cc.
References DDFilteredView::addFilter(), DDSpecificsFilter::equals, alcazmumu_cfi::filter, MaterialAccountingGroup::BoundingBox::grow(), i, 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, DDFilteredView::next(), perp(), position, s_tolerance, DDSpecificsFilter::setCriteria(), DDFilteredView::translation(), and detailsBasic3DVector::z.
MaterialAccountingGroup::~MaterialAccountingGroup | ( | void | ) |
destructor
Definition at line 68 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.
|
private |
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 99 of file MaterialAccountingGroup.cc.
References inside(), m_buffer, m_counted, and MaterialAccountingDetector::material().
|
inline |
return the average normalized material accounting informations
Definition at line 97 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 115 of file MaterialAccountingGroup.h.
References MaterialAccountingStep::energyLoss(), m_accounting, and m_tracks.
Referenced by TrackingMaterialAnalyser::saveParameters(), savePlots(), TrackingMaterialAnalyser::saveXml(), and sigmaEnergyLoss().
|
inline |
return the average normalized layer thickness
Definition at line 103 of file MaterialAccountingGroup.h.
References MaterialAccountingStep::length(), m_accounting, and m_tracks.
Referenced by TrackingMaterialAnalyser::saveParameters(), and sigmaLength().
|
inline |
return the average normalized number of radiation lengths
Definition at line 109 of file MaterialAccountingGroup.h.
References m_accounting, m_tracks, and MaterialAccountingStep::radiationLengths().
Referenced by TrackingMaterialAnalyser::saveParameters(), savePlots(), TrackingMaterialAnalyser::saveXml(), and sigmaRadiationLengths().
void MaterialAccountingGroup::endOfTrack | ( | void | ) |
commit the buffer and reset the "already hit by this track" flag
Definition at line 112 of file MaterialAccountingGroup.cc.
References average(), PV3DBase< T, PVType, FrameType >::eta(), 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, PV3DBase< T, PVType, FrameType >::perp(), and PV3DBase< T, PVType, FrameType >::z().
std::string MaterialAccountingGroup::info | ( | void | ) | const |
get some infos
Definition at line 177 of file MaterialAccountingGroup.cc.
References m_boundingbox, m_elements, m_name, dbtoconf::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 84 of file MaterialAccountingGroup.cc.
References i, MaterialAccountingGroup::BoundingBox::inside(), m_boundingbox, m_elements, PV3DBase< T, PVType, FrameType >::perp(), MaterialAccountingDetector::position(), position, s_tolerance, and PV3DBase< T, PVType, FrameType >::z().
Referenced by addDetector().
|
inline |
get the layer name
Definition at line 145 of file MaterialAccountingGroup.h.
References m_name.
Referenced by cuy.divideElement::__init__(), cuy.plotElement::__init__(), cuy.additionElement::__init__(), cuy.superimposeElement::__init__(), cuy.graphElement::__init__(), config.CFG::__str__(), TrackingMaterialAnalyser::saveParameters(), and TrackingMaterialAnalyser::saveXml().
|
private |
stop default assignment operator
|
private |
Definition at line 135 of file MaterialAccountingGroup.cc.
References svgfig::canvas(), and m_file.
Referenced by savePlots().
|
private |
Definition at line 149 of file MaterialAccountingGroup.cc.
References svgfig::canvas(), geometryCSVtoXML::line, and m_file.
void MaterialAccountingGroup::savePlots | ( | void | ) |
save the plots
Definition at line 188 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().
Referenced by TrackingMaterialAnalyser::saveLayerPlots().
|
inline |
return the sigma of the normalized energy loss density factor for Bethe-Bloch
Definition at line 133 of file MaterialAccountingGroup.h.
References averageEnergyLoss(), MaterialAccountingStep::energyLoss(), m_errors, m_tracks, and mathSSE::sqrt().
Referenced by TrackingMaterialAnalyser::saveParameters().
|
inline |
return the sigma of the normalized layer thickness
Definition at line 121 of file MaterialAccountingGroup.h.
References averageLength(), MaterialAccountingStep::length(), m_errors, m_tracks, and mathSSE::sqrt().
Referenced by TrackingMaterialAnalyser::saveParameters().
|
inline |
return the sigma of the normalized number of radiation lengths
Definition at line 127 of file MaterialAccountingGroup.h.
References averageRadiationLengths(), m_errors, m_tracks, MaterialAccountingStep::radiationLengths(), and mathSSE::sqrt().
Referenced by TrackingMaterialAnalyser::saveParameters().
|
inline |
return the number of tracks that hit this layer
Definition at line 139 of file MaterialAccountingGroup.h.
References m_tracks.
Referenced by TrackingMaterialAnalyser::saveParameters().
|
private |
Definition at line 163 of file MaterialAccountingGroup.h.
Referenced by average(), averageEnergyLoss(), averageLength(), averageRadiationLengths(), and endOfTrack().
|
private |
Definition at line 162 of file MaterialAccountingGroup.h.
Referenced by info(), inside(), and MaterialAccountingGroup().
|
private |
Definition at line 167 of file MaterialAccountingGroup.h.
Referenced by addDetector(), and endOfTrack().
|
private |
Definition at line 166 of file MaterialAccountingGroup.h.
Referenced by addDetector(), and endOfTrack().
|
private |
Definition at line 170 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 173 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 175 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 174 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 161 of file MaterialAccountingGroup.h.
Referenced by info(), inside(), and MaterialAccountingGroup().
|
private |
Definition at line 164 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), sigmaEnergyLoss(), sigmaLength(), and sigmaRadiationLengths().
|
mutableprivate |
Definition at line 181 of file MaterialAccountingGroup.h.
Referenced by savePlot(), and savePlots().
|
private |
Definition at line 160 of file MaterialAccountingGroup.h.
Referenced by info(), MaterialAccountingGroup(), name(), and savePlots().
|
private |
Definition at line 171 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 176 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 178 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 177 of file MaterialAccountingGroup.h.
Referenced by endOfTrack(), MaterialAccountingGroup(), savePlots(), and ~MaterialAccountingGroup().
|
private |
Definition at line 165 of file MaterialAccountingGroup.h.
Referenced by average(), averageEnergyLoss(), averageLength(), averageRadiationLengths(), endOfTrack(), sigmaEnergyLoss(), sigmaLength(), sigmaRadiationLengths(), and tracks().
|
staticprivate |
Definition at line 184 of file MaterialAccountingGroup.h.
Referenced by inside(), and MaterialAccountingGroup().