Automatically find all calibrated modules, don't need the list by hand.
This commit is contained in:
@ -3,6 +3,8 @@
|
|||||||
#include "../sls_detector_calibration/jungfrauCommonHeader.h"
|
#include "../sls_detector_calibration/jungfrauCommonHeader.h"
|
||||||
#include "../sls_detector_calibration/jungfrauCommonFunctions.h"
|
#include "../sls_detector_calibration/jungfrauCommonFunctions.h"
|
||||||
|
|
||||||
|
#include <fstream>
|
||||||
|
|
||||||
#include "TCanvas.h"
|
#include "TCanvas.h"
|
||||||
#include "TFile.h"
|
#include "TFile.h"
|
||||||
#include "TH2F.h"
|
#include "TH2F.h"
|
||||||
@ -13,126 +15,6 @@ int main(int argc, char* argv[]) {
|
|||||||
|
|
||||||
jungfrauStyle();
|
jungfrauStyle();
|
||||||
|
|
||||||
vector<int> modules;
|
|
||||||
modules.push_back(6);
|
|
||||||
modules.push_back(8);
|
|
||||||
modules.push_back(11);
|
|
||||||
modules.push_back(21);
|
|
||||||
modules.push_back(22);
|
|
||||||
modules.push_back(27);
|
|
||||||
modules.push_back(28);
|
|
||||||
modules.push_back(32);
|
|
||||||
modules.push_back(35);
|
|
||||||
modules.push_back(39);
|
|
||||||
modules.push_back(40);
|
|
||||||
modules.push_back(43);
|
|
||||||
modules.push_back(44);
|
|
||||||
modules.push_back(45);
|
|
||||||
modules.push_back(46);
|
|
||||||
modules.push_back(48);
|
|
||||||
modules.push_back(49);
|
|
||||||
modules.push_back(50);
|
|
||||||
modules.push_back(51);
|
|
||||||
modules.push_back(53);
|
|
||||||
modules.push_back(54);
|
|
||||||
modules.push_back(55);
|
|
||||||
modules.push_back(57);
|
|
||||||
modules.push_back(58);
|
|
||||||
modules.push_back(59);
|
|
||||||
modules.push_back(60);
|
|
||||||
modules.push_back(61);
|
|
||||||
modules.push_back(62);
|
|
||||||
modules.push_back(63);
|
|
||||||
modules.push_back(64);
|
|
||||||
modules.push_back(65);
|
|
||||||
modules.push_back(66);
|
|
||||||
modules.push_back(67);
|
|
||||||
modules.push_back(68);
|
|
||||||
modules.push_back(69);
|
|
||||||
modules.push_back(70);
|
|
||||||
modules.push_back(71);
|
|
||||||
modules.push_back(72);
|
|
||||||
modules.push_back(73);
|
|
||||||
modules.push_back(74);
|
|
||||||
modules.push_back(75);
|
|
||||||
modules.push_back(76);
|
|
||||||
modules.push_back(79);
|
|
||||||
modules.push_back(80);
|
|
||||||
modules.push_back(86);
|
|
||||||
modules.push_back(88);
|
|
||||||
modules.push_back(89);
|
|
||||||
modules.push_back(90);
|
|
||||||
modules.push_back(91);
|
|
||||||
modules.push_back(92);
|
|
||||||
modules.push_back(93);
|
|
||||||
modules.push_back(94);
|
|
||||||
modules.push_back(95);
|
|
||||||
modules.push_back(97);
|
|
||||||
modules.push_back(98);
|
|
||||||
modules.push_back(99);
|
|
||||||
modules.push_back(100);
|
|
||||||
modules.push_back(102);
|
|
||||||
modules.push_back(103);
|
|
||||||
modules.push_back(104);
|
|
||||||
modules.push_back(106);
|
|
||||||
modules.push_back(107);
|
|
||||||
modules.push_back(108);
|
|
||||||
modules.push_back(109);
|
|
||||||
modules.push_back(110);
|
|
||||||
modules.push_back(111);
|
|
||||||
modules.push_back(112);
|
|
||||||
modules.push_back(113);
|
|
||||||
modules.push_back(114);
|
|
||||||
modules.push_back(115);
|
|
||||||
modules.push_back(116);
|
|
||||||
modules.push_back(117);
|
|
||||||
modules.push_back(118);
|
|
||||||
modules.push_back(119);
|
|
||||||
modules.push_back(120);
|
|
||||||
modules.push_back(121);
|
|
||||||
modules.push_back(122);
|
|
||||||
modules.push_back(123);
|
|
||||||
modules.push_back(124);
|
|
||||||
modules.push_back(125);
|
|
||||||
modules.push_back(126);
|
|
||||||
modules.push_back(129);
|
|
||||||
modules.push_back(130);
|
|
||||||
modules.push_back(131);
|
|
||||||
modules.push_back(132);
|
|
||||||
modules.push_back(133);
|
|
||||||
modules.push_back(134);
|
|
||||||
modules.push_back(135);
|
|
||||||
modules.push_back(200);
|
|
||||||
modules.push_back(201);
|
|
||||||
modules.push_back(202);
|
|
||||||
modules.push_back(203);
|
|
||||||
modules.push_back(204);
|
|
||||||
modules.push_back(205);
|
|
||||||
modules.push_back(206);
|
|
||||||
modules.push_back(208);
|
|
||||||
modules.push_back(209);
|
|
||||||
modules.push_back(210);
|
|
||||||
modules.push_back(212);
|
|
||||||
modules.push_back(214);
|
|
||||||
modules.push_back(215);
|
|
||||||
modules.push_back(216);
|
|
||||||
modules.push_back(217);
|
|
||||||
modules.push_back(218);
|
|
||||||
modules.push_back(219);
|
|
||||||
modules.push_back(221);
|
|
||||||
modules.push_back(222);
|
|
||||||
modules.push_back(223);
|
|
||||||
modules.push_back(224);
|
|
||||||
modules.push_back(226);
|
|
||||||
modules.push_back(227);
|
|
||||||
modules.push_back(229);
|
|
||||||
modules.push_back(231);
|
|
||||||
modules.push_back(232);
|
|
||||||
modules.push_back(233);
|
|
||||||
modules.push_back(234);
|
|
||||||
modules.push_back(235);
|
|
||||||
modules.push_back(236);
|
|
||||||
|
|
||||||
vector<double> modules_d;
|
vector<double> modules_d;
|
||||||
vector<double> hg0_missing;
|
vector<double> hg0_missing;
|
||||||
vector<double> hg0_crazy;
|
vector<double> hg0_crazy;
|
||||||
@ -146,7 +28,16 @@ int main(int argc, char* argv[]) {
|
|||||||
|
|
||||||
char savename[128];
|
char savename[128];
|
||||||
|
|
||||||
for (size_t j = 0; j < modules.size(); j++) {
|
for (int j = 0; j < 300; j++) {
|
||||||
|
|
||||||
|
// first check if a gain map exists
|
||||||
|
fstream infile;
|
||||||
|
sprintf(savename,"data/M%3.3d/gainMaps_M%3.3d.bin", j, j);
|
||||||
|
infile.open((char*)savename, ios::in | ios::binary);
|
||||||
|
if (not infile.is_open()) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
infile.close();
|
||||||
|
|
||||||
int this_hg0_missing = 0;
|
int this_hg0_missing = 0;
|
||||||
int this_hg0_crazy = 0;
|
int this_hg0_crazy = 0;
|
||||||
@ -159,7 +50,7 @@ int main(int argc, char* argv[]) {
|
|||||||
int this_anygain_missing_or_crazy = 0;
|
int this_anygain_missing_or_crazy = 0;
|
||||||
|
|
||||||
// CuFluo HG0 dataset
|
// CuFluo HG0 dataset
|
||||||
sprintf(savename,"data/M%3.3d/CuFluo_gain_HG0_M%3.3d.root", modules[j], modules[j]);
|
sprintf(savename,"data/M%3.3d/CuFluo_gain_HG0_M%3.3d.root", j, j);
|
||||||
TFile* FL_HG0_file = new TFile((char*)savename,"READ");
|
TFile* FL_HG0_file = new TFile((char*)savename,"READ");
|
||||||
TH2F* FL_HG0_gain_map = 0;
|
TH2F* FL_HG0_gain_map = 0;
|
||||||
if (FL_HG0_file->IsZombie()) {
|
if (FL_HG0_file->IsZombie()) {
|
||||||
@ -169,7 +60,7 @@ int main(int argc, char* argv[]) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// CuFluo G0 dataset
|
// CuFluo G0 dataset
|
||||||
sprintf(savename,"data/M%3.3d/CuFluo_gain_G0_M%3.3d.root", modules[j], modules[j]);
|
sprintf(savename,"data/M%3.3d/CuFluo_gain_G0_M%3.3d.root", j, j);
|
||||||
TFile* FL_G0_file = new TFile((char*)savename,"READ");
|
TFile* FL_G0_file = new TFile((char*)savename,"READ");
|
||||||
TH2F* FL_G0_gain_map = 0;
|
TH2F* FL_G0_gain_map = 0;
|
||||||
if (FL_G0_file->IsZombie()) {
|
if (FL_G0_file->IsZombie()) {
|
||||||
@ -179,14 +70,14 @@ int main(int argc, char* argv[]) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Backplane pulsing dataset
|
// Backplane pulsing dataset
|
||||||
sprintf(savename,"data/M%3.3d/BP_ratio_M%3.3d.root", modules[j], modules[j]);
|
sprintf(savename,"data/M%3.3d/BP_ratio_M%3.3d.root", j, j);
|
||||||
TFile* DB_file = new TFile((char*)savename,"READ");
|
TFile* DB_file = new TFile((char*)savename,"READ");
|
||||||
TH2F* DB_ratio_map = 0;
|
TH2F* DB_ratio_map = 0;
|
||||||
if (DB_file->IsZombie()) {
|
if (DB_file->IsZombie()) {
|
||||||
cout << "didn't find BP file" << endl;
|
cout << "didn't find BP file" << endl;
|
||||||
|
|
||||||
// look for a direct beam dataset
|
// look for a direct beam dataset
|
||||||
sprintf(savename,"data/M%3.3d/DB_ratio_M%3.3d.root", modules[j], modules[j]);
|
sprintf(savename,"data/M%3.3d/DB_ratio_M%3.3d.root", j, j);
|
||||||
DB_file = new TFile((char*)savename,"READ");
|
DB_file = new TFile((char*)savename,"READ");
|
||||||
|
|
||||||
if (DB_file->IsZombie()) {
|
if (DB_file->IsZombie()) {
|
||||||
@ -203,7 +94,7 @@ int main(int argc, char* argv[]) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Current source dataset
|
// Current source dataset
|
||||||
sprintf(savename,"data/M%3.3d/CS_ratio_M%3.3d.root", modules[j], modules[j]);
|
sprintf(savename,"data/M%3.3d/CS_ratio_M%3.3d.root", j, j);
|
||||||
TFile* CS_file = new TFile((char*)savename,"READ");
|
TFile* CS_file = new TFile((char*)savename,"READ");
|
||||||
TH2F* CS_ratio_map = 0;
|
TH2F* CS_ratio_map = 0;
|
||||||
if (CS_file->IsZombie()) {
|
if (CS_file->IsZombie()) {
|
||||||
@ -290,7 +181,7 @@ int main(int argc, char* argv[]) {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
modules_d.push_back(modules[j]);
|
modules_d.push_back(j);
|
||||||
hg0_missing.push_back(this_hg0_missing);
|
hg0_missing.push_back(this_hg0_missing);
|
||||||
hg0_crazy.push_back(this_hg0_crazy);
|
hg0_crazy.push_back(this_hg0_crazy);
|
||||||
g0_missing.push_back(this_g0_missing);
|
g0_missing.push_back(this_g0_missing);
|
||||||
@ -301,7 +192,7 @@ int main(int argc, char* argv[]) {
|
|||||||
g2_crazy.push_back(this_g2_crazy);
|
g2_crazy.push_back(this_g2_crazy);
|
||||||
anygain_missing_or_crazy.push_back(this_anygain_missing_or_crazy);
|
anygain_missing_or_crazy.push_back(this_anygain_missing_or_crazy);
|
||||||
|
|
||||||
} // end of modules
|
}
|
||||||
|
|
||||||
TCanvas *c1 = new TCanvas("c1","",150,10,800,400);
|
TCanvas *c1 = new TCanvas("c1","",150,10,800,400);
|
||||||
c1->SetLeftMargin(0.12);
|
c1->SetLeftMargin(0.12);
|
||||||
|
@ -25,126 +25,6 @@ int main(int argc, char* argv[]) {
|
|||||||
|
|
||||||
GainMaps *mapsObject = new GainMaps;
|
GainMaps *mapsObject = new GainMaps;
|
||||||
|
|
||||||
vector<int> modules;
|
|
||||||
modules.push_back(6);
|
|
||||||
modules.push_back(8);
|
|
||||||
modules.push_back(11);
|
|
||||||
modules.push_back(21);
|
|
||||||
modules.push_back(22);
|
|
||||||
modules.push_back(27);
|
|
||||||
modules.push_back(28);
|
|
||||||
modules.push_back(32);
|
|
||||||
modules.push_back(35);
|
|
||||||
modules.push_back(39);
|
|
||||||
modules.push_back(40);
|
|
||||||
modules.push_back(43);
|
|
||||||
modules.push_back(44);
|
|
||||||
modules.push_back(45);
|
|
||||||
modules.push_back(46);
|
|
||||||
modules.push_back(48);
|
|
||||||
modules.push_back(49);
|
|
||||||
modules.push_back(50);
|
|
||||||
modules.push_back(51);
|
|
||||||
modules.push_back(53);
|
|
||||||
modules.push_back(54);
|
|
||||||
modules.push_back(55);
|
|
||||||
modules.push_back(57);
|
|
||||||
modules.push_back(58);
|
|
||||||
modules.push_back(59);
|
|
||||||
modules.push_back(60);
|
|
||||||
modules.push_back(61);
|
|
||||||
modules.push_back(62);
|
|
||||||
modules.push_back(63);
|
|
||||||
modules.push_back(64);
|
|
||||||
modules.push_back(65);
|
|
||||||
modules.push_back(66);
|
|
||||||
modules.push_back(67);
|
|
||||||
modules.push_back(68);
|
|
||||||
modules.push_back(69);
|
|
||||||
modules.push_back(70);
|
|
||||||
modules.push_back(71);
|
|
||||||
modules.push_back(72);
|
|
||||||
modules.push_back(73);
|
|
||||||
modules.push_back(74);
|
|
||||||
modules.push_back(75);
|
|
||||||
modules.push_back(76);
|
|
||||||
modules.push_back(79);
|
|
||||||
modules.push_back(80);
|
|
||||||
modules.push_back(86);
|
|
||||||
modules.push_back(88);
|
|
||||||
modules.push_back(89);
|
|
||||||
modules.push_back(90);
|
|
||||||
modules.push_back(91);
|
|
||||||
modules.push_back(92);
|
|
||||||
modules.push_back(93);
|
|
||||||
modules.push_back(94);
|
|
||||||
modules.push_back(95);
|
|
||||||
modules.push_back(97);
|
|
||||||
modules.push_back(98);
|
|
||||||
modules.push_back(99);
|
|
||||||
modules.push_back(100);
|
|
||||||
modules.push_back(102);
|
|
||||||
modules.push_back(103);
|
|
||||||
modules.push_back(104);
|
|
||||||
modules.push_back(106);
|
|
||||||
modules.push_back(107);
|
|
||||||
modules.push_back(108);
|
|
||||||
modules.push_back(109);
|
|
||||||
modules.push_back(110);
|
|
||||||
modules.push_back(111);
|
|
||||||
modules.push_back(112);
|
|
||||||
modules.push_back(113);
|
|
||||||
modules.push_back(114);
|
|
||||||
modules.push_back(115);
|
|
||||||
modules.push_back(116);
|
|
||||||
modules.push_back(117);
|
|
||||||
modules.push_back(118);
|
|
||||||
modules.push_back(119);
|
|
||||||
modules.push_back(120);
|
|
||||||
modules.push_back(121);
|
|
||||||
modules.push_back(122);
|
|
||||||
modules.push_back(123);
|
|
||||||
modules.push_back(124);
|
|
||||||
modules.push_back(125);
|
|
||||||
modules.push_back(126);
|
|
||||||
modules.push_back(129);
|
|
||||||
modules.push_back(130);
|
|
||||||
modules.push_back(131);
|
|
||||||
modules.push_back(132);
|
|
||||||
modules.push_back(133);
|
|
||||||
modules.push_back(134);
|
|
||||||
modules.push_back(135);
|
|
||||||
modules.push_back(200);
|
|
||||||
modules.push_back(201);
|
|
||||||
modules.push_back(202);
|
|
||||||
modules.push_back(203);
|
|
||||||
modules.push_back(204);
|
|
||||||
modules.push_back(205);
|
|
||||||
modules.push_back(206);
|
|
||||||
modules.push_back(208);
|
|
||||||
modules.push_back(209);
|
|
||||||
modules.push_back(210);
|
|
||||||
modules.push_back(212);
|
|
||||||
modules.push_back(214);
|
|
||||||
modules.push_back(215);
|
|
||||||
modules.push_back(216);
|
|
||||||
modules.push_back(217);
|
|
||||||
modules.push_back(218);
|
|
||||||
modules.push_back(219);
|
|
||||||
modules.push_back(221);
|
|
||||||
modules.push_back(222);
|
|
||||||
modules.push_back(223);
|
|
||||||
modules.push_back(224);
|
|
||||||
modules.push_back(226);
|
|
||||||
modules.push_back(227);
|
|
||||||
modules.push_back(229);
|
|
||||||
modules.push_back(231);
|
|
||||||
modules.push_back(232);
|
|
||||||
modules.push_back(233);
|
|
||||||
modules.push_back(234);
|
|
||||||
modules.push_back(235);
|
|
||||||
modules.push_back(236);
|
|
||||||
|
|
||||||
vector<double> modules_d;
|
vector<double> modules_d;
|
||||||
vector<double> module_errs;
|
vector<double> module_errs;
|
||||||
vector<double> g0_means;
|
vector<double> g0_means;
|
||||||
@ -163,7 +43,7 @@ int main(int argc, char* argv[]) {
|
|||||||
TH1F* g2hist = new TH1F("g2hist","",100,-0.2,0);
|
TH1F* g2hist = new TH1F("g2hist","",100,-0.2,0);
|
||||||
TH1F* hg0hist = new TH1F("hg0hist","",100,80,120);
|
TH1F* hg0hist = new TH1F("hg0hist","",100,80,120);
|
||||||
|
|
||||||
for (size_t j = 0; j < modules.size(); j++) {
|
for (int j = 0; j < 300; j++) {
|
||||||
|
|
||||||
// clear gain maps
|
// clear gain maps
|
||||||
for (int i = 0; i < NCH; i++) {
|
for (int i = 0; i < NCH; i++) {
|
||||||
@ -175,8 +55,11 @@ int main(int argc, char* argv[]) {
|
|||||||
|
|
||||||
// get gain maps
|
// get gain maps
|
||||||
fstream infile;
|
fstream infile;
|
||||||
sprintf(savename,"data/M%3.3d/gainMaps_M%3.3d.bin", modules[j], modules[j]);
|
sprintf(savename,"data/M%3.3d/gainMaps_M%3.3d.bin", j, j);
|
||||||
infile.open((char*)savename, ios::in | ios::binary);
|
infile.open((char*)savename, ios::in | ios::binary);
|
||||||
|
if (not infile.is_open()) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
infile.read((char*)mapsObject->g0VALs, sizeof(mapsObject->g0VALs));
|
infile.read((char*)mapsObject->g0VALs, sizeof(mapsObject->g0VALs));
|
||||||
infile.read((char*)mapsObject->g1VALs, sizeof(mapsObject->g1VALs));
|
infile.read((char*)mapsObject->g1VALs, sizeof(mapsObject->g1VALs));
|
||||||
@ -192,7 +75,7 @@ int main(int argc, char* argv[]) {
|
|||||||
hg0hist->Fill(mapsObject->hg0VALs[i]);
|
hg0hist->Fill(mapsObject->hg0VALs[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
modules_d.push_back(modules[j]);
|
modules_d.push_back(j);
|
||||||
module_errs.push_back(0.);
|
module_errs.push_back(0.);
|
||||||
g0_means.push_back(g0hist->GetMean());
|
g0_means.push_back(g0hist->GetMean());
|
||||||
g0_rmss.push_back(g0hist->GetRMS());
|
g0_rmss.push_back(g0hist->GetRMS());
|
||||||
|
Reference in New Issue
Block a user