コード例 #1
0
int main(){

  std::vector<Double_t> radii;
  radii.push_back(2.0); // 1.
  radii.push_back(3.0); // 3.5
  radii.push_back(6.0);
  radii.push_back(9.0);
  radii.push_back(17.0);
  radii.push_back(20.0);
  radii.push_back(25.5);
  radii.push_back(28.0); //Added!!!
  radii.push_back(30.0);
  radii.push_back(34.0);
  radii.push_back(36.5); //Added!!!
  radii.push_back(38.0);
  radii.push_back(46.0);
  radii.push_back(54.5); // 54.0
  radii.push_back(57.0);
  radii.push_back(61.5); // 61.0
  radii.push_back(65.0);

  std::vector<GeoCut> geoCuts;
  geoCuts.push_back(GeoCut(-26., 26., 1., 20.));
  geoCuts.push_back(GeoCut(-66., 66., 20., 65.));

  Double_t boxSize = 30.;
  MatPlot myPlot("XY", -boxSize, boxSize, -boxSize, boxSize, 0.2, 0.05);
  myPlot.SetEffRadii(&radii);
  myPlot.SetGeoCuts(&geoCuts);

  //
  myPlot.SetMCScaleFact(-1.);
  myPlot.SetSimScaleFact(-1.);
  myPlot.SetDataScaleFact(1.);

  TChain *convmc = new TChain("ntupleR2S");
  convmc->Add("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04.root");
  convmc->Add("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04_v2.root");
  niR2SforMatPlot convMC(convmc);
  //  niR2SforMatPlot convMC("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04.root");
  myPlot.FillMC(&convMC); // All events

  TChain *convsim = new TChain("ntupleS2R");
  convsim->Add("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04.root");
  convsim->Add("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04_v2.root");
  niS2RforMatPlot convSim(convsim);
  //  niS2RforMatPlot convSim("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04.root");
  //  myPlot.responseTrain(&convSim, &convMC, 5000000, 20000000); //Remaining events
  myPlot.FillSim(&convSim); // All events

  niR2SforMatPlot convData("../7TeV/ntuple_nuclint_CMSSW358p3_goodcoll7TeV_2010-06-04.root");
  convData.SetCenterCoord(-0.1475, -0.3782, -0.4847);
  myPlot.FillData(&convData);
  //  myPlot.doUnfold();

  myPlot.test();
  myPlot.PlotAll();

}
コード例 #2
0
int main(){

  Double_t pi = 3.141592653589793;

  std::vector<GeoCut> geoCuts;

  Double_t thetaMax = 2.*atan(exp(1.));
  Double_t thetaMin = 2.*atan(exp(-1.));
			    
  std::cout << " thetaMin " << thetaMin << " thetaMax " << thetaMax << std::endl;

  // eta = -log(tan(theta/2.)) ==> theta= 2.*tan(exp(-eta))
  geoCuts.push_back(GeoCut(thetaMin, thetaMax, 2., 13.));

  Double_t binW = (thetaMax-thetaMin)/40.;

  std::cout << " thetaMin " << thetaMin << " thetaMax " << thetaMax << " binW " << binW << std::endl;

  MatPlot myPlot("Theta", thetaMin, thetaMax, binW, binW, -1.);
  myPlot.SetGeoCuts(&geoCuts);
  myPlot.SetUIndex(5, 5);
  myPlot.SetVIndex(0, 4);

  //
  myPlot.SetMCScaleFact(-1.);
  myPlot.SetSimScaleFact(-1.);
  myPlot.SetDataScaleFact(1.);

  //MC Reco
  //
#include "src/files_conv_minbias_reco.cxx"
  convR2SforMatPlot convMC(mc);
  myPlot.FillMC(&convMC);

  //MC Sim
  //
#include "src/files_conv_minbias_sim.cxx"
  convS2RforMatPlot convSim(sim);
  myPlot.FillSim(&convSim, 1, 10000000);

  //Data
  //
#include "src/files_conv_run2012ABCD.cxx"
  convR2SforMatPlot convData(data);
  //  convData.SetCenterCoord(-0.1475, -0.3782, -0.4847);
  //
  // run2012D
  // https://twiki.cern.ch/twiki/bin/viewauth/CMS/TkAlignmentPixelPosition 
  convData.SetCenterCoord(-0.10822, -0.376969, -0.410475);
  myPlot.FillData(&convData);

  myPlot.test();
  myPlot.PlotAll();


 
}
コード例 #3
0
int main(){

  std::vector<Double_t> radii;
  radii.push_back(1.0);
  radii.push_back(6.0);
  radii.push_back(9.0);
  radii.push_back(17.0);
  radii.push_back(20.0);
  radii.push_back(25.5);
  radii.push_back(30.0);
  radii.push_back(34.0);
  radii.push_back(38.0);
  radii.push_back(46.0);
  radii.push_back(54.0);
  radii.push_back(57.0);
  radii.push_back(61.0);
  radii.push_back(65.0);

  std::vector<GeoCut> geoCuts;
  geoCuts.push_back(GeoCut(-33., -29., 1., 30.));

  Double_t boxSize = 30.;
  MatPlot myPlot("XY", -boxSize, boxSize, -boxSize, boxSize, 0.2, 0.05);
  myPlot.SetEffRadii(&radii);
  myPlot.SetGeoCuts(&geoCuts);

  /*
  // Normalization factors 
  Float_t nDataEv = 10809460;
  Float_t nSimEv = 6106513;
  // Float_t nSimEv = 6106513*5./11.;
  Float_t scaleFact = nDataEv/nSimEv;
  myPlot.SetMCScaleFact(scaleFact);
  myPlot.SetSimScaleFact(scaleFact);
  myPlot.SetDataScaleFact(1.);
  */

  myPlot.SetMCScaleFact(-1.);
  myPlot.SetSimScaleFact(-1.);
  myPlot.SetDataScaleFact(1.);

  niR2SforMatPlot convMC("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04.root");
  myPlot.FillMC(&convMC); // All events

  niS2RforMatPlot convSim("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04.root");
  //  myPlot.responseTrain(&convSim, &convMC, 5000000, 20000000); //Remaining events
  myPlot.FillSim(&convSim); // All events

  niR2SforMatPlot convData("../7TeV/ntuple_nuclint_CMSSW358p3_goodcoll7TeV_2010-06-04.root");
  convData.SetCenterCoord(-0.1475, -0.3782, -0.4847);
  myPlot.FillData(&convData);
  //  myPlot.doUnfold();

  myPlot.test();
  myPlot.PlotAll();

}
コード例 #4
0
int main(){

  Double_t pi = 3.141592653589793;

  std::vector<GeoCut> geoCuts;
  geoCuts.push_back(GeoCut(13., 29., 26., 50.));

  Double_t binW = 10.*pi/180.;

  MatPlot myPlot("Phi", -pi, pi, binW, binW, -1.);
  myPlot.SetGeoCuts(&geoCuts);
  myPlot.SetUIndex(6, 3); //phi, Z
  myPlot.SetVIndex(0, 4); //--, R

  //
  myPlot.SetMCScaleFact(-1.);
  myPlot.SetSimScaleFact(-1.);
  myPlot.SetDataScaleFact(1.);

  //MC Reco
  //
#include "src/files_conv_minbias_reco.cxx"
  convR2SforMatPlot convMC(mc);
  myPlot.FillMC(&convMC);

  //MC Sim
  //
#include "src/files_conv_minbias_sim.cxx"
  convS2RforMatPlot convSim(sim);
  myPlot.FillSim(&convSim, 1, 10000000);

  //Data
  //
#include "src/files_conv_run2012ABCD.cxx"
  convR2SforMatPlot convData(data);
  //  convData.SetCenterCoord(-0.1475, -0.3782, -0.4847);
  //
  // run2012D
  // https://twiki.cern.ch/twiki/bin/viewauth/CMS/TkAlignmentPixelPosition 
  convData.SetCenterCoord(-0.10822, -0.376969, -0.410475);
  myPlot.FillData(&convData);

  myPlot.test();
  myPlot.PlotAll();


 
}
コード例 #5
0
int main(){

  std::vector<GeoCut> geoCuts;
  geoCuts.push_back(GeoCut(-24., 24., 1., 20.));
  geoCuts.push_back(GeoCut(-66., 66., 20., 65.));
  geoCuts.push_back(GeoCut(-105., 105., 54., 120.));

  Double_t boxSize = 120.;
  //MatPlot myPlot("XY", -boxSize, boxSize, -boxSize, boxSize, 1., 0.1);
  //binsize, binsizesim, binsizeeff
  MatPlot myPlot("XY", -boxSize, boxSize, -boxSize, boxSize, 0.1, 0.1, -1.); // era 2 
  myPlot.SetGeoCuts(&geoCuts);
  myPlot.SetUIndex(1, 3); //X for plot, zeta for cut
  myPlot.SetVIndex(2, 4); //Y for plot, radius for cut

  //
  myPlot.SetMCScaleFact(-1.);
  myPlot.SetSimScaleFact(-1.);
  myPlot.SetDataScaleFact(1.);

  //MC Reco
  //
#include "src/files_ni_dummy_reco.cxx"
  niR2SforMatPlot niMC(mc);
  myPlot.FillMC(&niMC);

  //MC Sim
  //
#include "src/files_ni_dummy_sim.cxx"
  niS2RforMatPlot niSim(sim);
  myPlot.FillSim(&niSim, 1, 2000000);

  //Data
  //
#include "src/files_ni_run2012D.cxx"
  niR2SforMatPlot niData(data);
  //  convData.SetCenterCoord(-0.1475, -0.3782, -0.4847);
  //
  // run2012D
  // https://twiki.cern.ch/twiki/bin/viewauth/CMS/TkAlignmentPixelPosition 
  niData.SetCenterCoord(-0.10822, -0.376969, -0.410475);
  myPlot.FillData(&niData);

  myPlot.test();
  myPlot.PlotAll();

}
コード例 #6
0
int main(){

  Double_t rMax = 65.;
  std::vector<GeoCut> geoCuts;
  geoCuts.push_back(GeoCut(-26., 26., 2., 20.));
  geoCuts.push_back(GeoCut(-66., 66., 20., rMax));

  MatPlot myPlot("R", 1., rMax, 0.5, 0.5, -1.);
  myPlot.SetGeoCuts(&geoCuts);
  myPlot.SetUIndex(4, 3); //Radius for plot, z for cut
  myPlot.SetVIndex(0, 4); //Plot is 1d, radius for cut

  //
  myPlot.SetMCScaleFact(-1.);
  myPlot.SetSimScaleFact(-1.);
  myPlot.SetDataScaleFact(1.);

  //MC Reco
  //
#include "src/files_conv_minbias_reco.cxx"
  convR2SforMatPlot convMC(mc);
  myPlot.FillMC(&convMC);

  //MC Sim
  //
#include "src/files_conv_minbias_sim.cxx"
  convS2RforMatPlot convSim(sim);
  myPlot.FillSim(&convSim, 1, 10000000);

  //Data
  //
#include "src/files_conv_run2012ABCD.cxx"
  convR2SforMatPlot convData(data);
  //  convData.SetCenterCoord(-0.1475, -0.3782, -0.4847);
  //
  // run2012D
  // https://twiki.cern.ch/twiki/bin/viewauth/CMS/TkAlignmentPixelPosition 
  convData.SetCenterCoord(-0.10822, -0.376969, -0.410475);
  myPlot.FillData(&convData);

  myPlot.test();
  myPlot.PlotAll();


 
}
コード例 #7
0
int main(){

  std::vector<GeoCut> geoCuts;
  geoCuts.push_back(GeoCut(-26., 26., 1., 20.));
  geoCuts.push_back(GeoCut(-66., 66., 20., 54.));
  geoCuts.push_back(GeoCut(-105., 105., 54., 120.));

  Double_t boxSize = 120.;
  //MatPlot myPlot("XY", -boxSize, boxSize, -boxSize, boxSize, 1., 0.1);
  //binsize, binsizesim, binsizeeff
  MatPlot myPlot("XY", -boxSize, boxSize, -boxSize, boxSize, 0.5, 0.2, -1.); // era 2 
  myPlot.SetGeoCuts(&geoCuts);

  //
  myPlot.SetMCScaleFact(-1.);
  myPlot.SetSimScaleFact(-1.);
  myPlot.SetDataScaleFact(1.);

  //MC Reco
  //
#include "src/files_conv_minbias_reco.cxx"
  convR2SforMatPlot convMC(mc);
  myPlot.FillMC(&convMC);

  //MC Sim
  //
#include "src/files_conv_minbias_sim.cxx"
  convS2RforMatPlot convSim(sim);
  myPlot.FillSim(&convSim, 1, 10000000);

  //Data
  //
#include "src/files_conv_run2012D.cxx"
  convR2SforMatPlot convData(data);
  //  convData.SetCenterCoord(-0.1475, -0.3782, -0.4847);
  //
  // run2012D
  // https://twiki.cern.ch/twiki/bin/viewauth/CMS/TkAlignmentPixelPosition 
  convData.SetCenterCoord(-0.10822, -0.376969, -0.410475);
  myPlot.FillData(&convData);

  myPlot.test();
  myPlot.PlotAll();

}
コード例 #8
0
int main(){

  std::vector<Double_t> radii;
  radii.push_back(2.0); // 1.
  radii.push_back(3.0); // 3.5
  radii.push_back(6.0);
  radii.push_back(9.0);
  radii.push_back(17.0);
  radii.push_back(22.0); // 20.0
  radii.push_back(25.5);
  radii.push_back(30.0);
  radii.push_back(34.0);
  radii.push_back(38.0);
  radii.push_back(45.5); // 46.0
  radii.push_back(54.5); // 54.0
  radii.push_back(57.0);
  radii.push_back(61.5); // 61.0
  radii.push_back(65.0);

  Double_t boxSize = 150.;
  std::vector<GeoCut> geoCuts;
  //Endcap
  geoCuts.push_back(GeoCut(-10., boxSize, 1., 60.));

  //No End Cap
  //  geoCuts.push_back(GeoCut(-32.5, 32.5, 1., 17.5));
  //  geoCuts.push_back(GeoCut(-boxSize, boxSize, 17., 54.));

  MatPlot myPlot("RZ", -10., boxSize, 0., 60., .5, 0.05);

  myPlot.SetEffRadii(&radii);
  myPlot.SetGeoCuts(&geoCuts);
  // vAr[0]=1.;
  // vAr[1]=X;
  // vAr[2]=Y;
  // vAr[3]=Z;
  // vAr[4]=sqrt(X*X+Y*Y);
  myPlot.SetUIndex(3);
  myPlot.SetVIndex(4);

  //
  myPlot.SetMCScaleFact(-1.);
  myPlot.SetSimScaleFact(-1.);
  myPlot.SetDataScaleFact(1.);

  //MC Reco
  //
  //#include "files_conv_20100619.cxx"
#include "files_conv_mcreco_20100713.cxx"
  convR2SforMatPlot convMC(convmc);
  myPlot.FillMC(&convMC); // All events

  //MC Sim
  //
  //#include "files_conv_20100619.cxx"
#include "files_conv_mcsim_20100713.cxx"
  convS2RforMatPlot convSim(convsim);
  myPlot.FillSim(&convSim); // All events

  //Data
  //
  //#include "files_conv_20100619.cxx"
#include "files_conv_data_20100713.cxx"
  convData.SetCenterCoord(-0.1475, -0.3782, -0.4847);
  myPlot.FillData(&convData);

  myPlot.test();
  myPlot.PlotAll();

}
コード例 #9
0
ファイル: plotRZ_NI.C プロジェクト: GiacomoSguazzoni/usercode
int main(){

  std::vector<Double_t> radii;
  radii.push_back(2.0); // 1.
  radii.push_back(3.0); // 3.5
  radii.push_back(6.0);
  radii.push_back(9.0);
  radii.push_back(17.0);
  radii.push_back(20.0);
  radii.push_back(25.5);
  radii.push_back(28.0); //Added!!!
  radii.push_back(30.0);
  radii.push_back(34.0);
  radii.push_back(36.5); //Added!!!
  radii.push_back(38.0);
  radii.push_back(46.0);
  radii.push_back(54.5); // 54.0
  radii.push_back(57.0);
  radii.push_back(61.5); // 61.0
  radii.push_back(65.0);

  Double_t boxSize = 55.;
  std::vector<GeoCut> geoCuts;
  //Endcap
  geoCuts.push_back(GeoCut(-boxSize, boxSize, 1., 54.));

  //No End Cap
  //  geoCuts.push_back(GeoCut(-32.5, 32.5, 1., 17.5));
  //  geoCuts.push_back(GeoCut(-boxSize, boxSize, 17., 54.));

  MatPlot myPlot("RZ", -boxSize, boxSize, 0., 54., .2, 0.05);
  myPlot.SetEffRadii(&radii);
  myPlot.SetGeoCuts(&geoCuts);
  // vAr[0]=1.;
  // vAr[1]=X;
  // vAr[2]=Y;
  // vAr[3]=Z;
  // vAr[4]=sqrt(X*X+Y*Y);
  myPlot.SetUIndex(3);
  myPlot.SetVIndex(4);

  //
  myPlot.SetMCScaleFact(-1.);
  myPlot.SetSimScaleFact(-1.);
  myPlot.SetDataScaleFact(1.);

  TChain *nimc = new TChain("ntupleR2S");
  nimc->Add("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04.root");
  nimc->Add("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04_v2.root");
  niR2SforMatPlot niMC(nimc);
  myPlot.FillMC(&niMC); // All events

  TChain *nisim = new TChain("ntupleS2R");
  nisim->Add("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04.root");
  nisim->Add("../7TeV/ntuple_nuclint_CMSSW358p3_minbias7TeV_2010-06-04_v2.root");
  niS2RforMatPlot niSim(nisim);
  myPlot.FillSim(&niSim); // All events

  niR2SforMatPlot niData("../7TeV/ntuple_nuclint_CMSSW358p3_goodcoll7TeV_2010-06-04.root");
  niData.SetCenterCoord(-0.1475, -0.3782, -0.4847);
  myPlot.FillData(&niData);

  myPlot.test();
  myPlot.PlotAll();

}
コード例 #10
0
ファイル: stackJetVariables.C プロジェクト: juwugit/XtoZh
void stackJetVariables() {

    cout<<"scale1:"<<scale1<<endl;
    cout<<"scale2:"<<scale2<<endl;
    cout<<"scale3:"<<scale3<<endl;


    TFile *f1e = TFile::Open("rootfile/delpanj_v2_DYJetsToLL_PtZ-70To100_ee.root");
    TFile *f2e = TFile::Open("rootfile/delpanj_v2_DYJetsToLL_PtZ-100_ee.root");
    TFile *f3e = TFile::Open("rootfile/delpanj_v2_TTTo2L2Nu2B_ee.root");
    TFile *f1m = TFile::Open("rootfile/delpanj_v2_DYJetsToLL_PtZ-70To100_mm.root");
    TFile *f2m = TFile::Open("rootfile/delpanj_v2_DYJetsToLL_PtZ-100_mm.root");
    TFile *f3m = TFile::Open("rootfile/delpanj_v2_TTTo2L2Nu2B_mm.root");
    TFile *f4 = TFile::Open("rootfile/delpanj_v2_data_DoubleEl_A.root");
    TFile *f5 = TFile::Open("rootfile/delpanj_v2_data_DoubleMu_A.root");




    gStyle->SetOptStat(0);
    gStyle->SetPadGridY(kTRUE);
    gStyle->SetPadGridX(kTRUE);



    TCanvas* c1 = new TCanvas("c1", "", 0, 0, 1500, 750);

    c1->Divide(2,2,0,0);

    //-------------------------------------------//

    c1->cd(1);
    myPlot( ((TH1D*)(f1e->Get("h_HPt"))),
            ((TH1D*)(f2e->Get("h_HPt"))),
            ((TH1D*)(f3e->Get("h_HPt"))),
            ((TH1D*)(f4->Get("h_HPt"))),
            0,400);

    gPad->SetRightMargin(0.02);

    //-------------------------------------------//

    c1->cd(2);
    myPlot( ((TH1D*)(f1m->Get("h_HPt"))),
            ((TH1D*)(f2m->Get("h_HPt"))),
            ((TH1D*)(f3m->Get("h_HPt"))),
            ((TH1D*)(f5->Get("h_HPt"))),
            0,400);

    gPad->SetRightMargin(0.02);
    gPad->SetLeftMargin(0.07);


    //-------------------------------------------//

    c1->cd(3);
    myRatio( ((TH1D*)(f1e->Get("h_HPt"))),
             ((TH1D*)(f2e->Get("h_HPt"))),
             ((TH1D*)(f3e->Get("h_HPt"))),
             ((TH1D*)(f4->Get("h_HPt"))),
             0,400);


    gPad->SetTickx();
    gPad->SetRightMargin(0.02);



    //-------------------------------------------//

    c1->cd(4);
    myRatio( ((TH1D*)(f1m->Get("h_HPt"))),
             ((TH1D*)(f2m->Get("h_HPt"))),
             ((TH1D*)(f3m->Get("h_HPt"))),
             ((TH1D*)(f5->Get("h_HPt"))),
             0,400);

    gPad->SetTickx();
    gPad->SetRightMargin(0.02);
    gPad->SetLeftMargin(0.07);


    // c1->Print("mLL.gif");
    gSystem->ProcessEvents();
    TImage *img1 = TImage::Create();
    img1->FromPad(c1);
    img1->WriteImage("h_HPt.png");
    delete c1;
    delete img1;


    //-------------------------------------------//



    cout<<"----------------------Tau21-----------------------------"<<endl;



    TCanvas* c2 = new TCanvas("c2", "", 0, 0, 1500, 750);

    c2->Divide(2,2,0,0);



    c2->cd(1);
    myPlot( ((TH1D*)(f1e->Get("h_PrunedjetM"))),
            ((TH1D*)(f2e->Get("h_PrunedjetM"))),
            ((TH1D*)(f3e->Get("h_PrunedjetM"))),
            ((TH1D*)(f4->Get("h_PrunedjetM"))),
            0,150);

    gPad->SetRightMargin(0.02);


    //-------------------------------------------//

    c2->cd(2);
    myPlot( ((TH1D*)(f1m->Get("h_PrunedjetM"))),
            ((TH1D*)(f2m->Get("h_PrunedjetM"))),
            ((TH1D*)(f3m->Get("h_PrunedjetM"))),
            ((TH1D*)(f5->Get("h_PrunedjetM"))),
            0,150);

    gPad->SetRightMargin(0.02);
    gPad->SetLeftMargin(0.07);

    //-------------------------------------------//

    c2->cd(3);
    myRatio( ((TH1D*)(f1e->Get("h_PrunedjetM"))),
             ((TH1D*)(f2e->Get("h_PrunedjetM"))),
             ((TH1D*)(f3e->Get("h_PrunedjetM"))),
             ((TH1D*)(f4->Get("h_PrunedjetM"))),
             0,150);


    gPad->SetTickx();
    gPad->SetRightMargin(0.02);

    //--------------------------------------------//

    c2->cd(4);
    myRatio( ((TH1D*)(f1m->Get("h_PrunedjetM"))),
             ((TH1D*)(f2m->Get("h_PrunedjetM"))),
             ((TH1D*)(f3m->Get("h_PrunedjetM"))),
             ((TH1D*)(f5->Get("h_PrunedjetM"))),
             0,150);

    gPad->SetTickx();
    gPad->SetRightMargin(0.02);
    gPad->SetLeftMargin(0.07);



    //c1->Print("CA8jetTau21.gif");
    gSystem->ProcessEvents();
    TImage *img2 = TImage::Create();
    img2->FromPad(c2);
    img2->WriteImage("h_PrunedjetM.png");
    delete c2;
    delete img2;


}
コード例 #11
0
ファイル: dataMCplots.C プロジェクト: wvieri/new_git
void dataMCplots(std::string outputFolder, std::string pdfName){

  std::vector<string> infiles;
 
  TSystemDirectory *base = new TSystemDirectory("root","root");
  base->SetDirectory(outputFolder.data());
  TList *listOfFiles = base->GetListOfFiles();
  TIter fileIt(listOfFiles);
  TFile *fileH = new TFile();
  Long64_t nfiles = 0;

  while( (fileH = (TFile*)fileIt()) ){
    
    std::string fileN = fileH->GetName();
    std::string baseString = "root";
    if( fileN.find(baseString) == std::string::npos ) continue;
    infiles.push_back(Form("%s/%s",outputFolder.data(),fileN.data()));
    nfiles++;
    
  }

  TFile *f_DY100 = NULL;
  TFile *f_DY200 = NULL;
  TFile *f_DY400 = NULL;
  TFile *f_DY600 = NULL;
  TFile *f_TTbar = NULL;
  TFile *f_WW    = NULL;
  TFile *f_WZ    = NULL;
  TFile *f_ZZ    = NULL;
  TFile *f_data0 = NULL;
  TFile *f_data1 = NULL;

  Double_t xSecDY100 = 147.4;
  Double_t xSecDY200 = 40.99;
  Double_t xSecDY400 = 5.678;
  Double_t xSecDY600 = 2.198;
  Double_t xSecTTbar = 831.76;
  Double_t xSecWW    = 118.7;
  Double_t xSecWZ    = 47.13;
  Double_t xSecZZ    = 16.523;

//  xSecDY100 = xSecDY100 * 1.23;
//  xSecDY200 = xSecDY200 * 1.23;
//  xSecDY400 = xSecDY400 * 1.23;
//  xSecDY600 = xSecDY600 * 1.23;

  xSecDY100 = xSecDY100 * 1.588;
  xSecDY200 = xSecDY200 * 1.438;
  xSecDY400 = xSecDY400 * 1.494;
  xSecDY600 = xSecDY600 * 1.139;

  Double_t scaleDY100 = 0;
  Double_t scaleDY200 = 0;
  Double_t scaleDY400 = 0;
  Double_t scaleDY600 = 0;
  Double_t scaleTTbar = 0;
  Double_t scaleWW    = 0;
  Double_t scaleWZ    = 0;
  Double_t scaleZZ    = 0;

  Double_t dummy = -1;

  for(unsigned int i = 0; i < infiles.size(); i++){

    cout << "Input file: " << infiles[i] << endl;

    if( infiles[i].find("HT-100") != std::string::npos )    
      f_DY100 = getFile(infiles[i].data(), xSecDY100, &scaleDY100);

    if( infiles[i].find("HT-200") != std::string::npos )
      f_DY200 = getFile(infiles[i].data(), xSecDY200, &scaleDY200);

    if( infiles[i].find("HT-400") != std::string::npos )
      f_DY400 = getFile(infiles[i].data(), xSecDY400, &scaleDY400); 

    if( infiles[i].find("HT-600") != std::string::npos )
      f_DY600 = getFile(infiles[i].data(), xSecDY600, &scaleDY600);

    if( infiles[i].find("TT_") != std::string::npos )
      f_TTbar = getFile(infiles[i].data(), xSecTTbar, &scaleTTbar);

    if( infiles[i].find("WW_") != std::string::npos )
      f_WW = getFile(infiles[i].data(), xSecWW, &scaleWW);

    if( infiles[i].find("WZ_") != std::string::npos )
      f_WZ = getFile(infiles[i].data(), xSecWZ, &scaleWZ);

    if( infiles[i].find("ZZ_") != std::string::npos )
      f_ZZ = getFile(infiles[i].data(), xSecZZ, &scaleZZ);

    if( infiles[i].find("V12015") != std::string::npos )
      f_data0 = getFile(infiles[i].data(), dummy, &dummy);

    if( infiles[i].find("V42015") != std::string::npos )
      f_data1 = getFile(infiles[i].data(), dummy, &dummy);

  }

  setNCUStyle(true);

  Double_t up_height     = 0.8;
  Double_t dw_correction = 1.455;
  Double_t dw_height     = (1-up_height)*dw_correction;

  TCanvas c("c","",0,0,1000,900);
  c.Divide(1,2);

  TPad* c_up = (TPad*) c.GetListOfPrimitives()->FindObject("c_1");
  TPad* c_dw = (TPad*) c.GetListOfPrimitives()->FindObject("c_2"); 

  c_up->SetPad(0,1-up_height,1,1);
  c_dw->SetPad(0,0,1,dw_height);
  c_dw->SetBottomMargin(0.25);

  // To get the name of histograms
  
  TFile *f_ = TFile::Open(infiles[0].data());
  f_->cd();
  
  TDirectory *current_sourcedir = gDirectory;
  TIter nextkey( current_sourcedir->GetListOfKeys() );
  TKey *key;

  vector<std::string> h_name;

  while ( (key = (TKey*)nextkey()) ) {

    TObject *obj = key->ReadObj();

    if ( obj->IsA()->InheritsFrom("TH1") ) 
      h_name.push_back(obj->GetTitle());

  }

  // Draw and output
  
  for(unsigned int i = 0; i < h_name.size()-1; i++){

    if( h_name[i]=="eleHoverE" || h_name[i]=="eleMiniIsoEA" || h_name[i]=="muMiniIsoEA" )
      c_up->cd()->SetLogy(1);
    else
      c_up->cd()->SetLogy(0);
    
    TH1D *h_data = (TH1D*)(f_data1->Get(h_name[i].data()))->Clone("h_data");
    TH1D *h_bkg  = (TH1D*)(f_data1->Get(h_name[i].data()))->Clone("h_bkg");
    
    myPlot(((TH1D*)(f_DY100->Get(h_name[i].data()))),
	   ((TH1D*)(f_DY200->Get(h_name[i].data()))),
	   ((TH1D*)(f_DY400->Get(h_name[i].data()))),
	   ((TH1D*)(f_DY600->Get(h_name[i].data()))),
	   ((TH1D*)(f_TTbar->Get(h_name[i].data()))),
	   ((TH1D*)(f_WW->Get(h_name[i].data()))),
	   ((TH1D*)(f_WZ->Get(h_name[i].data()))),
	   ((TH1D*)(f_ZZ->Get(h_name[i].data()))),
	   ((TH1D*)(f_data0->Get(h_name[i].data()))),
	   ((TH1D*)(f_data1->Get(h_name[i].data()))),
	   scaleDY100,
	   scaleDY200,
	   scaleDY400,
	   scaleDY600,
	   scaleTTbar,
	   scaleWW,
	   scaleWZ,
	   scaleZZ,
	   h_data,
	   h_bkg);

    c_up->RedrawAxis();

    c_dw->cd();

    myRatio(h_data, h_bkg);

    c.Draw();
    
    if( i == 0 ) c.Print(Form("%s.pdf(", pdfName.data()), "pdf");
    else if( i == h_name.size()-2 ) c.Print(Form("%s.pdf)", pdfName.data()), "pdf");
    else c.Print(Form("%s.pdf", pdfName.data()), "pdf");
    
  }

}
コード例 #12
0
void dataMCplots_v2(){

  setNCUStyle(true);
 
  Float_t up_height     = 0.8;
  Float_t dw_correction = 1.455;
  Float_t dw_height     = (1-up_height)*dw_correction;

  TCanvas c("c","",0,0,800,1600);
  c.Divide(1,2);

  TPad* c_up = (TPad*) c.GetListOfPrimitives()->FindObject("c_1");
  TPad* c_dw = (TPad*) c.GetListOfPrimitives()->FindObject("c_2"); 

  c_up->SetPad(0,1-up_height,1,1);
  c_dw->SetPad(0,0,1,dw_height);
  c_dw->SetBottomMargin(0.25);

  // To get the name of histograms
  
  TFile* tf1[10];
  tf1[0]=TFile::Open("sf2/QCD700.root");
  tf1[1]=TFile::Open("sf2/QCD1000.root");
  tf1[2]=TFile::Open("sf2/QCD1500.root");
  tf1[3]=TFile::Open("sf2/QCD2000.root");
  tf1[4]=TFile::Open("sf2/data.root");
  tf1[5]=TFile::Open("sf2/bGen700.root");
  tf1[6]=TFile::Open("sf2/bGen1000.root");
  tf1[7]=TFile::Open("sf2/bGen1500.root");
  tf1[8]=TFile::Open("sf2/bGen2000.root");
  
  TFile* tf2[10];
   tf2[0]=TFile::Open("sf2/B1400.root");
   tf2[1]=TFile::Open("sf2/B1800.root");
   tf2[2]=TFile::Open("sf2/B2500.root");
   tf2[3]=TFile::Open("sf2/R1800.root");
   
  vector<std::string> h_name;
  h_name.push_back("h_nvtx");  
  for(int i=0;i<2;i++){
		for(int j=0;j<2;j++){
			for(int k=0;k<5;k++){
				h_name.push_back(Form("Pt_j%d_sj%d_%db",i,j,k));  
				h_name.push_back(Form("Eta_j%d_sj%d_%db",i,j,k));  
				h_name.push_back(Form("subCSV_j%d_sj%d_%db",i,j,k));  
				h_name.push_back(Form("subCSVCut_j%d_sj%d_%db",i,j,k));  
			}
		}
		for(int k=0;k<5;k++){
			h_name.push_back(Form("deltaR_j%d_%db",i,k));  
			h_name.push_back(Form("Pt_j%d_%db",i,k));  
			h_name.push_back(Form("Eta_j%d_%db",i,k));  
			h_name.push_back(Form("prMassL2L3_j%d_%db",i,k));  
			h_name.push_back(Form("tau21_j%d_%db",i,k));  
			h_name.push_back(Form("PuppiSDMassL2L3_j%d_%db",i,k));  
			h_name.push_back(Form("puppiTau21_j%d_%db",i,k));  
		h_name.push_back(Form("prMass_j%d_%db",i,k));  
		h_name.push_back(Form("PuppiSDMass_j%d_%db",i,k));  
		h_name.push_back(Form("doubleSV_j%d_%db",i,k));  
		h_name.push_back(Form("FatSV_j%d_%db",i,k));  
		}
	}
	for(int k=0;k<5;k++){
		h_name.push_back(Form("totalMass_%db",k));  
		h_name.push_back(Form("totalMassRed_%db",k));  
		h_name.push_back(Form("deltaEta_%db",k));  
		//h_name.push_back(Form("HT_%db",k));  
	}
  
 // h_name.push_back("cutflow");  
 
 
 string prMass_no[4]={"prMass","prMassL2L3","PuppiSDMass","PuppiSDMassL2L3"};
	string tau21_no[2]={"tau21","puppiTau21"};
	for (int i=0;i<4;i++){
		h_name.push_back(Form("%s_j0_noPr_noTau21",prMass_no[i].data()));  
		h_name.push_back(Form("%s_j1_noPr_noTau21",prMass_no[i].data()));  
		h_name.push_back(Form("%s_j0_noPr",prMass_no[i].data()));  
		h_name.push_back(Form("%s_j1_noPr",prMass_no[i].data()));  
		h_name.push_back(Form("%s_j0_noTau21",prMass_no[i].data()));  
		h_name.push_back(Form("%s_j1_noTau21",prMass_no[i].data()));  
		
	
	}
	for (int i=0;i<2;i++){
		h_name.push_back(Form("%s_j0_noPr_noTau21",tau21_no[i].data()));  
		h_name.push_back(Form("%s_j1_noPr_noTau21",tau21_no[i].data()));  
		h_name.push_back(Form("%s_j0_noPr",tau21_no[i].data()));  
		h_name.push_back(Form("%s_j1_noPr",tau21_no[i].data()));  
		h_name.push_back(Form("%s_j0_noTau21",tau21_no[i].data()));  
		h_name.push_back(Form("%s_j1_noTau21",tau21_no[i].data()));  
	
	}
 
 
 
 h_name.push_back("h_nvtx_cut");  
h_name.push_back("Nbtagjet");  

  for(unsigned int i = 0; i < h_name.size(); i++){
//	 for(unsigned int i = 0; i < 1; i++){
	  
	//cout<<h_name[i]<<endl;
	TH1D *th1[10];
	for(int k=0;k<5;k++){
		
			th1[k]=(TH1D* )tf1[k]->FindObjectAny(Form("%s",h_name[i].data()));
		
	}
	if(h_name[i].find("3b")!= std::string::npos)continue;	
	if(h_name[i].find("2b")!= std::string::npos)continue;	
	if(h_name[i].find("1b")!= std::string::npos)continue;	
	if(h_name[i].find("0b")!= std::string::npos)continue;	
	//if(h_name[i].find("4b")!= std::string::npos)continue;	
	bool drawSignal=1;
	
	//---------
	 TH1D* thh[5][4];
  double fixNumber=22295/30584.3;//7306/11857.3;
double Xsec[4]={6831,1207,119.9,25.24};
  //string categories[4]={"0b","1b","2b","DSV"};
  string hadflv[4]={"bb","b","cc","udcsg"};
  
  
  
  TString endfix;
	endfix=gSystem->GetFromPipe(Form("file=%s; test=${file%%*_}; echo \"${test}\"",h_name[i].data()));
	
  
  
  for(int k=0;k<4;k++){
	  for(int j=0;j<4;j++){
		  
		  TH1D *th2=(TH1D* )tf1[k]->FindObjectAny("cutflow");
		  
	
		  thh[k][j]=(TH1D*)tf1[k]->FindObjectAny(Form("%s_%s",h_name[i].data(),hadflv[j].data()));
		   TString endfix;
		  if(h_name[i].find("4b")!= std::string::npos){
			  endfix=gSystem->GetFromPipe(Form("file=%s; test=${file%%*_4b}; echo \"${test}\"",h_name[i].data()));
			  TH1D *th2;
			  //cout<<endfix<<endl;
			  th2=(TH1D* )tf1[k]->FindObjectAny(Form("%s_0b_%s",endfix.Data(),hadflv[j].data()));
 			  thh[k][j]->Add(th2);
			  th2=(TH1D* )tf1[k]->FindObjectAny(Form("%s_1b_%s",endfix.Data(),hadflv[j].data()));
 			  thh[k][j]->Add(th2);
			  th2=(TH1D* )tf1[k]->FindObjectAny(Form("%s_2b_%s",endfix.Data(),hadflv[j].data()));
 			  thh[k][j]->Add(th2);
			  th2=(TH1D* )tf1[k]->FindObjectAny(Form("%s_3b_%s",endfix.Data(),hadflv[j].data()));
 			  thh[k][j]->Add(th2);
		  }
		  thh[k][j]->Scale(fixNumber* 12883.846147301*Xsec[k]/th2->GetBinContent(1));
		 // cout<<k<<","<<j<<","<<Form("%s_%s",h_name[i].data(),hadflv[j].data())<<","<<thh[k][j]->Integral()<<endl;
	  }
	  
	  if(k==3){
		  for(int j=0;j<4;j++)thh[k][j]->Add(thh[0][j]);
		  for(int j=0;j<4;j++)thh[k][j]->Add(thh[1][j]);
		  for(int j=0;j<4;j++)thh[k][j]->Add(thh[2][j]);
	  }
  }
vector<TH1D* > v2;
	vector<TH1D* > vd;
	
	thh[4][0]=(TH1D*)tf1[4]->FindObjectAny(Form("%s_udcsg",h_name[i].data()));
	 if(h_name[i].find("4b")!= std::string::npos){
			  endfix=gSystem->GetFromPipe(Form("file=%s; test=${file%%*_4b}; echo \"${test}\"",h_name[i].data()));
			  TH1D *th2;
			  th2=(TH1D* )tf1[4]->FindObjectAny(Form("%s_0b_udcsg",endfix.Data()));
 			  thh[4][0]->Add(th2);
			 th2=(TH1D* )tf1[4]->FindObjectAny(Form("%s_1b_udcsg",endfix.Data()));
 			  thh[4][0]->Add(th2);
			  th2=(TH1D* )tf1[4]->FindObjectAny(Form("%s_2b_udcsg",endfix.Data()));
 			  thh[4][0]->Add(th2);
			  th2=(TH1D* )tf1[4]->FindObjectAny(Form("%s_3b_udcsg",endfix.Data()));
 			  thh[4][0]->Add(th2);
		  }
	
	cout<<thh[4][0]->Integral();
	v2.push_back(thh[3][0]);
	v2.push_back(thh[3][1]);
	v2.push_back(thh[3][2]);
	v2.push_back(thh[3][3]);
	
	double temp_scale=0;
	for(int i=0;i<4;i++){
		temp_scale+=thh[3][i]->Integral();
	}
	
	for(int i=0;i<4;i++){
		if(h_name[i].find("HT")!= std::string::npos)continue;
		thh[3][i]->Scale(thh[4][0]->Integral()/temp_scale);
	}
	
	vd.push_back(thh[4][0]);
	
	//--------
	
	TH1D *h_bkg  = (TH1D* )th1[0]->Clone("h_bkg");
	//TH1D *temp = (TH1D* )th1[0]->Clone("h_bkg");
	
	
    TH1D *h_data = (TH1D* )th1[0]->Clone("h_data");
    /*
	h_data->SetTitle(Form("%s",endfix.Data()));
	h_bkg->SetTitle(Form("%s",endfix.Data()));
	c_up->SetTitle(Form("%s",endfix.Data()));
	c.SetTitle(Form("%s",endfix.Data()));
	 */
	 h_data->SetTitle("");
	 h_bkg->SetTitle("");
	 c_up->SetTitle("");
	 c_up->cd();
	 
	 if (h_name[i].find("Nbtagjet")!= std::string::npos)c_up->SetLogy();	
	// if(h_name[i].find("cutflow")!= std::string::npos)c_up->SetLogy();	
	 if(h_name[i].find("Pt")!= std::string::npos)isSetRange=1;	
	 if(h_name[i].find("logPt")!= std::string::npos){
		   isSetRange=0;	
		   c_up->SetLogy(1);	
	 }
	 
	 
	  if(h_name[i].find("total")!= std::string::npos)isSetRange=1;	
	
	
	double scaleTemp[4];
	
	
	
	
	//vd.push_back(th1[4]);
	cout<<h_name[i]<<endl;
	
	
    myPlot(v2,
vd,
	   h_data, h_bkg,1);

    c_up->RedrawAxis();
    
    
    
    
    if(drawSignal){
	    int colorNum[4]={kRed,kBlue,kOrange+2,kViolet};
	    double xsec2[4]={1.9,0.155,0.0158,17.3};
		TH1D* th_signal[4];
		
		TLegend *leg = new TLegend(0.63, 0.68, 0.78, 0.87);
  string legendS[4]={"M_{G}=1.4TeV","M_{G}=1.8TeV","M_{G}=2.5TeV","M_{R}=1.8TeV"};
  
  leg->SetBorderSize(0);
  leg->SetFillColor(0);
  leg->SetFillStyle(0);
  leg->SetTextSize(0.04);
		for(int k=0;k<4;k++){
			
	    th_signal[k]=(TH1D*)tf2[k]->FindObjectAny(Form("%s",h_name[i].data()));
	    leg->AddEntry(th_signal[k],Form("%s",legendS[k].data()));
	    th_signal[k]->SetLineColor(colorNum[k]);
	    th_signal[k]->SetLineWidth(2);
	   // th_signal[k]->SetLineStyle(k+1);
	    
	    
	     TString endfix;
		  if(h_name[i].find("4b")!= std::string::npos){
		  endfix=gSystem->GetFromPipe(Form("file=%s; test=${file%%*_4b}; echo \"${test}\"",h_name[i].data()));
			  TH1D *th2;
			
			  th2=(TH1D* )tf2[k]->FindObjectAny(Form("%s_0b",endfix.Data()));
 			   th_signal[k]->Add(th2);
			  th2=(TH1D* )tf2[k]->FindObjectAny(Form("%s_1b",endfix.Data()));
 			   th_signal[k]->Add(th2);
			  th2=(TH1D* )tf2[k]->FindObjectAny(Form("%s_2b",endfix.Data()));
 			   th_signal[k]->Add(th2);
			   th2=(TH1D* )tf2[k]->FindObjectAny(Form("%s_3b",endfix.Data()));
 			   th_signal[k]->Add(th2);
		  }
	    
	     TH1D *th3=(TH1D* )tf2[k]->FindObjectAny("cutflow");
	     //cout<<"k="<<k<<","<<th2->GetBinContent(1)<<","<<12.883846147301*xsec2[k]*200/th2->GetBinContent(1)<<endl;
	     th_signal[k]->Scale(thh[4][0]->Integral()/(th_signal[k]->Integral()*2));
	     if(h_name[i].find("deltaR")!= std::string::npos)th_signal[k]->Scale(0.5);
	     if(h_name[i].find("noPr")!= std::string::npos &&
	     h_name[i].find("noPr_")== std::string::npos&&
	     h_name[i].find("tau21")== std::string::npos)th_signal[k]->Scale(0.4);
	    //if(k<3)th_signal[k]->Scale(10);
	     cout<<th_signal[k]->Integral()<<",";
	     th_signal[k]->Draw("same hist ");
		}
		leg->Draw("same");
		
    }
    
    
    
    
     
		  
	
		
		  
    
    c_dw->cd();
	string tempName=h_name[i];
	if(h_name[i].find("Eta")!= std::string::npos){
		TString endfix2;
		 endfix2=gSystem->GetFromPipe(Form("file=%s; test=${file##Eta}; echo \"${test}\"",h_name[i].data()));
		 h_name[i]=Form("#eta%s",endfix2.Data());
	}
	
	if(h_name[i].find("tau")!= std::string::npos){
		TString endfix2;
		 endfix2=gSystem->GetFromPipe(Form("file=%s; test=${file##tau}; echo \"${test}\"",h_name[i].data()));
		 h_name[i]=Form("#tau%s",endfix2.Data());
	}
	
	if (h_name[i].find("total")!= std::string::npos)myRatio(h_data, h_bkg,"M_{jj}[GeV]");
	
	else if (h_name[i].find("_j0")!= std::string::npos){
		TString endfix2;
		 endfix2=gSystem->GetFromPipe(Form("file=%s; test=${file%%*_j0*}; echo \"${test}\"",h_name[i].data()));
		 //cout<<endfix2<<endl;
		 if (h_name[i].find("_sj0")!= std::string::npos) myRatio(h_data, h_bkg,Form("%s^{Jet0}_{subjet0}",endfix2.Data()));
		 else  if (h_name[i].find("_sj1")!= std::string::npos) myRatio(h_data, h_bkg,Form("%s^{Jet0}_{subjet1}",endfix2.Data()));
		 else myRatio(h_data, h_bkg,Form("%s^{Jet0}",endfix2.Data()));
	}
	
	else if (h_name[i].find("_j1")!= std::string::npos){
		TString endfix2;
		 endfix2=gSystem->GetFromPipe(Form("file=%s; test=${file%%*_j1*}; echo \"${test}\"",h_name[i].data()));
		 //cout<<endfix2<<endl;
		 if (h_name[i].find("_sj0")!= std::string::npos) myRatio(h_data, h_bkg,Form("%s^{Jet1}_{subjet0}",endfix2.Data()));
		 else  if (h_name[i].find("_sj1")!= std::string::npos) myRatio(h_data, h_bkg,Form("%s^{Jet1}_{subjet1}",endfix2.Data()));
		 else myRatio(h_data, h_bkg,Form("%s^{Jet1}",endfix2.Data()));
	}
	
    else if(h_name[i].find("Pt")!= std::string::npos||
	//h_name[i].find("total")!= std::string::npos||
	h_name[i].find("ass")!= std::string::npos)myRatio(h_data, h_bkg,Form("%s[GeV]",endfix.Data()));
	else if (h_name[i].find("Nbtagje")!= std::string::npos)myRatio(h_data, h_bkg,"Nbtagjet",1);
	
	else myRatio(h_data, h_bkg,Form("%s",endfix.Data()));
	
	
	h_name[i]=tempName;
	
	if(h_name[i].find("Pt")!= std::string::npos)isSetRange=0;	
	 if(h_name[i].find("total")!= std::string::npos)isSetRange=0;	
   // c.Draw();
  
	if(h_name[i].find("0b")!= std::string::npos)c.SaveAs(Form("dataMC_v2/0b/%s.png",h_name[i].data()));
	else if(h_name[i].find("1b")!= std::string::npos)c.SaveAs(Form("dataMC_v2/1b/%s.png",h_name[i].data()));
	else if(h_name[i].find("2b")!= std::string::npos)c.SaveAs(Form("dataMC_v2/2b/%s.png",h_name[i].data()));
    else if(h_name[i].find("4b")!= std::string::npos)c.SaveAs(Form("dataMC_v2/all/%s.png",endfix.Data()));
	else c.SaveAs(Form("dataMC_v2/all/%s.png",h_name[i].data()));
	
	if(h_name[i].find("0b")!= std::string::npos)c.Print(Form("dataMC_v2/0b/%s.pdf",h_name[i].data()));
	else if(h_name[i].find("1b")!= std::string::npos)c.Print(Form("dataMC_v2/1b/%s.pdf",h_name[i].data()));
	else if(h_name[i].find("2b")!= std::string::npos)c.Print(Form("dataMC_v2/2b/%s.pdf",h_name[i].data()));
    else if(h_name[i].find("4b")!= std::string::npos)c.Print(Form("dataMC_v2/all/%s.pdf",endfix.Data()));
	else c.Print(Form("dataMC_v2/all/%s.pdf",h_name[i].data()));
	
	
	
	if(h_name[i].find("logPt")!= std::string::npos){
		   isSetRange=0;	
		   c_up->SetLogy(0);	
	 }
  }
  
}
コード例 #13
0
ファイル: muVariable_2.C プロジェクト: syuvivida/xtozh_common
void stcMuVariable(){

  TFile *glof = TFile::Open("globalMuVariable.root");
  TFile *trcf = TFile::Open("trackerMuVariable.root");

  gStyle->SetOptStat(0);
  gStyle->SetPadGridY(kTRUE);
  gStyle->SetPadGridX(kTRUE);
 
  Double_t up_height     = 0.8;
  Double_t dw_correction = 1.3;
  Double_t dw_height     = (1 - up_height) * dw_correction;

  TCanvas c("c","",0,0,1000,800);
  c.Divide(1,2);

  TPad* c_up = (TPad*) c.GetListOfPrimitives()->FindObject("c_1");
  TPad* c_dw = (TPad*) c.GetListOfPrimitives()->FindObject("c_2");
 
  c_up->SetPad(0, 1-up_height, 1, 1);
  c_dw->SetPad(0, 0, 1, dw_height);
  c_dw->SetBottomMargin(0.25);

  //---------------------------------------------------------------------//
  
  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_Hits_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_Hits_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_Hits_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_Hits_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Hits_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Hits_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Hits_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_Hits_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_Hits_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_Hits_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_Hits_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Hits_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Hits_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Hits_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf(");
  
  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_Hits_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Hits_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Hits_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_Hits_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Hits_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Hits_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Hits_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_Hits_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_Hits_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_Hits_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_Hits_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Hits_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Hits_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Hits_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");
  
  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_Matches_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_Matches_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_Matches_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_Matches_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Matches_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Matches_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Matches_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_Matches_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_Matches_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_Matches_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_Matches_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Matches_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Matches_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Matches_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//
  
  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_Matches_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Matches_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Matches_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_Matches_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Matches_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Matches_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Matches_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_Matches_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_Matches_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_Matches_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_Matches_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Matches_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Matches_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Matches_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_PixelHits_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_PixelHits_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_PixelHits_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_PixelHits_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_PixelHits_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_PixelHits_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_PixelHits_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_PixelHits_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_PixelHits_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_PixelHits_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_PixelHits_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_PixelHits_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_PixelHits_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_PixelHits_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_PixelHits_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_PixelHits_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_PixelHits_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_PixelHits_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_PixelHits_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_PixelHits_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_PixelHits_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_PixelHits_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_PixelHits_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_PixelHits_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_PixelHits_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_PixelHits_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_PixelHits_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_PixelHits_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_TrkLayers_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_TrkLayers_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_TrkLayers_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_TrkLayers_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_TrkLayers_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_TrkLayers_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_TrkLayers_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_TrkLayers_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_TrkLayers_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_TrkLayers_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_TrkLayers_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_TrkLayers_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_TrkLayers_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_TrkLayers_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_TrkLayers_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_TrkLayers_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_TrkLayers_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_TrkLayers_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_TrkLayers_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_TrkLayers_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_TrkLayers_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_TrkLayers_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_TrkLayers_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkLayers_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkLayers_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkLayers_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkLayers_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkLayers_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_PtErrx_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_PtErrx_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_PtErrx_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_PtErrx_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_PtErrx_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_PtErrx_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_PtErrx_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_PtErrx_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_PtErrx_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_PtErrx_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_PtErrx_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_PtErrx_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_PtErrx_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_PtErrx_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_PtErrx_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_PtErrx_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_PtErrx_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_PtErrx_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_PtErrx_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_PtErrx_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_PtErrx_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_PtErrx_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_PtErrx_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_PtErrx_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_PtErrx_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_PtErrx_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_PtErrx_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_PtErrx_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_Dxy_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_Dxy_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_Dxy_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_Dxy_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Dxy_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Dxy_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Dxy_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_Dxy_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_Dxy_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_Dxy_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_Dxy_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Dxy_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Dxy_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Dxy_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_Dxy_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Dxy_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Dxy_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_Dxy_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Dxy_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Dxy_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Dxy_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_Dxy_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_Dxy_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dxy_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dxy_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dxy_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dxy_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dxy_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_Dz_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_Dz_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_Dz_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_Dz_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Dz_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Dz_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Dz_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_Dz_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_Dz_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_Dz_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_Dz_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Dz_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Dz_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Dz_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_Dz_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Dz_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Dz_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_Dz_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Dz_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Dz_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Dz_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_Dz_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_Dz_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dz_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dz_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dz_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dz_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Dz_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_Pt_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_Pt_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_Pt_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_Pt_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Pt_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Pt_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Pt_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_Pt_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_Pt_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_Pt_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_Pt_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Pt_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Pt_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Pt_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");
  
  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_Pt_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Pt_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Pt_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_Pt_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Pt_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Pt_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Pt_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_Pt_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_Pt_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_Pt_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_Pt_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Pt_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Pt_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Pt_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//
  
  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_Eta_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_Eta_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_Eta_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_Eta_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Eta_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Eta_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Eta_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_Eta_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_Eta_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_Eta_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_Eta_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Eta_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Eta_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Eta_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_Eta_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Eta_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Eta_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_Eta_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Eta_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Eta_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Eta_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_Eta_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_Eta_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_Eta_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_Eta_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Eta_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Eta_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Eta_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(glof->Get("global_Phi_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_Phi_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_Phi_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_Phi_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Phi_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Phi_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_Phi_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_Phi_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_Phi_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_Phi_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_Phi_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Phi_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Phi_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_Phi_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy(0);
  myPlot( ((TH1D*)(trcf->Get("tracker_Phi_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Phi_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_Phi_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_Phi_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Phi_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Phi_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_Phi_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_Phi_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_Phi_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_Phi_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_Phi_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Phi_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Phi_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_Phi_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy();
  myPlot( ((TH1D*)(glof->Get("global_CorrTrkIso_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_CorrTrkIso_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_CorrTrkIso_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_CorrTrkIso_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_CorrTrkIso_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_CorrTrkIso_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_CorrTrkIso_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_CorrTrkIso_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_CorrTrkIso_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_CorrTrkIso_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_CorrTrkIso_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_CorrTrkIso_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_CorrTrkIso_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_CorrTrkIso_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy();
  myPlot( ((TH1D*)(trcf->Get("tracker_CorrTrkIso_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_CorrTrkIso_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_CorrTrkIso_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_CorrTrkIso_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_CorrTrkIso_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_CorrTrkIso_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_CorrTrkIso_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_CorrTrkIso_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_CorrTrkIso_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_CorrTrkIso_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_CorrTrkIso_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_CorrTrkIso_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_CorrTrkIso_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_CorrTrkIso_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy();
  myPlot( ((TH1D*)(glof->Get("global_TrkIso_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(glof->Get("global_TrkIso_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(glof->Get("global_TrkIso_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(glof->Get("global_TrkIso_WW_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_TrkIso_WZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_TrkIso_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(glof->Get("global_TrkIso_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(glof->Get("global_TrkIso_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(glof->Get("global_TrkIso_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(glof->Get("global_TrkIso_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(glof->Get("global_TrkIso_WW_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_TrkIso_WZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_TrkIso_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(glof->Get("global_TrkIso_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf");

  //---------------------------------------------------------------------//

  c_up->cd()->SetLogy();
  myPlot( ((TH1D*)(trcf->Get("tracker_TrkIso_DYJetsToLL_PtZ-70To100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_TrkIso_DYJetsToLL_PtZ-100.root"))), 
	  ((TH1D*)(trcf->Get("tracker_TrkIso_TTTo2L2Nu2B.root"))),
	  ((TH1D*)(trcf->Get("tracker_TrkIso_WW_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_TrkIso_WZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_TrkIso_ZZ_pythia_filtered.root"))),
	  ((TH1D*)(trcf->Get("tracker_TrkIso_data_DoubleMu.root")))
	  );

  c_up->RedrawAxis();

  c_dw->cd();
  myRatio( ((TH1D*)(trcf->Get("tracker_TrkIso_DYJetsToLL_PtZ-70To100.root"))), 
	   ((TH1D*)(trcf->Get("tracker_TrkIso_DYJetsToLL_PtZ-100.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkIso_TTTo2L2Nu2B.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkIso_WW_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkIso_WZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkIso_ZZ_pythia_filtered.root"))),
	   ((TH1D*)(trcf->Get("tracker_TrkIso_data_DoubleMu.root")))
	   );

  c.Draw();
  c.Print("muVariable.pdf)");
  
  //---------------------------------------------------------------------//

}