diff --git a/Modules/ITS/itsCluster.json b/Modules/ITS/itsCluster.json index e6a0360a38..3095d2ae28 100644 --- a/Modules/ITS/itsCluster.json +++ b/Modules/ITS/itsCluster.json @@ -10,7 +10,8 @@ }, "Activity": { "number": "42", - "type": "NONE" + "type": "PHYSICS", + "beamType" : "PbPb", "": "Beam type: `PROTON-PROTON`, `Pb-Pb`, `Pb-PROTON` " }, "monitoring": { "url": "infologger:///debug?qc" @@ -68,6 +69,57 @@ "textMessage": "" }, + "extendedCheckParameters": { + "default": { + "default": { + "maxcluoccL0": "5", + "maxcluoccL1": "3", + "maxcluoccL2": "3", + "maxcluoccL3": "0.3", + "maxcluoccL4": "0.3", + "maxcluoccL5": "0.2", + "maxcluoccL6": "0.2" + } + }, + "PHYSICS": { + "default": { + "maxcluoccL0": "5", + "maxcluoccL1": "3", + "maxcluoccL2": "3", + "maxcluoccL3": "0.3", + "maxcluoccL4": "0.3", + "maxcluoccL5": "0.2", + "maxcluoccL6": "0.2" + }, + "PROTON-PROTON": { + "maxcluoccL0": "5", + "maxcluoccL1": "3", + "maxcluoccL2": "3", + "maxcluoccL3": "0.3", + "maxcluoccL4": "0.3", + "maxcluoccL5": "0.2", + "maxcluoccL6": "0.2" + }, + "Pb-Pb": { + "maxcluoccL0": "65", + "maxcluoccL1": "35", + "maxcluoccL2": "25", + "maxcluoccL3": "1", + "maxcluoccL4": "1", + "maxcluoccL5": "1", + "maxcluoccL6": "1" + } + }, + "COSMICS": { + "maxcluoccL0": "5", + "maxcluoccL1": "3", + "maxcluoccL2": "3", + "maxcluoccL3": "0.3", + "maxcluoccL4": "0.3", + "maxcluoccL5": "0.2", + "maxcluoccL6": "0.2" + } + }, "dataSource": [ { "type": "Task", diff --git a/Modules/ITS/itsFee.json b/Modules/ITS/itsFee.json index b2d9a35671..578dc90e61 100644 --- a/Modules/ITS/itsFee.json +++ b/Modules/ITS/itsFee.json @@ -9,8 +9,9 @@ "name": "not_applicable" }, "Activity": { - "number": "42", - "type": "NONE" + "number": "42", + "type": "PHYSICS", + "beamType" : "PbPb", "": "Beam type: `PROTON-PROTON`, `Pb-Pb`, `Pb-PROTON` " }, "monitoring": { "url": "infologger:///debug?qc" @@ -66,6 +67,27 @@ "plotWithTextMessage": "", "textMessage": "" }, + "extendedCheckParameters": { + "default": { + "default": { + "expectedROFperOrbit": "18" + } + }, + "PHYSICS": { + "default": { + "expectedROFperOrbit": "18" + }, + "PROTON-PROTON": { + "expectedROFperOrbit": "18" + }, + "Pb-Pb": { + "expectedROFperOrbit": "6" + } + }, + "COSMICS": { + "expectedROFperOrbit": "18" + } + }, "dataSource": [ { "type": "Task", diff --git a/Modules/ITS/src/ITSClusterCheck.cxx b/Modules/ITS/src/ITSClusterCheck.cxx index 7198a86ae3..a183d39c38 100644 --- a/Modules/ITS/src/ITSClusterCheck.cxx +++ b/Modules/ITS/src/ITSClusterCheck.cxx @@ -69,6 +69,7 @@ Quality ITSClusterCheck::check(std::mapsecond->getName().find("General_Occupancy") != std::string::npos) { auto* hp = dynamic_cast(iter->second->getObject()); + auto activity = iter->second->getActivity(); if (hp == nullptr) { ILOG(Error, Support) << "could not cast general occupancy to TH2D*" << ENDM; continue; @@ -90,7 +91,9 @@ Quality ITSClusterCheck::check(std::map(mCustomParameters, Form("maxcluoccL%d", ilayer), maxcluocc[ilayer]); + // maxcluocc[ilayer] = o2::quality_control_modules::common::getFromConfig(mCustomParameters, Form("maxcluoccL%d", ilayer), maxcluocc[ilayer]); + + maxcluocc[ilayer] = stof(mCustomParameters.at(Form("maxcluoccL%d", ilayer), activity)); if (hp->GetBinContent(ix, iy) > maxcluocc[ilayer]) { result.set(Quality::Medium); result.updateMetadata(Form("Layer%d%s", ilayer, tb.c_str()), "medium"); diff --git a/Modules/ITS/src/ITSFeeCheck.cxx b/Modules/ITS/src/ITSFeeCheck.cxx index 47747b518c..a7f319da41 100644 --- a/Modules/ITS/src/ITSFeeCheck.cxx +++ b/Modules/ITS/src/ITSFeeCheck.cxx @@ -252,6 +252,8 @@ Quality ITSFeeCheck::check(std::map> } if (((string)mo->getName()).find("TrailerCount") != std::string::npos) { + + auto activity = mo->getActivity(); auto* h = dynamic_cast(mo->getObject()); if (h == nullptr) { ILOG(Error, Support) << "could not cast TrailerCount to TH2I*" << ENDM; @@ -259,7 +261,7 @@ Quality ITSFeeCheck::check(std::map> } result.set(Quality::Good); result.addMetadata("CheckROFRate", "good"); - expectedROFperOrbit = o2::quality_control_modules::common::getFromConfig(mCustomParameters, "expectedROFperOrbit", expectedROFperOrbit); + expectedROFperOrbit = stoi(mCustomParameters.at("expectedROFperOrbit", activity)); if (h->Integral(1, 432, 1, h->GetYaxis()->FindBin(expectedROFperOrbit) - 1) > 0 || h->Integral(1, 432, h->GetYaxis()->FindBin(expectedROFperOrbit) + 1, h->GetYaxis()->GetLast()) > 0) { result.set(Quality::Bad); result.updateMetadata("expectedROFperOrbit", "bad");