/
ddushpanov
/
bmn_macro
Обзор
Документация
Войти
/
ddushpanov
/
bmn_macro
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
create_pdf.cpp
87 строк
3 KB
Dmitriy Dushpanov
added hists comparsions for student research work
12 дек 2025, 03:17
12 дек 2025, 03:17
b938ca2
Код
Авторство
О чём код?
#include <root/TFile.h> #include <root/TH1F.h> #include <root/TH2F.h> #include <root/TF1.h> #include <root/TCanvas.h> void plot(){ TFile *file = new TFile("/home/ddushpanov/Documents/science/bmn_macro/results/new_pl_bc1_pics_CCT2_bmn_run_8322_merged_ndet_calibr_1_6.root_dst_ndet_reco.root", "read"); TH1F* pNdetTime1F = (TH1F*)file->Get("pNdetTime1F"); TH1F* pNdetSignal1F = (TH1F*)file->Get("pNdetSignal1F"); TH1F* nSpectr_n = (TH1F*)file->Get("nSpectr_n"); TH2F* hNdetLayerCell = (TH2F*)file->Get("hNdetLayerCell"); TH1F* hNdetEdep = (TH1F*)file->Get("hNdetEdep"); TH1F* nSpectr_1c = (TH1F*)file->Get("nSpectr_1c"); TH1F* hNdetLayer = (TH1F*)file->Get("hNdetLayer"); TH1F* Edep_layer = (TH1F*)file->Get("Edep_layer"); TH1F* nSpectr_cell[9]; for(Int_t i = 0; i < 9; i++){ nSpectr_cell[i] = (TH1F*)file->Get(Form("nSpectr_%d_cell", i+1)); } TCanvas* canv_ndet_time = new TCanvas; pNdetTime1F->SetTitle(Form("pNdetTime1F; ns; Counts")); pNdetTime1F->Draw(); pNdetTime1F->GetYaxis()->SetMaxDigits(3); pNdetTime1F->GetXaxis()->SetRangeUser(20,60); canv_ndet_time->Print("results/plots.pdf("); TCanvas* canv_signal_1f = new TCanvas; pNdetSignal1F->SetTitle(Form("pNdetSignal1F; E_{dep}, MIP; Counts")); pNdetSignal1F->Draw(); pNdetSignal1F->GetYaxis()->SetMaxDigits(3); canv_signal_1f->Print("results/plots.pdf"); TCanvas* canv_edep_layer = new TCanvas; Edep_layer->SetTitle(Form("Edep_layer; Layer; E_{dep}, MIP")); Edep_layer->Draw("hist"); Edep_layer->GetYaxis()->SetMaxDigits(3); canv_edep_layer->Print("results/plots.pdf"); TCanvas* canv_spectr = new TCanvas; nSpectr_n->SetTitle(Form("nSpectr_n; T_{n}, MeV;Counts/ions")); nSpectr_n->SetLineColor(kBlue); nSpectr_n->Draw("hist"); nSpectr_n->GetXaxis()->SetRangeUser(0,10000); TF1 *fit1 = new TF1("fit1", "gaus", 2000, 4000); fit1->SetParameter(1,0); fit1->SetLineColor(kBlack); nSpectr_n->Fit("fit1", "R"); fit1->Draw("same"); canv_spectr->Print("results/plots.pdf"); TCanvas* canv_fastest_layer_cell = new TCanvas; hNdetLayerCell->SetTitle(Form("Fastest Layer Cell; Layer ID; Cell ID; Counts")); hNdetLayerCell->Draw("colzTEXT"); canv_fastest_layer_cell->Print("results/plots.pdf"); TCanvas* canv_edep = new TCanvas; hNdetEdep->SetTitle(Form("E_{dep}; E_{dep}, MIP; Counts/ions")); hNdetEdep->Draw("hist"); canv_edep->Print("results/plots.pdf"); TCanvas* canv_spectr_1c = new TCanvas; nSpectr_1c->SetTitle(Form("nSpectr_1c; T_{n}, MeV; Counts/ions")); nSpectr_1c->Draw("hist"); nSpectr_1c->GetXaxis()->SetRangeUser(0,10000); canv_spectr_1c->Print("results/plots.pdf"); TCanvas* canv_spectr_cell = new TCanvas; canv_spectr_cell->Divide(3, 3); for(int i = 0; i < 9; i++){ canv_spectr_cell->cd(i+1); nSpectr_cell[i]->Draw("hist"); nSpectr_cell[i]->GetXaxis()->SetRangeUser(0,10000); nSpectr_cell[i]->SetTitle(Form("nSpectr_%d_cell; T_{n}, MeV; Counts/ions", i+1)); } canv_spectr_cell->Print("results/plots.pdf"); TCanvas* canv_fastest_layer = new TCanvas; hNdetLayer->Draw("hist"); canv_fastest_layer->Print("results/plots.pdf)"); // TString result_file_name = "/home/ddushpanov/Documents/science/bmn_macro/results/result_dlpresentation"; file->Close(); }