|
|
Go to the documentation of this file.
32 bool firstChild = fv.firstChild();
36 for (
const auto j : fv.specpars()) {
37 for (
const auto&
k :
j->paths) {
39 std::vector<std::vector<cms::Node*>>
children = fv.children(
k);
44 std::cout <<
"Adding element at (r,z) " <<
gp.perp() <<
"," <<
gp.z() << std::endl;
63 std::make_shared<TH1F>(TH1F((
m_name +
"_dedx_spectrum").c_str(),
"Energy loss spectrum", 1000, 0., 1.));
65 std::make_shared<TH1F>(TH1F((
m_name +
"_radlen_spectrum").c_str(),
"Radiation lengths spectrum", 1000, 0., 1.));
67 std::make_shared<TProfile>(TProfile((
m_name +
"_dedx_vs_eta").c_str(),
"Energy loss vs. eta", 600, -3., 3.));
69 std::make_shared<TProfile>(TProfile((
m_name +
"_dedx_vs_z").c_str(),
"Energy loss vs. Z", 6000, -300., 300.));
71 std::make_shared<TProfile>(TProfile((
m_name +
"_dedx_vs_r").c_str(),
"Energy loss vs. R", 1200, 0., 120.));
73 TProfile((
m_name +
"_radlen_vs_eta").c_str(),
"Radiation lengths vs. eta", 600, -3., 3.));
75 TProfile((
m_name +
"_radlen_vs_z").c_str(),
"Radiation lengths vs. Z", 6000, -300., 300.));
77 TProfile((
m_name +
"_radlen_vs_r").c_str(),
"Radiation lengths vs. R", 1200, 0., 120.));
152 m_file =
new TFile((
m_name +
".root").c_str(),
"RECREATE");
168 plot->SetFillColor(15);
169 plot->SetLineColor(1);
171 canvas.GetFrame()->SetFillColor(kWhite);
178 std::unique_ptr<TH1F>
line = std::make_unique<TH1F>(
179 TH1F((
name +
"_par").c_str(),
"Parametrization", 1,
plot->GetXaxis()->GetXmin(),
plot->GetXaxis()->GetXmax()));
184 plot->SetFillColor(15);
185 plot->SetLineColor(1);
186 plot->SetLineWidth(2);
188 line->SetLineColor(2);
189 line->SetLineWidth(2);
191 canvas.GetFrame()->SetFillColor(kWhite);
200 std::stringstream
out;
std::vector< GlobalPoint > m_elements
MaterialAccountingStep m_buffer
bool addDetector(const MaterialAccountingDetector &detector)
std::shared_ptr< TProfile > m_radlen_vs_eta
double sigmaRadiationLengths(void) const
DD4hep_MaterialAccountingGroup(const DD4hep_MaterialAccountingGroup &layer)=delete
const GlobalPoint & in(void) const
T perp() const
Magnitude of transverse component.
double sigmaLength(void) const
void grow(double r, double z)
bool inside(double r, double z) const
bool isInside(const MaterialAccountingDetector &detector) const
static constexpr double s_tolerance
std::string info(void) const
Global3DPoint GlobalPoint
MaterialAccountingStep m_accounting
double averageLength(void) const
const GlobalPoint & out(void) const
BoundingBox m_boundingbox
double sigmaEnergyLoss(void) const
std::pair< double, double > range_r() const
static int position[264][3]
std::pair< double, double > range_z() const
std::shared_ptr< TH1F > m_radlen_spectrum
std::shared_ptr< TProfile > m_radlen_vs_r
MaterialAccountingStep average(void) const
double averageEnergyLoss(void) const
std::shared_ptr< TProfile > m_dedx_vs_z
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
std::shared_ptr< TProfile > m_radlen_vs_z
std::shared_ptr< TH1F > m_dedx_spectrum
double energyLoss(void) const
double radiationLengths(void) const
double length(void) const
double averageRadiationLengths(void) const
std::shared_ptr< TProfile > m_dedx_vs_r
std::shared_ptr< TProfile > m_dedx_vs_eta
const std::string & name(void) const
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > Translation
void savePlot(std::shared_ptr< TH1F > plot, const std::string &name)
MaterialAccountingStep m_errors