43 std::vector<double> cryIDs;
44 std::vector<double> means;
45 std::vector<double> RMSs;
46 std::vector<double> counts;
50 TH1F* hChi2 = (TH1F*)Chi2VsCrysID->ProjectionY(
"hChi2", crysID + 1, crysID + 1);
52 int totalCounts = hChi2->GetEntries();
55 B2INFO(
"eclAutocovarianceCalibrationC4Algorithm: Warning Below Count Limit: crysID totalCounts m_minEntries: " << crysID <<
" " <<
59 float mean = hChi2->GetMean();
61 cryIDs.push_back(crysID + 1);
62 means.push_back(mean);
63 RMSs.push_back(hChi2->GetRMS());
64 counts.push_back(totalCounts);
69 auto gMeanVsCrysID =
new TGraph(cryIDs.size(), cryIDs.data(), means.data());
70 gMeanVsCrysID->SetName(
"gMeanVsCrysID");
71 gMeanVsCrysID->SetMarkerStyle(20);
72 auto gRMSVsCrysID =
new TGraph(cryIDs.size(), cryIDs.data(), RMSs.data());
73 gRMSVsCrysID->SetName(
"gRMSVsCrysID");
74 gRMSVsCrysID->SetMarkerStyle(20);
75 auto gCountsVsCrysID =
new TGraph(cryIDs.size(), cryIDs.data(), counts.data());
76 gCountsVsCrysID->SetName(
"gCountsVsCrysID");
77 gCountsVsCrysID->SetMarkerStyle(20);
81 TDirectory::TContext context;
82 TFile* histfile =
new TFile(fName,
"recreate");
84 gMeanVsCrysID->Write();
85 gRMSVsCrysID->Write();
86 gCountsVsCrysID->Write();
87 Chi2VsCrysID->Write();
std::shared_ptr< T > getObjectPtr(const std::string &name, const std::vector< Calibration::ExpRun > &requestedRuns)
Get calibration data object by name and list of runs, the Merge function will be called to generate t...