Example #1
0
/**
 *  Callable by scheduler.
 *
 *  \param file Pointer to the std::string with the filename.
 */
void Console::restoreState(void * file)
{
    std::string & f = *(std::string*)file;
    
    std::ifstream in(f.c_str());

    std::string graphed_var;
    while(in >> graphed_var)
    {
        if (!s_variable_watcher.isGraphed(graphed_var))
        {
            plotVariable(std::vector<std::string>(1,graphed_var));
        }
    }
}
void plotAllVariables(){


  std::vector<std::string> categories;
  categories.push_back(std::string("All"));
  categories.push_back(std::string("NoEleMatch"));
  categories.push_back(std::string("woG"));
  categories.push_back(std::string("wGwoGSF"));
  categories.push_back(std::string("wGwGSFwoPFMVA"));
  categories.push_back(std::string("wGwGSFwPFMVA"));
//   categories.push_back(std::string("All"));
//   categories.push_back(std::string("TauNoGammas"));
//   categories.push_back(std::string("TauHasGammasNoGsfTrack"));
//   categories.push_back(std::string("TauHasGammasHasGsfTrackPFmvaBelow01"));
//   categories.push_back(std::string("TauHasGammasHasGsfTrackPFmvaOver01"));

  std::vector<std::string> variables;
  variables.push_back(std::string("Elec_EeOverPout"));
  variables.push_back(std::string("Elec_EgammaOverPdif"));
  variables.push_back(std::string("Elec_EtotOverPin"));
  variables.push_back(std::string("Elec_PFMvaOutput"));
  variables.push_back(std::string("Elec_Logsihih"));
  variables.push_back(std::string("Elec_DeltaEta"));
  variables.push_back(std::string("Elec_HoHplusE"));
  variables.push_back(std::string("Elec_GSFTrackResol"));
  variables.push_back(std::string("Elec_GSFTracklnPt"));
  variables.push_back(std::string("Elec_GSFTrackEta"));
//   variables.push_back(std::string("Tau_AbsEta"));
  variables.push_back(std::string("Tau_Eta"));
  variables.push_back(std::string("Tau_EtaAtEcalEntrance"));
  variables.push_back(std::string("Tau_EmFraction"));
  variables.push_back(std::string("Tau_HasGsf"));
  variables.push_back(std::string("Tau_HadrEoP"));
  variables.push_back(std::string("Tau_HadrHoP"));
  variables.push_back(std::string("Tau_NumChargedCands"));
  variables.push_back(std::string("Tau_NumGammaCands"));
  variables.push_back(std::string("Tau_HadrMva")); 
  variables.push_back(std::string("Tau_GammaEnFrac"));
  variables.push_back(std::string("Tau_GammaEtaMom")); 
  variables.push_back(std::string("Tau_GammaPhiMom")); 

  variables.push_back(std::string("Tau_Pt"));
  variables.push_back(std::string("Tau_LeadHadronPt"));
  variables.push_back(std::string("Tau_VisMass"));
  variables.push_back(std::string("Elec_AbsEta"));
  variables.push_back(std::string("Elec_Pt"));
  variables.push_back(std::string("Elec_Fbrem"));
  variables.push_back(std::string("Elec_Chi2KF"));
  variables.push_back(std::string("Elec_Chi2GSF"));
  variables.push_back(std::string("Elec_EarlyBrem"));
  variables.push_back(std::string("Elec_LateBrem"));
  variables.push_back(std::string("Elec_NumHits"));

//   variables.push_back(std::string("Tau_GsfEleMatch"));


  std::map<std::string, std::string> xAxisTitles;
  xAxisTitles["Elec_AbsEta"]         = "|#eta|(e)" ;
  xAxisTitles["Elec_Fbrem"]          = "Fbrem";
  xAxisTitles["Elec_Chi2KF"]         = "Chi2KF";
  xAxisTitles["Elec_EarlyBrem"]      = "EarlyBrem";
  xAxisTitles["Elec_LateBrem"]       = "LateBrem";
  xAxisTitles["Elec_EeOverPout"]     = "E_{e}/P_{out}";
  xAxisTitles["Elec_EgammaOverPdif"] = "E_{#gamma}/(P_{in}-P_{out})";
  xAxisTitles["Elec_EtotOverPin"]    = "E_{tot}/P_{in}";
  xAxisTitles["Elec_NumHits"]        = "NHits";
  xAxisTitles["Tau_AbsEta"]          = "|#eta|(#tau)";
  xAxisTitles["Tau_Eta"]             = "#eta(#tau)";
  xAxisTitles["Tau_EtaAtEcalEntrance"]= "#eta(#tau at ECAL)";
  xAxisTitles["Tau_GammaEnFrac"]     = "GammaEnFrac(#tau)";
  xAxisTitles["Tau_EmFraction"]      = "EmFraction(#tau)";
  xAxisTitles["Tau_HasGsf"]          = "TauHasGsf";
  xAxisTitles["Tau_HadrEoP"]         = "TauHadrEoP";
  xAxisTitles["Tau_HadrHoP"]         = "TauHadrHoP";
  xAxisTitles["Tau_NumChargedCands"] = "TauNumChargedHadrCands";
  xAxisTitles["Tau_NumGammaCands"]   = "TauNumGammaCands";
  xAxisTitles["Tau_VisMass"]         = "VisMass(#tau)";
  xAxisTitles["Tau_GammaEtaMom"]     = "Gamma #Delta#eta RMS(#tau)";
  xAxisTitles["Tau_GammaPhiMom"]     = "Gamma #Delta#phi RMS(#tau)";

  xAxisTitles["Elec_Pt"]             = "P_{T}(e)" ;
  xAxisTitles["Elec_PFMvaOutput"]    = "PFmva(e)" ;
  xAxisTitles["Elec_Logsihih"]       = "Logsihih(e)" ;
  xAxisTitles["Elec_DeltaEta"]       = "#Delta #eta (SC-Track)" ;
  xAxisTitles["Elec_HoHplusE"]       = "H/H+E" ;
  xAxisTitles["Elec_Chi2GSF"]        = "Chi2GSF" ;
  xAxisTitles["Elec_GSFTrackResol"]  = "GSFTrack Resol" ;
  xAxisTitles["Elec_GSFTracklnPt"]   = "lnP_{T}(GSFTr)" ;
  xAxisTitles["Elec_GSFTrackEta"]    = "#eta(GSFTr)" ;
  xAxisTitles["Tau_Pt"]              = "P_{T}(#tau)";
  xAxisTitles["Tau_LeadHadronPt"]    = "P_{T}(Lead hadron #tau)";
  xAxisTitles["Tau_HadrMva"]         = "HadrMva(#tau)"; 


  std::map<std::string, float> xMinValues;
  xMinValues["Elec_AbsEta"]             = 0.;
  xMinValues["Elec_Fbrem"]              = -0.2;
  xMinValues["Elec_Chi2KF"]             = 0.;
  xMinValues["Elec_EarlyBrem"]          = -2;
  xMinValues["Elec_LateBrem"]           = -2;
  xMinValues["Elec_EeOverPout"]         = 0.;
  xMinValues["Elec_EgammaOverPdif"]     = 0.;
  xMinValues["Elec_EtotOverPin"]        = 0.;
  xMinValues["Elec_NumHits"]            = 0.;
  xMinValues["Tau_AbsEta"]              = 0.;
  xMinValues["Tau_Eta"]                 = -3.;
  xMinValues["Tau_EtaAtEcalEntrance"]   = -3.;
  xMinValues["Tau_GammaEnFrac"]         = 0.;
  xMinValues["Tau_EmFraction"]          = 0.;
  xMinValues["Tau_HasGsf"]              = 0.;
  xMinValues["Tau_HadrEoP"]             = 0.;
  xMinValues["Tau_HadrHoP"]             = 0.;
  xMinValues["Tau_NumChargedCands"]     = 0.;
  xMinValues["Tau_NumGammaCands"]       = 0.;
  xMinValues["Tau_VisMass"]             = 0.;
  xMinValues["Tau_GammaEtaMom"]         = 0.; 
  xMinValues["Tau_GammaPhiMom"]         = 0.; 

  xMinValues["Elec_Pt"]                 = 10.;
  xMinValues["Elec_PFMvaOutput"]        = -1.;
  xMinValues["Elec_Logsihih"]           = -13.;
  xMinValues["Elec_DeltaEta"]           = 0.;
  xMinValues["Elec_HoHplusE"]           = 0.;
  xMinValues["Elec_Chi2GSF"]            = 0.;
  xMinValues["Elec_GSFTrackResol"]      = 0.;
  xMinValues["Elec_GSFTracklnPt"]       = 0.;
  xMinValues["Elec_GSFTrackEta"]        = -3.;
  xMinValues["Tau_Pt"]                  = 10.;
  xMinValues["Tau_LeadHadronPt"]        = 10.;
  xMinValues["Tau_HadrMva"]             = -1.; 


  std::map<std::string, float> xMaxValues;
  xMaxValues["Elec_AbsEta"]             = 3;
  xMaxValues["Elec_Fbrem"]              = 1;
  xMaxValues["Elec_Chi2KF"]             = 5;
  xMaxValues["Elec_EarlyBrem"]          = 2;
  xMaxValues["Elec_LateBrem"]           = 2;
  xMaxValues["Elec_EeOverPout"]         = 4.0;
  xMaxValues["Elec_EgammaOverPdif"]     = 4;
  xMaxValues["Elec_EtotOverPin"]        = 4;
  xMaxValues["Elec_NumHits"]            = 30;
  xMaxValues["Tau_AbsEta"]              = 3;
  xMaxValues["Tau_Eta"]                 = 3;
  xMaxValues["Tau_EtaAtEcalEntrance"]   = 3;
  xMaxValues["Tau_GammaEnFrac"]         = 1;
  xMaxValues["Tau_EmFraction"]          = 1;
  xMaxValues["Tau_HasGsf"]              = 2;
  xMaxValues["Tau_HadrEoP"]             = 1;
  xMaxValues["Tau_HadrHoP"]             = 1;
  xMaxValues["Tau_NumChargedCands"]     = 5;
  xMaxValues["Tau_NumGammaCands"]       = 5;
  xMaxValues["Tau_VisMass"]             = 1.8;
  xMaxValues["Tau_GammaEtaMom"]         = 3.; 
  xMaxValues["Tau_GammaPhiMom"]         = 5.; 

  xMaxValues["Elec_Pt"]                 = 80.;
  xMaxValues["Elec_PFMvaOutput"]        = 1.;
  xMaxValues["Elec_Logsihih"]           = -2.;
  xMaxValues["Elec_DeltaEta"]           = 0.05;
  xMaxValues["Elec_HoHplusE"]           = 1.;
  xMaxValues["Elec_Chi2GSF"]            = 5.;
  xMaxValues["Elec_GSFTrackResol"]      = 1.;
  xMaxValues["Elec_GSFTracklnPt"]       = 15.;
  xMaxValues["Elec_GSFTrackEta"]        = 3.;
  xMaxValues["Tau_Pt"]                  = 150.;
  xMaxValues["Tau_LeadHadronPt"]        = 150.;
  xMaxValues["Tau_HadrMva"]             = 1.; 


  std::map<std::string, int> nBins;
  nBins["Elec_AbsEta"]             = 100;
  nBins["Elec_Fbrem"]              = 100;
  nBins["Elec_Chi2KF"]             = 50;
  nBins["Elec_EarlyBrem"]          = 5;
  nBins["Elec_LateBrem"]           = 5;
  nBins["Elec_EeOverPout"]         = 100;
  nBins["Elec_EgammaOverPdif"]     = 100;
  nBins["Elec_EtotOverPin"]        = 100;
  nBins["Elec_NumHits"]            = 30;
  nBins["Tau_AbsEta"]              = 100;
  nBins["Tau_Eta"]                 = 100;
  nBins["Tau_EtaAtEcalEntrance"]   = 100;
  nBins["Tau_GammaEnFrac"]         = 20;
  nBins["Tau_EmFraction"]          = 100;
  nBins["Tau_HasGsf"]              = 2;
  nBins["Tau_HadrEoP"]             = 20;
  nBins["Tau_HadrHoP"]             = 20;
  nBins["Tau_NumChargedCands"]     = 5;
  nBins["Tau_NumGammaCands"]       = 5;
  nBins["Tau_VisMass"]             = 34;
  nBins["Tau_GammaEtaMom"]         = 30.; 
  nBins["Tau_GammaPhiMom"]         = 50.; 

  nBins["Elec_Pt"]                 = 100.;
  nBins["Elec_PFMvaOutput"]        = 100.;
  nBins["Elec_Logsihih"]           = 50.;
  nBins["Elec_DeltaEta"]           = 100.;
  nBins["Elec_HoHplusE"]           = 100.;
  nBins["Elec_Chi2GSF"]            = 50.;
  nBins["Elec_GSFTrackResol"]      = 100.;
  nBins["Elec_GSFTracklnPt"]       = 100.;
  nBins["Elec_GSFTrackEta"]        = 100.;
  nBins["Tau_Pt"]                  = 100.;
  nBins["Tau_LeadHadronPt"]        = 100.;
  nBins["Tau_HadrMva"]             = 50.;

 
  for ( std::vector<std::string>::const_iterator category = categories.begin();
	category != categories.end(); ++category ) {
    for ( std::vector<std::string>::const_iterator variable = variables.begin();
	  variable!= variables.end(); ++variable ) {
      plotVariable(variable->data(), category->data(), xAxisTitles[*variable].data(),"a.u.",xMinValues[*variable], xMaxValues[*variable], nBins[*variable], 0, 50, 15, 150,"Barrel" );
      plotVariable(variable->data(), category->data(), xAxisTitles[*variable].data(),"a.u.",xMinValues[*variable], xMaxValues[*variable], nBins[*variable], 0, 50, 15, 150,"Endcap" );
    }
  }
}