Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions Modules/TPC/include/TPC/ClusterVisualizer.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,14 @@ class ClusterVisualizer final : public quality_control::postprocessing::PostProc
/// \param services Interface containing optional interfaces, for example DatabaseInterface
void finalize(quality_control::postprocessing::Trigger, framework::ServiceRegistryRef) override;

template <class T>
void makeRadialProfile(o2::tpc::CalDet<T>& calDet, TCanvas* canv, int nbinsY, float yMin, float yMax);

template <class T>
void fillRadialHisto(TH2D& h2D, const o2::tpc::CalDet<T>& calDet, const o2::tpc::Side side);

private:
int mNHBFPerTF = 32;
o2::ccdb::CcdbApi mCdbApi;
std::string mHost;
std::vector<std::vector<std::unique_ptr<TCanvas>>> mCalDetCanvasVec{}; ///< vector containing a vector of summary canvases for every CalDet object
Expand Down
2 changes: 2 additions & 0 deletions Modules/TPC/include/TPC/Clusters.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ class Clusters /*final*/ : public TaskInterface // todo add back the "final" whe

private:
bool mIsMergeable = true;
int mNHBFPerTF = 32;
ClustersData mQCClusters{}; ///< O2 Cluster task to perform actions on cluster objects
std::vector<o2::tpc::qc::CalPadWrapper> mWrapperVector{}; ///< vector holding CalPad objects wrapped as TObjects; published on QCG; will be non-wrapped CalPad objects in the future
std::vector<std::unique_ptr<TCanvas>> mNClustersCanvasVec{}; ///< summary canvases of the NClusters object
Expand All @@ -63,6 +64,7 @@ class Clusters /*final*/ : public TaskInterface // todo add back the "final" whe
std::vector<std::unique_ptr<TCanvas>> mSigmaTimeCanvasVec{}; ///< summary canvases of the SigmaTime object
std::vector<std::unique_ptr<TCanvas>> mSigmaPadCanvasVec{}; ///< summary canvases of the SigmaPad object
std::vector<std::unique_ptr<TCanvas>> mTimeBinCanvasVec{}; ///< summary canvases of the TimeBin object
std::vector<std::unique_ptr<TCanvas>> mOccupancyCanvasVec{}; ///< summary canvases of the Occupancy object

void processClusterNative(o2::framework::InputRecord& inputs);
void processKrClusters(o2::framework::InputRecord& inputs);
Expand Down
98 changes: 72 additions & 26 deletions Modules/TPC/run/tpcQCClusterVisualizer.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,49 +29,95 @@
"moduleName": "QcTPC",
"detectorName": "TPC",
"dataSourceURL": "ccdb-test.cern.ch:8080",
"timestamps_comment": [ "Put the timestamp of the corresponding file you want to look for in the timestamps array.",
"You can either put a timestamp for every object or leave the array empty to take the latest file from the CCDB.",
"An empty array to get the the latest version will be the main use case.",
"The array is mapped to the output objects sequentially",
"If you want to pick the latest file in the CCDB manually, you can use -1."
"timestamps_comment": [
"Put the timestamp of the corresponding file you want to look for in the timestamps array.",
"You can either put a timestamp for every object or leave the array empty to take the latest file from the CCDB.",
"An empty array to get the the latest version will be the main use case.",
"The array is mapped to the output objects sequentially",
"If you want to pick the latest file in the CCDB manually, you can use -1."
],
"timestamps": [
],
"lookupMetaData_comment": [ "With this array you can filter your search via meta data.",
"The array is mapped sequentially to the output objects.",
"If you leave only one entry in the array this is used for all objects in outputCalPadMaps and outputCalPads.",
"If you want no meta data simply remove 'keys' and 'values' completely and leave only {}",
"Every entry above (outputCalPads.size() + outputCalPadMaps.size()) is ignored.",
"The keys and values that are set by default are only there to serve as an example."
"timestamps": [],
"lookupMetaData_comment": [
"With this array you can filter your search via meta data.",
"The array is mapped sequentially to the output objects.",
"If you leave only one entry in the array this is used for all objects in outputCalPadMaps and outputCalPads.",
"If you want no meta data simply remove 'keys' and 'values' completely and leave only {}",
"Every entry above (outputCalPads.size() + outputCalPadMaps.size()) is ignored.",
"The keys and values that are set by default are only there to serve as an example."
],
"lookupMetaData": [
{
}
{}
],
"storeMetaData_comment": "For how-to, see 'lookupMetaData_comment'.",
"storeMetaData": [
{
}
{}
],
"histogramRanges_comment": [
"nBins",
"min",
"max"
],
"histogramRanges_comment" : [ "nBins", "min", "max" ],
"histogramRanges": [
{ "N_Clusters" : [ "100", "0", "100" ] },
{ "Q_Max" : [ "200", "0", "200" ] },
{ "Q_Tot" : [ "600", "0", "600" ] },
{ "Sigma_Time" : [ "200", "0", "2" ] },
{ "Sigma_Pad" : [ "200", "0", "2" ] },
{ "Time_Bin" : [ "1000", "0", "100000" ] }
{
Comment thread
wiechula marked this conversation as resolved.
Outdated
"N_Clusters": [
"100",
"0",
"100"
]
},
{
"Q_Max": [
"200",
"0",
"200"
]
},
{
"Q_Tot": [
"600",
"0",
"600"
]
},
{
"Sigma_Time": [
"200",
"0",
"2"
]
},
{
"Sigma_Pad": [
"200",
"0",
"2"
]
},
{
"Time_Bin": [
"1000",
"0",
"100000"
]
},
{
"Occupancy": [
"100",
"0",
"0.001"
]
}
],
"path_comment": "This is the path of the ClustersData object that shall be visualized.",
"path": "TPC/MO/Clusters/ClusterData",
"path": "qc/TPC/MO/Clusters/ClusterData",
"dataType_comment": "This is the switch for 'RawDigits' or 'Clusters' task. Choose 'raw' or 'clusters'.",
"dataType": "clusters",
"initTrigger": [
"once"
],
"updateTrigger_comment": "To trigger on a specific file being updated, use e.g. 'newobject:qcdb:TPC/Calib/Noise'",
"updateTrigger": [
"newobject:qcdb:TPC/MO/Clusters/ClusterData"
"newobject:ccdb:qc/TPC/MO/Clusters/ClusterData"
],
"stopTrigger": [
"userorcontrol"
Expand Down
35 changes: 25 additions & 10 deletions Modules/TPC/run/tpcQCClusters_direct.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,20 +28,36 @@
"className": "o2::quality_control_modules::tpc::Clusters",
"moduleName": "QcTPC",
"detectorName": "TPC",
"cycleDurationSeconds": "10",
"cycleDurationSeconds": "60",
"maxNumberCycles": "-1",
"resetAfterCycles": "5",
"dataSource": {
"type": "direct",
"query" : "input:TPC/CLUSTERNATIVE"
"query": "input:TPC/CLUSTERNATIVE"
},
"taskParameters": {
"mergeableOutput": "true",
"NClustersNBins": "100", "NClustersXMin": "0", "NClustersXMax": "100",
"QmaxNBins": "200", "QmaxXMin": "0", "QmaxXMax": "200",
"QtotNBins": "600", "QtotXMin": "0", "QtotXMax": "600",
"SigmaPadNBins": "200", "SigmaPadXMin": "0", "SigmaPadXMax": "2",
"SigmaTimeNBins": "200", "SigmaTimeXMin": "0", "SigmaTimeXMax": "2",
"TimeBinNBins": "1000", "TimeBinXMin": "0", "TimeBinXMax": "100000"
"NClustersNBins": "100",
"NClustersXMin": "0",
"NClustersXMax": "100",
"QmaxNBins": "200",
"QmaxXMin": "0",
"QmaxXMax": "200",
"QtotNBins": "600",
"QtotXMin": "0",
"QtotXMax": "600",
"SigmaPadNBins": "200",
"SigmaPadXMin": "0",
"SigmaPadXMax": "2",
"SigmaTimeNBins": "200",
"SigmaTimeXMin": "0",
"SigmaTimeXMax": "2",
"TimeBinNBins": "1000",
"TimeBinXMin": "0",
"TimeBinXMax": "100000",
"OccupancyNBins": "1000",
"OccupancyXMin": "0",
"OccupancyXMax": "0.00001"
},
"location": "local",
"localMachines": [
Expand All @@ -53,6 +69,5 @@
}
}
},
"dataSamplingPolicies": [
]
"dataSamplingPolicies": []
}
88 changes: 65 additions & 23 deletions Modules/TPC/run/tpcQCSACs.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@
"password": "not_applicable",
"name": "not_applicable"
},
"Activity": {
},
"Activity": {},
"monitoring": {
"url": "infologger:///debug?qc"
},
Expand All @@ -33,35 +32,78 @@
"doLatest": "false",
"rejectOutliersSACZeroScale": "true",
"maxDeviationOutlierSACZero": "2.",
"timestamps_comment": [ "Put the timestamp of the corresponding file you want to look for in the timestamps array.",
"You can either put a timestamp for every object or leave the array empty to take the latest file from the CCDB.",
"An empty array to get the the latest version will be the main use case.",
"The array is mapped to the output objects sequentially",
"If you want to pick the latest file in the CCDB manually, you can use -1."
"timestamps_comment": [
"Put the timestamp of the corresponding file you want to look for in the timestamps array.",
"You can either put a timestamp for every object or leave the array empty to take the latest file from the CCDB.",
"An empty array to get the the latest version will be the main use case.",
"The array is mapped to the output objects sequentially",
"If you want to pick the latest file in the CCDB manually, you can use -1."
],
"timestamps": [
{ "SACZero":"1686390443945" },
{ "SACOne":"-1" },
{ "SACDelta":"-1" },
{ "SACFourierCoeffs":"-1" }
],
"lookupMetaData_comment": [ "Not used in the current version" ],
"lookupMetaData": [
{
"SACZero": "1686390443945"
},
{
"SACOne": "-1"
},
{
"SACDelta": "-1"
},
{
"SACFourierCoeffs": "-1"
}
],
"lookupMetaData_comment": [
"Not used in the current version"
],
"lookupMetaData": [
{}
],
"storeMetaData_comment": "Not used in the current version",
"storeMetaData": [
{
}
{}
],
"histogramRanges_comment": [
"nBins",
"min",
"max"
],
"histogramRanges_comment" : [ "nBins", "min", "max" ],
"histogramRanges": [
{ "SACZero" : [ "250", "-50", "-50" ] },
{ "SACZeroScaled" : [ "250", "-5", "2" ] },
{ "SACOne" : [ "250", "-100", "100" ] },
{ "SACDelta" : [ "250", "-10", "10" ] },
{ "SACFourierCoeffs" : [ "250", "-10", "10" ] }
{
Comment thread
wiechula marked this conversation as resolved.
Outdated
"SACZero": [
"250",
"-50",
"-50"
]
},
{
"SACZeroScaled": [
"250",
"-5",
"2"
]
},
{
"SACOne": [
"250",
"-100",
"100"
]
},
{
"SACDelta": [
"250",
"-10",
"10"
]
},
{
"SACFourierCoeffs": [
"250",
"-10",
"10"
]
}
],
"initTrigger": [
"once"
Expand All @@ -76,4 +118,4 @@
}
}
}
}
}
9 changes: 7 additions & 2 deletions Modules/TPC/run/tpcQCTracks_sampled.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,10 @@
"cycleDurationSeconds": "10",
"dataSource_comment": "The other type of dataSource is \"direct\", see basic-no-sampling.json.",
"dataSources": [
{ "type": "dataSamplingPolicy", "name": "tpc-tracks" },
{
"type": "dataSamplingPolicy",
"name": "tpc-tracks"
},
{
"type": "direct",
"query": "meanvertex:GLO/MEANVERTEX/0?lifetime=condition&ccdb-path=GLO/Calib/MeanVertex"
Expand Down Expand Up @@ -66,7 +69,9 @@
{
"type": "Task",
"name": "Tracks",
"MOs": ["example"]
"MOs": [
"example"
]
}
]
}
Expand Down
Loading