Skip to content

Commit

Permalink
Bug fixes (bool --> float, histo filling) and a few improvements
Browse files Browse the repository at this point in the history
  • Loading branch information
chiarazampolli committed Jun 21, 2024
1 parent 7f7b2c2 commit 2462386
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 8 deletions.
11 changes: 9 additions & 2 deletions Detectors/GLOQC/include/GLOQC/ITSTPCMatchingQCParams.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,18 @@ namespace gloqc
// There are configurable params for TPC-ITS matching
struct ITSTPCMatchingQCParams : public o2::conf::ConfigurableParamHelper<ITSTPCMatchingQCParams> {

float minPtCut = 0.1f;
float etaCut = 1.4f;
float minPtITSCut = 0.f;
float etaITSCut = 1e10f;
int32_t minNITSClustersCut = 0;
int32_t maxChi2PerClusterITS = 100000;
float minPtTPCCut = 0.1f;
float etaTPCCut = 0.9f;
int32_t minNTPCClustersCut = 60;
float minDCACut = 100.f;
float minDCACutY = 10.f;
float minPtCut = 0.f;
float maxPtCut = 1e10f;
float etaCut = 1.e10f;
float cutK0Mass = 0.05f;
float maxEtaK0 = 0.8f;

Expand Down
19 changes: 18 additions & 1 deletion Detectors/GLOQC/include/GLOQC/MatchITSTPCQC.h
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,24 @@ class MatchITSTPCQC
// K0
void setMaxK0Eta(float v) { mMaxEtaK0 = v; }
void setRefitK0(bool v) { mRefit = v; }
void setCutK0Mass(bool v) { mCutK0Mass = v; }
void setCutK0Mass(float v) { mCutK0Mass = v; }

void printParams() {
LOG(info) << "minPtITSCut = " << mPtITSCut;
LOG(info) << "etaITSCut = " << mEtaITSCut;
LOG(info) << "minNITSClustersCut = " << mMinNClustersITS;
LOG(info) << "maxChi2PerClusterITS = " << mMaxChi2PerClusterITS;
LOG(info) << "minPtTPCCut = " << mPtTPCCut;
LOG(info) << "etaTPCCut = " << mEtaTPCCut;
LOG(info) << "minNTPCClustersCut = " << mNTPCClustersCut;
LOG(info) << "minDCACut = " << mDCATPCCut;
LOG(info) << "minDCACutY = " << mDCATPCCutY;
LOG(info) << "minPtCut = " << mPtCut;
LOG(info) << "maxPtCut = " << mPtMaxCut;
LOG(info) << "etaCut = " << mEtaCut;
LOG(info) << "cutK0Mass = " << mCutK0Mass;
LOG(info) << "maxEtaK0 = " << mMaxEtaK0;
}

private:
std::shared_ptr<o2::globaltracking::DataRequest> mDataRequest;
Expand Down
8 changes: 6 additions & 2 deletions Detectors/GLOQC/src/MatchITSTPCQC.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -377,9 +377,12 @@ bool MatchITSTPCQC::init()

if (mDoK0QC) {
// V0s
mK0MassVsPt = new TH2F("mK0MassVsPt", "K0 invariant mass vs Pt", 100, 0.3, 0.7, 100, 0.f, 20.f);
mK0MassVsPt = new TH2F("mK0MassVsPt", "K0 invariant mass vs Pt; Pt [GeV/c]; K0s mass [GeV/c^2]", 100, 0.f, 20.f, 100, 0.3, 0.7);
}

LOG(info) << "Printing configuration cuts";
printParams();

return true;
}

Expand Down Expand Up @@ -945,10 +948,11 @@ bool MatchITSTPCQC::processV0(int iv, o2::globaltracking::RecoContainer& recoDat
if (mMaxEtaK0 < std::abs(v0sel.getEta())) {
return false;
}
LOG(info) << "Find K0 with mass " << std::sqrt(v0sel.calcMass2AsK0());
if (mCutK0Mass > 0 && std::abs(std::sqrt(v0sel.calcMass2AsK0()) - 0.497) > mCutK0Mass) {
return false;
}
mK0MassVsPt->Fill(std::sqrt(v0sel.calcMass2AsK0()), v0sel.getPt());
mK0MassVsPt->Fill(v0sel.getPt(), std::sqrt(v0sel.calcMass2AsK0()));
return true;
}

Expand Down
12 changes: 9 additions & 3 deletions Detectors/GlobalTrackingWorkflow/qc/src/ITSTPCMatchingQCSpec.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,18 @@ void ITSTPCMatchingQCDevice::init(InitContext& /*ic*/)
mMatchITSTPCQC = std::make_unique<o2::gloqc::MatchITSTPCQC>();
mMatchITSTPCQC->setDataRequest(mDataRequest);
mMatchITSTPCQC->setTrkSources(o2::dataformats::GlobalTrackID::getSourcesMask(mTrkSources));
mMatchITSTPCQC->setPtCut(params.minPtCut);
mMatchITSTPCQC->setEtaCut(params.etaCut);
mMatchITSTPCQC->setMinPtITSCut(params.minPtITSCut);
mMatchITSTPCQC->setEtaITSCut(params.etaITSCut);
mMatchITSTPCQC->setMinNClustersITS(params.minNITSClustersCut);
mMatchITSTPCQC->setMaxChi2PerClusterITS(params.maxChi2PerClusterITS);
mMatchITSTPCQC->setMinPtTPCCut(params.minPtTPCCut);
mMatchITSTPCQC->setEtaTPCCut(params.etaTPCCut);
mMatchITSTPCQC->setMinNTPCClustersCut(params.minNTPCClustersCut);
mMatchITSTPCQC->setMinDCAtoBeamPipeDistanceCut(params.minDCACut);
mMatchITSTPCQC->setMinDCAtoBeamPipeYCut(params.minDCACutY);
mMatchITSTPCQC->setPtCut(params.minPtCut);
mMatchITSTPCQC->setMaxPtCut(params.maxPtCut);
mMatchITSTPCQC->setEtaCut(params.etaCut);
mMatchITSTPCQC->setCutK0Mass(params.cutK0Mass);
mMatchITSTPCQC->setMaxK0Eta(params.maxEtaK0);
o2::base::GRPGeomHelper::instance().setRequest(mCCDBRequest);
Expand Down Expand Up @@ -100,7 +107,6 @@ void ITSTPCMatchingQCDevice::finaliseCCDB(ConcreteDataMatcher& matcher, void* ob
return;
}
if (matcher == ConcreteDataMatcher("GLO", "SVPARAM", 0)) {
LOG(info) << "SVertexer Params updated from ccdb - but it should not happen... PLEASE CHECK";
return;
}
}
Expand Down

0 comments on commit 2462386

Please sign in to comment.