Skip to content

Commit f993fca

Browse files
author
wpierozak
committed
FT0: Implemnted condtion on sum of amplitudes in EventsPerBc calibration
1 parent d384645 commit f993fca

File tree

4 files changed

+14
-7
lines changed

4 files changed

+14
-7
lines changed

Detectors/FIT/FT0/calibration/include/FT0Calibration/EventsPerBcCalibrator.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
namespace o2::ft0
3232
{
3333
struct EventsPerBcContainer {
34-
EventsPerBcContainer(int32_t minAmplitudeSideA, int32_t minAmplitudeSideC) : mMinAmplitudeSideA(minAmplitudeSideA), mMinAmplitudeSideC(minAmplitudeSideC) {}
34+
EventsPerBcContainer(int32_t minAmplitudeSideA, int32_t minAmplitudeSideC, int32_t minSumOfAmplitude) : mMinAmplitudeSideA(minAmplitudeSideA), mMinAmplitudeSideC(minAmplitudeSideC), mMinSumOfAmplitude(minSumOfAmplitude) {}
3535

3636
size_t getEntries() const { return entries; }
3737
void print() const;
@@ -40,6 +40,7 @@ struct EventsPerBcContainer {
4040

4141
const int32_t mMinAmplitudeSideA;
4242
const int32_t mMinAmplitudeSideC;
43+
const int32_t mMinSumOfAmplitude;
4344

4445
std::array<double, o2::constants::lhc::LHCMaxBunches> mTvx{0.0};
4546
size_t entries{0};
@@ -56,7 +57,7 @@ class EventsPerBcCalibrator final : public o2::calibration::TimeSlotCalibration<
5657
using EventsHistogram = std::array<double, o2::constants::lhc::LHCMaxBunches>;
5758

5859
public:
59-
EventsPerBcCalibrator(uint32_t minNumberOfEntries, int32_t minAmplitudeSideA, int32_t minAmplitudeSideC);
60+
EventsPerBcCalibrator(uint32_t minNumberOfEntries, int32_t minAmplitudeSideA, int32_t minAmplitudeSideC, int32_t minSumOfAmplitude);
6061

6162
bool hasEnoughData(const Slot& slot) const override;
6263
void initOutput() override;
@@ -70,6 +71,7 @@ class EventsPerBcCalibrator final : public o2::calibration::TimeSlotCalibration<
7071
const uint32_t mMinNumberOfEntries;
7172
const int32_t mMinAmplitudeSideA;
7273
const int32_t mMinAmplitudeSideC;
74+
const int32_t mMinSumOfAmplitude;
7375

7476
std::vector<EventsPerBc> mTvxPerBcs;
7577
std::vector<std::unique_ptr<o2::ccdb::CcdbObjectInfo>> mTvxPerBcInfos;

Detectors/FIT/FT0/calibration/src/EventsPerBcCalibrator.cxx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ void EventsPerBcContainer::fill(const o2::dataformats::TFIDInfo& ti, const gsl::
2323
{
2424
size_t oldEntries = entries;
2525
for (const auto& digit : data) {
26-
if (digit.mTriggers.getVertex() && digit.mTriggers.getAmplA() >= mMinAmplitudeSideA && digit.mTriggers.getAmplC() >= mMinAmplitudeSideC) {
26+
if (digit.mTriggers.getVertex() && digit.mTriggers.getAmplA() >= mMinAmplitudeSideA && digit.mTriggers.getAmplC() >= mMinAmplitudeSideC && (digit.mTriggers.getAmplA() + digit.mTriggers.getAmplC()) >= mMinSumOfAmplitude) {
2727
mTvx[digit.mIntRecord.bc]++;
2828
entries++;
2929
}
@@ -45,7 +45,7 @@ void EventsPerBcCalibrator::initOutput()
4545
mTvxPerBcInfos.clear();
4646
}
4747

48-
EventsPerBcCalibrator::EventsPerBcCalibrator(uint32_t minNumberOfEntries, int32_t minAmplitudeSideA, int32_t minAmplitudeSideC) : mMinNumberOfEntries(minNumberOfEntries), mMinAmplitudeSideA(minAmplitudeSideA), mMinAmplitudeSideC(minAmplitudeSideC)
48+
EventsPerBcCalibrator::EventsPerBcCalibrator(uint32_t minNumberOfEntries, int32_t minAmplitudeSideA, int32_t minAmplitudeSideC, int32_t minSumOfAmplitude) : mMinNumberOfEntries(minNumberOfEntries), mMinAmplitudeSideA(minAmplitudeSideA), mMinAmplitudeSideC(minAmplitudeSideC), mMinSumOfAmplitude(minSumOfAmplitude)
4949
{
5050
LOG(info) << "Defined threshold for number of entires per slot: " << mMinNumberOfEntries;
5151
LOG(info) << "Defined threshold for side A amplitude for event: " << mMinAmplitudeSideA;
@@ -75,7 +75,7 @@ EventsPerBcCalibrator::Slot& EventsPerBcCalibrator::emplaceNewSlot(bool front, T
7575
{
7676
auto& cont = getSlots();
7777
auto& slot = front ? cont.emplace_front(tstart, tend) : cont.emplace_back(tstart, tend);
78-
slot.setContainer(std::make_unique<EventsPerBcContainer>(mMinAmplitudeSideA, mMinAmplitudeSideC));
78+
slot.setContainer(std::make_unique<EventsPerBcContainer>(mMinAmplitudeSideA, mMinAmplitudeSideC, mMinSumOfAmplitude));
7979
return slot;
8080
}
8181
} // namespace o2::ft0

Detectors/FIT/FT0/calibration/workflow/FT0EventsPerBcProcessor-Workflow.cxx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ o2::framework::WorkflowSpec defineDataProcessing(o2::framework::ConfigContext co
3939
{"one-object-per-run", VariantType::Bool, false, {"If set, workflow creates only one calibration object per run"}},
4040
{"min-entries-number", VariantType::UInt32, 5000u, {"Minimum number of entries required for a slot to be valid"}},
4141
{"min-ampl-side-a", VariantType::Int, 0, {"Amplitude threshold for Side A events"}},
42-
{"min-ampl-side-c", VariantType::Int, 0, {"Amplitude threshold for Side C events"}}}};
42+
{"min-ampl-side-c", VariantType::Int, 0, {"Amplitude threshold for Side C events"}},
43+
{"min-sum-of-ampl", VariantType::Int, 0, {"Amplitude threshold for sum of A-side and C-side amplitudes"}}}};
4344

4445
WorkflowSpec workflow;
4546
workflow.emplace_back(dataProcessorSpec);

Detectors/FIT/FT0/calibration/workflow/FT0EventsPerBcSpec.h

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,11 @@ class FT0EventsPerBcProcessor final : public o2::framework::Task
5050
if (ic.options().hasOption("min-ampl-side-c")) {
5151
mMinAmplitudeSideC = ic.options().get<int32_t>("min-ampl-side-c");
5252
}
53+
if (ic.options().hasOption("min-sum-of-ampl")) {
54+
mMinSumOfAmplitude = ic.options().get<int32_t>("min-sum-of-ampl");
55+
}
5356

54-
mCalibrator = std::make_unique<o2::ft0::EventsPerBcCalibrator>(mMinNumberOfEntries, mMinAmplitudeSideA, mMinAmplitudeSideC);
57+
mCalibrator = std::make_unique<o2::ft0::EventsPerBcCalibrator>(mMinNumberOfEntries, mMinAmplitudeSideA, mMinAmplitudeSideC, mMinSumOfAmplitude);
5558

5659
if (mOneObjectPerRun) {
5760
LOG(info) << "Only one object will be created at the end of run";
@@ -119,6 +122,7 @@ class FT0EventsPerBcProcessor final : public o2::framework::Task
119122
uint32_t mMinNumberOfEntries;
120123
int32_t mMinAmplitudeSideA;
121124
int32_t mMinAmplitudeSideC;
125+
int32_t mMinSumOfAmplitude;
122126
};
123127
} // namespace o2::calibration
124128
#endif

0 commit comments

Comments
 (0)