Skip to content

Commit 8af3dbf

Browse files
authored
Refactor lutEntry_t print method and size calculations
1 parent 364da38 commit 8af3dbf

1 file changed

Lines changed: 38 additions & 11 deletions

File tree

ALICE3/Core/FlatLutEntry.cxx

Lines changed: 38 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,36 @@
2525
namespace o2::delphes
2626
{
2727

28+
void lutEntry_t::print() const
29+
{
30+
LOGF(info, " nch = %f, eta = %f, pt = %f, valid = %s\n", nch, eta, pt, valid ? "true" : "false");
31+
LOGF(info, " eff = %f, eff2 = %f, itof = %f, otof = %f\n", eff, eff2, itof, otof);
32+
LOGF(info, " covm: ");
33+
for (int i = 0; i < 15; ++i) {
34+
LOGF(info, "%f ", covm[i]);
35+
}
36+
LOGF(info, "\n");
37+
LOGF(info, " eigval: ");
38+
for (int i = 0; i < 5; ++i) {
39+
LOGF(info, "%f ", eigval[i]);
40+
}
41+
LOGF(info, "\n");
42+
LOGF(info, " eigvec:\n");
43+
for (int i = 0; i < 5; ++i) {
44+
for (int j = 0; j < 5; ++j) {
45+
LOGF(info, "%f ", eigvec[i][j]);
46+
}
47+
LOGF(info, "\n");
48+
}
49+
LOGF(info, " eiginv:\n");
50+
for (int i = 0; i < 5; ++i) {
51+
for (int j = 0; j < 5; ++j) {
52+
LOGF(info, "%f ", eiginv[i][j]);
53+
}
54+
LOGF(info, "\n");
55+
}
56+
}
57+
2858
float map_t::fracPositionWithinBin(float val) const
2959
{
3060
float width = (max - min) / nbins;
@@ -90,10 +120,10 @@ void FlatLutData::initialize(const lutHeader_t& header)
90120
mEtaBins = header.etamap.nbins;
91121
mPtBins = header.ptmap.nbins;
92122

93-
size_t headerSize = sizeof(lutHeader_t);
94-
size_t numEntries = static_cast<size_t>(mNchBins) * mRadBins * mEtaBins * mPtBins;
95-
size_t entriesSize = numEntries * sizeof(lutEntry_t);
96-
size_t totalSize = headerSize + entriesSize;
123+
const size_t headerSize = sizeof(lutHeader_t);
124+
const size_t numEntries = static_cast<size_t>(mNchBins) * mRadBins * mEtaBins * mPtBins;
125+
const size_t entriesSize = numEntries * sizeof(lutEntry_t);
126+
const size_t totalSize = headerSize + entriesSize;
97127

98128
mData.resize(totalSize);
99129
// Write header at the beginning
@@ -103,13 +133,10 @@ void FlatLutData::initialize(const lutHeader_t& header)
103133

104134
size_t FlatLutData::getEntryOffset(int nch_bin, int rad_bin, int eta_bin, int pt_bin) const
105135
{
106-
size_t headerSize = sizeof(lutHeader_t);
107-
108-
// Linear index: nch varies slowest, pt varies fastest
109-
// idx = nch * (rad*eta*pt) + rad * (eta*pt) + eta * pt + pt
110-
size_t linearIdx = static_cast<size_t>(nch_bin) * (mRadBins * mEtaBins * mPtBins) + static_cast<size_t>(rad_bin) * (mEtaBins * mPtBins) + static_cast<size_t>(eta_bin) * mPtBins + static_cast<size_t>(pt_bin);
111-
112-
return headerSize + linearIdx * sizeof(lutEntry_t);
136+
static constexpr size_t headerSize = sizeof(lutHeader_t);
137+
const size_t linearIdx = getEntryIndex(nch_bin, rad_bin, eta_bin, pt_bin);
138+
static constexpr size_t entrySize = sizeof(lutEntry_t);
139+
return headerSize + linearIdx * entrySize;
113140
}
114141

115142
const lutEntry_t* FlatLutData::getEntryRef(int nch_bin, int rad_bin, int eta_bin, int pt_bin) const

0 commit comments

Comments
 (0)