#include "TH1.h" #include "TF1.h" #include "TLegend.h" #include "TCanvas.h" #include "TPaveLabel.h" int runnum, totevnum; float curr; char target[10]; void TDC_n20_table() { cout << "Enter run number:" << endl; cin >> runnum; cout << "Enter total number of events:" << endl; cin >> totevnum; cout << "Enter target (without blank spaces):" << endl; cin >> target; cout << "Enter current in microAmp:" << endl; cin >> curr; TString file = Form("%dTDC-n20-rates.tex",runnum); TString rootfile = Form("/work/halla/e02013/disk1/kolarkar/replay/e01015/n20test_%d.root",runnum); ofstream texfile(file); if (!texfile) Bark(); texfile << "\\documentclass{article}" << endl; texfile << "\\begin{document}" << endl; texfile << "\\begin{itemize}" << endl; texfile << "\\item Run Number = " << runnum << endl; texfile << "\\item Target = " << target << endl; texfile << "\\item Current = " << curr << endl; texfile << "\\end{itemize}" << endl; texfile << "\\begin{tabular}{|c|c|c|}" << endl; TCanvas *c1 = new TCanvas("c1","TDC",10,10,1100,900); c1->SetFillColor(33); c1->SetFrameFillColor(42); c1->SetGrid(); c1->Divide(8,5); TFile *_file0 = TFile::Open(rootfile); //For n1 plane for(int i=1;i<5;i++){ c1->cd(2*i-1); TString dummy=Form("na.nd.n1.LT[%d]",i-1); TString counter=Form("na.nd.n1.LTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N1-0"<SetFillColor(45); label1->Draw(); texfile << mu << "&L-N1-0"<cd(2*i); TString dummy=Form("na.nd.n1.RT[%d]",i-1); TString counter=Form("na.nd.n1.RTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N1-0"<SetFillColor(45); label1->Draw(); texfile << mu << "\\\\" << endl; } //The following code for n2 plane for(int i=1;i<5;i++){ c1->cd(2*i+7); TString dummy=Form("na.nd.n2.LT[%d]",i-1); TString counter=Form("na.nd.n2.LTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N2-0"<SetFillColor(45); label1->Draw(); texfile << mu << "&L-N2-0"<cd(2*i+8); TString dummy=Form("na.nd.n2.RT[%d]",i-1); TString counter=Form("na.nd.n2.RTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N2-0"<SetFillColor(45); label1->Draw(); texfile << mu << "\\\\" << endl; } //For n3 plane for(int i=1;i<5;i++){ c1->cd(2*i+15); TString dummy=Form("na.nd.n3.LT[%d]",i-1); TString counter=Form("na.nd.n3.LTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N3-0"<SetFillColor(45); label1->Draw(); texfile << mu << "&L-N3-0"<cd(2*i+16); TString dummy=Form("na.nd.n3.RT[%d]",i-1); TString counter=Form("na.nd.n3.RTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N3-0"<SetFillColor(45); label1->Draw(); texfile << mu << "\\\\" << endl; } //The following code for n4 plane for(int i=1;i<5;i++){ c1->cd(2*i+23); TString dummy=Form("na.nd.n4.LT[%d]",i-1); TString counter=Form("na.nd.n4.LTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N4-0"<SetFillColor(45); label1->Draw(); texfile << mu << "&L-N4-0"<cd(2*i+24); TString dummy=Form("na.nd.n4.RT[%d]",i-1); TString counter=Form("na.nd.n4.RTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N4-0"<SetFillColor(45); label1->Draw(); texfile << mu << "\\\\" << endl; } //The following code for n5 plane for(int i=1;i<5;i++){ c1->cd(2*i+31); TString dummy=Form("na.nd.n5.LT[%d]",i-1); TString counter=Form("na.nd.n5.LTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N5-0"<SetFillColor(45); label1->Draw(); texfile << mu << "&L-N5-0"<cd(2*i+32); TString dummy=Form("na.nd.n5.RT[%d]",i-1); TString counter=Form("na.nd.n5.RTcounter[%d]==1",i-1); T->Draw(dummy,counter); TF1 *myfit = new TF1("myfit","[0]+[1]*(exp(-((x-[2])/[3])**2))",-0.6e-6,0.4e-6); //myfit->SetParameters(200,1,-8e-8,1e-7); myfit->SetParName(0,"Mean Events"); myfit->SetParameter(0,200); myfit->SetParName(1,"Peak Events"); myfit->SetParameter(1,1500); myfit->SetParName(2,"Peak"); myfit->SetParameter(2,-9.2e-8); myfit->SetParName(3,"Width"); myfit->SetParameter(3,1e-8); htemp->Fit("myfit","r"); char mystuff[100]; Double_t par0 = myfit->GetParameter(0); //value of 1st parameter Double_t mu = 85*par0/totevnum; cout << "The event rate for N5-0"<SetFillColor(45); label1->Draw(); texfile << mu << "\\\\" << endl; } texfile << "\\end{tabular}" << endl; texfile << "\\end{document}" << endl; texfile.close(); }