Skip to content

Commit a5505c3

Browse files
committed
exb-trend
1 parent 5cfaeae commit a5505c3

File tree

3 files changed

+50
-16
lines changed

3 files changed

+50
-16
lines changed

Diff for: Modules/TRD/calibParamTRD.json

+29-6
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66
"host": "ccdb-test.cern.ch:8080"
77
},
88
"Activity": {
9-
"number": ""
9+
"number": "526486"
1010
},
1111
"conditionDB": {
1212
"url": "alice-ccdb.cern.ch"
1313
},
1414
"postprocessing": {
15-
"matchAnyRunNumber": "true"
15+
"matchAnyRunNumber": "true"
1616
}
1717
},
1818
"postprocessing": {
@@ -26,34 +26,57 @@
2626
{
2727
"type": "condition",
2828
"path": "TRD/Calib",
29-
"names": [ "CalVdriftExB" ],
29+
"names": [
30+
"CalVdriftExB"
31+
],
3032
"reductorName": "o2::quality_control_modules::trd::CalibReductorTRD",
3133
"moduleName": "QcTRD"
3234
}
3335
],
3436
"plots": [
3537
{
3638
"name": "vdrift_trend",
37-
"title": "vDrift trend",
39+
"title": "vDrift mean trend",
3840
"varexp": "CalVdriftExB.vdriftmean:time",
3941
"selection": "",
4042
"option": "*L",
4143
"graphYRange": "0:3.5",
4244
"graphXRange": "",
4345
"graphAxisLabel": "vdrift:time",
4446
"graphErrors": "0:CalVdriftExB.vdrifterr"
47+
},
48+
{
49+
"name": "vdrift_trend2",
50+
"title": "vDrift trend",
51+
"varexp": "CalVdriftExB.vdrift[]:runNumber",
52+
"selection": "",
53+
"option": "*L",
54+
"graphYRange": "-2:3.5",
55+
"graphXRange": "",
56+
"graphAxisLabel": "vdrift:time"
57+
},
58+
{
59+
"name": "exb_trend",
60+
"title": "ExB mean trend",
61+
"varexp": "CalVdriftExB.exbmean:time",
62+
"selection": "",
63+
"option": "*L",
64+
"graphYRange": "-2.0:2.0",
65+
"graphXRange": "",
66+
"graphAxisLabel": "ExB:time",
67+
"graphErrors": "0:CalVdriftExB.exberr"
4568
}
4669
],
4770
"initTrigger": [
4871
"userorcontrol"
4972
],
5073
"updateTrigger": [
51-
"foreachobject:ccdb:TRD/Calib/CalVdriftExB"
74+
"newobject:ccdb:TRD/Calib/CalVdriftExB"
5275
],
5376
"stopTrigger": [
5477
"userorcontrol"
5578
]
5679
}
5780
}
5881
}
59-
}
82+
}

Diff for: Modules/TRD/include/TRD/CalibReductorTRD.h

+4-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
///
1313
/// \file CalibReductorTRD.h
14-
/// \author
14+
/// \author Salman Malik
1515
///
1616

1717
#ifndef QUALITYCONTROL_CALIBREDUCTORTRD_H
@@ -38,8 +38,11 @@ class CalibReductorTRD : public quality_control::postprocessing::ReductorConditi
3838

3939
private:
4040
struct {
41+
Float_t vdrift[o2::trd::constants::MAXCHAMBER];
4142
Float_t vdriftmean;
4243
Float_t vdrifterr;
44+
Float_t exbmean;
45+
Float_t exberr;
4346
} mStats;
4447
};
4548

Diff for: Modules/TRD/src/CalibReductorTRD.cxx

+17-9
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
///
1313
/// \file CalibReductorTRD.cxx
14-
/// \author
14+
/// \author Salman Malik
1515
///
1616

1717
#include "TRD/CalibReductorTRD.h"
@@ -28,21 +28,29 @@ void* CalibReductorTRD::getBranchAddress()
2828

2929
const char* CalibReductorTRD::getBranchLeafList()
3030
{
31-
return "vdriftmean/F:vdrifterr/F";
31+
return "vdrift[540]/F:vdriftmean/F:vdrifterr/F:exbmean/F:exberr/F";
3232
}
3333

3434
bool CalibReductorTRD::update(ConditionRetriever& retriever)
3535
{
3636
if (auto retvdrift = retriever.retrieve<o2::trd::CalVdriftExB>()) {
37-
double sum = 0;
38-
double sumSq = 0;
37+
double sumVdrift = 0, sumSqVdrift = 0;
38+
double sumExb = 0, sumSqExb = 0;
39+
3940
for (int i = 0; i < o2::trd::constants::MAXCHAMBER; i++) {
40-
double vdrift = retvdrift->getVdrift(i);
41-
sum += vdrift;
42-
sumSq += vdrift * vdrift;
41+
mStats.vdrift[i] = retvdrift->getVdrift(i);
42+
sumVdrift += retvdrift->getVdrift(i);
43+
sumSqVdrift += retvdrift->getVdrift(i) * retvdrift->getVdrift(i);
44+
sumExb += retvdrift->getExB(i);
45+
sumSqExb += retvdrift->getExB(i) * retvdrift->getExB(i);
4346
}
44-
mStats.vdriftmean = sum / o2::trd::constants::MAXCHAMBER;
45-
mStats.vdrifterr = std::sqrt(sumSq / o2::trd::constants::MAXCHAMBER - mStats.vdriftmean * mStats.vdriftmean);
47+
48+
mStats.vdriftmean = sumVdrift / o2::trd::constants::MAXCHAMBER;
49+
mStats.vdrifterr = std::sqrt(sumSqVdrift / o2::trd::constants::MAXCHAMBER - mStats.vdriftmean * mStats.vdriftmean);
50+
51+
mStats.exbmean = sumExb / o2::trd::constants::MAXCHAMBER;
52+
mStats.exberr = std::sqrt(sumSqExb / o2::trd::constants::MAXCHAMBER - mStats.exbmean * mStats.exbmean);
53+
4654
return true;
4755
}
4856
return false;

0 commit comments

Comments
 (0)