26 std::vector<double>
etaEdges = {-5.0, -3.0, -2.4, -1.5, 0.0, 1.5, 2.4, 3.0, 5.0};
30 static constexpr double Pi = 3.14159;
40 std::cout <<
"Created a histogram with " << hist.GetNDimensions() <<
" dimensions and " << hist.GetTotalNBins()
45 std::uniform_real_distribution
dist(0.0, 1.0);
46 static constexpr double maxE = 1050;
47 for (std::size_t i = 0; i < 100000; i++) {
49 double eta = -std::log(std::tan(delta / 2));
50 double phi = std::acos(2 *
dist(
gen) - 1) -
Pi / 2;
52 hist.Fill(eta, phi, E);
54 std::cout <<
" ... filled with " << hist.GetNEntries() <<
" entries.\n\n";
57 std::cout <<
"eta in [1.5, 2.4), phi in [0, 0.157), E between 10 GeV and 100 GeV\n";
58 auto content = hist.GetBinContent(5, 10, 1);
59 std::cout <<
" content = " <<
content <<
"\n";
61 std::cout <<
"eta in [-1.5, 0), phi in [-0.785, -0.628), E between 1 GeV and 10 GeV\n";
62 content = hist.GetBinContent(3, 5, 0);
63 std::cout <<
" content = " <<
content <<
"\n";
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
A histogram for aggregation of data along multiple dimensions.
A regular axis with equidistant bins in the interval .
An axis with variable bins defined by their edges.
double Pi()
Mathematical constants.
double dist(Rotation3D const &r1, Rotation3D const &r2)
constexpr Double_t E()
Base of natural log: .