本文整理汇总了C++中TCut类的典型用法代码示例。如果您正苦于以下问题:C++ TCut类的具体用法?C++ TCut怎么用?C++ TCut使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了TCut类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: Muti_Plot_centScale
void Muti_Plot_centScale(std::string mu_title, const char **lineKind_Arr, TCut selectionC , std::string Var , const int ngr, const int nVarBins, double * VarBins_array , double **yArr2, double **yErrArr2)
{
char filename[]="JetESR_status.txt";
fstream myfile;
myfile.open (filename,ios::out|ios::app);
double VarBinsCenter[nVarBins];
double VarBinsErr[nVarBins];
for (int ibin=0; ibin<nVarBins; ibin++)
{
VarBinsCenter[ibin]= (VarBins_array[ibin] + VarBins_array[ibin+1]) /2;
// VarBinsErr[ibin]=0;
VarBinsErr[ibin]=(VarBins_array[ibin+1]- VarBins_array[ibin])/2;
}
cout<<"lineKind_Arr 1 = "<<lineKind_Arr[0]<<" ,lineKind_Arr2 = "<<lineKind_Arr[1]<<endl;
cout<<"mu_title = "<<mu_title<<" selectionC = "<< selectionC<<endl;
Can_result[counter1] = new TCanvas(Form("Can_result_%i",counter1));
mutiGR[counter1] = new TMultiGraph("name",Form("%s",mu_title.c_str()));
TGraphErrors *gr_mean[ngr];
legend[counter1] = new TLegend(0.68,0.7,0.88,0.85);
for(int igr=0; igr<ngr; igr++)
{
gr_mean[igr] = new TGraphErrors(nVarBins, VarBinsCenter, yArr2[igr], VarBinsErr , yErrArr2[igr]);
gr_mean[igr]->SetTitle(Form("some title_%i", igr));
gr_mean[igr]->SetFillStyle(0);
gr_mean[igr]->SetMarkerStyle(1);
gr_mean[igr]->SetLineColor(igr+1);
gr_mean[igr]->SetMarkerColor(igr+1);
mutiGR[counter1]->Add(gr_mean[igr]);
legend[counter1]->AddEntry( gr_mean[igr] ,lineKind_Arr[igr],"l"); // not work for unknow reason
}
myfile<<"hello, Var = "<<Var<<"Var.compare(Centrality) = "<<Var.compare("Centrality")<<endl;
mutiGR[counter1]->Draw("AP");
mutiGR[counter1]->GetXaxis()->SetTitle("Centrality"); // must after draw to create a vitual histogram like object to set title.
mutiGR[counter1]->GetYaxis()->SetTitle("#mu_{Reco./Gen.}");
mutiGR[counter1]->Draw("AP"); // draw again to let all the settting on it.
// Can_result[counter1]->BuildLegend(0.7,0.7,0.9,0.9);
legend[counter1]->SetBorderSize(0);
legend[counter1]->Draw();
TLatex *tex = new TLatex(0.25,0.7,"#bf{#color[2]{|#eta_{jet}|<2.0 &75<refpt<120}}");
tex->SetNDC();
tex->SetTextFont(43);
tex->SetTextSize(24);
tex->SetLineWidth(2);
tex->Draw();
Can_result[counter1]->SaveAs(Form("./Plots/result_%s_%s_%s.pdf",mu_title.c_str(),selectionC.GetTitle() , Var.c_str()));
Can_result[counter1]->SaveAs(Form("./Plots/result_%s_%s_%s.C",mu_title.c_str(),selectionC.GetTitle() , Var.c_str()));
counter1++;
cout<<"finish mutigraph"<<endl;
}
开发者ID:Jelov,项目名称:JetEnergy_SR,代码行数:59,代码来源:jetE_SR_centrality.C
示例2: make_psi2s_mupt
void make_psi2s_mupt(float ptmin=0.0, float ptmax=30.0, float ymin=0.0, float ymax=2.4, bool absRapidity=true, bool saveFile=false)
{
TCanvas *c1 = new TCanvas("c1","c1");
c1->SetLogy();
TCut defaultCut = "Reco_QQ_sign==0&&Reco_QQ_4mom.M()>3.35&&Reco_QQ_4mom.M()<4.0&&Reco_QQ_ctauTrue>-10";
TCut ptCut = Form("Reco_QQ_4mom.Pt()>%4.1f&&Reco_QQ_4mom.Pt()<%4.1f",ptmin,ptmax);
TCut rapCut;
if (absRapidity)
rapCut = Form("abs(Reco_QQ_4mom.Rapidity())>%3.1f&&abs(Reco_QQ_4mom.Rapidity())<%3.1f",ymin,ymax);
else
rapCut = Form("Reco_QQ_4mom.Rapidity()>%3.1f&&Reco_QQ_4mom.Rapidity()<%3.1f",ymin,ymax);
unsigned int trigBit=2; // DoubleMu0_HighQ
TCut trigCut = Form("(HLTriggers&%u)==%u&&(Reco_QQ_trig&%u)==%u",trigBit,trigBit,trigBit,trigBit);
TString fname;
fname = Form("20140324/MC_psi2s_pp_mupt_Rap_%3.1f-%3.1f_Pt_%3.1f-%3.1f.root",ymin,ymax,ptmin,ptmax);
std::cout << fname << std::endl;
std::cout << "default: " << defaultCut.GetTitle() << std::endl;
std::cout << "pt cut: " << ptCut.GetTitle() << std::endl;
std::cout << "rapidity cut: " << rapCut.GetTitle() << std::endl;
std::cout << "trigger bit: " << trigCut.GetTitle() << std::endl;
TH1F *hMuPlPtRec = new TH1F("hMuPlPtRec","hMuPlPtRec;p_{T} (#mu^{+}) (GeV/c);Events",200,0,20);
TH1F *hMuMiPtRec = new TH1F("hMuMiPtRec","hMuMiPtRec;p_{T} (#mu^{-}) (GeV/c);Events",200,0,20);
TH1F *hMuPtRec = new TH1F("hMuPtRec","hMuPtRec;p_{T} (#mu^{#pm}) (GeV/c);Events",200,0,20);
hMuPlPtRec->Sumw2();
hMuMiPtRec->Sumw2();
hMuPtRec->Sumw2();
hMuPlPtRec->SetMarkerColor(kRed);
hMuMiPtRec->SetMarkerColor(kBlue);
TChain *myTree = new TChain("myTree");
myTree->Add("../root_files/PRpsi2SMC_Histos_2013pp_GlbGlb_STARTHI53_V28-v1_muLessPV.root");
myTree->Draw("Reco_QQ_mupl_4mom.Pt()>>hMuPlPtRec",defaultCut&&ptCut&&rapCut&&trigCut,"e");
myTree->Draw("Reco_QQ_mumi_4mom.Pt()>>hMuMiPtRec",defaultCut&&ptCut&&rapCut&&trigCut,"e");
hMuPtRec->Add(hMuPlPtRec,hMuMiPtRec);
hMuPtRec->Draw();
hMuPlPtRec->Draw("same");
hMuMiPtRec->Draw("same");
TFile *outf = NULL;
if (saveFile) {
outf = new TFile(fname,"RECREATE");
hMuPtRec->Write();
outf->Close();
}
return;
}
开发者ID:tdahms,项目名称:CMS-HIN-12-007,代码行数:57,代码来源:make_psi2s_mupt.C
示例3: makePlot
void makePlot(vector<TTree*> sigTree,vector<double> sigWeight,
vector<int> ptHatLo, vector<int> ptHatHi,
std::string var,TCut cut,TH1F* h,bool norm)
{
TH1F *hRes = (TH1F*)h->Clone();
hRes->SetName("hRes");
hRes->Sumw2();
char tmp[300];
for (unsigned int i=0; i<sigTree.size(); i++)
{
// first determine the pthat cut
sprintf(tmp, "ptHat >= %d && ptHat <= %d",ptHatLo[i], ptHatHi[i]);
TCut ptHatCut = tmp;
TCut allCut = cut + ptHatCut;
cout << "Current cut = " << allCut.GetTitle() << endl;
TH1F *htmp = (TH1F*)h->Clone();
htmp->SetName("htmp");
sigTree[i]->Draw(Form("%s>>htmp",var.data()),allCut);
htmp->Sumw2();
htmp->Scale(sigWeight[i]);
cout << "scale = " << sigWeight[i] << endl;
cout << "After scaling htmp -> entries() " << htmp->GetEntries() << endl;
cout << "After scaling htmp -> Integral() " << htmp->Integral() << endl;
cout << "After scaling htmp -> GetMean() " << htmp->GetMean() << endl;
cout << "After scaling htmp -> GetRMS() " << htmp->GetRMS() << endl;
hRes->Add(htmp);
delete htmp;
}
h->Sumw2();
h->Add(hRes);
if(norm)h->Scale(1.0/(double)h->Integral(0,1000));
cout << "After scaling h-> entries() " << h->GetEntries() << endl;
cout << "After scaling h-> Integral() " << h->Integral() << endl;
cout << "After scaling h -> GetMean() " << h->GetMean() << endl;
cout << "After scaling h -> GetRMS() " << h->GetRMS() << endl;
delete hRes;
}
开发者ID:ramankhurana,项目名称:usercode,代码行数:40,代码来源:produceHisto.C
示例4: zeeAnaDiff
void zeeAnaDiff(TH1D* hsee, TCut addCut,TH1D* hseeMc) {
TFile *f1=new TFile(fname1.Data());
TTree *zp = (TTree*)f1->Get("tz");
zp->AddFriend("yEvt=yongsunHiEvt" ,fname1.Data());
zp->AddFriend("ySkim=yongsunSkimTree" ,fname1.Data());
zp->AddFriend("yHlt=yongsunHltTree" ,fname1.Data());
zp->AddFriend("tgj", fname1.Data());
TH1D* hmass = new TH1D("hmass",";inv. mass (GeV);event fraction",34,30,200);
hmass->Sumw2();
zp->Draw("invm>>hmass",addCut && "isEle1==1 && isEle2==1");
TH1D* htemp = (TH1D*)hsee->Clone("htemp"); htemp->Reset();
zp->Draw("see1>>htemp",addCut && "isEle1==1 && isEle2==1" && "invm>80 && invm<100" );
hsee->Reset();
hsee->Add(htemp);
handsomeTH1(hmass,2);
scaleInt(hmass);
TH1D* htempMC;
TFile *f1mc;
TTree *zpmc ;
f1mc=new TFile(fname1MC.Data());
zpmc = (TTree*)f1mc->Get("tz");
zpmc->AddFriend("yEvt=yongsunHiEvt" ,fname1MC.Data());
zpmc->AddFriend("ySkim=yongsunSkimTree" ,fname1MC.Data());
zpmc->AddFriend("yHlt=yongsunHltTree" ,fname1MC.Data());
zpmc->AddFriend("yPho=yongsunPhotonTree" ,fname1MC.Data());
zpmc->AddFriend("tgj", fname1MC.Data());
hseeMc->Sumw2();
htempMC = (TH1D*)hseeMc->Clone("htempMc"); htempMC->Reset();
TH1D* hmassMC = new TH1D("hmassMC11",";inv. mass (GeV);event fraction",34,30,200);
hmassMC->Sumw2();
zpmc->Draw("invm>>hmassMC11",Form("(%s) *yPho.ncoll",addCut.GetTitle()));
zpmc->Draw("see1>>htempMc",Form("(%s) *yPho.ncoll", (addCut && "invm>80 && invm<100").GetTitle()) );
hseeMc->Reset();
hseeMc->Add(htempMC);
handsomeTH1(hmassMC,1);
scaleInt(hmassMC);
hmassMC->SetAxisRange(0,0.6,"Y");
hmassMC->DrawCopy();
hmass->DrawCopy("same");
TLegend* leg1 = new TLegend(0.5580645,0.5381356,0.8923387,0.7648305,NULL,"brNDC");
easyLeg(leg1,"Z->ee mass");
leg1->AddEntry(hmass,"DATA","pl");
leg1->AddEntry(hmassMC,"MC","pl");
leg1->Draw();
}
开发者ID:CmsHI,项目名称:CVS_SavedFMa,代码行数:52,代码来源:zeeAna.C
示例5: getseePhoMC
void getseePhoMC(TH1D* hsee, TCut addCut){
TFile *f1=new TFile(fPho.Data());
TTree *photon1 = (TTree*)f1->Get("yongsunPhotonTree");
photon1->AddFriend("yEvt=yongsunHiEvt" ,fPho.Data());
photon1->AddFriend("ySkim=yongsunSkimTree" ,fPho.Data());
photon1->AddFriend("yHlt=yongsunHltTree" ,fPho.Data());
photon1->AddFriend("tgj", fPho.Data());
TH1D* htemp = (TH1D*)hsee->Clone("htemp"); htemp->Reset();
photon1->Draw("sigmaIetaIeta>>htemp",Form("(%s) *ncoll",addCut.GetTitle()));
hsee->Reset();
hsee->Add(htemp);
}
开发者ID:CmsHI,项目名称:CVS_SavedFMa,代码行数:14,代码来源:zeeAna.C
示例6: countEvt
double countEvt(process &process, TCut Cut)
{
// Create temporary histogram
TH1D* tmp = new TH1D("tmp", "tmp", 30, 0, 1000);
// Get number of events after a cut
double Sel = 0;
process.GetChain()->Draw("Njet>>tmp","XS*5000/Nevt"*Cut, "goff");
Sel = tmp->Integral();
delete tmp;
process.SetSelection(Cut.GetName());
process.SetNevt_sel(Sel);
return Sel;
}
开发者ID:beatrizlopes,项目名称:SkeletonAnalysis,代码行数:15,代码来源:printYield.C
示例7: weightCut
// ---------------------------------------------------------------------------------------------
TString weightCut (TCut cut, bool needMCweight, int treeVersion = 2, bool pTweighted = false)
{
TString sWMC (treeVersion <= 1 ? "xsec" : "w");
TString sPT (treeVersion <= 2 ? "jtpt" : "jtrawpt");
TString title( stripStart( stripEnd( cut.GetTitle() ) ) );
TString title_in_parenthesis( title );
if( ! allInBrackets( title ) ) title_in_parenthesis = "("+title+")";
if( needMCweight || pTweighted ) { // need some sort of weight
TString sW;
if( needMCweight && !pTweighted ) sW = sWMC.Data();
if( pTweighted && !needMCweight ) sW = sPT.Data();
if( needMCweight && pTweighted ) sW = Form("(%s*%s)", sWMC.Data(), sPT.Data());
if( title.IsWhitespace() ) {
return sW;
} else {
return title_in_parenthesis + "*" + sW;
}
} else { // no weights needed.
// But this is a cut, not a weigh, so add parenthesis and a test to prevent weighting
if( title.IsWhitespace() ) return "";
return title_in_parenthesis+">0";
}
}
开发者ID:aashaqshah,项目名称:cmssw-1,代码行数:25,代码来源:jc_util.c
示例8: main
int main(int argc, char* argv[]) {
TH1::SetDefaultSumw2();
ProgramOptions options(argc, argv);
double lumi = options.lumi;
std::cout << "Integrated luminosity : " << lumi << " pb-1" << std::endl;
Datasets datasets(options.iDir);
datasets.readFile(options.datasetFile);
LeptonWeights lw;
// cuts
Cuts cuts;
TCut puWeight("puWeight");
TCut trigCorr( "(trigCorrWeight>0) ? trigCorrWeight : 1." );
// For lepton weights
TCut elTightWeight = cuts.elTightWeight(options.leptCorr);
TCut muTightWeight = cuts.muTightWeight(options.leptCorr);
TCut leptonTightWeight = elTightWeight * muTightWeight;
TCut elVetoWeight = cuts.elVetoWeight(options.leptCorr);
TCut muVetoWeight = cuts.muVetoWeight(options.leptCorr);
TCut leptonVetoWeight = elVetoWeight * muVetoWeight;
TCut otherCutsTight = puWeight * trigCorr * leptonTightWeight;
TCut otherCutsVeto = puWeight * trigCorr * leptonVetoWeight;
TCut cutSignalNoMETNoDPhi = cuts.HLTandMETFilters() + cuts.leptonVeto() + cuts.vbf();
// Tau cuts
// Get puWeight etc added below if necessary
// standard TightMjj selection - essentially signal selection but no DPhiJJ and no cjv
TCut cutTightMjj_basic = cuts.HLTandMETFilters() + cuts.cutWTau("lVeto") + cuts.cutWTau("dijet") + cuts.cutWTau("dEtaJJ") + cuts.cutWTau("MET") + cuts.cutWTau("Mjj");
TCut cutwMunoMjj = cuts.cutWMu("trigger")+ cuts.cutWMu("wMu")+cuts.cutWMu("lVeto")+cuts.cutWMu("dijet")+cuts.cutWMu("dEtaJJ")+cuts.cutWMu("MET") + cuts.cutWMu("dPhiJJ") + cuts.cutWMu("CJV"); //for W->mu regions
cutwMunoMjj.Print();
TCut cutTightMjj(""); // used to add in PU, trig corr, wWeight etc
TCut cutWMuVBFNoCJV = cuts.cutWMu("trigger") + cuts.cutWMu("wMu") + cuts.cutWMu("lVeto") + cuts.cutWMu("dijet") + cuts.cutWMu("dEtaJJ") + cuts.cutWMu("Mjj");
// double dphiEdges[4] = { 0., 1.0, 2.6, TMath::Pi() };
double dphiEdges[5] = { 0., 1.0, 1.8, 2.6, TMath::Pi() };
double MjjEdges[5] = { 800., 1000., 1200., 1800., 3000. };
// double MjjEdges[5] = { 800., 1100., 1400., 1800., 3000. };
double METEdges[5] = { 100., 150., 200., 250., 300. };
//double CenJetEtEdges[5] = { 10., 40., 70., 120. ,200};
double CenJetEtEdges[5] = { 10., 30., 60., 100., 150.};
TH1D* hWMu_MCGen_DPhi = new TH1D("hWMu_MCGen_DPhi", "", 1, 0,1); // W+jets MC gen level mu
TH1D* hWTau_MCGen_DPhi = new TH1D("hWTau_MCGen_DPhi", "", 1, 0,1); // W+jets MC gen level Tau - for ID
// DPhiJJ histograms
// WMu histograms
TH1D* hWMu_MCC_DPhi = new TH1D("hWMu_MCC_DPhi", "", 4, dphiEdges); // W+jets MC mu ctrl region
TH1D* hWMu_BGC_DPhi = new TH1D("hWMu_BGC_DPhi", "", 4, dphiEdges); // background MC ctrl region
TH1D* hWMu_DataC_DPhi = new TH1D("hWMu_DataC_DPhi", "", 4, dphiEdges); // Data ctrl region
// WTau histograms
TH1D* hWTau_MCC_DPhi = new TH1D("hWTau_MCC_DPhi", "", 4, dphiEdges); // W+jets MC tau ctrl region - for CJV ratio
TH1D* hWTau_BGC_DPhi = new TH1D("hWTau_BGC_DPhi", "", 4, dphiEdges); // background MC ctrl region
TH1D* hWTau_DataC_DPhi = new TH1D("hWTau_DataC_DPhi", "", 4, dphiEdges); // Data ctrl region
// Mjj histograms
// WMu histograms
TH1D* hWMu_MCC_Mjj = new TH1D("hWMu_MCC_Mjj", "", 4, MjjEdges); // W+jets MC mu ctrl region
TH1D* hWMu_BGC_Mjj = new TH1D("hWMu_BGC_Mjj", "", 4, MjjEdges); // background MC ctrl region
TH1D* hWMu_DataC_Mjj = new TH1D("hWMu_DataC_Mjj", "", 4, MjjEdges); // Data ctrl region
// WTau histograms
TH1D* hWTau_MCC_Mjj = new TH1D("hWTau_MCC_Mjj", "", 4, MjjEdges); // W+jets MC tau ctrl region - for CJV ratio
TH1D* hWTau_BGC_Mjj = new TH1D("hWTau_BGC_Mjj", "", 4, MjjEdges); // background MC ctrl region
TH1D* hWTau_DataC_Mjj = new TH1D("hWTau_DataC_Mjj", "", 4, MjjEdges); // Data ctrl region // Mjj histograms
// MET histograms
// WMu histograms
TH1D* hWMu_MCC_MET = new TH1D("hWMu_MCC_MET", "", 4, METEdges); // W+jets MC mu ctrl region
TH1D* hWMu_BGC_MET = new TH1D("hWMu_BGC_MET", "", 4, METEdges); // background MC ctrl region
TH1D* hWMu_DataC_MET = new TH1D("hWMu_DataC_MET", "", 4, METEdges); // Data ctrl region
// WTau histograms
TH1D* hWTau_MCC_MET = new TH1D("hWTau_MCC_MET", "", 4, METEdges); // W+jets MC tau ctrl region - for CJV ratio
TH1D* hWTau_BGC_MET = new TH1D("hWTau_BGC_MET", "", 4, METEdges); // background MC ctrl region
TH1D* hWTau_DataC_MET = new TH1D("hWTau_DataC_MET", "", 4, METEdges); // Data ctrl region // MET histograms
// Central Jet Et histograms
// WMu histograms
TH1D* hWMu_MCC_CenJetEt = new TH1D("hWMu_MCC_CenJetEt", "", 4, CenJetEtEdges); // W+jets MC mu ctrl region
TH1D* hWMu_BGC_CenJetEt = new TH1D("hWMu_BGC_CenJetEt", "", 4, CenJetEtEdges); // background MC ctrl region
TH1D* hWMu_DataC_CenJetEt = new TH1D("hWMu_DataC_CenJetEt", "", 4, CenJetEtEdges); // Data ctrl region
// WTau histograms
TH1D* hWTau_MCC_CenJetEt = new TH1D("hWTau_MCC_CenJetEt", "", 4, CenJetEtEdges); // W+jets MC tau ctrl region - for CJV ratio
TH1D* hWTau_BGC_CenJetEt = new TH1D("hWTau_BGC_CenJetEt", "", 4, CenJetEtEdges); // background MC ctrl region
TH1D* hWTau_DataC_CenJetEt = new TH1D("hWTau_DataC_CenJetEt", "", 4, CenJetEtEdges); // Data ctrl region
//.........这里部分代码省略.........
开发者ID:chayanit,项目名称:InvisibleHiggs,代码行数:101,代码来源:wTauClosure.cpp
示例9: tnpScale_trigger
void tnpScale_trigger( bool printplot = false ) {
//----------------------------------------
// Files
//----------------------------------------
char* version = (char*) "V00-00-07";
TChain *chmc = new TChain("leptons");
TChain *chdata = new TChain("leptons");
//char* suffix = "";
char* suffix = "_2jets";
//chmc->Add(Form("smurf/%s/dymm_test%s.root" , version , suffix));
//chmc->Add(Form("smurf/%s/dymm_test%s_INCOMPLETE.root" , version , suffix));
//chmc->Add(Form("smurf/%s/dymm_testskim%s.root" , version , suffix));
//chmc->Add(Form("smurf/%s/dymm_test%s.root" , version , suffix));
// chdata->Add(Form("smurf/%s/data_DoubleElectron_May10%s.root" , version , suffix));
// chdata->Add(Form("smurf/%s/data_DoubleElectron_PRv4%s.root" , version , suffix));
// chdata->Add(Form("smurf/%s/data_DoubleElectron_PRv6%s.root" , version , suffix));
// chdata->Add(Form("smurf/%s/data_DoubleElectron_Aug05%s.root" , version , suffix));
// chdata->Add(Form("smurf/%s/data_DoubleElectron_B30%s.root" , version , suffix));
// chdata->Add(Form("smurf/%s/data_DoubleElectron_B34%s.root" , version , suffix));
chdata->Add(Form("smurf/%s/data_SingleMu_May10%s.root" , version , suffix));
chdata->Add(Form("smurf/%s/data_SingleMu_PRv4%s.root" , version , suffix));
chdata->Add(Form("smurf/%s/data_SingleMu_Aug05%s.root" , version , suffix));
chdata->Add(Form("smurf/%s/data_SingleMu_PRv6%s.root" , version , suffix));
chdata->Add(Form("smurf/%s/data_SingleMu_B30%s.root" , version , suffix));
chdata->Add(Form("smurf/%s/data_SingleMu_B34%s.root" , version , suffix));
//----------------------------------------
// bins
//----------------------------------------
//float ptbin[] = {10., 15., 20., 30., 40., 50., 7000.};
float ptbin[] = {30., 40., 10000.};
float etabin[] = {0, 0.8, 1.5, 2.1};
int nptbin=2;
int netabin=3;
TH2F *hdataid_deno = new TH2F("hdataid_deno", "hdataid_deno", nptbin, ptbin, netabin, etabin);
TH2F *hdataid_num = new TH2F("hdataid_num" , "hdataid_num" , nptbin, ptbin, netabin, etabin);
TH2F *hdataid_eff = new TH2F("hdataid_eff" , "hdataid_eff" , nptbin, ptbin, netabin, etabin);
hdataid_deno->Sumw2();
hdataid_num->Sumw2();
hdataid_eff->Sumw2();
//
// histogram
//
//deno
// TH2F *hmcid_deno = new TH2F("hmcid_deno", "hmcid_deno", nptbin, ptbin, netabin, etabin);
// TH2F *hmciso_deno = new TH2F("hmciso_deno", "hmciso_deno", nptbin, ptbin, netabin, etabin);
// TH2F *hdataid_deno = new TH2F("hdataid_deno", "hdataid_deno", nptbin, ptbin, netabin, etabin);
// TH2F *hdataiso_deno = new TH2F("hdataiso_deno", "hdataiso_deno", nptbin, ptbin, netabin, etabin);
// hmcid_deno->Sumw2();
// hmciso_deno->Sumw2();
// hdataid_deno->Sumw2();
// hdataiso_deno->Sumw2();
// //num
// TH2F *hmcid_num = new TH2F("hmcid_num", "hmcid_num", nptbin, ptbin, netabin, etabin);
// TH2F *hmciso_num = new TH2F("hmciso_num", "hmciso_num", nptbin, ptbin, netabin, etabin);
// TH2F *hdataid_num = new TH2F("hdataid_num", "hdataid_num", nptbin, ptbin, netabin, etabin);
// TH2F *hdataiso_num = new TH2F("hdataiso_num", "hdataiso_num", nptbin, ptbin, netabin, etabin);
// hmcid_num->Sumw2();
// hmciso_num->Sumw2();
// hdataid_num->Sumw2();
// hdataiso_num->Sumw2();
// // eff
// TH2F *hmcid = new TH2F("hmcid", "hmcid", nptbin, ptbin, netabin, etabin);
// TH2F *hmciso = new TH2F("hmciso", "hmciso", nptbin, ptbin, netabin, etabin);
// TH2F *hdataid = new TH2F("hdataid", "hdataid", nptbin, ptbin, netabin, etabin);
// TH2F *hdataiso = new TH2F("hdataiso", "hdataiso", nptbin, ptbin, netabin, etabin);
// hmcid->Sumw2();
// hmciso->Sumw2();
// hdataid->Sumw2();
// hdataiso->Sumw2();
// // SF
// TH2F *hsfid = new TH2F("hsfid", "hsfid", nptbin, ptbin, netabin, etabin);
// TH2F *hsfiso = new TH2F("hsfiso", "hsfiso", nptbin, ptbin, netabin, etabin);
// hsfid->Sumw2();
// hsfiso->Sumw2();
//---------------------------
// tag cuts
//---------------------------
TCut zmass("abs(tagAndProbeMass-91)<15");
TCut eltnp("(eventSelection&1)==1");
TCut mutnp("(eventSelection&2)==2");
TCut os("qProbe*qTag<0");
TCut tag_eta21("abs(tag->eta())<2.1");
TCut probe_eta21("abs(probe->eta())<2.1");
TCut tag_eta25("abs(tag->eta())<2.5");
//.........这里部分代码省略.........
开发者ID:hooberman,项目名称:UserCode,代码行数:101,代码来源:tnpScale_trigger.C
示例10: gammaJetHistProducer_jetEnergyScaledMinus2percent
void gammaJetHistProducer_jetEnergyScaledMinus2percent(sampleType collision = kPADATA, float photonPtThr=60, float photonPtThrUp=9999, float jetPtThr=30, int icent =1) {
TH1::SetDefaultSumw2();
TString stringSampleType = getSampleName(collision); "";
TDatime* date = new TDatime();
TString outName= Form("photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr%d_%d.root",stringSampleType.Data(),(int)photonPtThr, (int)photonPtThrUp, (int)jetPtThr, date->GetDate());
delete date;
int lowerCent(0), upperCent(0);
TCut centCut = "";
if ( (collision ==kHIDATA) || (collision==kHIMC) ) {
lowerCent = centBin1[icent-1];
upperCent = centBin1[icent]-1;
if ( icent > 9999) {
lowerCent = ((icent/100)%100)/2.5;
upperCent = (icent%100)/2.5 -1;
}
centCut = Form("cBin >= %d && cBin<= %d",lowerCent,upperCent);
}
else if ( (collision ==kPPDATA) || (collision==kPPMC) ){ // if it's pp
centCut = "(1==1)";
// icent = 7; // for pp, centrality is set as the smearing
}
else { // pPb
centCut = Form( "hf4Sum > %f && hf4Sum <= %f", (float)centBinPa[icent-1], (float)centBinPa[icent]);
}
cout <<" centrality : " << centCut.GetTitle() << endl;
///////// Photon cut //////////////////////////////////////////////////////////////////////////////
cout <<" photon pt >" << photonPtThr << " GeV" << endl;
TCut ptPhoCut = Form("photonEt>%.1f && photonEt<%.1f", (float)photonPtThr, (float)photonPtThrUp );
TCut caloIso;
if ( (collision==kPPMC) || (collision==kPPDATA) )
caloIso = "(ecalIso < 4.2 && hcalIso < 2.2 && trackIso < 2) && hovere<0.1";
else if ( (collision==kHIMC) || (collision==kHIDATA) )
caloIso = "(sumIso<1) && hovere<0.1";
else {
caloIso = "ecalIso < 4.2 && hcalIso < 2.2 && trackIso < 2 && hovere<0.1";
}
TCut sbIso = "(sumIso>10) && (sumIso<20) && hovere<0.1";
// if ( (collision==kPPMC) || (collision==kPPDATA) || (collision==kPAMC) || (collision==kPADATA) )
// sbIso = "ecalIso < 4.2 && hcalIso < 2.2 && trackIso > 2 && trackIso < 5 && hovere<0.1";
TCut basicPhoCut = centCut && ptPhoCut && caloIso ;
TCut sbPhoCut = centCut && ptPhoCut && sbIso ;
TCut evtSeltCut = basicPhoCut;
TCut sbSeltCut = sbPhoCut;
TCut phoCandCut = "sigmaIetaIeta<0.010";
TCut phoDecayCut = "(sigmaIetaIeta>0.011) && (sigmaIetaIeta<0.017)";
if ( ( collision == kHIMC ) || (collision == kPPMC) || (collision == kPAMC))
phoCandCut = phoCandCut && "genIso<5 && abs(genMomId)<=22";
TString fname = "";
if ( collision == kHIDATA) fname = fnameHIDATA_Minus2percentScaled;
else if ( collision == kPADATA) fname = fnamePADATA_Minus2percentScaled;
else if ( collision == kPPDATA) {
if ( icent == 7 ) fname = fnamePPDATA_Minus2percentScaled;
}
else fname = "";
multiTreeUtil* tgj = new multiTreeUtil();
multiTreeUtil* tgjMC = new multiTreeUtil();
if ( ( collision == kHIDATA) || ( collision==kPADATA) || ( collision == kPPDATA) ) {
tgj->addFile(fname, "tgj", evtSeltCut, 1);
}
else if ( collision == kPPMC ) {
tgj->addFile(fnamePPMC_AllQcdPho30to50, "tgj", evtSeltCut, wPPMC_AllQcdPho30to50 );
tgj->addFile(fnamePPMC_AllQcdPho50to80, "tgj", evtSeltCut, wPPMC_AllQcdPho50to80 );
tgj->addFile(fnamePPMC_AllQcdPho80to120, "tgj", evtSeltCut, wPPMC_AllQcdPho80to120 );
tgj->addFile(fnamePPMC_AllQcdPho120to9999, "tgj", evtSeltCut, wPPMC_AllQcdPho120to9999 );
}
else if ( collision == kPAMC ) {
tgj->addFile(fnamePAMC_AllQcdPho30to50, "tgj", evtSeltCut, wPAMC_AllQcdPho30to50 );
tgj->addFile(fnamePAMC_AllQcdPho50to80, "tgj", evtSeltCut, wPAMC_AllQcdPho50to80 );
tgj->addFile(fnamePAMC_AllQcdPho80to120, "tgj", evtSeltCut, wPAMC_AllQcdPho80to120 );
tgj->addFile(fnamePAMC_AllQcdPho120to9999, "tgj", evtSeltCut, wPAMC_AllQcdPho120to9999 );
}
else { // kHIMC
tgj->addFile(fnameHIMC_AllQcdPho30to50, "tgj", evtSeltCut, wHIMC_AllQcdPho30to50 );
tgj->addFile(fnameHIMC_AllQcdPho50to80, "tgj", evtSeltCut, wHIMC_AllQcdPho50to80 );
tgj->addFile(fnameHIMC_AllQcdPho80to9999, "tgj", evtSeltCut, wHIMC_AllQcdPho80to9999 );
}
tgj->AddFriend("yJet");
// get purity with the current jet cut !
float purity(0);
TString canvasName = Form("gifs/purity_%s_output_icent%d_photonPtThr%d-%d_jetPtThr%d", stringSampleType.Data(), (int)icent, (int)photonPtThr, (int)photonPtThrUp, (int)jetPtThr);
// if ( (collision==kPPDATA) && (photonPtThr < 50 ) ) {
// purity = 0.86 ;
// cout << " !!!!!!!" << endl << endl << " purity is set as 0.86 for this bin because we don't have pp MC low pt sample " << endl;
// cout << endl << endl << endl << " !!!!!!" << endl;
//.........这里部分代码省略.........
开发者ID:CmsHI,项目名称:gammaJetAnalysis,代码行数:101,代码来源:gammaJetHistProducer_jetEnergyScaledMinus2percent.C
示例11: drawSingleVariable
void drawSingleVariable(TH1D* theHist, int lowCent, int highCent, TString variable1, TCut addCut1, TString variable2, TCut addCut2, int normChoice,bool overDraw, TH1D* theMCSig) {
theHist->Reset();
if (addCut2 =="")
addCut2 = addCut1;
if (variable2 =="")
variable2 = variable1;
cout << "addCut2 = " << addCut2.GetTitle() << endl;
cout << "variable2 = "<< variable2 << endl;
TString fname1 = "rootFiles/barrelHiForestPhoton35_Skim2011-Dec04-withTracks.root";//barrelHiForestPhoton35_Skim2011-v2.root";
TFile *f1 =new TFile(fname1.Data());
TTree *photon1 = (TTree*)f1->Get("yongsunPhotonTree");
photon1->AddFriend("yEvt=yongsunHiEvt" ,fname1.Data());
photon1->AddFriend("yskim=yongsunSkimTree" ,fname1.Data());
photon1->AddFriend("yhlt=yongsunHltTree" ,fname1.Data());
TString fname2 = "rootFiles/barrelHiForestPhoton35_Skim2010.root";
TFile *f2 =new TFile(fname2.Data());
TTree *photon2 = (TTree*)f2->Get("yongsunPhotonTree");
// photon2->AddFriend("yEvt=yongsunHiEvt" ,fname2.Data());
photon2->AddFriend("yskim=yongsunSkimTree" ,fname2.Data());
photon2->AddFriend("yhlt=yongsunHltTree" ,fname2.Data());
TString fnameMC ;
TFile *fMC;
TTree *photonSig;
if ( theMCSig){
fnameMC = "rootFiles/barrelHiForestPhoton35_MCPhoton50_25k.root";
fMC =new TFile(fnameMC.Data());
photonSig = (TTree*)fMC->Get("yongsunPhotonTree");
photonSig->AddFriend("yEvt=yongsunHiEvt" ,fnameMC.Data());
cout << " MC is running " << endl;
}
// photonSig->AddFriend("yskim=yongsunSkimTree" ,fnameMC.Data());
// photonSig->AddFriend("yhlt=yongsunHltTree" ,fnameMC.Data());
//genMatchCut1
TCut collisionCut = "yskim.pcollisionEventSelection==1";
TCut runCut1 = ""; //"yhlt.Run>= 181985 && yhlt.Run <=182099";
TCut centCut1 = Form("(yEvt.hiBin >= %d) && (yEvt.hiBin<= %d)",lowCent,highCent);
TCut centCut2 = Form("(cBin >= %d) && (cBin <= %d)",lowCent,highCent);
TCut spikeCut1 = "abs(seedTime)<4 && swissCrx<0.90 && sigmaIetaIeta>0.002";
TCut spikeCut2 = "abs(seedTime)<4 && (1 - (eRight+eLeft+eTop+eBottom)/eMax)<0.90 && sigmaIetaIeta>0.002";
TCut spikeCutSig = "swissCrx<0.90 && sigmaIetaIeta>0.002";
TCut nonElectron = "!isEle";
TCut hltCut1 = "yhlt.HLT_HISinglePhoton30_v2==1"; // 181695 => H/E cut is removed from L1
TCut hltCut2 = "yhlt.HLT_HIPhoton30==1";
TCut basicCut1 = collisionCut && nonElectron && etaCut && spikeCut1 && centCut1 && runCut1 && hltCut1;
TCut basicCut2 = collisionCut && nonElectron && etaCut && spikeCut2 && centCut2; //&& hltCut2;
TCut basicCutSig = nonElectron && etaCut && spikeCutSig && centCut1;
TCut finalCut1 = basicCut1 && addCut1;
TCut finalCut2 = basicCut2 && addCut2;
TCut finalCutSig = basicCutSig && addCut1 && genMatchCut1;
TH1D* tempHist1 = (TH1D*)theHist->Clone("tempHist1");
TH1D* tempHist2 = (TH1D*)theHist->Clone("tempHist2");
TH1D* tempHistSig = (TH1D*)theHist->Clone("tempHistSig");
photon1->Draw(Form("%s>>%s",variable1.Data(),tempHist1->GetName()),finalCut1);
photon2->Draw(Form("%s>>%s",variable2.Data(),tempHist2->GetName()),finalCut2);
if ( theMCSig) {
photonSig->Draw(Form("%s>>%s",variable1.Data(),tempHistSig->GetName()), Form("(%s)*ncoll",finalCutSig.GetTitle()));
cout << " mc cut = " << finalCutSig.GetTitle() << endl;
}
tempHist1->Sumw2();
tempHist2->Sumw2();
if ( theMCSig)
tempHistSig->Sumw2();
handsomeTH1(tempHist1,2);
handsomeTH1(tempHist2,1);
tempHist2->SetMarkerStyle(24);
if ( normChoice == 0) {
scaleInt(tempHist1);
scaleInt(tempHist2);
}
if ( normChoice == 1) {
double nEvents1 = photon1->GetEntries("leading==1" && basicCut1 && "pt>40 && hadronicOverEm<0.2");
double nEvents2 = photon2->GetEntries("leading==1" && basicCut2 && "pt>40 && hadronicOverEm<0.2");
tempHist1->Scale(1./nEvents1);
tempHist2->Scale(1./nEvents2);
cout <<" this file is<<" << nEvents1/nEvents2 * 6.7 << "micro barn" << endl;
}
if ( normChoice == 2) {
double nLumi1 = 17.4 ; //microb^-1
double nLumi2 = 7.0 ;
tempHist1->Scale(1./nLumi1);
tempHist2->Scale(1./nLumi2);
}
//.........这里部分代码省略.........
开发者ID:CmsHI,项目名称:CVS_SavedFMa,代码行数:101,代码来源:basicSpectra.C
示例12: DrawPlots
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
void DrawPlots(){
bool DoProtonsMomenta = false;
bool DoProtonsTrackLength = false;
bool DoSRCEvents = false;
bool DoAngles = false;
bool DoHighMomentumTail = false;
bool DothetaPPFinalInitial = false;
bool DoDrawQ = true;
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
TPlots * tracks = new TPlots("Ana.root","TracksTree");
TPlots * events = new TPlots("Ana.root","EventsTree","events",false);
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
if (DoProtonsMomenta) {
TH1F * h = tracks -> H1("StartMomentum.P()","PdgCode==2212","",401,-1,1000
,"proton momentum","p [MeV/c]","",38,38);
analysis -> NormalizeHistogram(h);
tracks -> Line(251,0,251,h->GetMaximum(),2,4,2);
tracks -> Text(260,0.8*h->GetMaximum(),"Fermi momentum 251 MeV/c [e-scat.]");
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
if (DoProtonsTrackLength) {
tracks -> H2("StartMomentum.P()","TrackLength","PdgCode==2212","colz",401,1,1000,401,-1,1000
,"proton momentum","p [MeV/c]","track length [cm]");
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
if (DoSRCEvents){
// identify v (np) -> µ p p events, and ask reconstruct BNL measurement
// the angle between the two protons in the inital state vs. the recoil momentum
TCanvas * c = plot -> CreateCanvas("c" , "DivideSquare");
c -> cd(1);
TH1F * Prec = events -> H1("Prec.Mag()",SRCcut&& "Prec.Mag()>0","colz",50,0,1000,"","recoil momentum [GeV/c]","",38,38);
plot -> Line(pThresholdArgoNeuT,0,pThresholdArgoNeuT,Prec->GetMaximum(),2,2);
c -> cd(2);
events -> H1(plot->CosTheta("Pmiss","Prec"),SRCcut&& "Prec.Mag()>0","colz",50,-1.1,1.1,"","cos( #theta )","",38,38);
c -> cd(3);
events -> H2("Prec.Mag()",plot->CosTheta("Pmiss","Prec"),SRCcut&& "Prec.Mag()>0","colz"
,50,1,1000,50,-1.01,1.01,"","recoil momentum [MeV/c]","#theta (p(miss) , p(recoil))");
plot -> Line(pThresholdArgoNeuT,-1.01,pThresholdArgoNeuT,1.01,2,2);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
if (DoAngles){
// plot -> CreateCanvas("Theta_pn_i_Prec");
// events -> H2("Prec.Mag()",plot->CosTheta("Pmiss","Prec"),cutCC2p,"colz"
// ,50,0,1000,50,-1.05,1.05,"","recoil momentum [MeV/c]","cos( #theta_{np}^{i} )");
// plot -> CreateCanvas("Theta_pn_i_Theta_munu");
// events -> H2(plot->CosTheta("neutrino.Vect()","muon.Vect()"),plot->CosTheta("Pmiss","Prec"),cutCC2p&&"Prec.Mag()>1","colz"
// ,50,-1.01,1.01,50,-1.01,1.01,"","cos( #theta_{#nu#mu} )","cos( #theta_{np}^{i} )");
plot -> CreateCanvas("Theta_pp_f_Prec");
events -> H2("Prec.Mag()",plot->CosTheta("protons[0].Vect()","protons[1].Vect()"),cutCC2p,"colz"
,50,1,1000,50,-1.01,1.01,"","recoil momentum [MeV/c]","cos( #theta_{pp}^{f} )");
// plot -> CreateCanvas("Theta_pp_Theta_numu");
// events -> H2(plot->CosTheta("neutrino.Vect()","muon.Vect()"),plot->CosTheta("protons[0].Vect()","protons[1].Vect()"),cutCC2p,"colz"
// ,50,-1.01,1.01,50,-1.01,1.01,"","cos( #theta_{#nu#mu} )","cos( #theta_{pp}^{f} )");
// plot -> CreateCanvas("Theta_numu_Prec");
// events -> H2("Prec.Mag()",plot->CosTheta("neutrino.Vect()","muon.Vect()"),cutCC2p&&"Prec.Mag()>200","colz"
// ,50,1,1000,50,-1.01,1.01,"","recoil momentum [MeV/c]","cos( #theta_{#nu#mu} )");
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
if (DoHighMomentumTail){
plot -> CreateCanvas("DoHighMomentumTail");
float Max = 1300;
TH1F * Prec = events -> H1("Prec.Mag()",cutCC2p,"",75,0,Max,"","recoil momentum [MeV/c]","",38,38);
events -> H1("Prec.Mag()",cutCC2p&&"Prec.Mag()>270","same",75,0,Max,"","recoil momentum [MeV/c]","",48,48,3001);
float Tail = Prec -> Integral(Prec->GetXaxis()->FindBin(270),Prec->GetXaxis()->FindBin(Max));
float TailErr = sqrt(Tail);
float Tot = Prec -> Integral(Prec->GetXaxis()->FindBin(0),Prec->GetXaxis()->FindBin(Max));
float TotErr = sqrt(Tot);
float fTail = Tail / Tot;
float fTailErr = fTail * ( 1./Tail + 1./Tot );
SHOW(Tail);
SHOW(Tot);
SHOW(fTail);
SHOW(fTailErr);
TString TailPercentage = plot->PercentStr(fTail);
TString TailPercenErr = plot->PercentStr(fTailErr);
plot -> Text(300,Prec->GetMaximum(),Form("high momentum tail (>270 MeV/c) %.2f(%.0f)%%",100*fTail,100*100*fTailErr));
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
if (DothetaPPFinalInitial){
plot -> CreateCanvas("Theta_numu_Prec");
// TString var = plot->CosTheta("Pmiss","Prec") , XTitle = "cos( #theta_{pn}^{i} )";
TString var = plot->CosTheta("protons[0].Vect()","protons[1].Vect()") , XTitle = "cos( #theta_{pp}^{f} )";
const int N = 5;
TH1F * h[N];
TString Labels[N];
float PmissMin[N] = {0 , 100 , 200 , 400 , 600 } , PmissMax[N] = {100 , 200 , 400 , 600 , 1000 } ;
for (int i = 0; i < N ; i++) {
TCut cut = cutCC2p && Form("%f > Prec.Mag() && Prec.Mag() > %f",PmissMax[i],PmissMin[i]) ;
Labels[i] = Form("%.0f > p(rec) > %.0f MeV/c",PmissMax[i],PmissMin[i]);
//.........这里部分代码省略.........
开发者ID:erezcoh4,项目名称:LarLite,代码行数:101,代码来源:DrawPlots.C
示例13: fit_combine
void fit_combine(TChain *tc, std::string Var, const double * VarBins_array , const int nVarBins , TCut Gcut, double *mean, double *meanErr, double *sigma, double *sigmaErr ){
std::string jetTitle=tc->GetTitle();
cout<<"tc title = "<<tc->GetTitle()<<" ,Var = "<<Var<<" ,nVarBins = "<<nVarBins<<", Gcut = "<<Gcut<<endl;
Can_Temp[counter] = new TCanvas(Form("Can_Temp_%i",counter));
if(nVarBins<=9){Can_Temp[counter]->Divide(3,3);}
else {Can_Temp[counter]->Divide(3,4);}
TH1D *h_Ratio[nVarBins];
TF1 *f_Ratio[nVarBins];
double nRatiobins= 100;
double minRatio=0;
double maxRatio=3;
for(int ibin =0; ibin<nVarBins; ibin++)
{
Can_Temp[counter]->cd(ibin+1);
double VarMin = VarBins_array[ibin];
double VarMax = VarBins_array[ibin+1];
h_Ratio[ibin] = new TH1D( Form("h_Ratio[%d]",ibin),Form("%s_%s_%i_%i",jetTitle.c_str(),Var.c_str(),(int)VarMin,(int)VarMax) ,nRatiobins,minRatio,maxRatio); // h_Ration_%d ??
h_Ratio[ibin]->Sumw2();
TCut Varcut = Form("%s>%f && %s<%f", Var.c_str(), VarMin, Var.c_str(), VarMax);
TCut allcut = Gcut && Varcut;
cout<<"Varcut = "<<Varcut<<" ,allcut = "<<allcut<<endl;
tc->Draw( Form("jtpt/refpt>>h_Ratio[%d]",ibin ) , allcut*"weight" );
h_Ratio[ibin]->GetXaxis()->SetTitle(Form("%s, jtpt/refpt",Gcut.GetTitle()));
f_Ratio[ibin] = new TF1(Form("f_Ratio_%d",ibin), "gaus",0.5,1.5 );
f_Ratio[ibin]->SetParameter(0,h_Ratio[ibin]->GetEntries()); // get number for normalization
if(ibin==0){
f_Ratio[ibin]->SetParameter(1,h_Ratio[ibin]->GetMean()) ; // for mean
f_Ratio[ibin]->SetParameter(2,h_Ratio[ibin]->GetStdDev()) ; // for sigma
}
if(ibin>=1){
f_Ratio[ibin]->SetParameter(1,mean[ibin-1]) ; // for mean
f_Ratio[ibin]->SetParameter(2,sigma[ibin-1]) ; // for sigma
}
h_Ratio[ibin]->Fit(Form("f_Ratio_%d",ibin),"MR");
h_Ratio[ibin]->Fit(Form("f_Ratio_%d",ibin),"MRL");
h_Ratio[ibin]->Fit(Form("f_Ratio_%d",ibin),"MR");
h_Ratio[ibin]->Fit(Form("f_Ratio_%d",ibin),"MR");
mean[ibin] = f_Ratio[ibin]->GetParameter(1);
meanErr[ibin] = f_Ratio[ibin]->GetParError(1);
sigma[ibin] = f_Ratio[ibin]->GetParameter(2);
sigmaErr[ibin] = f_Ratio[ibin]->GetParError(2);
} // end for(int ibin =0; ibin<nVarBins; ibin++)
Can_Temp[counter]->SaveAs(Form("./fitPlots/fit_%s_%s_%s.pdf",Var.c_str(),jetTitle.c_str(),Gcut.GetTitle() ));
counter++;
}
开发者ID:Jelov,项目名称:JetEnergy_SR,代码行数:61,代码来源:jetE_SR_eta_bck.C
-
六六分期app的软件客服如何联系?不知道吗?加qq群【895510560】即可!标题:六六分期
阅读:18209|2023-10-27
-
今天小编告诉大家如何处理win10系统火狐flash插件总是崩溃的问题,可能很多用户都不知
阅读:9656|2022-11-06
-
今天小编告诉大家如何对win10系统删除桌面回收站图标进行设置,可能很多用户都不知道
阅读:8168|2022-11-06
-
今天小编告诉大家如何对win10系统电脑设置节能降温的设置方法,想必大家都遇到过需要
阅读:8543|2022-11-06
-
我们在使用xp系统的过程中,经常需要对xp系统无线网络安装向导设置进行设置,可能很多
阅读:8449|2022-11-06
-
今天小编告诉大家如何处理win7系统玩cf老是与主机连接不稳定的问题,可能很多用户都不
阅读:9374|2022-11-06
-
电脑对日常生活的重要性小编就不多说了,可是一旦碰到win7系统设置cf烟雾头的问题,很
阅读:8418|2022-11-06
-
我们在日常使用电脑的时候,有的小伙伴们可能在打开应用的时候会遇见提示应用程序无法
阅读:7855|2022-11-06
-
今天小编告诉大家如何对win7系统打开vcf文件进行设置,可能很多用户都不知道怎么对win
阅读:8403|2022-11-06
-
今天小编告诉大家如何对win10系统s4开启USB调试模式进行设置,可能很多用户都不知道怎
阅读:7391|2022-11-06
|
请发表评论