Skip to content

Commit e88df9a

Browse files
committed
removing macro's modification to have cleaner PR
1 parent e72be89 commit e88df9a

File tree

3 files changed

+44
-106
lines changed

3 files changed

+44
-106
lines changed

Detectors/CTP/macro/PlotPbLumi.C

Lines changed: 35 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -20,56 +20,37 @@
2020
#include "CCDB/BasicCCDBManager.h"
2121
#include "DataFormatsCTP/Scalers.h"
2222
#include "DataFormatsCTP/Configuration.h"
23-
#include <DataFormatsParameters/GRPLHCIFData.h>
24-
#include "TGraph.h"
25-
#include "TGraphErrors.h"
26-
#include "TCanvas.h"
27-
#include "TMath.h"
28-
#include "TStyle.h"
29-
#include "TF1.h"
3023
#include <string>
3124
#include <map>
3225
#include <iostream>
3326
#endif
3427
using namespace o2::ctp;
35-
using namespace std::chrono;
36-
//
37-
// if fillN = 0: pileup correction not done
38-
// QCDB =1 : use for ongoing run
39-
//
40-
void PlotPbLumi(int runNumber, int fillN = 0, int QCDB = 0, std::string ccdbHost = "http://alice-ccdb.cern.ch")
41-
{ // "http://ccdb-test.cern.ch:8080"
28+
void PlotPbLumi(int runNumber, int fillN, std::string ccdbHost = "http://ccdb-test.cern.ch:8080")
29+
{ //
30+
// what = 1: znc rate
31+
// what = 2: (TCE+TSC)/ZNC
32+
// what = 3: TCE/ZNC
4233
std::string mCCDBPathCTPScalers = "CTP/Calib/Scalers";
43-
std::string mQCDBPathCTPScalers = "qc/CTP/Scalers";
4434
std::string mCCDBPathCTPConfig = "CTP/Config/Config";
4535
auto& ccdbMgr = o2::ccdb::BasicCCDBManager::instance();
46-
ccdbMgr.setURL(ccdbHost);
4736
// Timestamp
4837
auto soreor = ccdbMgr.getRunDuration(runNumber);
4938
uint64_t timeStamp = (soreor.second - soreor.first) / 2 + soreor.first;
5039
std::cout << "Timestamp:" << timeStamp << std::endl;
5140
// Filling
41+
std::string sfill = std::to_string(fillN);
5242
std::map<string, string> metadata;
53-
int nbc = 0;
54-
if (fillN) {
55-
std::string sfill = std::to_string(fillN);
56-
metadata["fillNumber"] = sfill;
57-
auto lhcifdata = ccdbMgr.getSpecific<o2::parameters::GRPLHCIFData>("GLO/Config/GRPLHCIF", timeStamp, metadata);
58-
auto bfilling = lhcifdata->getBunchFilling();
59-
std::vector<int> bcs = bfilling.getFilledBCs();
60-
nbc = bcs.size();
61-
std::cout << "Number of interacting bc:" << nbc << std::endl;
62-
}
63-
if (QCDB) { // use this option for ongoing run
64-
mCCDBPathCTPScalers = mQCDBPathCTPScalers;
65-
ccdbMgr.setURL("http://ccdb-test.cern.ch:8080");
66-
timeStamp = duration_cast<milliseconds>(system_clock::now().time_since_epoch()).count();
67-
std::cout << "For scalers using Current time:" << timeStamp << std::endl;
68-
}
43+
metadata["fillNumber"] = sfill;
44+
auto lhcifdata = ccdbMgr.getSpecific<o2::parameters::GRPLHCIFData>("GLO/Config/GRPLHCIF", timeStamp, metadata);
45+
auto bfilling = lhcifdata->getBunchFilling();
46+
std::vector<int> bcs = bfilling.getFilledBCs();
47+
int nbc = bcs.size();
48+
std::cout << "Number of interacting bc:" << nbc << std::endl;
6949
// Scalers
7050
std::string srun = std::to_string(runNumber);
7151
metadata.clear(); // can be empty
7252
metadata["runNumber"] = srun;
53+
ccdbMgr.setURL("http://ccdb-test.cern.ch:8080");
7354
auto scl = ccdbMgr.getSpecific<CTPRunScalers>(mCCDBPathCTPScalers, timeStamp, metadata);
7455
if (scl == nullptr) {
7556
LOG(info) << "CTPRunScalers not in database, timestamp:" << timeStamp;
@@ -124,72 +105,48 @@ void PlotPbLumi(int runNumber, int fillN = 0, int QCDB = 0, std::string ccdbHost
124105
return;
125106
}
126107
//
108+
// Anal
109+
//
127110
// Times
128111
double_t frev = 11245;
129112
double_t time0 = recs[0].epochTime;
130113
double_t timeL = recs[recs.size() - 1].epochTime;
131114
double_t Trun = timeL - time0;
132115
double_t orbit0 = recs[0].intRecord.orbit;
133116
int n = recs.size() - 1;
134-
if (runNumber == 559143) {
135-
n = 400;
136-
}
137-
if (runNumber == 559561) {
138-
n = n - 3; // rate drops at the end
139-
}
140-
if (runNumber == 559575) {
141-
n = n - 6;
142-
}
143-
if (runNumber == 559617) {
144-
n = n - 5;
145-
}
146-
if (runNumber == 559632) {
147-
n = n - 6;
148-
}
149117
std::cout << " Run duration:" << Trun << " Scalers size:" << n + 1 << std::endl;
150-
Double_t x[n], znc[n], zncpp[n], ex[n], eznc[n];
118+
Double_t x[n], znc[n], zncpp[n];
151119
Double_t tcetsctoznc[n], tcetoznc[n], vchtoznc[n];
152-
Double_t etcetsctoznc[n], etcetoznc[n], evchtoznc[n];
153-
154120
for (int i = 0; i < n; i++) {
155-
ex[i] = 0;
156121
x[i] = (double_t)(recs[i + 1].intRecord.orbit + recs[i].intRecord.orbit) / 2. - orbit0;
157122
x[i] *= 88e-6;
158123
// x[i] = (double_t)(recs[i+1].epochTime + recs[i].epochTime)/2.;
159124
double_t tt = (double_t)(recs[i + 1].intRecord.orbit - recs[i].intRecord.orbit);
160125
tt = tt * 88e-6;
161126
//
127+
// std::cout << recs[i+1].scalersInps[25] << std::endl;
162128
double_t znci = (double_t)(recs[i + 1].scalersInps[25] - recs[i].scalersInps[25]);
163-
double_t zncipp = znci;
164-
double_t mu = 0;
165-
if (fillN) {
166-
mu = -TMath::Log(1. - znci / tt / nbc / frev);
167-
zncipp = mu * nbc * frev * tt;
168-
}
129+
double_t mu = -TMath::Log(1. - znci / tt / nbc / frev);
130+
double_t zncipp = mu * nbc * frev;
169131
zncpp[i] = zncipp / 28.;
170-
znc[i] = zncipp / 28. / tt;
171-
eznc[i] = TMath::Sqrt(zncipp) / 28. / tt;
172-
if (1) {
173-
//
174-
auto had = recs[i + 1].scalers[tsc].lmBefore - recs[i].scalers[tsc].lmBefore;
175-
had += recs[i + 1].scalers[tce].lmBefore - recs[i].scalers[tce].lmBefore;
176-
tcetsctoznc[i] = (double_t)(had) / zncpp[i];
177-
etcetsctoznc[i] = TMath::Sqrt(tcetsctoznc[i] * (1 - tcetsctoznc[i]) / zncpp[i]);
178-
had = recs[i + 1].scalers[tce].lmBefore - recs[i].scalers[tce].lmBefore;
179-
double_t tcec = had;
180-
tcetoznc[i] = (double_t)(had) / zncpp[i];
181-
had = recs[i + 1].scalers[vch].lmBefore - recs[i].scalers[vch].lmBefore;
182-
vchtoznc[i] = (double_t)(had) / zncpp[i];
183-
// std::cout << "mu:" << mu << " zncpp corr:" << zncipp << " zncraw:" << znci << " tce:" << tcec << " tce/had" << tcec/zncpp[i] << std::endl;
184-
}
132+
znc[i] = znci / 28. / tt;
133+
//
134+
auto had = recs[i + 1].scalers[tce].lmBefore - recs[i].scalers[tce].lmBefore;
135+
// std::cout << recs[i+1].scalers[tce].lmBefore << std::endl;
136+
had += recs[i + 1].scalers[tsc].lmBefore - recs[i].scalers[tsc].lmBefore;
137+
// rat = (double_t)(had)/double_t(recs[i+1].scalersInps[25] - recs[i].scalersInps[25])*28;
138+
tcetsctoznc[i] = (double_t)(had) / zncpp[i] / tt;
139+
had = recs[i + 1].scalers[tce].lmBefore - recs[i].scalers[tce].lmBefore;
140+
// rat = (double_t)(had)/double_t(recs[i+1].scalersInps[25] - recs[i].scalersInps[25])*28;
141+
tcetoznc[i] = (double_t)(had) / zncpp[i] / tt;
142+
had = recs[i + 1].scalers[vch].lmBefore - recs[i].scalers[vch].lmBefore;
143+
// rat = (double_t)(had)/double_t(recs[i+1].scalersInps[25] - recs[i].scalersInps[25])*28;
144+
vchtoznc[i] = (double_t)(had) / zncpp[i] / tt;
185145
}
186146
//
187-
TFile myfile("file.root", "RECREATE");
188147
gStyle->SetMarkerSize(0.5);
189-
// TGraph* gr1 = new TGraph(n, x, znc);
190-
TGraphErrors* gr1 = new TGraphErrors(n, x, znc, ex, eznc);
148+
TGraph* gr1 = new TGraph(n, x, znc);
191149
TGraph* gr2 = new TGraph(n, x, tcetsctoznc);
192-
// TGraphErrors* gr2 = new TGraphErrors(n, x, tcetsctoznc, ex, etcetsctoznc); // nom and denom are strongly correlated
193150
TGraph* gr3 = new TGraph(n, x, tcetoznc);
194151
TGraph* gr4 = new TGraph(n, x, vchtoznc);
195152
gr1->SetMarkerStyle(20);
@@ -198,39 +155,28 @@ void PlotPbLumi(int runNumber, int fillN = 0, int QCDB = 0, std::string ccdbHost
198155
gr4->SetMarkerStyle(23);
199156
gr1->SetTitle("R=ZNC/28 rate [Hz]; time[sec]; R");
200157
gr2->SetTitle("R=(TSC+TCE)*TVTX*B*28/ZNC; time[sec]; R");
201-
// gr2->SetTitle("R=TSC*TVTX*B*28/ZNC; time[sec]; R");
202-
// gr2->GetHistogram()->SetMaximum(1.1);
203-
// gr2->GetHistogram()->SetMinimum(0.9);
158+
// gr2->GetHistogram()->SetMaximum(1.1);
159+
// gr2->GetHistogram()->SetMinimum(0.9);
204160
gr3->SetTitle("R=(TCE)*TVTX*B*28/ZNC; time[sec]; R");
205161
// gr3->GetHistogram()->SetMaximum(0.6);
206162
// gr3->GetHistogram()->SetMinimum(0.4);
207163
gr4->SetTitle("R=(VCH)*TVTX*B*28/ZNC; time[sec]; R");
208164
// gr4->GetHistogram()->SetMaximum(0.6);
209165
// gr4->GetHistogram()->SetMinimum(0.4);
210166
TCanvas* c1 = new TCanvas("c1", srun.c_str(), 200, 10, 800, 500);
211-
TF1* fun = new TF1("poly0", "[0]+x*[1]");
212167
c1->Divide(2, 2);
213168
c1->cd(1);
214169
gr1->Draw("AP");
215170
c1->cd(2);
216-
fun->SetParameter(0, 1);
217-
gr2->Fit("poly0", "FM");
218171
gr2->Draw("AP");
219172
c1->cd(3);
220-
fun->SetParameter(0, 0.5);
221-
gr3->Fit("poly0");
222173
gr3->Draw("AP");
223174
c1->cd(4);
224-
gr4->Fit("poly0");
225175
gr4->Draw("AP");
226176
// getRate test:
227177
double tt = timeStamp / 1000.;
228178
std::pair<double, double> r1 = scl->getRateGivenT(tt, 25, 7);
229179
std::cout << "ZDC input getRateGivetT:" << r1.first / 28. << " " << r1.second / 28. << std::endl;
230180
std::pair<double, double> r2 = scl->getRateGivenT(tt, tce, 1);
231181
std::cout << "LM before TCE class getRateGivetT:" << r2.first << " " << r2.second << std::endl;
232-
gr1->Write();
233-
gr2->Write();
234-
gr3->Write();
235-
gr4->Write();
236182
}

Detectors/CTP/macro/TestConfig.C

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,15 @@
1414
#include <DataFormatsCTP/Configuration.h>
1515
#include "CTPWorkflowScalers/ctpCCDBManager.h"
1616
#endif
17-
18-
#include "Framework/Logger.h"
1917
using namespace o2::ctp;
2018

21-
void TestConfig(bool test = 1)
19+
void TestConfig(bool test = 0)
2220
{
2321
if (test == 0) {
2422
return;
2523
}
26-
uint64_t timestamp = 1660276134898 + 10000;
27-
std::string run = "523186";
24+
uint64_t timestamp = 1660196771632;
25+
std::string run = "523148";
2826
o2::ctp::ctpCCDBManager::setCCDBHost("https://alice-ccdb.cern.ch");
2927
bool ok;
3028
auto ctpcfg = o2::ctp::ctpCCDBManager::getConfigFromCCDB(timestamp, run, ok);
@@ -33,17 +31,13 @@ void TestConfig(bool test = 1)
3331
}
3432
CTPConfiguration ctpconfig;
3533
ctpconfig.loadConfigurationRun3(ctpcfg.getConfigString());
34+
// ctpconfig.printStream(std::cout);
35+
// return;
36+
// ctpconfig.assignDescriptors();
37+
// ctpconfig.createInputsInDecriptorsFromNames();
3638
ctpconfig.printStream(std::cout);
3739
auto& triggerclasses = ctpconfig.getCTPClasses();
3840
std::cout << "Found " << triggerclasses.size() << " trigger classes" << std::endl;
39-
for (const auto& trg : triggerclasses) {
40-
if (trg.cluster->maskCluster[o2::detectors::DetID::EMC]) {
41-
// Class triggering EMCAL cluster
42-
LOG(info) << "Found trigger class for EMCAL cluster: " << trg.name << " with input mask " << std::bitset<64>(trg.descriptor->getInputsMask());
43-
trg.descriptor->getInputsMask();
44-
}
45-
}
46-
return;
4741
int indexInList = 0;
4842
for (const auto& trgclass : triggerclasses) {
4943
uint64_t inputmask = 0;

Detectors/CTP/macro/TestFetcher.C

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
#endif
1717
using namespace o2::ctp;
1818

19-
void TestFetcher(int runNumber = 559456)
19+
void TestFetcher(int runNumber = 557251)
2020
{
2121
auto& ccdb = o2::ccdb::BasicCCDBManager::instance();
2222
std::pair<int64_t, int64_t> pp = ccdb.getRunDuration(runNumber);
@@ -25,9 +25,7 @@ void TestFetcher(int runNumber = 559456)
2525
// Opening run
2626
CTPRateFetcher fetcher;
2727
fetcher.setupRun(runNumber, &ccdb, ts, 0);
28-
// ccdb.setURL("http://ali-qcdb-gpn.cern.ch:8083/");
29-
ccdb.setURL("http://ccdb-test.cern.ch:8080/");
30-
28+
ccdb.setURL("http://ali-qcdb-gpn.cern.ch:8083/");
3129
std::string QCDBPathCTPScalers = "qc/CTP/Scalers";
3230
map<string, string> metadata; // can be empty
3331
std::string run = std::to_string(runNumber);

0 commit comments

Comments
 (0)