Skip to content

Commit 33fa132

Browse files
wpierozakwpierozak
authored andcommitted
Fixed incorrect rounding to ns in collision time calculation; Fixed bug with number of entries counter
1 parent 5819a48 commit 33fa132

2 files changed

Lines changed: 14 additions & 20 deletions

File tree

‎DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/FDDRecoConfig.h‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,8 @@ struct FDDRecoConfig : o2::conf::ConfigurableParamHelper<FDDRecoConfig> {
3939

4040
int16_t CollisionTimeAmpltudeUpper = 4096;
4141
int16_t CollisionTimeAmplitudeLower = 0;
42-
int16_t CollisionTimeTimeLower = -2050;
43-
int16_t CollisionTimeTimeUpper = 2050;
42+
int16_t CollisionTimeTimeLower = -500;
43+
int16_t CollisionTimeTimeUpper = 500;
4444

4545
uint8_t CollisionTimeValidPmInputFlagMask = static_cast<uint8_t>(~(1u << ChannelData::kNumberADC));
4646
uint8_t CollisionTimeValidPmInputFlags = static_cast<uint8_t>((1u << ChannelData::kIsCFDinADCgate) | (1u << ChannelData::kIsEventInTVDC));
@@ -49,12 +49,12 @@ struct FDDRecoConfig : o2::conf::ConfigurableParamHelper<FDDRecoConfig> {
4949
return (flags & CollisionTimeValidPmInputFlagMask) == CollisionTimeValidPmInputFlags;
5050
}
5151

52-
float SwTriggerTimeLowThreshold = -1.25;
53-
float SwTriggerTimeHighThreshold = 1.25;
54-
float SwTriggerAmplitudeLowThreshold = 0.0;
55-
float SwTriggerAmplitudeHighThreshold = 4096.0;
56-
float SwTriggerTimeDiffMin = -1.25;
57-
float SwTriggerTimeDiffMax = 1.25;
52+
int16_t SwTriggerTimeLowThreshold = -153;
53+
int16_t SwTriggerTimeHighThreshold = 153;
54+
int16_t SwTriggerAmplitudeLowThreshold = 10;
55+
int16_t SwTriggerAmplitudeHighThreshold = 4096;
56+
float SwTriggerTimeDiffMin = -1.3;
57+
float SwTriggerTimeDiffMax = 1.3;
5858
bool SwTriggerEnabled = false;
5959

6060
O2ParamDef(FDDRecoConfig, "FDDRecoConfig");

‎Detectors/FIT/FDD/reconstruction/src/Reconstructor.cxx‎

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,7 @@ void Reconstructor::process(o2::fdd::Digit const& digitBC, gsl::span<const o2::f
2727
std::vector<o2::fdd::RecPoint>& RecPoints, std::vector<o2::fdd::ChannelDataFloat>& outChData)
2828
// gsl::span<o2::fdd::ChannelDataFloat> outChData)
2929
{
30-
// Compute charge weighted average time
31-
Double_t timeFDA = 0, timeFDC = 0;
32-
Double_t weightFDA = 0.0, weightFDC = 0.0;
33-
Int_t nInTimeA = 0, nInTimeC = 0;
34-
int firstEntry = outChData.size();
35-
int nStored = 0;
36-
int nch = inChData.size();
30+
const int firstEntry = outChData.size();
3731

3832
bool atLeastOneVertexChannel = false;
3933
bool atLeastOneChannelInSwAmplitudeRange = false;
@@ -81,19 +75,19 @@ void Reconstructor::process(o2::fdd::Digit const& digitBC, gsl::span<const o2::f
8175
}
8276

8377
constexpr float nsToPs = 1e3;
84-
float meanTimeSideA = std::round(float(timeSideA) * timePerTDC / float(entriesNumSideA));
85-
float meanTimeSideC = std::round(float(timeSideC) * timePerTDC / float(entriesNumSideC));
78+
float meanTimeSideA = float(timeSideA) * timePerTDC / float(entriesNumSideA);
79+
float meanTimeSideC = float(timeSideC) * timePerTDC / float(entriesNumSideC);
8680

8781
bool swVertexTrg = FDDRecoConfig::Instance().SwTriggerEnabled ? calculateSwTrigger(meanTimeSideA, meanTimeSideC, swOrGateSideA, swOrGateSideC) : false;
8882

8983
std::array<int, 2> mCollisionTime = {o2::fdd::RecPoint::sDummyCollissionTime, o2::fdd::RecPoint::sDummyCollissionTime};
9084
if (entriesNumSideA > 0) {
91-
mCollisionTime[o2::fdd::RecPoint::TimeA] = meanTimeSideA * nsToPs;
85+
mCollisionTime[o2::fdd::RecPoint::TimeA] = std::round(meanTimeSideA * nsToPs);
9286
}
9387
if (entriesNumSideC > 0) {
94-
mCollisionTime[o2::fdd::RecPoint::TimeC] = meanTimeSideC * nsToPs;
88+
mCollisionTime[o2::fdd::RecPoint::TimeC] = std::round(meanTimeSideC * nsToPs);
9589
}
96-
RecPoints.emplace_back(mCollisionTime, firstEntry, nStored, digitBC.getIntRecord(), digitBC.mTriggers, swVertexTrg);
90+
RecPoints.emplace_back(mCollisionTime, firstEntry, storedEntries, digitBC.getIntRecord(), digitBC.mTriggers, swVertexTrg);
9791
}
9892
//________________________________________________________
9993
void Reconstructor::finish()

0 commit comments

Comments
 (0)