Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

NuPlots Class Reference

#include <NuPlots.h>

List of all members.

Public Member Functions

 NuPlots ()
 ~NuPlots ()
void FillCoilCurrentHistos (const NuEvent &nu) const
void FillContainmentHistos (const NuEvent &nu) const
void FillRelativeAngleHistos (const NuEvent &nu) const
void FillDPIdSigmaQPFailDpIDCutPlots (const NuEvent &nu) const
void FillDPIdSigmaQPFailProbCutPlots (const NuEvent &nu) const
void FillDPIdSigmaQPFailSigQPCutPlots (const NuEvent &nu) const
void FillDPIdSigmaQPPassDpIDCutPlots (const NuEvent &nu) const
void FillDPIdSigmaQPPassPreSelCutPlots (const NuEvent &nu) const
void FillDPIdSigmaQPPassSigQPCutPlots (const NuEvent &nu) const
void FillDPIdSigmaQPPassUVVtxCutPlots (const NuEvent &nu) const
void FillDPIdSigmaQPPlotsN (const NuEvent &nu) const
void FillEnergyBinHistos (const NuEvent &nu) const
void FillEvtAndSpillTimingPlots (const NuEvent &nu) const
void FillGeneralHistos (const NtpStRecord &ntp) const
void FillKinematicsHistos (const NuEvent &nu) const
void FillLowProbPlots (const NtpSRTrack &trk, const NuEvent &nu) const
void FillN_1Plots (const NuEvent &nu) const
void FillSelPlots (const NuEvent &nu, const TString cutname, const TString tag) const
void FillSpectra (const NuEvent &nu, const TString name) const
void FillNtupleEarliestLatestTime (const NuEvent &nu) const
void FillTrueRoIDHistos (const NuEvent &nu) const
void FillTrueRoIDHistosPQNQ (const NuEvent &nu) const
void FillTrueAbIDHistos (const NuEvent &nu) const
void FillTrueAbIDHistosPQNQ (const NuEvent &nu) const
void FillRangeCurvCompHistos (const NuEvent &nu) const
void FillRecoEnYHistosN (const NuEvent &nu) const
void FillSigmaQPPlots (const NuEvent &nu) const
void FillShwHistos (const NtpStRecord &ntp, const NtpSREvent &evt, const NuEvent &nu) const
void FillStpfitqpPlots (const NtpStRecord &ntp, const NtpSRTrack &trk, const NuEvent &nu) const
void FillTrackResponseHistos (const NtpStRecord &ntp, const NtpSRTrack &trk, const NuEvent &nu) const
void FillTrueDpIDHistos (const NuEvent &nu) const
void FillTrueDpIDHistosPQNQ (const NuEvent &nu) const
void FillTrueFidEnergySpect (const NuEvent &nu) const
void FillTrueFidEnergySpect (const NuMCEvent &mc, const NuBinningScheme::NuBinningScheme_t binningScheme=NuBinningScheme::kUnknown) const
void FillTrueFidEnergySpectSpecial (const NuMCEvent &mc) const
void FillTruePIDHistos (const NuEvent &nu) const
void FillUVHistos (const NuEvent &nu) const
void FillXYZHistos (const NuEvent &nu) const
void FormatPlot (TH1 *h, TString xTitle, TString yTitle="") const
void FillDetectorEdge (const NuEvent &nu, TString post) const
void FillCounts (const NuEvent &nu, TString post, TString cut) const
void FillBRev (const NuEvent &nu, TString post, bool truth=false) const
void FillCoilHole (const NuEvent &nu) const
void FillEffPur (const NuEvent &nu, bool sel) const
void FillHe (const NuEvent &nu, int mode) const
void PrintBlankCommentLine (std::ostream &os) const
std::string PrintEventInfo (std::ostream &os, const NuEvent &nu) const
void PrintMCInfo (std::ostream &os, const NuEvent &nu) const
void PrintRangeEnergy (const NuEvent &nu) const
void PrintRecoInfo (std::ostream &os, const NuEvent &nu) const
void PrintRunSnarlEvent (std::ostream &os, const NuEvent &nu) const
void PrintTrackFitInfo (std::ostream &os, const NuEvent &nu) const

Private Member Functions

TH1F * CreateHist (TString name, TString title, Int_t bins, Double_t minx, Double_t maxx, TString xTitle="", TString yTitle="") const
TH2F * CreateHist (TString name, TString title, Int_t xbins, Double_t minx, Double_t maxx, Int_t ybins, Double_t miny, Double_t maxy, TString xTitle="", TString yTitle="") const


Constructor & Destructor Documentation

NuPlots::NuPlots  ) 
 

Definition at line 53 of file NuPlots.cxx.

References MSG.

00054 {
00055   MSG("NuPlots",Msg::kDebug)
00056     <<"Running NuPlots Constructor..."<<endl;
00057 
00058 
00059   MSG("NuPlots",Msg::kDebug)
00060     <<"Finished NuPlots Constructor"<<endl;
00061 }

NuPlots::~NuPlots  ) 
 

Definition at line 65 of file NuPlots.cxx.

References MSG.

00066 {
00067   MSG("NuPlots",Msg::kDebug)
00068     <<"Running NuPlots Destructor..."<<endl;
00069   
00070 
00071   MSG("NuPlots",Msg::kDebug)
00072     <<"Finished NuPlots Destructor"<<endl;
00073 }


Member Function Documentation

TH2F * NuPlots::CreateHist TString  name,
TString  title,
Int_t  xbins,
Double_t  minx,
Double_t  maxx,
Int_t  ybins,
Double_t  miny,
Double_t  maxy,
TString  xTitle = "",
TString  yTitle = ""
const [private]
 

Definition at line 27269 of file NuPlots.cxx.

References FormatPlot().

27273 {
27274   TH2F *hist = new TH2F(name, title, xbins, minx, maxx, ybins, miny, maxy);
27275   this->FormatPlot(hist, xTitle, yTitle);
27276   return hist;
27277 }

TH1F * NuPlots::CreateHist TString  name,
TString  title,
Int_t  bins,
Double_t  minx,
Double_t  maxx,
TString  xTitle = "",
TString  yTitle = ""
const [private]
 

Definition at line 27257 of file NuPlots.cxx.

References FormatPlot().

Referenced by FillXYZHistos().

27260 {
27261   TH1F *hist = new TH1F(name, title, bins, minx, maxx);
27262   this->FormatPlot(hist, xTitle, yTitle);
27263   return hist;
27264 }

void NuPlots::FillBRev const NuEvent nu,
TString  post,
bool  truth = false
const
 

Definition at line 26743 of file NuPlots.cxx.

References NuEvent::beamWeightRunII, NuEvent::charge, NuEvent::containmentFlagPitt, NuEvent::energy, FormatPlot(), NuEvent::inu, MSG, NuEvent::planeTrkEnd, NuEvent::shwEn, NuEvent::trkEn, NuEvent::trkEnMC, NuEvent::trkvtxdcosz, NuEvent::xTrkEnd, NuEvent::y, NuEvent::yTrkEnd, and NuEvent::zTrkEnd.

Referenced by NuDSTAna::BRevAna().

26744 {
26745   double rw = nu.beamWeightRunII;
26746   static const int Nplots = 12; 
26747   static const TString names[] = {"PQCo", "NQCo", "PQEx", "NQEx",// pnum
26748                                   "PQ", "NQ",                    // qnum
26749                                   "PQExUp", "NQExUp", "PQExDn",  // rnum
26750                                   "NQExDn", "PQExEnd", "NQExEnd"};//  "
26751   
26752   static vector<TH1F*> TrkEn;
26753   static vector<TH1F*> TrueMuEn;
26754   static vector<TH1F*> En;
26755   static vector<TH1F*> ShwEn;
26756   static vector<TH1F*> RecoY;
26757   static vector<TH1F*> Theta;
26758   static vector<TH1F*> TrkZEnd;
26759   static vector<TH2F*> TrkEndMap;
26760   //static vector<TProfile2D*> TrkEndProfile;
26761   
26762   static map<TString, int> index;
26763    
26764   map<TString,int>::iterator iter = index.find(post);
26765   if( iter == index.end() ) {
26766     index[post] = TrkEn.size();
26767     MSG("NuPlots",Msg::kInfo)
26768       <<"Creating BRev " << post << " plots.  index[post]=" 
26769       << index[post] << endl;
26770 
26771     TString pre = "h";
26772     TString sTrkEn = pre + "TrkEn_" + post + "_";
26773     TString sTrueMuEn = pre + "TrueMuEn_" + post + "_";
26774     TString sEn    = pre + "En_" + post + "_";
26775     TString sShwEn = pre + "ShwEn_" + post + "_";
26776     TString sRecoY = pre + "RecoY_" + post + "_";
26777     TString sTheta = pre + "Theta_" + post + "_";
26778     TString sTrkZEnd = pre + "TrkZEnd_" + post + "_";
26779     TString sTrkEndMap = pre + "TrkEndMap_" + post + "_";
26780 
26781     float TrkEnBins[21] = {0,1,2,3,4,
26782                            5,6,7,8,9,
26783                            10,11,12,14,
26784                            16,18,20,22,
26785                            24,27,30};
26786     float RecoYBins[17] = {0,.05,.10,.15,.20,
26787                            .25,.30,.35,.40,.45,
26788                            .50,.55,.6,.7,.8,
26789                            .9,1};
26790     float ThetaBins[19] = {0,.02,0.04,0.06,0.08,.10,
26791                            .12,.14,.16,.18,.20,
26792                            .25,.30,.35,.40,.5,
26793                            .6,.8,1};
26794     
26795     for (int i = 0; i < Nplots; ++i) {
26796       TrkEn.push_back(new TH1F(sTrkEn+names[i],sTrkEn+names[i],20,TrkEnBins));//4*320,-32,320));
26797       FormatPlot(TrkEn.back(), "Reconstructed Muon Energy (GeV)");
26798           
26799       TrueMuEn.push_back(new TH1F(sTrueMuEn+names[i],sTrueMuEn+names[i],20,TrkEnBins));//4*320,-32,320));
26800       FormatPlot(TrueMuEn.back(), "True Muon Energy (GeV)");
26801 
26802       RecoY.push_back(new TH1F(sRecoY+names[i],sRecoY+names[i],16,RecoYBins));//1400,-0.2,1.2));
26803       FormatPlot(RecoY.back(), "Reconstructed y");
26804           
26805       Theta.push_back(new TH1F(sTheta+names[i],sTheta+names[i],18,ThetaBins));//2000,-6.3,6.3));
26806       FormatPlot(Theta.back(), "Theta");
26807           
26808       En.push_back(new TH1F(sEn+names[i],sEn+names[i],20,TrkEnBins));//4*320,-32,320));
26809       FormatPlot(En.back(), "Reconstructed Energy (GeV)");
26810           
26811       ShwEn.push_back(new TH1F(sShwEn+names[i],sShwEn+names[i],20,TrkEnBins));//4*320,-32,320));
26812       FormatPlot(ShwEn.back(), "Reconstructed Shower Energy (GeV)");
26813           
26814       TrkZEnd.push_back(new TH1F(sTrkZEnd+names[i],sTrkZEnd+names[i],5*30,0,30));
26815       FormatPlot(TrkZEnd.back(), "Track End Z (m)");
26816 
26817       TrkEndMap.push_back(new TH2F(sTrkEndMap+names[i],sTrkEndMap+names[i],2000,-1,1,2000,-1,1));
26818       FormatPlot(TrkEndMap.back(), "Track End X (m)", "Track End Y (m)");
26819     }
26820   }
26821 
26822   float charge, containment;
26823   int pnum=index[post];
26824   int qnum=pnum+4;
26825   int rnum=qnum+2;
26826   if (truth) {
26827     charge=-1.0*nu.inu;
26828     containment = nu.containmentFlagPitt;
26829   } else {
26830     charge = nu.charge;
26831     containment = nu.containmentFlagPitt;
26832   }
26833 
26834   if (charge < 0)  {  // +    => even
26835     pnum++;         // -    => odd
26836     qnum++;
26837     rnum++;
26838   }
26839   if (containment==2 || containment==4) { // Exiting
26840     pnum += 2;       // exit => 2,3
26841 
26842     if (containment == 2) // Upstream Exit Side
26843       rnum += 0;
26844     else if (containment == 4) { // Downstream Exit (side +1, end +2)
26845       rnum++;
26846       if (nu.planeTrkEnd > 275) // Exit the End
26847         rnum++;
26848     }
26849   }
26850   else {
26851     rnum = -1;
26852   }
26853   
26854   float th = acos(nu.trkvtxdcosz);
26855   //float rTrkEnd = sqrt(pow(nu.xTrkEnd,2) + pow(nu.yTrkEnd,2));
26856 
26857   TrkEn[pnum]->Fill(nu.trkEn, rw);
26858   TrueMuEn[pnum]->Fill(TMath::Abs(nu.trkEnMC), rw);
26859   En[pnum]->Fill(nu.energy, rw);
26860   ShwEn[pnum]->Fill(nu.shwEn, rw);
26861   RecoY[pnum]->Fill(nu.y,rw);
26862   Theta[pnum]->Fill(th, rw);
26863   TrkZEnd[pnum]->Fill(nu.zTrkEnd, rw);
26864   TrkEndMap[pnum]->Fill(nu.xTrkEnd, nu.yTrkEnd, rw);
26865   
26866   TrkEn[qnum]->Fill(nu.trkEn, rw);
26867   TrueMuEn[qnum]->Fill(TMath::Abs(nu.trkEnMC), rw);
26868   En[qnum]->Fill(nu.energy, rw);
26869   ShwEn[qnum]->Fill(nu.shwEn, rw);
26870   RecoY[qnum]->Fill(nu.y,rw);
26871   Theta[qnum]->Fill(th, rw);
26872   TrkZEnd[qnum]->Fill(nu.zTrkEnd, rw);
26873   TrkEndMap[qnum]->Fill(nu.xTrkEnd, nu.yTrkEnd, rw);
26874 
26875   if (rnum > 0) {
26876     TrkEn[rnum]->Fill(nu.trkEn, rw);
26877     TrueMuEn[rnum]->Fill(TMath::Abs(nu.trkEnMC), rw);
26878     En[rnum]->Fill(nu.energy, rw);
26879     ShwEn[rnum]->Fill(nu.shwEn, rw);
26880     RecoY[rnum]->Fill(nu.y,rw);
26881     Theta[rnum]->Fill(th, rw);
26882     TrkZEnd[rnum]->Fill(nu.zTrkEnd, rw);
26883     TrkEndMap[rnum]->Fill(nu.xTrkEnd, nu.yTrkEnd, rw);
26884   }
26885 }

void NuPlots::FillCoilCurrentHistos const NuEvent nu  )  const
 

Definition at line 26404 of file NuPlots.cxx.

References NuEvent::coilCurrent, NuEvent::coilIsOk, and MAXMSG.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), and NuAnalysis::MakeFullDST().

26405 {
26406   static TH1F* hCoilCurrent=0;
26407   static TH1F* hCoilCurrentBad=0;
26408 
26409   if (!hCoilCurrent){
26410     MAXMSG("NuPlots",Msg::kDebug,1)
26411       <<"Creating CoilCurrent plots..."<<endl;
26412     
26413     hCoilCurrent=new TH1F("hCoilCurrent","hCoilCurrent",
26414                           4000,-10000,10000);
26415     hCoilCurrent->GetXaxis()->SetTitle("Coil current");
26416     hCoilCurrent->GetXaxis()->CenterTitle();
26417     hCoilCurrent->GetYaxis()->SetTitle("");
26418     hCoilCurrent->GetYaxis()->CenterTitle();
26419     //hCoilCurrent->SetBit(TH1::kCanRebin);
26420 
26421     hCoilCurrentBad=new TH1F("hCoilCurrentBad","hCoilCurrentBad",
26422                              4000,-10000,10000);
26423     hCoilCurrentBad->GetXaxis()->SetTitle("Coil current");
26424     hCoilCurrentBad->GetXaxis()->CenterTitle();
26425     hCoilCurrentBad->GetYaxis()->SetTitle("");
26426     hCoilCurrentBad->GetYaxis()->CenterTitle();
26427     //hCoilCurrentBad->SetBit(TH1::kCanRebin);
26428   }
26429 
26430   if (nu.coilIsOk) {
26431     hCoilCurrent->Fill(nu.coilCurrent);
26432   }
26433   else {
26434     hCoilCurrentBad->Fill(nu.coilCurrent);
26435   }
26436 }

void NuPlots::FillCoilHole const NuEvent nu  )  const
 

Definition at line 26890 of file NuPlots.cxx.

References FormatPlot(), NuEvent::planeTrkEnd, plots(), NuEvent::rw, NuEvent::simFlag, NuEvent::xTrkEnd, and NuEvent::yTrkEnd.

Referenced by NuDSTAna::CoilHoleAna().

26891 {
26892   static TString sim;
26893   static vector<TH1F*> plots;
26894   static bool firstRun = true;
26895   static double th[13] = {-90., -75., -60., -45., -30., -15., 0., 15., 30., 45., 60., 75., 90.};
26896         
26897   if( firstRun ) {
26898     firstRun = false;
26899     if (nu.simFlag == SimFlag::kMC) 
26900       sim = "MC";
26901     else
26902       sim = "DA";
26903                 
26904     TString name;
26905                 
26906     TString axis = "#theta = ";
26907     TString     theta;
26908 
26909     TString plane[4] = {"PartialV","PartialU","FullV","FullU"};
26910                 
26911     for (int i = 0; i < 13; i++) {
26912       name = "hCoilHole";
26913       name += sim;
26914       name += i;
26915                         
26916       theta = "";
26917       theta += th[i];
26918                         
26919       for (int j = 0; j < 4; j++) {
26920         plots.push_back(new TH1F(name+plane[j], name+plane[j],5000,-1,1));
26921         FormatPlot(plots.back(), axis+theta+" "+plane[j]);
26922       }
26923                 
26924 
26925     }
26926   }
26927 
26928         
26929   // Plane Numbering Conventions (from NueConventions.cxx)
26930   // make a lookup ptype to hold the type of each plane
26931   // 1 = v partial   2 = u partial
26932   // 3 = v full   4 = u full
26933   // 0 = uninstrumented 
26934 
26935   int pl = nu.planeTrkEnd;
26936   int ptype = 0;
26937         
26938   if(pl%2==0)      // a v plane
26939     ptype=1;
26940   else             // a u plane
26941     ptype=2;
26942   if((pl-1)%5 == 0)// fully instrumented
26943     ptype+=2;
26944   else if(pl > 120)// not instrumented
26945     ptype=0;
26946   if (pl > 281)    // plane does not exist
26947     ptype=0;
26948         
26949   if (ptype == 0) return;
26950         
26951   float t, r, ttr, rtr;
26952   int pnum;     
26953         
26954   if (nu.xTrkEnd*nu.xTrkEnd + nu.yTrkEnd*nu.yTrkEnd <   0.7*0.7) {
26955     for (int i = 0; i < 13; i++) {
26956       pnum = 4*i + ptype - 1;
26957 
26958       // Select on Transverse position +/- 5 cm
26959       ttr = TMath::DegToRad()*(th[i]+90.);
26960       rtr = TMath::Abs(nu.xTrkEnd*TMath::Cos(ttr) + nu.yTrkEnd*TMath::Sin(ttr));
26961 
26962       if (rtr < 0.05) {
26963         t = TMath::DegToRad()*th[i];
26964         r       = nu.xTrkEnd*TMath::Cos(t) + nu.yTrkEnd*TMath::Sin(t);
26965         plots[pnum]->Fill(r, nu.rw);
26966       }
26967     }
26968   }
26969 }

void NuPlots::FillContainmentHistos const NuEvent nu  )  const
 

Definition at line 7887 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::containmentFlag, NuEvent::distToEdgeEvtVtx, NuEvent::energy, NuEvent::energyMC, NuReco::GetRadius(), NuEvent::iaction, NuLibrary::Instance(), NuEvent::inu, MAXMSG, MSG, NuLibrary::reco, NuEvent::rw, NuEvent::shwEn, NuEvent::shwEn2MC, NuEvent::shwEnMC, NuEvent::simFlag, NuEvent::trkEn, NuEvent::trkEn2MC, NuEvent::trkEnCurv, NuEvent::trkEnMC, NuEvent::trkEnRange, NuEvent::vtxxMC, NuEvent::vtxyMC, NuEvent::vtxzMC, NuEvent::xEvtEnd, NuEvent::xEvtVtx, NuEvent::xTrkVtx, NuEvent::y, NuEvent::yEvtEnd, NuEvent::yEvtVtx, NuEvent::yMC, NuEvent::yTrkVtx, and NuEvent::zEvtVtx.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::ChargeSignCut(), NuAnalysis::EnergySpect(), NuAnalysis::LIRejectionTest(), NuDSTAna::MakeFinalPlots(), and NuAnalysis::NMBSummaryTreeAna().

07888 {
07889   static TH1F* hMuEnDiffPQ=0;
07890   static TH1F* hMuEnDiffRangePQ=0;
07891   static TH1F* hMuEnDiffRangePQ1=0;
07892   static TH1F* hMuEnDiffRangePQ2=0;
07893   static TH1F* hMuEnDiffRangePQ3=0;
07894   static TH1F* hMuEnDiffRangePQ4=0;
07895   static TH1F* hMuEnDiffCurvPQ=0;
07896   static TH1F* hMuEnDiffCurvPQ1=0;
07897   static TH1F* hMuEnDiffCurvPQ2=0;
07898   static TH1F* hMuEnDiffCurvPQ3=0;
07899   static TH1F* hMuEnDiffCurvPQ4=0;
07900 
07901   static TH1F* hMuEnDiffRangeR07PQ=0;
07902   static TH1F* hMuEnDiffRangeR07PQ1=0;
07903   static TH1F* hMuEnDiffRangeR07PQ2=0;
07904   static TH1F* hMuEnDiffRangeR07PQ3=0;
07905   static TH1F* hMuEnDiffRangeR07PQ4=0;
07906   static TH1F* hMuEnDiffCurvR07PQ=0;
07907   static TH1F* hMuEnDiffCurvR07PQ1=0;
07908   static TH1F* hMuEnDiffCurvR07PQ2=0;
07909   static TH1F* hMuEnDiffCurvR07PQ3=0;
07910   static TH1F* hMuEnDiffCurvR07PQ4=0;
07911 
07912   static TH1F* hShwEnDiffPQ=0;
07913   static TH1F* hShwEn2DiffPQ=0;
07914   static TH1F* hShwEnDiffPQ1=0;
07915   static TH1F* hShwEnDiffPQ2=0;
07916   static TH1F* hShwEnDiffPQ3=0;
07917   static TH1F* hShwEnDiffPQ4=0;
07918 
07919   static TH1F* hNuEnDiffPQ=0;
07920   static TH1F* hNuEnDiffPQ1=0;
07921   static TH1F* hNuEnDiffPQ2=0;
07922   static TH1F* hNuEnDiffPQ3=0;
07923   static TH1F* hNuEnDiffPQ4=0;
07924   static TH1F* hNuEnDiffCCPQ=0;
07925   static TH1F* hNuEnDiffNCPQ=0;
07926 
07927   static TH1F* hEvtVtxTDiffPQ=0;
07928   static TH1F* hEvtVtxZDiffPQ=0;
07929   static TH1F* hEvtVtxSDiffPQ=0;
07930   static TProfile* pEvtVtxTDiffVsDistPQ=0;
07931   static TProfile* pEvtVtxZDiffVsDistPQ=0;
07932   static TProfile* pEvtVtxSDiffVsDistPQ=0;
07933 
07934   //NQ
07935   static TH1F* hMuEnDiffNQ=0;
07936   static TH1F* hMuEnDiffRangeNQ=0;
07937   static TH1F* hMuEnDiffRangeNQ1=0;
07938   static TH1F* hMuEnDiffRangeNQ2=0;
07939   static TH1F* hMuEnDiffRangeNQ3=0;
07940   static TH1F* hMuEnDiffRangeNQ4=0;
07941   static TH1F* hMuEnDiffCurvNQ=0;
07942   static TH1F* hMuEnDiffCurvNQ1=0;
07943   static TH1F* hMuEnDiffCurvNQ2=0;
07944   static TH1F* hMuEnDiffCurvNQ3=0;
07945   static TH1F* hMuEnDiffCurvNQ4=0;
07946 
07947   static TH1F* hMuEnDiffRangeR07NQ=0;
07948   static TH1F* hMuEnDiffRangeR07NQ1=0;
07949   static TH1F* hMuEnDiffRangeR07NQ2=0;
07950   static TH1F* hMuEnDiffRangeR07NQ3=0;
07951   static TH1F* hMuEnDiffRangeR07NQ4=0;
07952   static TH1F* hMuEnDiffCurvR07NQ=0;
07953   static TH1F* hMuEnDiffCurvR07NQ1=0;
07954   static TH1F* hMuEnDiffCurvR07NQ2=0;
07955   static TH1F* hMuEnDiffCurvR07NQ3=0;
07956   static TH1F* hMuEnDiffCurvR07NQ4=0;
07957 
07958   static TH1F* hShwEnDiffNQ=0;
07959   static TH1F* hShwEn2DiffNQ=0;
07960   static TH1F* hShwEnDiffNQ1=0;
07961   static TH1F* hShwEnDiffNQ2=0;
07962   static TH1F* hShwEnDiffNQ3=0;
07963   static TH1F* hShwEnDiffNQ4=0;
07964 
07965   static TH1F* hShwEnDiffNQGeV1=0;
07966   static TH1F* hShwEnDiffNQGeV2=0;
07967   static TH1F* hShwEnDiffNQGeV3=0;
07968   static TH1F* hShwEnDiffNQGeV4=0;
07969   static TH1F* hShwEnDiffNQGeV5=0;
07970   static TH1F* hShwEnDiffNQGeV6=0;
07971 
07972   static TH1F* hNuEnDiffNQ=0;
07973   static TH1F* hNuEnDiffNQ1=0;
07974   static TH1F* hNuEnDiffNQ2=0;
07975   static TH1F* hNuEnDiffNQ3=0;
07976   static TH1F* hNuEnDiffNQ4=0;
07977   static TH1F* hNuEnDiffCCNQ=0;
07978   static TH1F* hNuEnDiffNCNQ=0;
07979 
07980   static TH1F* hEvtVtxTDiffNQ=0;
07981   static TH1F* hEvtVtxZDiffNQ=0;
07982   static TH1F* hEvtVtxSDiffNQ=0;
07983   static TProfile* pEvtVtxTDiffVsDistNQ=0;
07984   static TProfile* pEvtVtxZDiffVsDistNQ=0;
07985   static TProfile* pEvtVtxSDiffVsDistNQ=0;
07986 
07987   //y stuff
07988   static TH1F* hYDiffPQ=0;
07989   static TH1F* hYAbDiffPQ=0;
07990   static TH1F* hMuYDiffMCPQ=0;
07991   static TH1F* hShwYDiffMCPQ=0;
07992   static TH1F* hMuYAbDiffMCPQ=0;
07993   static TH1F* hShwYAbDiffMCPQ=0;
07994   
07995   static TH1F* hYDiffNQ=0;
07996   static TH1F* hYAbDiffNQ=0;
07997   static TH1F* hMuYDiffMCNQ=0;
07998   static TH1F* hShwYDiffMCNQ=0;
07999   static TH1F* hMuYAbDiffMCNQ=0;
08000   static TH1F* hShwYAbDiffMCNQ=0;
08001 
08002   static TProfile* pNuEnDiff20NQ=0;
08003   static TProfile* pNuEnDiff10NQ=0;
08004   static TProfile* pNuEnDiff05NQ=0;
08005   static TProfile* pMuEnDiff20NQ=0;
08006   static TProfile* pMuEnDiff10NQ=0;
08007   static TProfile* pMuEnDiff05NQ=0;
08008   static TProfile* pShwEnDiff20NQ=0;
08009   static TProfile* pShwEnDiff10NQ=0;
08010   static TProfile* pShwEnDiff05NQ=0;
08011 
08012 
08013   static TProfile* pNuEnDiff20PQ=0;
08014   static TProfile* pNuEnDiff10PQ=0;
08015   static TProfile* pNuEnDiff05PQ=0;
08016   static TProfile* pMuEnDiff20PQ=0;
08017   static TProfile* pMuEnDiff10PQ=0;
08018   static TProfile* pMuEnDiff05PQ=0;
08019   static TProfile* pShwEnDiff20PQ=0;
08020   static TProfile* pShwEnDiff10PQ=0;
08021   static TProfile* pShwEnDiff05PQ=0;
08022 
08023 
08024   static TH2F* hShwVsNuEnNQ=0;
08025   static TH2F* hShwVsNuEnPQ=0;
08026   static TH2F* hShwVsNuEnAllNQ=0;
08027   static TH2F* hShwVsNuEnAllPQ=0;
08028   
08029 
08030   //fid vol shower stuff
08031   static TProfile* pShwEnDiffVsDistAllPQ=0;
08032   static TProfile* pShwEnDiffVsDistl05PQ=0;
08033   static TProfile* pShwEnDiffVsDistg05l10PQ=0;
08034   static TProfile* pShwEnDiffVsDistg10l20PQ=0;
08035   static TProfile* pShwEnDiffVsDistg20PQ=0;
08036   static TProfile* pShwEnVsDistPQ=0;
08037 
08038   static TH1F* hEvtsVsDistAllRl75PQ=0;
08039   static TH1F* hEvtsVsDistAllRl50PQ=0;
08040   static TH1F* hEvtsVsDistAllPQ=0;
08041   static TH1F* hEvtsVsDistl05PQ=0;
08042   static TH1F* hEvtsVsDistg05l10PQ=0;
08043   static TH1F* hEvtsVsDistg10l20PQ=0;
08044   static TH1F* hEvtsVsDistg20PQ=0;
08045 
08046   static TProfile* pShwEnDiffVsDistAllNQ=0;
08047   static TProfile* pShwEnDiffVsDistl05NQ=0;
08048   static TProfile* pShwEnDiffVsDistg05l10NQ=0;
08049   static TProfile* pShwEnDiffVsDistg10l20NQ=0;
08050   static TProfile* pShwEnDiffVsDistg20NQ=0;
08051   static TProfile* pShwEnVsDistNQ=0;
08052 
08053   static TH1F* hEvtsVsDistAllRl75NQ=0;
08054   static TH1F* hEvtsVsDistAllRl50NQ=0;
08055   static TH1F* hEvtsVsDistAllNQ=0;
08056   static TH1F* hEvtsVsDistl05NQ=0;
08057   static TH1F* hEvtsVsDistg05l10NQ=0;
08058   static TH1F* hEvtsVsDistg10l20NQ=0;
08059   static TH1F* hEvtsVsDistg20NQ=0;
08060 
08061   if(!hMuEnDiffRangePQ){
08062     
08063     //PQ, was 440,-1.1,1.1
08064     hMuEnDiffPQ=new TH1F("hMuEnDiffPQ","hMuEnDiffPQ",
08065                          4*160,-1.6,1.6);
08066     hMuEnDiffPQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08067     hMuEnDiffPQ->GetXaxis()->CenterTitle();
08068     hMuEnDiffPQ->GetYaxis()->SetTitle("");
08069     hMuEnDiffPQ->GetYaxis()->CenterTitle();
08070     //hMuEnDiffPQ->SetBit(TH1::kCanRebin);
08071 
08072     hMuEnDiffRangePQ=new TH1F("hMuEnDiffRangePQ","hMuEnDiffRangePQ",
08073                               4*160,-1.6,1.6);
08074     hMuEnDiffRangePQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08075     hMuEnDiffRangePQ->GetXaxis()->CenterTitle();
08076     hMuEnDiffRangePQ->GetYaxis()->SetTitle("");
08077     hMuEnDiffRangePQ->GetYaxis()->CenterTitle();
08078     //hMuEnDiffRangePQ->SetBit(TH1::kCanRebin);
08079 
08080     hMuEnDiffRangePQ1=new TH1F("hMuEnDiffRangePQ1","hMuEnDiffRangePQ1",
08081                                4*160,-1.6,1.6);
08082     hMuEnDiffRangePQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08083     hMuEnDiffRangePQ1->GetXaxis()->CenterTitle();
08084     hMuEnDiffRangePQ1->GetYaxis()->SetTitle("");
08085     hMuEnDiffRangePQ1->GetYaxis()->CenterTitle();
08086     //hMuEnDiffRangePQ1->SetBit(TH1::kCanRebin);
08087 
08088     hMuEnDiffRangePQ2=new TH1F("hMuEnDiffRangePQ2","hMuEnDiffRangePQ2",
08089                                4*160,-1.6,1.6);
08090     hMuEnDiffRangePQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08091     hMuEnDiffRangePQ2->GetXaxis()->CenterTitle();
08092     hMuEnDiffRangePQ2->GetYaxis()->SetTitle("");
08093     hMuEnDiffRangePQ2->GetYaxis()->CenterTitle();
08094     //hMuEnDiffRangePQ2->SetBit(TH1::kCanRebin);
08095 
08096     hMuEnDiffRangePQ3=new TH1F("hMuEnDiffRangePQ3","hMuEnDiffRangePQ3",
08097                                4*160,-1.6,1.6);
08098     hMuEnDiffRangePQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08099     hMuEnDiffRangePQ3->GetXaxis()->CenterTitle();
08100     hMuEnDiffRangePQ3->GetYaxis()->SetTitle("");
08101     hMuEnDiffRangePQ3->GetYaxis()->CenterTitle();
08102     //hMuEnDiffRangePQ3->SetBit(TH1::kCanRebin);
08103 
08104     hMuEnDiffRangePQ4=new TH1F("hMuEnDiffRangePQ4","hMuEnDiffRangePQ4",
08105                                4*160,-1.6,1.6);
08106     hMuEnDiffRangePQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08107     hMuEnDiffRangePQ4->GetXaxis()->CenterTitle();
08108     hMuEnDiffRangePQ4->GetYaxis()->SetTitle("");
08109     hMuEnDiffRangePQ4->GetYaxis()->CenterTitle();
08110     //hMuEnDiffRangePQ4->SetBit(TH1::kCanRebin);
08111 
08112 
08113 
08114     hMuEnDiffCurvPQ=new TH1F("hMuEnDiffCurvPQ","hMuEnDiffCurvPQ",
08115                              4*160,-1.6,1.6);
08116     hMuEnDiffCurvPQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08117     hMuEnDiffCurvPQ->GetXaxis()->CenterTitle();
08118     hMuEnDiffCurvPQ->GetYaxis()->SetTitle("");
08119     hMuEnDiffCurvPQ->GetYaxis()->CenterTitle();
08120     //hMuEnDiffCurvPQ->SetBit(TH1::kCanRebin);
08121 
08122     hMuEnDiffCurvPQ1=new TH1F("hMuEnDiffCurvPQ1","hMuEnDiffCurvPQ1",
08123                               4*160,-1.6,1.6);
08124     hMuEnDiffCurvPQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08125     hMuEnDiffCurvPQ1->GetXaxis()->CenterTitle();
08126     hMuEnDiffCurvPQ1->GetYaxis()->SetTitle("");
08127     hMuEnDiffCurvPQ1->GetYaxis()->CenterTitle();
08128     //hMuEnDiffCurvPQ1->SetBit(TH1::kCanRebin);
08129 
08130     hMuEnDiffCurvPQ2=new TH1F("hMuEnDiffCurvPQ2","hMuEnDiffCurvPQ2",
08131                               4*160,-1.6,1.6);
08132     hMuEnDiffCurvPQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08133     hMuEnDiffCurvPQ2->GetXaxis()->CenterTitle();
08134     hMuEnDiffCurvPQ2->GetYaxis()->SetTitle("");
08135     hMuEnDiffCurvPQ2->GetYaxis()->CenterTitle();
08136     //hMuEnDiffCurvPQ2->SetBit(TH1::kCanRebin);
08137 
08138     hMuEnDiffCurvPQ3=new TH1F("hMuEnDiffCurvPQ3","hMuEnDiffCurvPQ3",
08139                               4*160,-1.6,1.6);
08140     hMuEnDiffCurvPQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08141     hMuEnDiffCurvPQ3->GetXaxis()->CenterTitle();
08142     hMuEnDiffCurvPQ3->GetYaxis()->SetTitle("");
08143     hMuEnDiffCurvPQ3->GetYaxis()->CenterTitle();
08144     //hMuEnDiffCurvPQ3->SetBit(TH1::kCanRebin);
08145 
08146     hMuEnDiffCurvPQ4=new TH1F("hMuEnDiffCurvPQ4","hMuEnDiffCurvPQ4",
08147                               4*160,-1.6,1.6);
08148     hMuEnDiffCurvPQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08149     hMuEnDiffCurvPQ4->GetXaxis()->CenterTitle();
08150     hMuEnDiffCurvPQ4->GetYaxis()->SetTitle("");
08151     hMuEnDiffCurvPQ4->GetYaxis()->CenterTitle();
08152     //hMuEnDiffCurvPQ4->SetBit(TH1::kCanRebin);
08153 
08154 
08155 
08156     hMuEnDiffRangeR07PQ=new TH1F("hMuEnDiffRangeR07PQ",
08157                                  "hMuEnDiffRangeR07PQ",
08158                                  4*160,-1.6,1.6);
08159     hMuEnDiffRangeR07PQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08160     hMuEnDiffRangeR07PQ->GetXaxis()->CenterTitle();
08161     hMuEnDiffRangeR07PQ->GetYaxis()->SetTitle("");
08162     hMuEnDiffRangeR07PQ->GetYaxis()->CenterTitle();
08163     //hMuEnDiffRangeR07PQ->SetBit(TH1::kCanRebin);
08164 
08165     hMuEnDiffRangeR07PQ1=new TH1F("hMuEnDiffRangeR07PQ1",
08166                                   "hMuEnDiffRangeR07PQ1",
08167                                   4*160,-1.6,1.6);
08168     hMuEnDiffRangeR07PQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08169     hMuEnDiffRangeR07PQ1->GetXaxis()->CenterTitle();
08170     hMuEnDiffRangeR07PQ1->GetYaxis()->SetTitle("");
08171     hMuEnDiffRangeR07PQ1->GetYaxis()->CenterTitle();
08172     //hMuEnDiffRangeR07PQ1->SetBit(TH1::kCanRebin);
08173 
08174     hMuEnDiffRangeR07PQ2=new TH1F("hMuEnDiffRangeR07PQ2",
08175                                   "hMuEnDiffRangeR07PQ2",
08176                                   4*160,-1.6,1.6);
08177     hMuEnDiffRangeR07PQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08178     hMuEnDiffRangeR07PQ2->GetXaxis()->CenterTitle();
08179     hMuEnDiffRangeR07PQ2->GetYaxis()->SetTitle("");
08180     hMuEnDiffRangeR07PQ2->GetYaxis()->CenterTitle();
08181     //hMuEnDiffRangeR07PQ2->SetBit(TH1::kCanRebin);
08182 
08183     hMuEnDiffRangeR07PQ3=new TH1F("hMuEnDiffRangeR07PQ3",
08184                                   "hMuEnDiffRangeR07PQ3",
08185                                   4*160,-1.6,1.6);
08186     hMuEnDiffRangeR07PQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08187     hMuEnDiffRangeR07PQ3->GetXaxis()->CenterTitle();
08188     hMuEnDiffRangeR07PQ3->GetYaxis()->SetTitle("");
08189     hMuEnDiffRangeR07PQ3->GetYaxis()->CenterTitle();
08190     //hMuEnDiffRangeR07PQ3->SetBit(TH1::kCanRebin);
08191 
08192     hMuEnDiffRangeR07PQ4=new TH1F("hMuEnDiffRangeR07PQ4",
08193                                   "hMuEnDiffRangeR07PQ4",
08194                                   4*160,-1.6,1.6);
08195     hMuEnDiffRangeR07PQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08196     hMuEnDiffRangeR07PQ4->GetXaxis()->CenterTitle();
08197     hMuEnDiffRangeR07PQ4->GetYaxis()->SetTitle("");
08198     hMuEnDiffRangeR07PQ4->GetYaxis()->CenterTitle();
08199     //hMuEnDiffRangeR07PQ4->SetBit(TH1::kCanRebin);
08200 
08201 
08202 
08203     hMuEnDiffCurvR07PQ=new TH1F("hMuEnDiffCurvR07PQ",
08204                                 "hMuEnDiffCurvR07PQ",
08205                                 4*160,-1.6,1.6);
08206     hMuEnDiffCurvR07PQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08207     hMuEnDiffCurvR07PQ->GetXaxis()->CenterTitle();
08208     hMuEnDiffCurvR07PQ->GetYaxis()->SetTitle("");
08209     hMuEnDiffCurvR07PQ->GetYaxis()->CenterTitle();
08210     //hMuEnDiffCurvR07PQ->SetBit(TH1::kCanRebin);
08211 
08212     hMuEnDiffCurvR07PQ1=new TH1F("hMuEnDiffCurvR07PQ1",
08213                                  "hMuEnDiffCurvR07PQ1",
08214                                  4*160,-1.6,1.6);
08215     hMuEnDiffCurvR07PQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08216     hMuEnDiffCurvR07PQ1->GetXaxis()->CenterTitle();
08217     hMuEnDiffCurvR07PQ1->GetYaxis()->SetTitle("");
08218     hMuEnDiffCurvR07PQ1->GetYaxis()->CenterTitle();
08219     //hMuEnDiffCurvR07PQ1->SetBit(TH1::kCanRebin);
08220 
08221     hMuEnDiffCurvR07PQ2=new TH1F("hMuEnDiffCurvR07PQ2",
08222                                  "hMuEnDiffCurvR07PQ2",
08223                                  4*160,-1.6,1.6);
08224     hMuEnDiffCurvR07PQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08225     hMuEnDiffCurvR07PQ2->GetXaxis()->CenterTitle();
08226     hMuEnDiffCurvR07PQ2->GetYaxis()->SetTitle("");
08227     hMuEnDiffCurvR07PQ2->GetYaxis()->CenterTitle();
08228     //hMuEnDiffCurvR07PQ2->SetBit(TH1::kCanRebin);
08229 
08230     hMuEnDiffCurvR07PQ3=new TH1F("hMuEnDiffCurvR07PQ3",
08231                                  "hMuEnDiffCurvR07PQ3",
08232                                  4*160,-1.6,1.6);
08233     hMuEnDiffCurvR07PQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08234     hMuEnDiffCurvR07PQ3->GetXaxis()->CenterTitle();
08235     hMuEnDiffCurvR07PQ3->GetYaxis()->SetTitle("");
08236     hMuEnDiffCurvR07PQ3->GetYaxis()->CenterTitle();
08237     //hMuEnDiffCurvR07PQ3->SetBit(TH1::kCanRebin);
08238 
08239     hMuEnDiffCurvR07PQ4=new TH1F("hMuEnDiffCurvR07PQ4",
08240                                  "hMuEnDiffCurvR07PQ4",
08241                                  4*160,-1.6,1.6);
08242     hMuEnDiffCurvR07PQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08243     hMuEnDiffCurvR07PQ4->GetXaxis()->CenterTitle();
08244     hMuEnDiffCurvR07PQ4->GetYaxis()->SetTitle("");
08245     hMuEnDiffCurvR07PQ4->GetYaxis()->CenterTitle();
08246     //hMuEnDiffCurvR07PQ4->SetBit(TH1::kCanRebin);
08247 
08248 
08249 
08250     hShwEnDiffPQ=new TH1F("hShwEnDiffPQ","hShwEnDiffPQ",
08251                           4*160,-1.6,1.6);
08252     hShwEnDiffPQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08253     hShwEnDiffPQ->GetXaxis()->CenterTitle();
08254     hShwEnDiffPQ->GetYaxis()->SetTitle("");
08255     hShwEnDiffPQ->GetYaxis()->CenterTitle();
08256     //hShwEnDiffPQ->SetBit(TH1::kCanRebin);
08257     
08258     hShwEn2DiffPQ=new TH1F("hShwEn2DiffPQ","hShwEn2DiffPQ",
08259                            4*160,-1.6,1.6);
08260     hShwEn2DiffPQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08261     hShwEn2DiffPQ->GetXaxis()->CenterTitle();
08262     hShwEn2DiffPQ->GetYaxis()->SetTitle("");
08263     hShwEn2DiffPQ->GetYaxis()->CenterTitle();
08264     //hShwEn2DiffPQ->SetBit(TH1::kCanRebin);
08265 
08266     hShwEnDiffPQ1=new TH1F("hShwEnDiffPQ1","hShwEnDiffPQ1",
08267                            4*160,-1.6,1.6);
08268     hShwEnDiffPQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08269     hShwEnDiffPQ1->GetXaxis()->CenterTitle();
08270     hShwEnDiffPQ1->GetYaxis()->SetTitle("");
08271     hShwEnDiffPQ1->GetYaxis()->CenterTitle();
08272     //hShwEnDiffPQ1->SetBit(TH1::kCanRebin);
08273 
08274     hShwEnDiffPQ2=new TH1F("hShwEnDiffPQ2","hShwEnDiffPQ2",
08275                            4*160,-1.6,1.6);
08276     hShwEnDiffPQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08277     hShwEnDiffPQ2->GetXaxis()->CenterTitle();
08278     hShwEnDiffPQ2->GetYaxis()->SetTitle("");
08279     hShwEnDiffPQ2->GetYaxis()->CenterTitle();
08280     //hShwEnDiffPQ2->SetBit(TH1::kCanRebin);
08281 
08282     hShwEnDiffPQ3=new TH1F("hShwEnDiffPQ3","hShwEnDiffPQ3",
08283                            4*160,-1.6,1.6);
08284     hShwEnDiffPQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08285     hShwEnDiffPQ3->GetXaxis()->CenterTitle();
08286     hShwEnDiffPQ3->GetYaxis()->SetTitle("");
08287     hShwEnDiffPQ3->GetYaxis()->CenterTitle();
08288     //hShwEnDiffPQ3->SetBit(TH1::kCanRebin);
08289 
08290     hShwEnDiffPQ4=new TH1F("hShwEnDiffPQ4","hShwEnDiffPQ4",
08291                            4*160,-1.6,1.6);
08292     hShwEnDiffPQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08293     hShwEnDiffPQ4->GetXaxis()->CenterTitle();
08294     hShwEnDiffPQ4->GetYaxis()->SetTitle("");
08295     hShwEnDiffPQ4->GetYaxis()->CenterTitle();
08296     //hShwEnDiffPQ4->SetBit(TH1::kCanRebin);
08297 
08298 
08299 
08300     hNuEnDiffPQ=new TH1F("hNuEnDiffPQ","hNuEnDiffPQ",
08301                          4*160,-1.6,1.6);
08302     hNuEnDiffPQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08303     hNuEnDiffPQ->GetXaxis()->CenterTitle();
08304     hNuEnDiffPQ->GetYaxis()->SetTitle("");
08305     hNuEnDiffPQ->GetYaxis()->CenterTitle();
08306     //hNuEnDiffPQ->SetBit(TH1::kCanRebin);
08307 
08308     hNuEnDiffCCPQ=new TH1F("hNuEnDiffCCPQ","hNuEnDiffCCPQ",
08309                            4*160,-1.6,1.6);
08310     hNuEnDiffCCPQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08311     hNuEnDiffCCPQ->GetXaxis()->CenterTitle();
08312     hNuEnDiffCCPQ->GetYaxis()->SetTitle("");
08313     hNuEnDiffCCPQ->GetYaxis()->CenterTitle();
08314     //hNuEnDiffCCPQ->SetBit(TH1::kCanRebin);
08315 
08316     hNuEnDiffNCPQ=new TH1F("hNuEnDiffNCPQ","hNuEnDiffNCPQ",
08317                            4*160,-1.6,1.6);
08318     hNuEnDiffNCPQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08319     hNuEnDiffNCPQ->GetXaxis()->CenterTitle();
08320     hNuEnDiffNCPQ->GetYaxis()->SetTitle("");
08321     hNuEnDiffNCPQ->GetYaxis()->CenterTitle();
08322     //hNuEnDiffNCPQ->SetBit(TH1::kCanRebin);
08323 
08324     hNuEnDiffPQ1=new TH1F("hNuEnDiffPQ1","hNuEnDiffPQ1",
08325                           4*160,-1.6,1.6);
08326     hNuEnDiffPQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08327     hNuEnDiffPQ1->GetXaxis()->CenterTitle();
08328     hNuEnDiffPQ1->GetYaxis()->SetTitle("");
08329     hNuEnDiffPQ1->GetYaxis()->CenterTitle();
08330     //hNuEnDiffPQ1->SetBit(TH1::kCanRebin);
08331 
08332     hNuEnDiffPQ2=new TH1F("hNuEnDiffPQ2","hNuEnDiffPQ2",
08333                           4*160,-1.6,1.6);
08334     hNuEnDiffPQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08335     hNuEnDiffPQ2->GetXaxis()->CenterTitle();
08336     hNuEnDiffPQ2->GetYaxis()->SetTitle("");
08337     hNuEnDiffPQ2->GetYaxis()->CenterTitle();
08338     //hNuEnDiffPQ2->SetBit(TH1::kCanRebin);
08339 
08340     hNuEnDiffPQ3=new TH1F("hNuEnDiffPQ3","hNuEnDiffPQ3",
08341                           4*160,-1.6,1.6);
08342     hNuEnDiffPQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08343     hNuEnDiffPQ3->GetXaxis()->CenterTitle();
08344     hNuEnDiffPQ3->GetYaxis()->SetTitle("");
08345     hNuEnDiffPQ3->GetYaxis()->CenterTitle();
08346     //hNuEnDiffPQ3->SetBit(TH1::kCanRebin);
08347 
08348     hNuEnDiffPQ4=new TH1F("hNuEnDiffPQ4","hNuEnDiffPQ4",
08349                           4*160,-1.6,1.6);
08350     hNuEnDiffPQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08351     hNuEnDiffPQ4->GetXaxis()->CenterTitle();
08352     hNuEnDiffPQ4->GetYaxis()->SetTitle("");
08353     hNuEnDiffPQ4->GetYaxis()->CenterTitle();
08354     //hNuEnDiffPQ4->SetBit(TH1::kCanRebin);
08355 
08356 
08357     hEvtVtxTDiffPQ=new TH1F("hEvtVtxTDiffPQ","hEvtVtxTDiffPQ",
08358                             1000,-5,5);
08359     hEvtVtxTDiffPQ->GetXaxis()->SetTitle("Evt Vtx Reco-True Transverse Position (m)");
08360     hEvtVtxTDiffPQ->GetXaxis()->CenterTitle();
08361     hEvtVtxTDiffPQ->GetYaxis()->SetTitle("");
08362     hEvtVtxTDiffPQ->GetYaxis()->CenterTitle();
08363     //hEvtVtxTDiffPQ->SetBit(TH1::kCanRebin);
08364 
08365     hEvtVtxZDiffPQ=new TH1F("hEvtVtxZDiffPQ","hEvtVtxZDiffPQ",
08366                             1000,-5,5);
08367     hEvtVtxZDiffPQ->GetXaxis()->SetTitle("Evt Vtx Reco-True Z Position (m)");
08368     hEvtVtxZDiffPQ->GetXaxis()->CenterTitle();
08369     hEvtVtxZDiffPQ->GetYaxis()->SetTitle("");
08370     hEvtVtxZDiffPQ->GetYaxis()->CenterTitle();
08371     //hEvtVtxZDiffPQ->SetBit(TH1::kCanRebin);
08372 
08373     hEvtVtxSDiffPQ=new TH1F("hEvtVtxSDiffPQ","hEvtVtxSDiffPQ",
08374                             1000,-5,5);
08375     hEvtVtxSDiffPQ->GetXaxis()->SetTitle("Evt Vtx Reco-True S Position (m)");
08376     hEvtVtxSDiffPQ->GetXaxis()->CenterTitle();
08377     hEvtVtxSDiffPQ->GetYaxis()->SetTitle("");
08378     hEvtVtxSDiffPQ->GetYaxis()->CenterTitle();
08379     //hEvtVtxSDiffPQ->SetBit(TH1::kCanRebin);
08380 
08381     pEvtVtxTDiffVsDistPQ=new TProfile
08382       ("pEvtVtxTDiffVsDistPQ","pEvtVtxTDiffVsDistPQ",60,-3,3);
08383     pEvtVtxTDiffVsDistPQ->GetXaxis()->SetTitle("Distance to Edge (m)");
08384     pEvtVtxTDiffVsDistPQ->GetXaxis()->CenterTitle();
08385     pEvtVtxTDiffVsDistPQ->GetYaxis()->SetTitle("Evt Vtx Reco-True Trans. Position (m)");
08386     pEvtVtxTDiffVsDistPQ->GetYaxis()->CenterTitle();
08387 
08388     pEvtVtxZDiffVsDistPQ=new TProfile
08389       ("pEvtVtxZDiffVsDistPQ","pEvtVtxZDiffVsDistPQ",60,-3,3);
08390     pEvtVtxZDiffVsDistPQ->GetXaxis()->SetTitle("Distance to Edge (m)");
08391     pEvtVtxZDiffVsDistPQ->GetXaxis()->CenterTitle();
08392     pEvtVtxZDiffVsDistPQ->GetYaxis()->SetTitle("Evt Vtx Reco-True Z Position (m)");
08393     pEvtVtxZDiffVsDistPQ->GetYaxis()->CenterTitle();
08394 
08395     pEvtVtxSDiffVsDistPQ=new TProfile
08396       ("pEvtVtxSDiffVsDistPQ","pEvtVtxSDiffVsDistPQ",60,-3,3);
08397     pEvtVtxSDiffVsDistPQ->GetXaxis()->SetTitle("Distance to Edge (m)");
08398     pEvtVtxSDiffVsDistPQ->GetXaxis()->CenterTitle();
08399     pEvtVtxSDiffVsDistPQ->GetYaxis()->SetTitle("Evt Vtx Reco-True S Position (m)");
08400     pEvtVtxSDiffVsDistPQ->GetYaxis()->CenterTitle();
08401 
08402 
08404     //NQ
08406     hMuEnDiffNQ=new TH1F("hMuEnDiffNQ","hMuEnDiffNQ",
08407                          4*160,-1.6,1.6);
08408     hMuEnDiffNQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08409     hMuEnDiffNQ->GetXaxis()->CenterTitle();
08410     hMuEnDiffNQ->GetYaxis()->SetTitle("");
08411     hMuEnDiffNQ->GetYaxis()->CenterTitle();
08412     //hMuEnDiffNQ->SetBit(TH1::kCanRebin);
08413 
08414     hMuEnDiffRangeNQ=new TH1F("hMuEnDiffRangeNQ","hMuEnDiffRangeNQ",
08415                               4*160,-1.6,1.6);
08416     hMuEnDiffRangeNQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08417     hMuEnDiffRangeNQ->GetXaxis()->CenterTitle();
08418     hMuEnDiffRangeNQ->GetYaxis()->SetTitle("");
08419     hMuEnDiffRangeNQ->GetYaxis()->CenterTitle();
08420     //hMuEnDiffRangeNQ->SetBit(TH1::kCanRebin);
08421 
08422     hMuEnDiffRangeNQ1=new TH1F("hMuEnDiffRangeNQ1","hMuEnDiffRangeNQ1",
08423                                4*160,-1.6,1.6);
08424     hMuEnDiffRangeNQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08425     hMuEnDiffRangeNQ1->GetXaxis()->CenterTitle();
08426     hMuEnDiffRangeNQ1->GetYaxis()->SetTitle("");
08427     hMuEnDiffRangeNQ1->GetYaxis()->CenterTitle();
08428     //hMuEnDiffRangeNQ1->SetBit(TH1::kCanRebin);
08429 
08430     hMuEnDiffRangeNQ2=new TH1F("hMuEnDiffRangeNQ2","hMuEnDiffRangeNQ2",
08431                                4*160,-1.6,1.6);
08432     hMuEnDiffRangeNQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08433     hMuEnDiffRangeNQ2->GetXaxis()->CenterTitle();
08434     hMuEnDiffRangeNQ2->GetYaxis()->SetTitle("");
08435     hMuEnDiffRangeNQ2->GetYaxis()->CenterTitle();
08436     //hMuEnDiffRangeNQ2->SetBit(TH1::kCanRebin);
08437 
08438     hMuEnDiffRangeNQ3=new TH1F("hMuEnDiffRangeNQ3","hMuEnDiffRangeNQ3",
08439                                4*160,-1.6,1.6);
08440     hMuEnDiffRangeNQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08441     hMuEnDiffRangeNQ3->GetXaxis()->CenterTitle();
08442     hMuEnDiffRangeNQ3->GetYaxis()->SetTitle("");
08443     hMuEnDiffRangeNQ3->GetYaxis()->CenterTitle();
08444     //hMuEnDiffRangeNQ3->SetBit(TH1::kCanRebin);
08445 
08446     hMuEnDiffRangeNQ4=new TH1F("hMuEnDiffRangeNQ4","hMuEnDiffRangeNQ4",
08447                                4*160,-1.6,1.6);
08448     hMuEnDiffRangeNQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08449     hMuEnDiffRangeNQ4->GetXaxis()->CenterTitle();
08450     hMuEnDiffRangeNQ4->GetYaxis()->SetTitle("");
08451     hMuEnDiffRangeNQ4->GetYaxis()->CenterTitle();
08452     //hMuEnDiffRangeNQ4->SetBit(TH1::kCanRebin);
08453 
08454 
08455 
08456     hMuEnDiffCurvNQ=new TH1F("hMuEnDiffCurvNQ","hMuEnDiffCurvNQ",
08457                              4*160,-1.6,1.6);
08458     hMuEnDiffCurvNQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08459     hMuEnDiffCurvNQ->GetXaxis()->CenterTitle();
08460     hMuEnDiffCurvNQ->GetYaxis()->SetTitle("");
08461     hMuEnDiffCurvNQ->GetYaxis()->CenterTitle();
08462     //hMuEnDiffCurvNQ->SetBit(TH1::kCanRebin);
08463 
08464     hMuEnDiffCurvNQ1=new TH1F("hMuEnDiffCurvNQ1","hMuEnDiffCurvNQ1",
08465                               4*160,-1.6,1.6);
08466     hMuEnDiffCurvNQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08467     hMuEnDiffCurvNQ1->GetXaxis()->CenterTitle();
08468     hMuEnDiffCurvNQ1->GetYaxis()->SetTitle("");
08469     hMuEnDiffCurvNQ1->GetYaxis()->CenterTitle();
08470     //hMuEnDiffCurvNQ1->SetBit(TH1::kCanRebin);
08471 
08472     hMuEnDiffCurvNQ2=new TH1F("hMuEnDiffCurvNQ2","hMuEnDiffCurvNQ2",
08473                               4*160,-1.6,1.6);
08474     hMuEnDiffCurvNQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08475     hMuEnDiffCurvNQ2->GetXaxis()->CenterTitle();
08476     hMuEnDiffCurvNQ2->GetYaxis()->SetTitle("");
08477     hMuEnDiffCurvNQ2->GetYaxis()->CenterTitle();
08478     //hMuEnDiffCurvNQ2->SetBit(TH1::kCanRebin);
08479 
08480     hMuEnDiffCurvNQ3=new TH1F("hMuEnDiffCurvNQ3","hMuEnDiffCurvNQ3",
08481                               4*160,-1.6,1.6);
08482     hMuEnDiffCurvNQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08483     hMuEnDiffCurvNQ3->GetXaxis()->CenterTitle();
08484     hMuEnDiffCurvNQ3->GetYaxis()->SetTitle("");
08485     hMuEnDiffCurvNQ3->GetYaxis()->CenterTitle();
08486     //hMuEnDiffCurvNQ3->SetBit(TH1::kCanRebin);
08487 
08488     hMuEnDiffCurvNQ4=new TH1F("hMuEnDiffCurvNQ4","hMuEnDiffCurvNQ4",
08489                               4*160,-1.6,1.6);
08490     hMuEnDiffCurvNQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08491     hMuEnDiffCurvNQ4->GetXaxis()->CenterTitle();
08492     hMuEnDiffCurvNQ4->GetYaxis()->SetTitle("");
08493     hMuEnDiffCurvNQ4->GetYaxis()->CenterTitle();
08494     //hMuEnDiffCurvNQ4->SetBit(TH1::kCanRebin);
08495 
08496 
08497 
08498     hMuEnDiffRangeR07NQ=new TH1F("hMuEnDiffRangeR07NQ",
08499                                  "hMuEnDiffRangeR07NQ",
08500                                  4*160,-1.6,1.6);
08501     hMuEnDiffRangeR07NQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08502     hMuEnDiffRangeR07NQ->GetXaxis()->CenterTitle();
08503     hMuEnDiffRangeR07NQ->GetYaxis()->SetTitle("");
08504     hMuEnDiffRangeR07NQ->GetYaxis()->CenterTitle();
08505     //hMuEnDiffRangeR07NQ->SetBit(TH1::kCanRebin);
08506 
08507     hMuEnDiffRangeR07NQ1=new TH1F("hMuEnDiffRangeR07NQ1",
08508                                   "hMuEnDiffRangeR07NQ1",
08509                                   4*160,-1.6,1.6);
08510     hMuEnDiffRangeR07NQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08511     hMuEnDiffRangeR07NQ1->GetXaxis()->CenterTitle();
08512     hMuEnDiffRangeR07NQ1->GetYaxis()->SetTitle("");
08513     hMuEnDiffRangeR07NQ1->GetYaxis()->CenterTitle();
08514     //hMuEnDiffRangeR07NQ1->SetBit(TH1::kCanRebin);
08515 
08516     hMuEnDiffRangeR07NQ2=new TH1F("hMuEnDiffRangeR07NQ2",
08517                                   "hMuEnDiffRangeR07NQ2",
08518                                   4*160,-1.6,1.6);
08519     hMuEnDiffRangeR07NQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08520     hMuEnDiffRangeR07NQ2->GetXaxis()->CenterTitle();
08521     hMuEnDiffRangeR07NQ2->GetYaxis()->SetTitle("");
08522     hMuEnDiffRangeR07NQ2->GetYaxis()->CenterTitle();
08523     //hMuEnDiffRangeR07NQ2->SetBit(TH1::kCanRebin);
08524 
08525     hMuEnDiffRangeR07NQ3=new TH1F("hMuEnDiffRangeR07NQ3",
08526                                   "hMuEnDiffRangeR07NQ3",
08527                                   4*160,-1.6,1.6);
08528     hMuEnDiffRangeR07NQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08529     hMuEnDiffRangeR07NQ3->GetXaxis()->CenterTitle();
08530     hMuEnDiffRangeR07NQ3->GetYaxis()->SetTitle("");
08531     hMuEnDiffRangeR07NQ3->GetYaxis()->CenterTitle();
08532     //hMuEnDiffRangeR07NQ3->SetBit(TH1::kCanRebin);
08533 
08534     hMuEnDiffRangeR07NQ4=new TH1F("hMuEnDiffRangeR07NQ4",
08535                                   "hMuEnDiffRangeR07NQ4",
08536                                   4*160,-1.6,1.6);
08537     hMuEnDiffRangeR07NQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08538     hMuEnDiffRangeR07NQ4->GetXaxis()->CenterTitle();
08539     hMuEnDiffRangeR07NQ4->GetYaxis()->SetTitle("");
08540     hMuEnDiffRangeR07NQ4->GetYaxis()->CenterTitle();
08541     //hMuEnDiffRangeR07NQ4->SetBit(TH1::kCanRebin);
08542 
08543 
08544     hMuEnDiffCurvR07NQ=new TH1F("hMuEnDiffCurvR07NQ",
08545                                 "hMuEnDiffCurvR07NQ",
08546                                 4*160,-1.6,1.6);
08547     hMuEnDiffCurvR07NQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08548     hMuEnDiffCurvR07NQ->GetXaxis()->CenterTitle();
08549     hMuEnDiffCurvR07NQ->GetYaxis()->SetTitle("");
08550     hMuEnDiffCurvR07NQ->GetYaxis()->CenterTitle();
08551     //hMuEnDiffCurvR07NQ->SetBit(TH1::kCanRebin);
08552 
08553     hMuEnDiffCurvR07NQ1=new TH1F("hMuEnDiffCurvR07NQ1",
08554                                  "hMuEnDiffCurvR07NQ1",
08555                                  4*160,-1.6,1.6);
08556     hMuEnDiffCurvR07NQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08557     hMuEnDiffCurvR07NQ1->GetXaxis()->CenterTitle();
08558     hMuEnDiffCurvR07NQ1->GetYaxis()->SetTitle("");
08559     hMuEnDiffCurvR07NQ1->GetYaxis()->CenterTitle();
08560     //hMuEnDiffCurvR07NQ1->SetBit(TH1::kCanRebin);
08561 
08562     hMuEnDiffCurvR07NQ2=new TH1F("hMuEnDiffCurvR07NQ2",
08563                                  "hMuEnDiffCurvR07NQ2",
08564                                  4*160,-1.6,1.6);
08565     hMuEnDiffCurvR07NQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08566     hMuEnDiffCurvR07NQ2->GetXaxis()->CenterTitle();
08567     hMuEnDiffCurvR07NQ2->GetYaxis()->SetTitle("");
08568     hMuEnDiffCurvR07NQ2->GetYaxis()->CenterTitle();
08569     //hMuEnDiffCurvR07NQ2->SetBit(TH1::kCanRebin);
08570 
08571     hMuEnDiffCurvR07NQ3=new TH1F("hMuEnDiffCurvR07NQ3",
08572                                  "hMuEnDiffCurvR07NQ3",
08573                                  4*160,-1.6,1.6);
08574     hMuEnDiffCurvR07NQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08575     hMuEnDiffCurvR07NQ3->GetXaxis()->CenterTitle();
08576     hMuEnDiffCurvR07NQ3->GetYaxis()->SetTitle("");
08577     hMuEnDiffCurvR07NQ3->GetYaxis()->CenterTitle();
08578     //hMuEnDiffCurvR07NQ3->SetBit(TH1::kCanRebin);
08579 
08580     hMuEnDiffCurvR07NQ4=new TH1F("hMuEnDiffCurvR07NQ4",
08581                                  "hMuEnDiffCurvR07NQ4",
08582                                  4*160,-1.6,1.6);
08583     hMuEnDiffCurvR07NQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08584     hMuEnDiffCurvR07NQ4->GetXaxis()->CenterTitle();
08585     hMuEnDiffCurvR07NQ4->GetYaxis()->SetTitle("");
08586     hMuEnDiffCurvR07NQ4->GetYaxis()->CenterTitle();
08587     //hMuEnDiffCurvR07NQ4->SetBit(TH1::kCanRebin);
08588 
08589 
08590 
08591     hShwEnDiffNQ=new TH1F("hShwEnDiffNQ","hShwEnDiffNQ",
08592                           4*160,-1.6,1.6);
08593     hShwEnDiffNQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08594     hShwEnDiffNQ->GetXaxis()->CenterTitle();
08595     hShwEnDiffNQ->GetYaxis()->SetTitle("");
08596     hShwEnDiffNQ->GetYaxis()->CenterTitle();
08597     //hShwEnDiffNQ->SetBit(TH1::kCanRebin);
08598     
08599     hShwEn2DiffNQ=new TH1F("hShwEn2DiffNQ","hShwEn2DiffNQ",
08600                            4*160,-1.6,1.6);
08601     hShwEn2DiffNQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08602     hShwEn2DiffNQ->GetXaxis()->CenterTitle();
08603     hShwEn2DiffNQ->GetYaxis()->SetTitle("");
08604     hShwEn2DiffNQ->GetYaxis()->CenterTitle();
08605     //hShwEn2DiffNQ->SetBit(TH1::kCanRebin);
08606 
08607     hShwEnDiffNQ1=new TH1F("hShwEnDiffNQ1","hShwEnDiffNQ1",
08608                            4*160,-1.6,1.6);
08609     hShwEnDiffNQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08610     hShwEnDiffNQ1->GetXaxis()->CenterTitle();
08611     hShwEnDiffNQ1->GetYaxis()->SetTitle("");
08612     hShwEnDiffNQ1->GetYaxis()->CenterTitle();
08613     //hShwEnDiffNQ1->SetBit(TH1::kCanRebin);
08614 
08615     hShwEnDiffNQ2=new TH1F("hShwEnDiffNQ2","hShwEnDiffNQ2",
08616                            4*160,-1.6,1.6);
08617     hShwEnDiffNQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08618     hShwEnDiffNQ2->GetXaxis()->CenterTitle();
08619     hShwEnDiffNQ2->GetYaxis()->SetTitle("");
08620     hShwEnDiffNQ2->GetYaxis()->CenterTitle();
08621     //hShwEnDiffNQ2->SetBit(TH1::kCanRebin);
08622 
08623     hShwEnDiffNQ3=new TH1F("hShwEnDiffNQ3","hShwEnDiffNQ3",
08624                            4*160,-1.6,1.6);
08625     hShwEnDiffNQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08626     hShwEnDiffNQ3->GetXaxis()->CenterTitle();
08627     hShwEnDiffNQ3->GetYaxis()->SetTitle("");
08628     hShwEnDiffNQ3->GetYaxis()->CenterTitle();
08629     //hShwEnDiffNQ3->SetBit(TH1::kCanRebin);
08630 
08631     hShwEnDiffNQ4=new TH1F("hShwEnDiffNQ4","hShwEnDiffNQ4",
08632                            4*160,-1.6,1.6);
08633     hShwEnDiffNQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08634     hShwEnDiffNQ4->GetXaxis()->CenterTitle();
08635     hShwEnDiffNQ4->GetYaxis()->SetTitle("");
08636     hShwEnDiffNQ4->GetYaxis()->CenterTitle();
08637     //hShwEnDiffNQ4->SetBit(TH1::kCanRebin);
08638 
08639 
08640 
08641 
08642 
08643     hShwEnDiffNQGeV1=new TH1F("hShwEnDiffNQGeV1","hShwEnDiffNQGeV1",
08644                               4*160,-1.6,1.6);
08645     hShwEnDiffNQGeV1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08646     hShwEnDiffNQGeV1->GetXaxis()->CenterTitle();
08647     hShwEnDiffNQGeV1->GetYaxis()->SetTitle("");
08648     hShwEnDiffNQGeV1->GetYaxis()->CenterTitle();
08649     //hShwEnDiffNQGeV1->SetBit(TH1::kCanRebin);
08650 
08651     hShwEnDiffNQGeV2=new TH1F("hShwEnDiffNQGeV2","hShwEnDiffNQGeV2",
08652                               4*160,-1.6,1.6);
08653     hShwEnDiffNQGeV2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08654     hShwEnDiffNQGeV2->GetXaxis()->CenterTitle();
08655     hShwEnDiffNQGeV2->GetYaxis()->SetTitle("");
08656     hShwEnDiffNQGeV2->GetYaxis()->CenterTitle();
08657     //hShwEnDiffNQGeV2->SetBit(TH1::kCanRebin);
08658 
08659     hShwEnDiffNQGeV3=new TH1F("hShwEnDiffNQGeV3","hShwEnDiffNQGeV3",
08660                               4*160,-1.6,1.6);
08661     hShwEnDiffNQGeV3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08662     hShwEnDiffNQGeV3->GetXaxis()->CenterTitle();
08663     hShwEnDiffNQGeV3->GetYaxis()->SetTitle("");
08664     hShwEnDiffNQGeV3->GetYaxis()->CenterTitle();
08665     //hShwEnDiffNQGeV3->SetBit(TH1::kCanRebin);
08666 
08667     hShwEnDiffNQGeV4=new TH1F("hShwEnDiffNQGeV4","hShwEnDiffNQGeV4",
08668                               4*160,-1.6,1.6);
08669     hShwEnDiffNQGeV4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08670     hShwEnDiffNQGeV4->GetXaxis()->CenterTitle();
08671     hShwEnDiffNQGeV4->GetYaxis()->SetTitle("");
08672     hShwEnDiffNQGeV4->GetYaxis()->CenterTitle();
08673     //hShwEnDiffNQGeV4->SetBit(TH1::kCanRebin);
08674 
08675     hShwEnDiffNQGeV5=new TH1F("hShwEnDiffNQGeV5","hShwEnDiffNQGeV5",
08676                               4*160,-1.6,1.6);
08677     hShwEnDiffNQGeV5->GetXaxis()->SetTitle("Energy (reco-true)/true");
08678     hShwEnDiffNQGeV5->GetXaxis()->CenterTitle();
08679     hShwEnDiffNQGeV5->GetYaxis()->SetTitle("");
08680     hShwEnDiffNQGeV5->GetYaxis()->CenterTitle();
08681     //hShwEnDiffNQGeV5->SetBit(TH1::kCanRebin);
08682 
08683     hShwEnDiffNQGeV6=new TH1F("hShwEnDiffNQGeV6","hShwEnDiffNQGeV6",
08684                               4*160,-1.6,1.6);
08685     hShwEnDiffNQGeV6->GetXaxis()->SetTitle("Energy (reco-true)/true");
08686     hShwEnDiffNQGeV6->GetXaxis()->CenterTitle();
08687     hShwEnDiffNQGeV6->GetYaxis()->SetTitle("");
08688     hShwEnDiffNQGeV6->GetYaxis()->CenterTitle();
08689     //hShwEnDiffNQGeV6->SetBit(TH1::kCanRebin);
08690 
08691 
08692 
08693 
08694     hNuEnDiffNQ=new TH1F("hNuEnDiffNQ","hNuEnDiffNQ",
08695                          4*160,-1.6,1.6);
08696     hNuEnDiffNQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08697     hNuEnDiffNQ->GetXaxis()->CenterTitle();
08698     hNuEnDiffNQ->GetYaxis()->SetTitle("");
08699     hNuEnDiffNQ->GetYaxis()->CenterTitle();
08700     //hNuEnDiffNQ->SetBit(TH1::kCanRebin);
08701 
08702     hNuEnDiffCCNQ=new TH1F("hNuEnDiffCCNQ","hNuEnDiffCCNQ",
08703                            4*160,-1.6,1.6);
08704     hNuEnDiffCCNQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08705     hNuEnDiffCCNQ->GetXaxis()->CenterTitle();
08706     hNuEnDiffCCNQ->GetYaxis()->SetTitle("");
08707     hNuEnDiffCCNQ->GetYaxis()->CenterTitle();
08708     //hNuEnDiffCCNQ->SetBit(TH1::kCanRebin);
08709 
08710     hNuEnDiffNCNQ=new TH1F("hNuEnDiffNCNQ","hNuEnDiffNCNQ",
08711                            4*160,-1.6,1.6);
08712     hNuEnDiffNCNQ->GetXaxis()->SetTitle("Energy (reco-true)/true");
08713     hNuEnDiffNCNQ->GetXaxis()->CenterTitle();
08714     hNuEnDiffNCNQ->GetYaxis()->SetTitle("");
08715     hNuEnDiffNCNQ->GetYaxis()->CenterTitle();
08716     //hNuEnDiffNCNQ->SetBit(TH1::kCanRebin);
08717 
08718     hNuEnDiffNQ1=new TH1F("hNuEnDiffNQ1","hNuEnDiffNQ1",
08719                           4*160,-1.6,1.6);
08720     hNuEnDiffNQ1->GetXaxis()->SetTitle("Energy (reco-true)/true");
08721     hNuEnDiffNQ1->GetXaxis()->CenterTitle();
08722     hNuEnDiffNQ1->GetYaxis()->SetTitle("");
08723     hNuEnDiffNQ1->GetYaxis()->CenterTitle();
08724     //hNuEnDiffNQ1->SetBit(TH1::kCanRebin);
08725 
08726     hNuEnDiffNQ2=new TH1F("hNuEnDiffNQ2","hNuEnDiffNQ2",
08727                           4*160,-1.6,1.6);
08728     hNuEnDiffNQ2->GetXaxis()->SetTitle("Energy (reco-true)/true");
08729     hNuEnDiffNQ2->GetXaxis()->CenterTitle();
08730     hNuEnDiffNQ2->GetYaxis()->SetTitle("");
08731     hNuEnDiffNQ2->GetYaxis()->CenterTitle();
08732     //hNuEnDiffNQ2->SetBit(TH1::kCanRebin);
08733 
08734     hNuEnDiffNQ3=new TH1F("hNuEnDiffNQ3","hNuEnDiffNQ3",
08735                           4*160,-1.6,1.6);
08736     hNuEnDiffNQ3->GetXaxis()->SetTitle("Energy (reco-true)/true");
08737     hNuEnDiffNQ3->GetXaxis()->CenterTitle();
08738     hNuEnDiffNQ3->GetYaxis()->SetTitle("");
08739     hNuEnDiffNQ3->GetYaxis()->CenterTitle();
08740     //hNuEnDiffNQ3->SetBit(TH1::kCanRebin);
08741 
08742     hNuEnDiffNQ4=new TH1F("hNuEnDiffNQ4","hNuEnDiffNQ4",
08743                           4*160,-1.6,1.6);
08744     hNuEnDiffNQ4->GetXaxis()->SetTitle("Energy (reco-true)/true");
08745     hNuEnDiffNQ4->GetXaxis()->CenterTitle();
08746     hNuEnDiffNQ4->GetYaxis()->SetTitle("");
08747     hNuEnDiffNQ4->GetYaxis()->CenterTitle();
08748     //hNuEnDiffNQ4->SetBit(TH1::kCanRebin);
08749 
08750 
08751     hEvtVtxTDiffNQ=new TH1F("hEvtVtxTDiffNQ","hEvtVtxTDiffNQ",
08752                             1000,-5,5);
08753     hEvtVtxTDiffNQ->GetXaxis()->SetTitle("Evt Vtx Reco-True Transverse Position (m)");
08754     hEvtVtxTDiffNQ->GetXaxis()->CenterTitle();
08755     hEvtVtxTDiffNQ->GetYaxis()->SetTitle("");
08756     hEvtVtxTDiffNQ->GetYaxis()->CenterTitle();
08757     //hEvtVtxTDiffNQ->SetBit(TH1::kCanRebin);
08758 
08759     hEvtVtxZDiffNQ=new TH1F("hEvtVtxZDiffNQ","hEvtVtxZDiffNQ",
08760                             1000,-5,5);
08761     hEvtVtxZDiffNQ->GetXaxis()->SetTitle("Evt Vtx Reco-True Z Position (m)");
08762     hEvtVtxZDiffNQ->GetXaxis()->CenterTitle();
08763     hEvtVtxZDiffNQ->GetYaxis()->SetTitle("");
08764     hEvtVtxZDiffNQ->GetYaxis()->CenterTitle();
08765     //hEvtVtxZDiffNQ->SetBit(TH1::kCanRebin);
08766 
08767     hEvtVtxSDiffNQ=new TH1F("hEvtVtxSDiffNQ","hEvtVtxSDiffNQ",
08768                             1000,-5,5);
08769     hEvtVtxSDiffNQ->GetXaxis()->SetTitle("Evt Vtx Reco-True S Position (m)");
08770     hEvtVtxSDiffNQ->GetXaxis()->CenterTitle();
08771     hEvtVtxSDiffNQ->GetYaxis()->SetTitle("");
08772     hEvtVtxSDiffNQ->GetYaxis()->CenterTitle();
08773     //hEvtVtxSDiffNQ->SetBit(TH1::kCanRebin);
08774 
08775     pEvtVtxTDiffVsDistNQ=new TProfile
08776       ("pEvtVtxTDiffVsDistNQ","pEvtVtxTDiffVsDistNQ",60,-3,3);
08777     pEvtVtxTDiffVsDistNQ->GetXaxis()->SetTitle("Distance to Edge (m)");
08778     pEvtVtxTDiffVsDistNQ->GetXaxis()->CenterTitle();
08779     pEvtVtxTDiffVsDistNQ->GetYaxis()->SetTitle("Evt Vtx Reco-True Trans. Position (m)");
08780     pEvtVtxTDiffVsDistNQ->GetYaxis()->CenterTitle();
08781 
08782     pEvtVtxZDiffVsDistNQ=new TProfile
08783       ("pEvtVtxZDiffVsDistNQ","pEvtVtxZDiffVsDistNQ",60,-3,3);
08784     pEvtVtxZDiffVsDistNQ->GetXaxis()->SetTitle("Distance to Edge (m)");
08785     pEvtVtxZDiffVsDistNQ->GetXaxis()->CenterTitle();
08786     pEvtVtxZDiffVsDistNQ->GetYaxis()->SetTitle("Evt Vtx Reco-True Z Position (m)");
08787     pEvtVtxZDiffVsDistNQ->GetYaxis()->CenterTitle();
08788 
08789     pEvtVtxSDiffVsDistNQ=new TProfile
08790       ("pEvtVtxSDiffVsDistNQ","pEvtVtxSDiffVsDistNQ",60,-3,3);
08791     pEvtVtxSDiffVsDistNQ->GetXaxis()->SetTitle("Distance to Edge (m)");
08792     pEvtVtxSDiffVsDistNQ->GetXaxis()->CenterTitle();
08793     pEvtVtxSDiffVsDistNQ->GetYaxis()->SetTitle("Evt Vtx Reco-True S Position (m)");
08794     pEvtVtxSDiffVsDistNQ->GetYaxis()->CenterTitle();
08795 
08796 
08797 
08798     //y stuff
08799     hYDiffPQ=new TH1F("hYDiffPQ","hYDiffPQ",
08800                       4*160,-1.6,1.6);
08801     hYDiffPQ->GetXaxis()->SetTitle("Y (reco-true)/true");
08802     hYDiffPQ->GetXaxis()->CenterTitle();
08803     hYDiffPQ->GetYaxis()->SetTitle("");
08804     hYDiffPQ->GetYaxis()->CenterTitle();
08805     //hYDiffPQ->SetBit(TH1::kCanRebin);
08806 
08807     hYAbDiffPQ=new TH1F("hYAbDiffPQ","hYAbDiffPQ",
08808                         4*160,-1.6,1.6);
08809     hYAbDiffPQ->GetXaxis()->SetTitle("Y reco-true");
08810     hYAbDiffPQ->GetXaxis()->CenterTitle();
08811     hYAbDiffPQ->GetYaxis()->SetTitle("");
08812     hYAbDiffPQ->GetYaxis()->CenterTitle();
08813     //hYAbDiffPQ->SetBit(TH1::kCanRebin);
08814 
08815     hYDiffNQ=new TH1F("hYDiffNQ","hYDiffNQ",
08816                       4*160,-1.6,1.6);
08817     hYDiffNQ->GetXaxis()->SetTitle("Y (reco-true)/true");
08818     hYDiffNQ->GetXaxis()->CenterTitle();
08819     hYDiffNQ->GetYaxis()->SetTitle("");
08820     hYDiffNQ->GetYaxis()->CenterTitle();
08821     //hYDiffNQ->SetBit(TH1::kCanRebin);
08822 
08823     hYAbDiffNQ=new TH1F("hYAbDiffNQ","hYAbDiffNQ",
08824                         4*160,-1.6,1.6);
08825     hYAbDiffNQ->GetXaxis()->SetTitle("Y reco-true");
08826     hYAbDiffNQ->GetXaxis()->CenterTitle();
08827     hYAbDiffNQ->GetYaxis()->SetTitle("");
08828     hYAbDiffNQ->GetYaxis()->CenterTitle();
08829     //hYAbDiffNQ->SetBit(TH1::kCanRebin);
08830 
08831 
08832 
08833     hMuYDiffMCPQ=new TH1F("hMuYDiffMCPQ","hMuYDiffMCPQ",
08834                           4*160,-1.6,1.6);
08835     hMuYDiffMCPQ->GetXaxis()->SetTitle("Energy muY-mu/mu");
08836     hMuYDiffMCPQ->GetXaxis()->CenterTitle();
08837     hMuYDiffMCPQ->GetYaxis()->SetTitle("");
08838     hMuYDiffMCPQ->GetYaxis()->CenterTitle();
08839     //hMuYDiffMCPQ->SetBit(TH1::kCanRebin);
08840     
08841     hMuYDiffMCNQ=new TH1F("hMuYDiffMCNQ","hMuYDiffMCNQ",
08842                           4*160,-1.6,1.6);
08843     hMuYDiffMCNQ->GetXaxis()->SetTitle("Energy muY-mu/mu");
08844     hMuYDiffMCNQ->GetXaxis()->CenterTitle();
08845     hMuYDiffMCNQ->GetYaxis()->SetTitle("");
08846     hMuYDiffMCNQ->GetYaxis()->CenterTitle();
08847     //hMuYDiffMCNQ->SetBit(TH1::kCanRebin);
08848 
08849 
08850     hShwYDiffMCPQ=new TH1F("hShwYDiffMCPQ","hShwYDiffMCPQ",
08851                            4*160,-1.6,1.6);
08852     hShwYDiffMCPQ->GetXaxis()->SetTitle("Energy shwY-shw/shw");
08853     hShwYDiffMCPQ->GetXaxis()->CenterTitle();
08854     hShwYDiffMCPQ->GetYaxis()->SetTitle("");
08855     hShwYDiffMCPQ->GetYaxis()->CenterTitle();
08856     //hShwYDiffMCPQ->SetBit(TH1::kCanRebin);
08857     
08858     hShwYDiffMCNQ=new TH1F("hShwYDiffMCNQ","hShwYDiffMCNQ",
08859                            4*160,-1.6,1.6);
08860     hShwYDiffMCNQ->GetXaxis()->SetTitle("Energy shwY-shw/shw");
08861     hShwYDiffMCNQ->GetXaxis()->CenterTitle();
08862     hShwYDiffMCNQ->GetYaxis()->SetTitle("");
08863     hShwYDiffMCNQ->GetYaxis()->CenterTitle();
08864     //hShwYDiffMCNQ->SetBit(TH1::kCanRebin);
08865 
08866     
08867     hMuYAbDiffMCPQ=new TH1F("hMuYAbDiffMCPQ","hMuYAbDiffMCPQ",
08868                             2000,-5,5);
08869     hMuYAbDiffMCPQ->GetXaxis()->SetTitle("Energy muY-mu");
08870     hMuYAbDiffMCPQ->GetXaxis()->CenterTitle();
08871     hMuYAbDiffMCPQ->GetYaxis()->SetTitle("");
08872     hMuYAbDiffMCPQ->GetYaxis()->CenterTitle();
08873     //hMuYAbDiffMCPQ->SetBit(TH1::kCanRebin);
08874     
08875     hMuYAbDiffMCNQ=new TH1F("hMuYAbDiffMCNQ","hMuYAbDiffMCNQ",
08876                             2000,-5,5);
08877     hMuYAbDiffMCNQ->GetXaxis()->SetTitle("Energy muY-mu");
08878     hMuYAbDiffMCNQ->GetXaxis()->CenterTitle();
08879     hMuYAbDiffMCNQ->GetYaxis()->SetTitle("");
08880     hMuYAbDiffMCNQ->GetYaxis()->CenterTitle();
08881     //hMuYAbDiffMCNQ->SetBit(TH1::kCanRebin);
08882 
08883 
08884     hShwYAbDiffMCPQ=new TH1F("hShwYAbDiffMCPQ","hShwYAbDiffMCPQ",
08885                              2000,-5,5);
08886     hShwYAbDiffMCPQ->GetXaxis()->SetTitle("Energy shwY-shw");
08887     hShwYAbDiffMCPQ->GetXaxis()->CenterTitle();
08888     hShwYAbDiffMCPQ->GetYaxis()->SetTitle("");
08889     hShwYAbDiffMCPQ->GetYaxis()->CenterTitle();
08890     //hShwYAbDiffMCPQ->SetBit(TH1::kCanRebin);
08891     
08892     hShwYAbDiffMCNQ=new TH1F("hShwYAbDiffMCNQ","hShwYAbDiffMCNQ",
08893                              2000,-5,5);
08894     hShwYAbDiffMCNQ->GetXaxis()->SetTitle("Energy shwY-shw");
08895     hShwYAbDiffMCNQ->GetXaxis()->CenterTitle();
08896     hShwYAbDiffMCNQ->GetYaxis()->SetTitle("");
08897     hShwYAbDiffMCNQ->GetYaxis()->CenterTitle();
08898     //hShwYAbDiffMCNQ->SetBit(TH1::kCanRebin);
08899 
08900 
08901 
08902     //profile the response
08903     pNuEnDiff20PQ=new TProfile("pNuEnDiff20PQ","pNuEnDiff20PQ",
08904                                51,-2,100);
08905     pNuEnDiff20PQ->GetXaxis()->SetTitle("True Energy (GeV)");
08906     pNuEnDiff20PQ->GetXaxis()->CenterTitle();
08907     pNuEnDiff20PQ->GetYaxis()->SetTitle("(reco-true)/true");
08908     pNuEnDiff20PQ->GetYaxis()->CenterTitle();
08909     
08910     pNuEnDiff10PQ=new TProfile("pNuEnDiff10PQ","pNuEnDiff10PQ",
08911                                102,-2,100);
08912     pNuEnDiff10PQ->GetXaxis()->SetTitle("True Energy (GeV)");
08913     pNuEnDiff10PQ->GetXaxis()->CenterTitle();
08914     pNuEnDiff10PQ->GetYaxis()->SetTitle("(reco-true)/true");
08915     pNuEnDiff10PQ->GetYaxis()->CenterTitle();
08916     
08917     pNuEnDiff05PQ=new TProfile("pNuEnDiff05PQ","pNuEnDiff05PQ",
08918                                204,-2,100);
08919     pNuEnDiff05PQ->GetXaxis()->SetTitle("True Energy (GeV)");
08920     pNuEnDiff05PQ->GetXaxis()->CenterTitle();
08921     pNuEnDiff05PQ->GetYaxis()->SetTitle("(reco-true)/true");
08922     pNuEnDiff05PQ->GetYaxis()->CenterTitle();
08923 
08924 
08925     pMuEnDiff20PQ=new TProfile("pMuEnDiff20PQ","pMuEnDiff20PQ",
08926                                51,-2,100);
08927     pMuEnDiff20PQ->GetXaxis()->SetTitle("True Energy (GeV)");
08928     pMuEnDiff20PQ->GetXaxis()->CenterTitle();
08929     pMuEnDiff20PQ->GetYaxis()->SetTitle("(reco-true)/true");
08930     pMuEnDiff20PQ->GetYaxis()->CenterTitle();
08931     
08932     pMuEnDiff10PQ=new TProfile("pMuEnDiff10PQ","pMuEnDiff10PQ",
08933                                102,-2,100);
08934     pMuEnDiff10PQ->GetXaxis()->SetTitle("True Energy (GeV)");
08935     pMuEnDiff10PQ->GetXaxis()->CenterTitle();
08936     pMuEnDiff10PQ->GetYaxis()->SetTitle("(reco-true)/true");
08937     pMuEnDiff10PQ->GetYaxis()->CenterTitle();
08938     
08939     pMuEnDiff05PQ=new TProfile("pMuEnDiff05PQ","pMuEnDiff05PQ",
08940                                204,-2,100);
08941     pMuEnDiff05PQ->GetXaxis()->SetTitle("True Energy (GeV)");
08942     pMuEnDiff05PQ->GetXaxis()->CenterTitle();
08943     pMuEnDiff05PQ->GetYaxis()->SetTitle("(reco-true)/true");
08944     pMuEnDiff05PQ->GetYaxis()->CenterTitle();
08945 
08946 
08947     pShwEnDiff20PQ=new TProfile("pShwEnDiff20PQ","pShwEnDiff20PQ",
08948                                 51,-2,100);
08949     pShwEnDiff20PQ->GetXaxis()->SetTitle("True Energy (GeV)");
08950     pShwEnDiff20PQ->GetXaxis()->CenterTitle();
08951     pShwEnDiff20PQ->GetYaxis()->SetTitle("(reco-true)/true");
08952     pShwEnDiff20PQ->GetYaxis()->CenterTitle();
08953     
08954     pShwEnDiff10PQ=new TProfile("pShwEnDiff10PQ","pShwEnDiff10PQ",
08955                                 102,-2,100);
08956     pShwEnDiff10PQ->GetXaxis()->SetTitle("True Energy (GeV)");
08957     pShwEnDiff10PQ->GetXaxis()->CenterTitle();
08958     pShwEnDiff10PQ->GetYaxis()->SetTitle("(reco-true)/true");
08959     pShwEnDiff10PQ->GetYaxis()->CenterTitle();
08960     
08961     pShwEnDiff05PQ=new TProfile("pShwEnDiff05PQ","pShwEnDiff05PQ",
08962                                 204,-2,100);
08963     pShwEnDiff05PQ->GetXaxis()->SetTitle("True Energy (GeV)");
08964     pShwEnDiff05PQ->GetXaxis()->CenterTitle();
08965     pShwEnDiff05PQ->GetYaxis()->SetTitle("(reco-true)/true");
08966     pShwEnDiff05PQ->GetYaxis()->CenterTitle();
08967 
08968 
08969 
08970 
08971 
08972 
08973     //profile the response
08974     pNuEnDiff20NQ=new TProfile("pNuEnDiff20NQ","pNuEnDiff20NQ",
08975                                51,-2,100);
08976     pNuEnDiff20NQ->GetXaxis()->SetTitle("True Energy (GeV)");
08977     pNuEnDiff20NQ->GetXaxis()->CenterTitle();
08978     pNuEnDiff20NQ->GetYaxis()->SetTitle("(reco-true)/true");
08979     pNuEnDiff20NQ->GetYaxis()->CenterTitle();
08980     
08981     pNuEnDiff10NQ=new TProfile("pNuEnDiff10NQ","pNuEnDiff10NQ",
08982                                102,-2,100);
08983     pNuEnDiff10NQ->GetXaxis()->SetTitle("True Energy (GeV)");
08984     pNuEnDiff10NQ->GetXaxis()->CenterTitle();
08985     pNuEnDiff10NQ->GetYaxis()->SetTitle("(reco-true)/true");
08986     pNuEnDiff10NQ->GetYaxis()->CenterTitle();
08987     
08988     pNuEnDiff05NQ=new TProfile("pNuEnDiff05NQ","pNuEnDiff05NQ",
08989                                204,-2,100);
08990     pNuEnDiff05NQ->GetXaxis()->SetTitle("True Energy (GeV)");
08991     pNuEnDiff05NQ->GetXaxis()->CenterTitle();
08992     pNuEnDiff05NQ->GetYaxis()->SetTitle("(reco-true)/true");
08993     pNuEnDiff05NQ->GetYaxis()->CenterTitle();
08994 
08995 
08996     pMuEnDiff20NQ=new TProfile("pMuEnDiff20NQ","pMuEnDiff20NQ",
08997                                51,-2,100);
08998     pMuEnDiff20NQ->GetXaxis()->SetTitle("True Energy (GeV)");
08999     pMuEnDiff20NQ->GetXaxis()->CenterTitle();
09000     pMuEnDiff20NQ->GetYaxis()->SetTitle("(reco-true)/true");
09001     pMuEnDiff20NQ->GetYaxis()->CenterTitle();
09002     
09003     pMuEnDiff10NQ=new TProfile("pMuEnDiff10NQ","pMuEnDiff10NQ",
09004                                102,-2,100);
09005     pMuEnDiff10NQ->GetXaxis()->SetTitle("True Energy (GeV)");
09006     pMuEnDiff10NQ->GetXaxis()->CenterTitle();
09007     pMuEnDiff10NQ->GetYaxis()->SetTitle("(reco-true)/true");
09008     pMuEnDiff10NQ->GetYaxis()->CenterTitle();
09009     
09010     pMuEnDiff05NQ=new TProfile("pMuEnDiff05NQ","pMuEnDiff05NQ",
09011                                204,-2,100);
09012     pMuEnDiff05NQ->GetXaxis()->SetTitle("True Energy (GeV)");
09013     pMuEnDiff05NQ->GetXaxis()->CenterTitle();
09014     pMuEnDiff05NQ->GetYaxis()->SetTitle("(reco-true)/true");
09015     pMuEnDiff05NQ->GetYaxis()->CenterTitle();
09016 
09017 
09018     pShwEnDiff20NQ=new TProfile("pShwEnDiff20NQ","pShwEnDiff20NQ",
09019                                 51,-2,100);
09020     pShwEnDiff20NQ->GetXaxis()->SetTitle("True Energy (GeV)");
09021     pShwEnDiff20NQ->GetXaxis()->CenterTitle();
09022     pShwEnDiff20NQ->GetYaxis()->SetTitle("(reco-true)/true");
09023     pShwEnDiff20NQ->GetYaxis()->CenterTitle();
09024     
09025     pShwEnDiff10NQ=new TProfile("pShwEnDiff10NQ","pShwEnDiff10NQ",
09026                                 102,-2,100);
09027     pShwEnDiff10NQ->GetXaxis()->SetTitle("True Energy (GeV)");
09028     pShwEnDiff10NQ->GetXaxis()->CenterTitle();
09029     pShwEnDiff10NQ->GetYaxis()->SetTitle("(reco-true)/true");
09030     pShwEnDiff10NQ->GetYaxis()->CenterTitle();
09031     
09032     pShwEnDiff05NQ=new TProfile("pShwEnDiff05NQ","pShwEnDiff05NQ",
09033                                 204,-2,100);
09034     pShwEnDiff05NQ->GetXaxis()->SetTitle("True Energy (GeV)");
09035     pShwEnDiff05NQ->GetXaxis()->CenterTitle();
09036     pShwEnDiff05NQ->GetYaxis()->SetTitle("(reco-true)/true");
09037     pShwEnDiff05NQ->GetYaxis()->CenterTitle();
09038 
09039 
09040 
09041 
09042     hShwVsNuEnNQ=new TH2F("hShwVsNuEnNQ","hShwVsNuEnNQ",
09043                           200,0,10,200,0,10);
09044     hShwVsNuEnNQ->GetXaxis()->SetTitle("#nu Energy (GeV)");
09045     hShwVsNuEnNQ->GetXaxis()->CenterTitle();
09046     hShwVsNuEnNQ->GetYaxis()->SetTitle("Shower Energy (GeV)");
09047     hShwVsNuEnNQ->GetYaxis()->CenterTitle();
09048     //hShwVsNuEnNQ->SetBit(TH1::kCanRebin);
09049 
09050     hShwVsNuEnPQ=new TH2F("hShwVsNuEnPQ","hShwVsNuEnPQ",
09051                           200,0,10,200,0,10);
09052     hShwVsNuEnPQ->GetXaxis()->SetTitle("#nu Energy (GeV)");
09053     hShwVsNuEnPQ->GetXaxis()->CenterTitle();
09054     hShwVsNuEnPQ->GetYaxis()->SetTitle("Shower Energy (GeV)");
09055     hShwVsNuEnPQ->GetYaxis()->CenterTitle();
09056     //hShwVsNuEnPQ->SetBit(TH1::kCanRebin);
09057 
09058     hShwVsNuEnAllNQ=new TH2F("hShwVsNuEnAllNQ","hShwVsNuEnAllNQ",
09059                              200,0,10,200,0,10);
09060     hShwVsNuEnAllNQ->GetXaxis()->SetTitle("#nu Energy (GeV)");
09061     hShwVsNuEnAllNQ->GetXaxis()->CenterTitle();
09062     hShwVsNuEnAllNQ->GetYaxis()->SetTitle("Shower Energy (GeV)");
09063     hShwVsNuEnAllNQ->GetYaxis()->CenterTitle();
09064     //hShwVsNuEnAllNQ->SetBit(TH1::kCanRebin);
09065 
09066     hShwVsNuEnAllPQ=new TH2F("hShwVsNuEnAllPQ","hShwVsNuEnAllPQ",
09067                              200,0,10,200,0,10);
09068     hShwVsNuEnAllPQ->GetXaxis()->SetTitle("#nu Energy (GeV)");
09069     hShwVsNuEnAllPQ->GetXaxis()->CenterTitle();
09070     hShwVsNuEnAllPQ->GetYaxis()->SetTitle("Shower Energy (GeV)");
09071     hShwVsNuEnAllPQ->GetYaxis()->CenterTitle();
09072     //hShwVsNuEnAllPQ->SetBit(TH1::kCanRebin);
09073 
09074 
09075 
09076 
09077 
09078     pShwEnDiffVsDistAllPQ=new TProfile
09079       ("pShwEnDiffVsDistAllPQ","pShwEnDiffVsDistAllPQ",60,-3,3);
09080     pShwEnDiffVsDistAllPQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09081     pShwEnDiffVsDistAllPQ->GetXaxis()->CenterTitle();
09082     pShwEnDiffVsDistAllPQ->GetYaxis()->SetTitle("(reco-true)/true");
09083     pShwEnDiffVsDistAllPQ->GetYaxis()->CenterTitle();
09084 
09085     pShwEnDiffVsDistl05PQ=new TProfile
09086       ("pShwEnDiffVsDistl05PQ","pShwEnDiffVsDistl05PQ",60,-3,3);
09087     pShwEnDiffVsDistl05PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09088     pShwEnDiffVsDistl05PQ->GetXaxis()->CenterTitle();
09089     pShwEnDiffVsDistl05PQ->GetYaxis()->SetTitle("(reco-true)/true");
09090     pShwEnDiffVsDistl05PQ->GetYaxis()->CenterTitle();
09091 
09092     pShwEnDiffVsDistg05l10PQ=new TProfile
09093       ("pShwEnDiffVsDistg05l10PQ","pShwEnDiffVsDistg05l10PQ",60,-3,3);
09094     pShwEnDiffVsDistg05l10PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09095     pShwEnDiffVsDistg05l10PQ->GetXaxis()->CenterTitle();
09096     pShwEnDiffVsDistg05l10PQ->GetYaxis()->SetTitle("(reco-true)/true");
09097     pShwEnDiffVsDistg05l10PQ->GetYaxis()->CenterTitle();
09098 
09099     pShwEnDiffVsDistg10l20PQ=new TProfile
09100       ("pShwEnDiffVsDistg10l20PQ","pShwEnDiffVsDistg10l20PQ",60,-3,3);
09101     pShwEnDiffVsDistg10l20PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09102     pShwEnDiffVsDistg10l20PQ->GetXaxis()->CenterTitle();
09103     pShwEnDiffVsDistg10l20PQ->GetYaxis()->SetTitle("(reco-true)/true");
09104     pShwEnDiffVsDistg10l20PQ->GetYaxis()->CenterTitle();
09105 
09106     pShwEnDiffVsDistg20PQ=new TProfile
09107       ("pShwEnDiffVsDistg20PQ","pShwEnDiffVsDistg20PQ",60,-3,3);
09108     pShwEnDiffVsDistg20PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09109     pShwEnDiffVsDistg20PQ->GetXaxis()->CenterTitle();
09110     pShwEnDiffVsDistg20PQ->GetYaxis()->SetTitle("(reco-true)/true");
09111     pShwEnDiffVsDistg20PQ->GetYaxis()->CenterTitle();
09112 
09113     pShwEnVsDistPQ=new TProfile("pShwEnVsDistPQ","pShwEnVsDistPQ",
09114                                 60,-3,3);
09115     pShwEnVsDistPQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09116     pShwEnVsDistPQ->GetXaxis()->CenterTitle();
09117     pShwEnVsDistPQ->GetYaxis()->SetTitle("Av. Shower Energy (GeV)");
09118     pShwEnVsDistPQ->GetYaxis()->CenterTitle();
09119 
09120 
09121     hEvtsVsDistAllRl75PQ=new TH1F("hEvtsVsDistAllRl75PQ",
09122                                   "hEvtsVsDistAllRl75PQ",60,-3,3);
09123     hEvtsVsDistAllRl75PQ->SetTitle("Evts vs. Dist. to Edge");
09124     hEvtsVsDistAllRl75PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09125     hEvtsVsDistAllRl75PQ->GetXaxis()->CenterTitle();
09126     hEvtsVsDistAllRl75PQ->GetYaxis()->SetTitle("");
09127     hEvtsVsDistAllRl75PQ->GetYaxis()->CenterTitle();
09128     //hEvtsVsDistAllRl75PQ->SetBit(TH1::kCanRebin);
09129 
09130     hEvtsVsDistAllRl50PQ=new TH1F("hEvtsVsDistAllRl50PQ",
09131                                   "hEvtsVsDistAllRl50PQ",60,-3,3);
09132     hEvtsVsDistAllRl50PQ->SetTitle("Evts vs. Dist. to Edge");
09133     hEvtsVsDistAllRl50PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09134     hEvtsVsDistAllRl50PQ->GetXaxis()->CenterTitle();
09135     hEvtsVsDistAllRl50PQ->GetYaxis()->SetTitle("");
09136     hEvtsVsDistAllRl50PQ->GetYaxis()->CenterTitle();
09137     //hEvtsVsDistAllRl50PQ->SetBit(TH1::kCanRebin);
09138 
09139     hEvtsVsDistAllPQ=new TH1F("hEvtsVsDistAllPQ",
09140                               "hEvtsVsDistAllPQ",60,-3,3);
09141     hEvtsVsDistAllPQ->SetTitle("Evts vs. Dist. to Edge");
09142     hEvtsVsDistAllPQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09143     hEvtsVsDistAllPQ->GetXaxis()->CenterTitle();
09144     hEvtsVsDistAllPQ->GetYaxis()->SetTitle("");
09145     hEvtsVsDistAllPQ->GetYaxis()->CenterTitle();
09146     //hEvtsVsDistAllPQ->SetBit(TH1::kCanRebin);
09147 
09148     hEvtsVsDistl05PQ=new TH1F("hEvtsVsDistl05PQ",
09149                               "hEvtsVsDistl05PQ",60,-3,3);
09150     hEvtsVsDistl05PQ->SetTitle("Evts vs. Dist. to Edge");
09151     hEvtsVsDistl05PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09152     hEvtsVsDistl05PQ->GetXaxis()->CenterTitle();
09153     hEvtsVsDistl05PQ->GetYaxis()->SetTitle("");
09154     hEvtsVsDistl05PQ->GetYaxis()->CenterTitle();
09155     //hEvtsVsDistl05PQ->SetBit(TH1::kCanRebin);
09156 
09157     hEvtsVsDistg05l10PQ=new TH1F("hEvtsVsDistg05l10PQ",
09158                                  "hEvtsVsDistg05l10PQ",60,-3,3);
09159     hEvtsVsDistg05l10PQ->SetTitle("Evts vs. Dist. to Edge");
09160     hEvtsVsDistg05l10PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09161     hEvtsVsDistg05l10PQ->GetXaxis()->CenterTitle();
09162     hEvtsVsDistg05l10PQ->GetYaxis()->SetTitle("");
09163     hEvtsVsDistg05l10PQ->GetYaxis()->CenterTitle();
09164     //hEvtsVsDistg05l10PQ->SetBit(TH1::kCanRebin);
09165 
09166     hEvtsVsDistg10l20PQ=new TH1F("hEvtsVsDistg10l20PQ",
09167                                  "hEvtsVsDistg10l20PQ",60,-3,3);
09168     hEvtsVsDistg10l20PQ->SetTitle("Evts vs. Dist. to Edge");
09169     hEvtsVsDistg10l20PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09170     hEvtsVsDistg10l20PQ->GetXaxis()->CenterTitle();
09171     hEvtsVsDistg10l20PQ->GetYaxis()->SetTitle("");
09172     hEvtsVsDistg10l20PQ->GetYaxis()->CenterTitle();
09173     //hEvtsVsDistg10l20PQ->SetBit(TH1::kCanRebin);
09174 
09175     hEvtsVsDistg20PQ=new TH1F("hEvtsVsDistg20PQ",
09176                               "hEvtsVsDistg20PQ",60,-3,3);
09177     hEvtsVsDistg20PQ->SetTitle("Evts vs. Dist. to Edge");
09178     hEvtsVsDistg20PQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09179     hEvtsVsDistg20PQ->GetXaxis()->CenterTitle();
09180     hEvtsVsDistg20PQ->GetYaxis()->SetTitle("");
09181     hEvtsVsDistg20PQ->GetYaxis()->CenterTitle();
09182     //hEvtsVsDistg20PQ->SetBit(TH1::kCanRebin);
09183 
09184 
09185 
09186     pShwEnDiffVsDistAllNQ=new TProfile
09187       ("pShwEnDiffVsDistAllNQ","pShwEnDiffVsDistAllNQ",60,-3,3);
09188     pShwEnDiffVsDistAllNQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09189     pShwEnDiffVsDistAllNQ->GetXaxis()->CenterTitle();
09190     pShwEnDiffVsDistAllNQ->GetYaxis()->SetTitle("(reco-true)/true");
09191     pShwEnDiffVsDistAllNQ->GetYaxis()->CenterTitle();
09192 
09193     pShwEnDiffVsDistl05NQ=new TProfile
09194       ("pShwEnDiffVsDistl05NQ","pShwEnDiffVsDistl05NQ",60,-3,3);
09195     pShwEnDiffVsDistl05NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09196     pShwEnDiffVsDistl05NQ->GetXaxis()->CenterTitle();
09197     pShwEnDiffVsDistl05NQ->GetYaxis()->SetTitle("(reco-true)/true");
09198     pShwEnDiffVsDistl05NQ->GetYaxis()->CenterTitle();
09199 
09200     pShwEnDiffVsDistg05l10NQ=new TProfile
09201       ("pShwEnDiffVsDistg05l10NQ","pShwEnDiffVsDistg05l10NQ",60,-3,3);
09202     pShwEnDiffVsDistg05l10NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09203     pShwEnDiffVsDistg05l10NQ->GetXaxis()->CenterTitle();
09204     pShwEnDiffVsDistg05l10NQ->GetYaxis()->SetTitle("(reco-true)/true");
09205     pShwEnDiffVsDistg05l10NQ->GetYaxis()->CenterTitle();
09206 
09207     pShwEnDiffVsDistg10l20NQ=new TProfile
09208       ("pShwEnDiffVsDistg10l20NQ","pShwEnDiffVsDistg10l20NQ",60,-3,3);
09209     pShwEnDiffVsDistg10l20NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09210     pShwEnDiffVsDistg10l20NQ->GetXaxis()->CenterTitle();
09211     pShwEnDiffVsDistg10l20NQ->GetYaxis()->SetTitle("(reco-true)/true");
09212     pShwEnDiffVsDistg10l20NQ->GetYaxis()->CenterTitle();
09213 
09214     pShwEnDiffVsDistg20NQ=new TProfile
09215       ("pShwEnDiffVsDistg20NQ","pShwEnDiffVsDistg20NQ",60,-3,3);
09216     pShwEnDiffVsDistg20NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09217     pShwEnDiffVsDistg20NQ->GetXaxis()->CenterTitle();
09218     pShwEnDiffVsDistg20NQ->GetYaxis()->SetTitle("(reco-true)/true");
09219     pShwEnDiffVsDistg20NQ->GetYaxis()->CenterTitle();
09220 
09221     pShwEnVsDistNQ=new TProfile("pShwEnVsDistNQ","pShwEnVsDistNQ",
09222                                 60,-3,3);
09223     pShwEnVsDistNQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09224     pShwEnVsDistNQ->GetXaxis()->CenterTitle();
09225     pShwEnVsDistNQ->GetYaxis()->SetTitle("Av. Shower Energy (GeV)");
09226     pShwEnVsDistNQ->GetYaxis()->CenterTitle();
09227 
09228 
09229 
09230 
09231     hEvtsVsDistAllRl75NQ=new TH1F("hEvtsVsDistAllRl75NQ",
09232                                   "hEvtsVsDistAllRl75NQ",60,-3,3);
09233     hEvtsVsDistAllRl75NQ->SetTitle("Evts vs. Dist. to Edge");
09234     hEvtsVsDistAllRl75NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09235     hEvtsVsDistAllRl75NQ->GetXaxis()->CenterTitle();
09236     hEvtsVsDistAllRl75NQ->GetYaxis()->SetTitle("");
09237     hEvtsVsDistAllRl75NQ->GetYaxis()->CenterTitle();
09238     //hEvtsVsDistAllRl75NQ->SetBit(TH1::kCanRebin);
09239 
09240     hEvtsVsDistAllRl50NQ=new TH1F("hEvtsVsDistAllRl50NQ",
09241                                   "hEvtsVsDistAllRl50NQ",60,-3,3);
09242     hEvtsVsDistAllRl50NQ->SetTitle("Evts vs. Dist. to Edge");
09243     hEvtsVsDistAllRl50NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09244     hEvtsVsDistAllRl50NQ->GetXaxis()->CenterTitle();
09245     hEvtsVsDistAllRl50NQ->GetYaxis()->SetTitle("");
09246     hEvtsVsDistAllRl50NQ->GetYaxis()->CenterTitle();
09247     //hEvtsVsDistAllRl50NQ->SetBit(TH1::kCanRebin);
09248 
09249     hEvtsVsDistAllNQ=new TH1F("hEvtsVsDistAllNQ",
09250                               "hEvtsVsDistAllNQ",60,-3,3);
09251     hEvtsVsDistAllNQ->SetTitle("Evts vs. Dist. to Edge");
09252     hEvtsVsDistAllNQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09253     hEvtsVsDistAllNQ->GetXaxis()->CenterTitle();
09254     hEvtsVsDistAllNQ->GetYaxis()->SetTitle("");
09255     hEvtsVsDistAllNQ->GetYaxis()->CenterTitle();
09256     //hEvtsVsDistAllNQ->SetBit(TH1::kCanRebin);
09257 
09258     hEvtsVsDistl05NQ=new TH1F("hEvtsVsDistl05NQ",
09259                               "hEvtsVsDistl05NQ",60,-3,3);
09260     hEvtsVsDistl05NQ->SetTitle("Evts vs. Dist. to Edge");
09261     hEvtsVsDistl05NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09262     hEvtsVsDistl05NQ->GetXaxis()->CenterTitle();
09263     hEvtsVsDistl05NQ->GetYaxis()->SetTitle("");
09264     hEvtsVsDistl05NQ->GetYaxis()->CenterTitle();
09265     //hEvtsVsDistl05NQ->SetBit(TH1::kCanRebin);
09266 
09267     hEvtsVsDistg05l10NQ=new TH1F("hEvtsVsDistg05l10NQ",
09268                                  "hEvtsVsDistg05l10NQ",60,-3,3);
09269     hEvtsVsDistg05l10NQ->SetTitle("Evts vs. Dist. to Edge");
09270     hEvtsVsDistg05l10NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09271     hEvtsVsDistg05l10NQ->GetXaxis()->CenterTitle();
09272     hEvtsVsDistg05l10NQ->GetYaxis()->SetTitle("");
09273     hEvtsVsDistg05l10NQ->GetYaxis()->CenterTitle();
09274     //hEvtsVsDistg05l10NQ->SetBit(TH1::kCanRebin);
09275 
09276     hEvtsVsDistg10l20NQ=new TH1F("hEvtsVsDistg10l20NQ",
09277                                  "hEvtsVsDistg10l20NQ",60,-3,3);
09278     hEvtsVsDistg10l20NQ->SetTitle("Evts vs. Dist. to Edge");
09279     hEvtsVsDistg10l20NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09280     hEvtsVsDistg10l20NQ->GetXaxis()->CenterTitle();
09281     hEvtsVsDistg10l20NQ->GetYaxis()->SetTitle("");
09282     hEvtsVsDistg10l20NQ->GetYaxis()->CenterTitle();
09283     //hEvtsVsDistg10l20NQ->SetBit(TH1::kCanRebin);
09284 
09285     hEvtsVsDistg20NQ=new TH1F("hEvtsVsDistg20NQ",
09286                               "hEvtsVsDistg20NQ",60,-3,3);
09287     hEvtsVsDistg20NQ->SetTitle("Evts vs. Dist. to Edge");
09288     hEvtsVsDistg20NQ->GetXaxis()->SetTitle("Distance to Edge (m)");
09289     hEvtsVsDistg20NQ->GetXaxis()->CenterTitle();
09290     hEvtsVsDistg20NQ->GetYaxis()->SetTitle("");
09291     hEvtsVsDistg20NQ->GetYaxis()->CenterTitle();
09292     //hEvtsVsDistg20NQ->SetBit(TH1::kCanRebin);
09293 
09294   }
09295 
09296   //get an instance of the code library
09297   NuLibrary& lib=NuLibrary::Instance();  
09298   Float_t r=lib.reco.GetRadius(nu.xTrkVtx,nu.yTrkVtx,nu);
09299   
09300   //fill these for data too
09301   if (nu.charge==+1) {
09302     if (nu.shwEn>0) {//only fill if there is a shower
09303       pShwEnVsDistPQ->Fill(nu.distToEdgeEvtVtx,nu.shwEn,nu.rw);      
09304       hEvtsVsDistAllPQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09305       
09306       if(r<0.50) {
09307         hEvtsVsDistAllRl50PQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09308       }
09309       if(r<0.75) {
09310         hEvtsVsDistAllRl75PQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09311       }
09312     }
09313   }
09314   if (nu.charge==-1) {
09315     if (nu.shwEn>0) {//only fill if there is a shower
09316       pShwEnVsDistNQ->Fill(nu.distToEdgeEvtVtx,nu.shwEn,nu.rw);
09317       hEvtsVsDistAllNQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09318 
09319       if(r<0.50) {
09320         hEvtsVsDistAllRl50NQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09321       }
09322       if(r<0.75) {
09323         hEvtsVsDistAllRl75NQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09324       }
09325     }
09326   }
09327   
09328   //return if not MC
09329   if (nu.simFlag!=SimFlag::kMC) return;
09330 
09331   Float_t diffRange=nu.trkEnMC==0 ? 0:
09332     (nu.trkEnRange-fabs(nu.trkEnMC))/fabs(nu.trkEnMC);
09333   Float_t diffCurv=nu.trkEnMC==0 ? 0:
09334     (nu.trkEnCurv-fabs(nu.trkEnMC))/fabs(nu.trkEnMC);
09335   Float_t diffMu=nu.trkEnMC==0 ? 0:
09336     (nu.trkEn-fabs(nu.trkEnMC))/fabs(nu.trkEnMC);
09337   Float_t diffShw=nu.shwEnMC==0 ? 0:
09338     (nu.shwEn-nu.shwEnMC)/nu.shwEnMC;
09339   Float_t diffShw2=nu.shwEn2MC==0 ? 0:
09340     (nu.shwEn-nu.shwEn2MC)/nu.shwEn2MC;
09341   Float_t diffNu=(nu.energy-nu.energyMC)/nu.energyMC;
09342   Float_t diffY=nu.yMC==0 ? 0:
09343     (nu.y-nu.yMC)/nu.yMC;
09344   const Float_t diffAbY=nu.y-nu.yMC;
09345   Float_t diffMuYMC=nu.trkEnMC==0 ? 0:
09346     (fabs(nu.trkEn2MC)-fabs(nu.trkEnMC))/fabs(nu.trkEnMC);
09347   Float_t diffShwYMC=nu.shwEnMC==0 ? 0:
09348     (fabs(nu.shwEn2MC)-fabs(nu.shwEnMC))/fabs(nu.shwEnMC);
09349   const Float_t diffAbMuYMC=(fabs(nu.trkEn2MC)-fabs(nu.trkEnMC));
09350   const Float_t diffAbShwYMC=(fabs(nu.shwEn2MC)-fabs(nu.shwEnMC));
09351   
09352   Float_t radiusVtx=pow(nu.xEvtVtx,2)+pow(nu.yEvtVtx,2);
09353   if (radiusVtx>=0) radiusVtx=sqrt(radiusVtx);
09354   else radiusVtx=-1;
09355   Float_t radiusEnd=pow(nu.xEvtEnd,2)+pow(nu.yEvtEnd,2);
09356   if (radiusEnd>=0) radiusEnd=sqrt(radiusEnd);
09357   else radiusEnd=-1;
09358 
09359   //limit the maximum difference to +100%
09360   //it's limited to -100% anyway
09361   //so this makes the distribution symmetric
09362   if (true){
09363     if (diffRange>1) diffRange=1;
09364     if (diffCurv>1) diffCurv=1;
09365     if (diffMu>1) diffMu=1;
09366     if (diffShw>1) diffShw=1;
09367     if (diffShw2>1) diffShw2=1;
09368     if (diffNu>1) diffNu=1;
09369     if (diffY>1) diffY=1;
09370     if (diffMuYMC>1) diffMuYMC=1;
09371     if (diffShwYMC>1) diffShwYMC=1;
09372   }
09373   
09374   //if (fabs(diffAbMuYMC)>5){
09375   if (diffShw<-1){
09376     MAXMSG("NuPlots",Msg::kInfo,300)
09377       <<endl<<endl
09378       <<"pittFlag="<<nu.containmentFlag
09379       <<", dr="<<diffRange
09380       <<", dc="<<diffCurv
09381       <<", dNu="<<diffNu
09382       <<", dY="<<diffY
09383       <<endl
09384       <<", diffAbMuY="<<diffAbMuYMC
09385       <<" ("<<diffMuYMC<<")"
09386       <<", diffAbShwY="<<diffAbShwYMC
09387       <<" ("<<diffShwYMC<<")"
09388       <<endl
09389       <<"MC: energy="<<nu.energyMC
09390       <<", y="<<nu.yMC
09391       <<", trk="<<nu.trkEnMC
09392       <<", trk2="<<nu.trkEn2MC
09393       <<", shw="<<nu.shwEnMC
09394       <<", shw2="<<nu.shwEn2MC
09395       <<endl
09396       <<"Reco: shw="<<nu.shwEn<<", diffShw="<<diffShw
09397       <<endl;
09398   }
09399 
09400   if (true){
09401     if (diffRange<-1) diffRange=-1;
09402     if (diffCurv<-1) diffCurv=-1;
09403     if (diffMu<-1) diffMu=-1;
09404     if (diffShw<-1) diffShw=-1;
09405     if (diffShw2<-1) diffShw2=-1;
09406     if (diffNu<-1) diffNu=-1;
09407     if (diffY<-1) diffY=-1;
09408     if (diffMuYMC<-1) diffMuYMC=-1;
09409     if (diffShwYMC<-1) diffShwYMC=-1;
09410   }
09411 
09412   //evt vtx reco-true differences 
09413   Float_t vtxTDiff=pow(nu.xEvtVtx-nu.vtxxMC,2)+
09414     pow(nu.yEvtVtx-nu.vtxyMC,2);
09415   Float_t vtxZDiff=nu.zEvtVtx-nu.vtxzMC;
09416   Float_t vtxSDiff=pow(nu.xEvtVtx-nu.vtxxMC,2)+
09417     pow(nu.yEvtVtx-nu.vtxyMC,2)+pow(nu.zEvtVtx-nu.vtxzMC,2);
09418   if (vtxTDiff>0) vtxTDiff=sqrt(vtxTDiff);
09419   else {
09420     cout<<"Setting vtxTDiff to zero"<<endl;
09421     vtxTDiff=0;
09422   }
09423   if (vtxSDiff>0) vtxSDiff=sqrt(vtxSDiff);
09424   else {
09425     cout<<"Setting vtxSDiff to zero"<<endl;
09426     vtxSDiff=0;
09427   }
09428 
09429   if (nu.charge==-1) {
09430     hEvtVtxTDiffNQ->Fill(vtxTDiff,nu.rw);
09431     hEvtVtxZDiffNQ->Fill(vtxZDiff,nu.rw);
09432     hEvtVtxSDiffNQ->Fill(vtxSDiff,nu.rw);
09433     pEvtVtxTDiffVsDistNQ->Fill(nu.distToEdgeEvtVtx,vtxTDiff,nu.rw);
09434     pEvtVtxZDiffVsDistNQ->Fill(nu.distToEdgeEvtVtx,vtxZDiff,nu.rw);
09435     pEvtVtxSDiffVsDistNQ->Fill(nu.distToEdgeEvtVtx,vtxSDiff,nu.rw);
09436   }
09437   else if (nu.charge==+1) {
09438     hEvtVtxTDiffPQ->Fill(vtxTDiff,nu.rw);
09439     hEvtVtxZDiffPQ->Fill(vtxZDiff,nu.rw);
09440     hEvtVtxSDiffPQ->Fill(vtxSDiff,nu.rw);
09441     pEvtVtxTDiffVsDistPQ->Fill(nu.distToEdgeEvtVtx,vtxTDiff,nu.rw);
09442     pEvtVtxZDiffVsDistPQ->Fill(nu.distToEdgeEvtVtx,vtxZDiff,nu.rw);
09443     pEvtVtxSDiffVsDistPQ->Fill(nu.distToEdgeEvtVtx,vtxSDiff,nu.rw);
09444   }
09445 
09446   //make plots for NC and CC separately 
09447   if (nu.charge==-1) {
09448     if (nu.iaction==1) {
09449       hNuEnDiffCCNQ->Fill(diffNu,nu.rw);
09450     }
09451     else if (nu.iaction==0) {
09452       hNuEnDiffNCNQ->Fill(diffNu,nu.rw);
09453     }
09454     else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad iaction"<<endl;
09455   }
09456   else if (nu.charge==+1) {
09457     if (nu.iaction==1){
09458       hNuEnDiffCCPQ->Fill(diffNu,nu.rw);
09459     }
09460     else if (nu.iaction==0) {
09461       hNuEnDiffNCPQ->Fill(diffNu,nu.rw);
09462     }
09463     else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad iaction"<<endl;
09464   }
09465 
09466   //only make plots for CC
09467   //the muon plots particularly are distorted since trueEn=0 for NC
09468   //return if not CC
09469   if (nu.iaction!=1) return;
09470   
09471   
09472   //if (nu.charge==+1) {//used up until 07/Aug/07
09473   if (nu.charge==+1 && nu.inu==-14) {//nubars
09474     hMuEnDiffPQ->Fill(diffMu,nu.rw);
09475     if (radiusEnd<=0.7) {
09476       hMuEnDiffRangeR07PQ->Fill(diffRange,nu.rw);
09477       hMuEnDiffCurvR07PQ->Fill(diffCurv,nu.rw);
09478     }
09479     hMuEnDiffRangePQ->Fill(diffRange,nu.rw);
09480     hMuEnDiffCurvPQ->Fill(diffCurv,nu.rw);
09481     hShwEnDiffPQ->Fill(diffShw,nu.rw);
09482     hShwEn2DiffPQ->Fill(diffShw2,nu.rw);
09483     hNuEnDiffPQ->Fill(diffNu,nu.rw);
09484     pNuEnDiff20PQ->Fill(nu.energyMC,diffNu,nu.rw);
09485     pNuEnDiff10PQ->Fill(nu.energyMC,diffNu,nu.rw);
09486     pNuEnDiff05PQ->Fill(nu.energyMC,diffNu,nu.rw);
09487     pMuEnDiff20PQ->Fill(nu.energyMC,diffMu,nu.rw);
09488     pMuEnDiff10PQ->Fill(nu.energyMC,diffMu,nu.rw);
09489     pMuEnDiff05PQ->Fill(nu.energyMC,diffMu,nu.rw);
09490     pShwEnDiff20PQ->Fill(nu.energyMC,diffShw,nu.rw);
09491     pShwEnDiff10PQ->Fill(nu.energyMC,diffShw,nu.rw);
09492     pShwEnDiff05PQ->Fill(nu.energyMC,diffShw,nu.rw);
09493 
09494     hYDiffPQ->Fill(diffY,nu.rw);
09495     hYAbDiffPQ->Fill(diffAbY,nu.rw);
09496     hMuYDiffMCPQ->Fill(diffMuYMC,nu.rw);
09497     hShwYDiffMCPQ->Fill(diffShwYMC,nu.rw);
09498     hMuYAbDiffMCPQ->Fill(diffAbMuYMC,nu.rw);
09499     hShwYAbDiffMCPQ->Fill(diffAbShwYMC,nu.rw);
09500     
09501     hShwVsNuEnAllPQ->Fill(nu.energyMC,nu.shwEnMC,nu.rw);
09502     if (diffShw>=1) {
09503       hShwVsNuEnPQ->Fill(nu.energyMC,nu.shwEnMC,nu.rw);
09504     }
09505 
09506     //fiducial volume study plots
09507     if (nu.shwEn>0) {//only fill if there is a shower
09508       pShwEnDiffVsDistAllPQ->Fill(nu.distToEdgeEvtVtx,diffShw,nu.rw);
09509       //hEvtsVsDistAllPQ->Fill(nu.distToEdgeEvtVtx,nu.rw);//fill above
09510       if (nu.shwEnMC<5) {
09511         pShwEnDiffVsDistl05PQ->Fill(nu.distToEdgeEvtVtx,diffShw,nu.rw);
09512         hEvtsVsDistl05PQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09513       }
09514       else if (nu.shwEnMC<10) {
09515         pShwEnDiffVsDistg05l10PQ->Fill(nu.distToEdgeEvtVtx,diffShw,
09516                                        nu.rw);
09517         hEvtsVsDistg05l10PQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09518       }
09519       else if (nu.shwEnMC<20) {
09520         pShwEnDiffVsDistg10l20PQ->Fill(nu.distToEdgeEvtVtx,diffShw,
09521                                        nu.rw);
09522         hEvtsVsDistg10l20PQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09523       }
09524       else {
09525         pShwEnDiffVsDistg20PQ->Fill(nu.distToEdgeEvtVtx,diffShw,nu.rw);
09526         hEvtsVsDistg20PQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09527       }
09528     }
09529 
09530     //fill the histos for particular containments
09531     if (nu.containmentFlag==1) {
09532       //if (fabs(diffRange)>0.2) nu.PrintRangeEnergy();
09533       if (radiusEnd<=0.7) {
09534         hMuEnDiffRangeR07PQ1->Fill(diffRange,nu.rw);
09535         hMuEnDiffCurvR07PQ1->Fill(diffCurv,nu.rw);
09536       }
09537       hMuEnDiffRangePQ1->Fill(diffRange,nu.rw);
09538       hMuEnDiffCurvPQ1->Fill(diffCurv,nu.rw);
09539       hShwEnDiffPQ1->Fill(diffShw,nu.rw);
09540       hNuEnDiffPQ1->Fill(diffNu,nu.rw);
09541     }
09542     else if (nu.containmentFlag==2) {
09543       if (radiusEnd<=0.7) {
09544         hMuEnDiffRangeR07PQ2->Fill(diffRange,nu.rw);
09545         hMuEnDiffCurvR07PQ2->Fill(diffCurv,nu.rw);
09546       }
09547       hMuEnDiffRangePQ2->Fill(diffRange,nu.rw);
09548       hMuEnDiffCurvPQ2->Fill(diffCurv,nu.rw);
09549       hShwEnDiffPQ2->Fill(diffShw,nu.rw);
09550       hNuEnDiffPQ2->Fill(diffNu,nu.rw);
09551     }
09552     else if (nu.containmentFlag==3) {
09553       if (radiusEnd<=0.7) {
09554         hMuEnDiffRangeR07PQ3->Fill(diffRange,nu.rw);
09555         hMuEnDiffCurvR07PQ3->Fill(diffCurv,nu.rw);
09556       }
09557       //if (fabs(diffRange)>0.2) nu.PrintRangeEnergy();
09558       hMuEnDiffRangePQ3->Fill(diffRange,nu.rw);
09559       hMuEnDiffCurvPQ3->Fill(diffCurv,nu.rw);
09560       hShwEnDiffPQ3->Fill(diffShw,nu.rw);
09561       hNuEnDiffPQ3->Fill(diffNu,nu.rw);
09562     }
09563     else if (nu.containmentFlag==4) {
09564       if (radiusEnd<=0.7) {
09565         hMuEnDiffRangeR07PQ4->Fill(diffRange,nu.rw);
09566         hMuEnDiffCurvR07PQ4->Fill(diffCurv,nu.rw);
09567       }
09568       hMuEnDiffRangePQ4->Fill(diffRange,nu.rw);
09569       hMuEnDiffCurvPQ4->Fill(diffCurv,nu.rw);
09570       hShwEnDiffPQ4->Fill(diffShw,nu.rw);
09571       hNuEnDiffPQ4->Fill(diffNu,nu.rw);
09572     }
09573     else MSG("NuPlots",Msg::kWarning)<<"Ahhh containmentFlag="<<nu.containmentFlag<<endl;
09574   }
09575   else if (nu.charge==+1) {
09576     //background event, so do nothing
09577   }
09578   //else if (nu.charge==-1){//used up until 07/Aug/07
09579   else if (nu.charge==-1 && nu.inu==+14) {//neutrinos
09580     hMuEnDiffNQ->Fill(diffMu,nu.rw);
09581     if (radiusEnd<=0.7) {
09582       hMuEnDiffRangeR07NQ->Fill(diffRange,nu.rw);
09583       hMuEnDiffCurvR07NQ->Fill(diffCurv,nu.rw);
09584     }
09585     hMuEnDiffRangeNQ->Fill(diffRange,nu.rw);
09586     hMuEnDiffCurvNQ->Fill(diffCurv,nu.rw);
09587     hShwEnDiffNQ->Fill(diffShw,nu.rw);
09588     hShwEn2DiffNQ->Fill(diffShw2,nu.rw);
09589     hNuEnDiffNQ->Fill(diffNu,nu.rw);
09590     pNuEnDiff20NQ->Fill(nu.energyMC,diffNu,nu.rw);
09591     pNuEnDiff10NQ->Fill(nu.energyMC,diffNu,nu.rw);
09592     pNuEnDiff05NQ->Fill(nu.energyMC,diffNu,nu.rw);
09593     pMuEnDiff20NQ->Fill(nu.energyMC,diffMu,nu.rw);
09594     pMuEnDiff10NQ->Fill(nu.energyMC,diffMu,nu.rw);
09595     pMuEnDiff05NQ->Fill(nu.energyMC,diffMu,nu.rw);
09596     pShwEnDiff20NQ->Fill(nu.energyMC,diffShw,nu.rw);
09597     pShwEnDiff10NQ->Fill(nu.energyMC,diffShw,nu.rw);
09598     pShwEnDiff05NQ->Fill(nu.energyMC,diffShw,nu.rw);
09599 
09600     hYDiffNQ->Fill(diffY,nu.rw);
09601     hYAbDiffNQ->Fill(diffAbY,nu.rw);
09602     hMuYDiffMCNQ->Fill(diffMuYMC,nu.rw);
09603     hShwYDiffMCNQ->Fill(diffShwYMC,nu.rw);
09604     hMuYAbDiffMCNQ->Fill(diffAbMuYMC,nu.rw);
09605     hShwYAbDiffMCNQ->Fill(diffAbShwYMC,nu.rw);
09606 
09607     hShwVsNuEnAllNQ->Fill(nu.energyMC,nu.shwEnMC,nu.rw);
09608     if (diffShw>=1) {
09609       hShwVsNuEnNQ->Fill(nu.energyMC,nu.shwEnMC,nu.rw);
09610     }
09611     
09612     //fiducial volume study plots
09613     if (nu.shwEn>0) {//only fill if there is a shower
09614       pShwEnDiffVsDistAllNQ->Fill(nu.distToEdgeEvtVtx,diffShw,nu.rw);
09615       //hEvtsVsDistAllNQ->Fill(nu.distToEdgeEvtVtx,nu.rw);//fill above
09616       if (nu.shwEnMC<5) {
09617         pShwEnDiffVsDistl05NQ->Fill(nu.distToEdgeEvtVtx,diffShw,nu.rw);
09618         hEvtsVsDistl05NQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09619       }
09620       else if (nu.shwEnMC<10) {
09621         pShwEnDiffVsDistg05l10NQ->Fill(nu.distToEdgeEvtVtx,diffShw,
09622                                        nu.rw);
09623         hEvtsVsDistg05l10NQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09624       }
09625       else if (nu.shwEnMC<20) {
09626         pShwEnDiffVsDistg10l20NQ->Fill(nu.distToEdgeEvtVtx,diffShw,
09627                                        nu.rw);
09628         hEvtsVsDistg10l20NQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09629       }
09630       else {
09631         pShwEnDiffVsDistg20NQ->Fill(nu.distToEdgeEvtVtx,diffShw,nu.rw);
09632         hEvtsVsDistg20NQ->Fill(nu.distToEdgeEvtVtx,nu.rw);
09633       }
09634     }
09635 
09636     //fill the histos for specific energy ranges
09637     if (nu.energyMC<1) {
09638       //do nothing
09639     }
09640     else if (nu.energyMC<2) {
09641       hShwEnDiffNQGeV1->Fill(diffShw,nu.rw);
09642       MAXMSG("NuPlots",Msg::kDebug,300)
09643         <<endl
09644         <<"shwMC="<<nu.shwEnMC
09645         <<", shw="<<nu.shwEn
09646         <<", diffShw="<<diffShw
09647         <<endl<<endl;
09648     }
09649     else if (nu.energyMC<3) {
09650       hShwEnDiffNQGeV2->Fill(diffShw,nu.rw);
09651     }
09652     else if (nu.energyMC<4) {
09653       hShwEnDiffNQGeV3->Fill(diffShw,nu.rw);
09654     }
09655     else if (nu.energyMC<5) {
09656       hShwEnDiffNQGeV4->Fill(diffShw,nu.rw);
09657     }
09658     else if (nu.energyMC<6) {
09659       hShwEnDiffNQGeV5->Fill(diffShw,nu.rw);
09660     }
09661     else if (nu.energyMC<7) {
09662       hShwEnDiffNQGeV6->Fill(diffShw,nu.rw);
09663     }
09664 
09665     //fill histos for particular containments
09666     if (nu.containmentFlag==1) {
09667       if (radiusEnd<=0.7) {
09668         hMuEnDiffRangeR07NQ1->Fill(diffRange,nu.rw);
09669         hMuEnDiffCurvR07NQ1->Fill(diffCurv,nu.rw);
09670       }
09671       //if (fabs(diffRange)>0.2) nu.PrintRangeEnergy();
09672       hMuEnDiffRangeNQ1->Fill(diffRange,nu.rw);
09673       hMuEnDiffCurvNQ1->Fill(diffCurv,nu.rw);
09674       hShwEnDiffNQ1->Fill(diffShw,nu.rw);
09675       hNuEnDiffNQ1->Fill(diffNu,nu.rw);
09676     }
09677     else if (nu.containmentFlag==2) {
09678       if (radiusEnd<=0.7) {
09679         hMuEnDiffRangeR07NQ2->Fill(diffRange,nu.rw);
09680         hMuEnDiffCurvR07NQ2->Fill(diffCurv,nu.rw);
09681       }
09682       hMuEnDiffRangeNQ2->Fill(diffRange,nu.rw);
09683       hMuEnDiffCurvNQ2->Fill(diffCurv,nu.rw);
09684       hShwEnDiffNQ2->Fill(diffShw,nu.rw);
09685       hNuEnDiffNQ2->Fill(diffNu,nu.rw);
09686     }
09687     else if (nu.containmentFlag==3) {
09688       if (radiusEnd<=0.7) {
09689         hMuEnDiffRangeR07NQ3->Fill(diffRange,nu.rw);
09690         hMuEnDiffCurvR07NQ3->Fill(diffCurv,nu.rw);
09691       }
09692       //if (fabs(diffRange)>0.2) nu.PrintRangeEnergy();
09693       hMuEnDiffRangeNQ3->Fill(diffRange,nu.rw);
09694       hMuEnDiffCurvNQ3->Fill(diffCurv,nu.rw);
09695       hShwEnDiffNQ3->Fill(diffShw,nu.rw);
09696       hNuEnDiffNQ3->Fill(diffNu,nu.rw);
09697     }
09698     else if (nu.containmentFlag==4) {
09699       if (radiusEnd<=0.7) {
09700         hMuEnDiffRangeR07NQ4->Fill(diffRange,nu.rw);
09701         hMuEnDiffCurvR07NQ4->Fill(diffCurv,nu.rw);
09702       }
09703       hMuEnDiffRangeNQ4->Fill(diffRange,nu.rw);
09704       hMuEnDiffCurvNQ4->Fill(diffCurv,nu.rw);
09705       hShwEnDiffNQ4->Fill(diffShw,nu.rw);
09706       hNuEnDiffNQ4->Fill(diffNu,nu.rw);
09707     }
09708     else MSG("NuPlots",Msg::kWarning)<<"Ahhh containmentFlag="<<nu.containmentFlag<<endl;
09709   }
09710   else if (nu.charge==-1) {
09711     //background event, so do nothing
09712   }
09713   else MSG("NuPlots",Msg::kWarning)<<"Ahh bad charge="<<nu.charge<<endl;
09714 }

void NuPlots::FillCounts const NuEvent nu,
TString  post,
TString  cut
const
 

Definition at line 26702 of file NuPlots.cxx.

References NuEvent::beamWeightRunII, NuEvent::charge, and NuEvent::energy.

26704 {
26705   double rw = nu.beamWeightRunII;
26706   static vector<TH1F*> counts;
26707   static vector<TH1F*> countsPQ;
26708   static vector<TH1F*> countsNQ;
26709   static map<TString, int> index;
26710 
26711   map<TString,int>::iterator iter = index.find(post);
26712   if( iter == index.end() ) {
26713     index[post] = counts.size();
26714                 
26715     TString pre = "h";
26716     TString sCounts   = pre + "counts_" + post + "_";
26717     TString sCountsPQ = pre + "counts_" + post + "_PQ";
26718     TString sCountsNQ = pre + "counts_" + post + "_NQ";         
26719 
26720     counts.push_back
26721       (new TH1F(sCounts,
26722                 "Number of events after selection",10,0,10));
26723     countsPQ.push_back
26724       (new TH1F(sCountsPQ,
26725                 "Number positive of events after selection",10,0,10));
26726     countsNQ.push_back
26727       (new TH1F(sCountsNQ,
26728                 "Number negative events after selection",10,0,10));
26729   }
26730 
26731   int pnum = index[post];
26732   if (nu.energy < 30) {
26733     counts[pnum]->Fill(cut,rw);
26734     if (nu.charge == 1)
26735       countsPQ[pnum]->Fill(cut, rw);
26736     else if (nu.charge == -1)
26737       countsNQ[pnum]->Fill(cut, rw);
26738   }
26739 }

void NuPlots::FillDetectorEdge const NuEvent nu,
TString  post
const
 

Definition at line 26452 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::containmentFlagPitt, FormatPlot(), NuReco::GetVldContext(), NuLibrary::Instance(), MSG, NuEvent::planeTrkEnd, NuLibrary::reco, NuEvent::rw, NuEvent::uTrkEnd, NuReco::uvz2xyz(), NuEvent::vTrkEnd, NuEvent::xTrkEnd, NuEvent::yTrkEnd, and NuEvent::zTrkEnd.

26453 {
26454   static const int Nplots = 2; 
26455   static const TString names[2] = {"PQEx", "NQEx"};
26456 
26457   static vector<TH1F*> TrkEndX; // with Y cut -0.82 to 0.82
26458   static vector<TH1F*> TrkEndU; // with V Cut -1.5  to 0
26459   static vector<TH1F*> TrkEndV; // with U cut  0.0 to 1.5
26460   static vector<TH1F*> TrkEndUFV; // with V Cut -1.5  to 0
26461   static vector<TH1F*> TrkEndUFU; // with V Cut -1.5  to 0
26462   static vector<TH1F*> TrkEndVFV; // with U cut  0.0 to 1.5
26463   static vector<TH1F*> TrkEndVFU; // with U cut  0.0 to 1.5
26464   static vector<TH1F*> TrkEndUFVCal; // with V Cut -1.5  to 0
26465   static vector<TH1F*> TrkEndUFVSpec; // with V Cut -1.5  to 0
26466   static vector<TH1F*> TrkEndVFUCal; // with U cut  0.0 to 1.5
26467   static vector<TH1F*> TrkEndVFUSpec; // with U cut  0.0 to 1.5
26468   static vector<TH1F*> TrkEndXPU; // with Y cut -0.82 to 0.82
26469   static vector<TH1F*> TrkEndXPV; // with Y cut -0.82 to 0.82
26470   static vector<TH1F*> TrkEndXFU; // with Y cut -0.82 to 0.82
26471   static vector<TH1F*> TrkEndXFV; // with Y cut -0.82 to 0.82
26472   static vector<TH1F*> TrkEndYFUTop; // with X cut 0.1 to 1.9 and 1.3<Y<2.3
26473   static vector<TH1F*> TrkEndYFVTop; // with X cut 0.1 to 1.9 and 1.3<Y<2.3
26474   static vector<TH1F*> TrkEndYFUBot; // with X cut 0.1 to 1.9 and -2<Y<-1
26475   static vector<TH1F*> TrkEndYFVBot; // with X cut 0.1 to 1.9 and -2<Y<-1
26476 
26477   static vector<TH2F*> TrkEndYCut;
26478   static vector<TH2F*> TrkEndXCut;
26479   static vector<TH2F*> TrkEndUCut;
26480   static vector<TH2F*> TrkEndVCut;
26481   static map<TString, int> index;
26482   
26483   if (nu.containmentFlagPitt==1 || nu.containmentFlagPitt==3) {
26484     return; // No Contained Events
26485   }
26486 
26487   map<TString,int>::iterator iter = index.find(post);
26488   if( iter == index.end() ) {
26489     index[post] = TrkEndX.size();
26490     MSG("NuPlots",Msg::kInfo)
26491       <<"Creating DetectorEdge " << post << " plots.  index[post]=" 
26492       << index[post] << endl;
26493 
26494     TString pre = "h";
26495     TString sTrkEndX = pre + "TrkEndX_" + post + "_";
26496     TString sTrkEndU = pre + "TrkEndU_" + post + "_";
26497     TString sTrkEndV = pre + "TrkEndV_" + post + "_";
26498     TString sTrkEndUFV = pre + "TrkEndUFV_" + post + "_";
26499     TString sTrkEndUFU = pre + "TrkEndUFU_" + post + "_";
26500     TString sTrkEndVFV = pre + "TrkEndVFV_" + post + "_";
26501     TString sTrkEndVFU = pre + "TrkEndVFU_" + post + "_";
26502     TString sTrkEndUFVCal = pre + "TrkEndUFVCal_" + post + "_";
26503     TString sTrkEndUFVSpec = pre + "TrkEndUFVSpec_" + post + "_";
26504     TString sTrkEndVFUCal = pre + "TrkEndVFUCal_" + post + "_";
26505     TString sTrkEndVFUSpec = pre + "TrkEndVFUSpec_" + post + "_";
26506     TString sTrkEndXPU = pre + "TrkEndXPU_" + post + "_";
26507     TString sTrkEndXPV = pre + "TrkEndXPV_" + post + "_";
26508     TString sTrkEndXFU = pre + "TrkEndXFU_" + post + "_";
26509     TString sTrkEndXFV = pre + "TrkEndXFV_" + post + "_";
26510     TString sTrkEndYFUTop = pre + "TrkEndYFUTop_" + post + "_";
26511     TString sTrkEndYFVTop = pre + "TrkEndYFVTop_" + post + "_";
26512     TString sTrkEndYFUBot = pre + "TrkEndYFUBot_" + post + "_";
26513     TString sTrkEndYFVBot = pre + "TrkEndYFVBot_" + post + "_";
26514     TString sTrkEndYCut = pre + "TrkEndYCut_" + post + "_";
26515     TString sTrkEndXCut = pre + "TrkEndXCut_" + post + "_";
26516     TString sTrkEndUCut = pre + "TrkEndUCut_" + post + "_";
26517     TString sTrkEndVCut = pre + "TrkEndVCut_" + post + "_";
26518 
26519     for (int i = 0; i < Nplots; ++i) {
26520       TrkEndX.push_back(new TH1F(sTrkEndX+names[i],sTrkEndX+names[i],5000,-4,4));
26521       FormatPlot(TrkEndX.back(), "Trk End X");
26522 
26523       TrkEndU.push_back(new TH1F(sTrkEndU+names[i],sTrkEndU+names[i],5000,-4,4));
26524       FormatPlot(TrkEndU.back(), "Trk End U");
26525 
26526       TrkEndV.push_back(new TH1F(sTrkEndV+names[i],sTrkEndV+names[i],5000,-4,4));
26527       FormatPlot(TrkEndV.back(), "Trk End V");
26528           
26529       TrkEndUFV.push_back(new TH1F(sTrkEndUFV+names[i],sTrkEndUFV+names[i],5000,-4,4));
26530       FormatPlot(TrkEndUFV.back(), "Trk End U, Full V");
26531           
26532       TrkEndUFU.push_back(new TH1F(sTrkEndUFU+names[i],sTrkEndUFU+names[i],5000,-4,4));
26533       FormatPlot(TrkEndUFU.back(), "Trk End U, Full U");
26534           
26535       TrkEndVFV.push_back(new TH1F(sTrkEndVFV+names[i],sTrkEndVFV+names[i],5000,-4,4));
26536       FormatPlot(TrkEndVFV.back(), "Trk End V, Full V");
26537           
26538       TrkEndVFU.push_back(new TH1F(sTrkEndVFU+names[i],sTrkEndVFU+names[i],5000,-4,4));
26539       FormatPlot(TrkEndVFU.back(), "Trk End V, Full U");
26540           
26541       TrkEndUFVCal.push_back(new TH1F(sTrkEndUFVCal+names[i],sTrkEndUFVCal+names[i],5000,-4,4));
26542       FormatPlot(TrkEndUFVCal.back(), "Trk End U, Full V");
26543           
26544       TrkEndUFVSpec.push_back(new TH1F(sTrkEndUFVSpec+names[i],sTrkEndUFVSpec+names[i],5000,-4,4));
26545       FormatPlot(TrkEndUFVSpec.back(), "Trk End U, Full V");
26546           
26547       TrkEndVFUCal.push_back(new TH1F(sTrkEndVFUCal+names[i],sTrkEndVFUCal+names[i],5000,-4,4));
26548       FormatPlot(TrkEndVFUCal.back(), "Trk End V, Full U");
26549           
26550       TrkEndVFUSpec.push_back(new TH1F(sTrkEndVFUSpec+names[i],sTrkEndVFUSpec+names[i],5000,-4,4));
26551       FormatPlot(TrkEndVFUSpec.back(), "Trk End V, Full U");
26552           
26553       TrkEndXPU.push_back(new TH1F(sTrkEndXPU+names[i],sTrkEndXPU+names[i],5000,-4,4));
26554       FormatPlot(TrkEndXPU.back(), "Trk End X, Partial U");
26555 
26556       TrkEndXPV.push_back(new TH1F(sTrkEndXPV+names[i],sTrkEndXPV+names[i],5000,-4,4));
26557       FormatPlot(TrkEndXPV.back(), "Trk End X, Partial V");
26558 
26559       TrkEndXFU.push_back(new TH1F(sTrkEndXFU+names[i],sTrkEndXFU+names[i],5000,-4,4));
26560       FormatPlot(TrkEndXFU.back(), "Trk End X, Full U");
26561 
26562       TrkEndXFV.push_back(new TH1F(sTrkEndXFV+names[i],sTrkEndXFV+names[i],5000,-4,4));
26563       FormatPlot(TrkEndXFV.back(), "Trk End X, Full V");
26564 
26565       TrkEndYFUTop.push_back(new TH1F(sTrkEndYFUTop+names[i],sTrkEndYFUTop+names[i],5000,-4,4));
26566       FormatPlot(TrkEndYFUTop.back(), "Trk End Y, Full U Top");
26567 
26568       TrkEndYFVTop.push_back(new TH1F(sTrkEndYFVTop+names[i],sTrkEndYFVTop+names[i],5000,-4,4));
26569       FormatPlot(TrkEndYFVTop.back(), "Trk End Y, Full V Top");
26570           
26571       TrkEndYFUBot.push_back(new TH1F(sTrkEndYFUBot+names[i],sTrkEndYFUBot+names[i],5000,-4,4));
26572       FormatPlot(TrkEndYFUBot.back(), "Trk End Y, Full U Bot");
26573 
26574       TrkEndYFVBot.push_back(new TH1F(sTrkEndYFVBot+names[i],sTrkEndYFVBot+names[i],5000,-4,4));
26575       FormatPlot(TrkEndYFVBot.back(), "Trk End Y, Full V Bot");
26576           
26577       TrkEndXCut.push_back(new TH2F(sTrkEndXCut+names[i],sTrkEndXCut+names[i],60,-1.7,3.3,60,-2.5,2.5));
26578       FormatPlot(TrkEndXCut.back(), "X", "Y");
26579 
26580       TrkEndYCut.push_back(new TH2F(sTrkEndYCut+names[i],sTrkEndYCut+names[i],60,-1.7,3.3,60,-2.5,2.5));
26581       FormatPlot(TrkEndYCut.back(),  "X", "Y");
26582 
26583       TrkEndUCut.push_back(new TH2F(sTrkEndUCut+names[i],sTrkEndUCut+names[i],60,-1.7,3.3,60,-2.5,2.5));
26584       FormatPlot(TrkEndUCut.back(),  "X", "Y");
26585 
26586       TrkEndVCut.push_back(new TH2F(sTrkEndVCut+names[i],sTrkEndVCut+names[i],60,-2,3,60,-2.5,2.5));
26587       FormatPlot(TrkEndVCut.back(),  "X", "Y");
26588 
26589     }
26590   }
26591 
26592   int pnum=index[post];
26593   int ptype = 0;
26594   int pl = nu.planeTrkEnd;
26595 
26596   if (nu.charge < 0)  {  // +    => 0,1
26597     pnum ++;      // -    => 2,3
26598   }
26599 
26600 
26601 
26602   // Plane Numbering Conventions (from NueConventions.cxx)
26603   // make a lookup ptype to hold the type of each plane
26604   // 1 = v partial   2 = u partial
26605   // 3 = v full   4 = u full
26606   // 0 = uninstrumented 
26607   if(pl%2==0)      // a v plane
26608     ptype=1;
26609   else             // a u plane
26610     ptype=2;
26611   if((pl-1)%5 == 0)// fully instrumented
26612     ptype+=2;
26613   else if(pl > 120)// not instrumented
26614     ptype=0;
26615   if (pl > 281)    // plane does not exist
26616     ptype=0;
26617 
26618   
26619   // X with a Y Cut, Full & Partial U & V 
26620   if (nu.yTrkEnd > -0.82 && nu.yTrkEnd < 0.82) {
26621     TrkEndX[pnum]->Fill(nu.xTrkEnd, nu.rw);
26622     if (nu.xTrkEnd > 2.5 && nu.xTrkEnd < 3.1)
26623       TrkEndYCut[pnum]->Fill(nu.xTrkEnd, nu.yTrkEnd, nu.rw);
26624     switch (ptype) {
26625     case 1:
26626       TrkEndXPV[pnum]->Fill(nu.xTrkEnd, nu.rw);
26627       break;
26628     case 2:
26629       TrkEndXPU[pnum]->Fill(nu.xTrkEnd, nu.rw);
26630       break;
26631     case 3:
26632       TrkEndXFV[pnum]->Fill(nu.xTrkEnd, nu.rw);
26633       break;
26634     case 4:
26635       TrkEndXFU[pnum]->Fill(nu.xTrkEnd, nu.rw);
26636       break;
26637     default:
26638       MSG("NuPlots",Msg::kWarning)
26639         <<"Uninstrumented planeTrkEnd=" << nu.planeTrkEnd <<endl;
26640     }
26641   }
26642   
26643   const NuLibrary& lib=NuLibrary::Instance();
26644   float recou, recov;
26645   const VldContext& vc=lib.reco.GetVldContext(nu);
26646   TVector3 v1 = lib.reco.uvz2xyz(nu.xTrkEnd,nu.yTrkEnd,nu.zTrkEnd,vc);
26647   recou = v1.X();
26648   recov = v1.Y();
26649 
26650   // U with a V Cut, All, Full U & V
26651   if (nu.vTrkEnd > -1.5  && nu.vTrkEnd < 0) {
26652     TrkEndU[pnum]->Fill(nu.uTrkEnd, nu.rw);
26653     if (ptype == 3) {
26654       TrkEndUFV[pnum]->Fill(nu.uTrkEnd, nu.rw);
26655       if (pl < 120) TrkEndUFVCal[pnum]->Fill(nu.uTrkEnd, nu.rw);
26656       else          TrkEndUFVSpec[pnum]->Fill(nu.uTrkEnd, nu.rw);
26657     }
26658     if (ptype == 4)
26659       TrkEndUFU[pnum]->Fill(nu.uTrkEnd, nu.rw);
26660     if (nu.uTrkEnd > 2.2 && nu.uTrkEnd < 2.8)
26661       TrkEndVCut[pnum]->Fill(nu.xTrkEnd, nu.yTrkEnd, nu.rw);
26662   }
26663   
26664   // V with a U Cut, All, Full U & V
26665   if (nu.uTrkEnd > 0.0   && nu.uTrkEnd < 1.5) {
26666     TrkEndV[pnum]->Fill(nu.vTrkEnd, nu.rw);
26667     if (ptype == 3)
26668       TrkEndVFV[pnum]->Fill(nu.vTrkEnd, nu.rw);
26669     if (ptype == 4) {
26670       TrkEndVFU[pnum]->Fill(nu.vTrkEnd, nu.rw);
26671       if (pl < 120) TrkEndVFUCal[pnum]->Fill(nu.vTrkEnd, nu.rw);
26672       else          TrkEndVFUSpec[pnum]->Fill(nu.vTrkEnd, nu.rw);
26673     }
26674     if (nu.vTrkEnd > -2.8 && nu.vTrkEnd < -2.2)
26675       TrkEndUCut[pnum]->Fill(nu.xTrkEnd, nu.yTrkEnd, nu.rw);
26676   }
26677  
26678   // Y with an X cut, in Full U & V 
26679   if (nu.xTrkEnd > 0.1 && nu.xTrkEnd < 1.9) {
26680     if (nu.yTrkEnd > 0) {
26681       if (ptype == 3)
26682         TrkEndYFVTop[pnum]->Fill(nu.yTrkEnd, nu.rw);
26683       if (ptype == 4){
26684         TrkEndYFUTop[pnum]->Fill(nu.yTrkEnd, nu.rw);
26685       }
26686       if (nu.yTrkEnd > 1.4 && nu.yTrkEnd < 2)
26687         TrkEndXCut[pnum]->Fill(nu.xTrkEnd, nu.yTrkEnd, nu.rw);
26688     }
26689     else {
26690       if (ptype == 3)
26691         TrkEndYFVBot[pnum]->Fill(nu.yTrkEnd, nu.rw);
26692       else if (ptype == 4)
26693         TrkEndYFUBot[pnum]->Fill(nu.yTrkEnd, nu.rw);
26694       if (nu.yTrkEnd > -2 && nu.yTrkEnd < -1.4)
26695         TrkEndXCut[pnum]->Fill(nu.xTrkEnd, nu.yTrkEnd, nu.rw);
26696     }
26697   }
26698 }

void NuPlots::FillDPIdSigmaQPFailDpIDCutPlots const NuEvent nu  )  const
 

Definition at line 19003 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::chi2PerNdof, NuEvent::dpID, NuEvent::energy, MAXMSG, MSG, NuEvent::prob, NuEvent::rw, NuEvent::sigqp_qp, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodStdCuts(), NuDSTAna::JeffsTestAna(), NuAnalysis::LIRejectionTest(), NuDSTAna::NMBAna(), and NuAnalysis::NMBSummaryTreeAna().

19004 { 
19005   //PQ
19006   static TH1F* hSigqp_qpFailDpIDCutPQN=0;
19007   static TH1F* hChi2FailDpIDCutPQN=0;
19008   static TH1F* hProbFailDpIDCutPQN=0;
19009   static TH1F* hDpIDFailDpIDCutPQN=0;
19010   static TH1F* hRecoEnFailDpIDCutPQ=0;
19011   static TH1F* hRecoYFailDpIDCutPQ=0;
19012 
19013   //NQ
19014   static TH1F* hSigqp_qpFailDpIDCutNQN=0;
19015   static TH1F* hChi2FailDpIDCutNQN=0;
19016   static TH1F* hProbFailDpIDCutNQN=0;
19017   static TH1F* hDpIDFailDpIDCutNQN=0;
19018   static TH1F* hRecoEnFailDpIDCutNQ=0;
19019   static TH1F* hRecoYFailDpIDCutNQ=0;
19020 
19021   if (!hChi2FailDpIDCutNQN){
19022     MAXMSG("NuPlots",Msg::kDebug,1)
19023       <<"Creating DPIdSigmaQPFailDpIDCutPlots plots..."<<endl;
19024     
19025     //PQ
19026     hSigqp_qpFailDpIDCutPQN=new TH1F("hSigqp_qpFailDpIDCutPQN","hSigqp_qpFailDpIDCutPQN",800*160,-160,160);
19027     hSigqp_qpFailDpIDCutPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
19028     hSigqp_qpFailDpIDCutPQN->GetXaxis()->CenterTitle();
19029     hSigqp_qpFailDpIDCutPQN->GetYaxis()->SetTitle("");
19030     hSigqp_qpFailDpIDCutPQN->GetYaxis()->CenterTitle();
19031     hSigqp_qpFailDpIDCutPQN->SetFillColor(0);
19032     hSigqp_qpFailDpIDCutPQN->SetLineColor(1);
19033     hSigqp_qpFailDpIDCutPQN->SetLineWidth(2);
19034     hSigqp_qpFailDpIDCutPQN->SetLineStyle(2);
19035     //hSigqp_qpFailDpIDCutPQN->SetBit(TH1::kCanRebin);
19036 
19037     hChi2FailDpIDCutPQN=new TH1F("hChi2FailDpIDCutPQN","hChi2FailDpIDCutPQN",10*176,-16,160);
19038     hChi2FailDpIDCutPQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
19039     hChi2FailDpIDCutPQN->GetXaxis()->CenterTitle();
19040     hChi2FailDpIDCutPQN->GetYaxis()->SetTitle("");
19041     hChi2FailDpIDCutPQN->GetYaxis()->CenterTitle();
19042     hChi2FailDpIDCutPQN->SetFillColor(0);
19043     hChi2FailDpIDCutPQN->SetLineColor(1);
19044     hChi2FailDpIDCutPQN->SetLineWidth(2);
19045     hChi2FailDpIDCutPQN->SetLineStyle(2);
19046     //hChi2FailDpIDCutPQN->SetBit(TH1::kCanRebin);
19047 
19048     hProbFailDpIDCutPQN=new TH1F("hProbFailDpIDCutPQN","hProbFailDpIDCutPQN",14000,-0.2,1.2);
19049     hProbFailDpIDCutPQN->GetXaxis()->SetTitle("Fit Probability");
19050     hProbFailDpIDCutPQN->GetXaxis()->CenterTitle();
19051     hProbFailDpIDCutPQN->GetYaxis()->SetTitle("");
19052     hProbFailDpIDCutPQN->GetYaxis()->CenterTitle();
19053     hProbFailDpIDCutPQN->SetFillColor(0);
19054     hProbFailDpIDCutPQN->SetLineColor(1);
19055     hProbFailDpIDCutPQN->SetLineWidth(2);
19056     hProbFailDpIDCutPQN->SetLineStyle(2);
19057     //hProbFailDpIDCutPQN->SetBit(TH1::kCanRebin);
19058 
19059     hDpIDFailDpIDCutPQN=new TH1F("hDpIDFailDpIDCutPQN","hDpIDFailDpIDCutPQN",4*160,-1.6,1.6);
19060     hDpIDFailDpIDCutPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
19061     hDpIDFailDpIDCutPQN->GetXaxis()->CenterTitle();
19062     hDpIDFailDpIDCutPQN->GetYaxis()->SetTitle("");
19063     hDpIDFailDpIDCutPQN->GetYaxis()->CenterTitle();
19064     hDpIDFailDpIDCutPQN->SetFillColor(0);
19065     hDpIDFailDpIDCutPQN->SetLineColor(1);
19066     hDpIDFailDpIDCutPQN->SetLineWidth(2);
19067     //hDpIDFailDpIDCutPQN->SetBit(TH1::kCanRebin);
19068 
19069     hRecoEnFailDpIDCutPQ=new TH1F("hRecoEnFailDpIDCutPQ","hRecoEnFailDpIDCutPQ",
19070                                   4*352,-32,320);
19071     hRecoEnFailDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19072     hRecoEnFailDpIDCutPQ->GetXaxis()->CenterTitle();
19073     hRecoEnFailDpIDCutPQ->GetYaxis()->SetTitle("");
19074     hRecoEnFailDpIDCutPQ->GetYaxis()->CenterTitle();
19075     hRecoEnFailDpIDCutPQ->SetFillColor(0);
19076     hRecoEnFailDpIDCutPQ->SetLineColor(1);
19077     //hRecoEnFailDpIDCutPQ->SetBit(TH1::kCanRebin);
19078 
19079     hRecoYFailDpIDCutPQ=new TH1F("hRecoYFailDpIDCutPQ","hRecoYFailDpIDCutPQ",
19080                                  1400,-0.2,1.2);
19081     hRecoYFailDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed y");
19082     hRecoYFailDpIDCutPQ->GetXaxis()->CenterTitle();
19083     hRecoYFailDpIDCutPQ->GetYaxis()->SetTitle("");
19084     hRecoYFailDpIDCutPQ->GetYaxis()->CenterTitle();
19085     hRecoYFailDpIDCutPQ->SetFillColor(0);
19086     hRecoYFailDpIDCutPQ->SetLineColor(1);
19087     //hRecoYFailDpIDCutPQ->SetBit(TH1::kCanRebin);
19088 
19089 
19090 
19091     //NQ
19092     hSigqp_qpFailDpIDCutNQN=new TH1F("hSigqp_qpFailDpIDCutNQN","hSigqp_qpFailDpIDCutNQN",800*160,-160,160);
19093     hSigqp_qpFailDpIDCutNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
19094     hSigqp_qpFailDpIDCutNQN->GetXaxis()->CenterTitle();
19095     hSigqp_qpFailDpIDCutNQN->GetYaxis()->SetTitle("");
19096     hSigqp_qpFailDpIDCutNQN->GetYaxis()->CenterTitle();
19097     hSigqp_qpFailDpIDCutNQN->SetFillColor(0);
19098     hSigqp_qpFailDpIDCutNQN->SetLineColor(1);
19099     hSigqp_qpFailDpIDCutNQN->SetLineWidth(2);
19100     hSigqp_qpFailDpIDCutNQN->SetLineStyle(2);
19101     //hSigqp_qpFailDpIDCutNQN->SetBit(TH1::kCanRebin);
19102 
19103     hChi2FailDpIDCutNQN=new TH1F("hChi2FailDpIDCutNQN","hChi2FailDpIDCutNQN",10*176,-16,160);
19104     hChi2FailDpIDCutNQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
19105     hChi2FailDpIDCutNQN->GetXaxis()->CenterTitle();
19106     hChi2FailDpIDCutNQN->GetYaxis()->SetTitle("");
19107     hChi2FailDpIDCutNQN->GetYaxis()->CenterTitle();
19108     hChi2FailDpIDCutNQN->SetFillColor(0);
19109     hChi2FailDpIDCutNQN->SetLineColor(1);
19110     hChi2FailDpIDCutNQN->SetLineWidth(2);
19111     hChi2FailDpIDCutNQN->SetLineStyle(2);
19112     //hChi2FailDpIDCutNQN->SetBit(TH1::kCanRebin);
19113 
19114     hProbFailDpIDCutNQN=new TH1F("hProbFailDpIDCutNQN","hProbFailDpIDCutNQN",14000,-0.2,1.2);
19115     hProbFailDpIDCutNQN->GetXaxis()->SetTitle("Fit Probability");
19116     hProbFailDpIDCutNQN->GetXaxis()->CenterTitle();
19117     hProbFailDpIDCutNQN->GetYaxis()->SetTitle("");
19118     hProbFailDpIDCutNQN->GetYaxis()->CenterTitle();
19119     hProbFailDpIDCutNQN->SetFillColor(0);
19120     hProbFailDpIDCutNQN->SetLineColor(1);
19121     hProbFailDpIDCutNQN->SetLineWidth(2);
19122     hProbFailDpIDCutNQN->SetLineStyle(2);
19123     //hProbFailDpIDCutNQN->SetBit(TH1::kCanRebin);
19124 
19125     hDpIDFailDpIDCutNQN=new TH1F("hDpIDFailDpIDCutNQN","hDpIDFailDpIDCutNQN",4*160,-1.6,1.6);
19126     hDpIDFailDpIDCutNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
19127     hDpIDFailDpIDCutNQN->GetXaxis()->CenterTitle();
19128     hDpIDFailDpIDCutNQN->GetYaxis()->SetTitle("");
19129     hDpIDFailDpIDCutNQN->GetYaxis()->CenterTitle();
19130     hDpIDFailDpIDCutNQN->SetFillColor(0);
19131     hDpIDFailDpIDCutNQN->SetLineColor(1);
19132     hDpIDFailDpIDCutNQN->SetLineWidth(2);
19133     //hDpIDFailDpIDCutNQN->SetBit(TH1::kCanRebin);
19134 
19135     hRecoEnFailDpIDCutNQ=new TH1F("hRecoEnFailDpIDCutNQ","hRecoEnFailDpIDCutNQ",
19136                                   4*352,-32,320);
19137     hRecoEnFailDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19138     hRecoEnFailDpIDCutNQ->GetXaxis()->CenterTitle();
19139     hRecoEnFailDpIDCutNQ->GetYaxis()->SetTitle("");
19140     hRecoEnFailDpIDCutNQ->GetYaxis()->CenterTitle();
19141     hRecoEnFailDpIDCutNQ->SetFillColor(0);
19142     hRecoEnFailDpIDCutNQ->SetLineColor(1);
19143     //hRecoEnFailDpIDCutNQ->SetBit(TH1::kCanRebin);
19144     
19145     hRecoYFailDpIDCutNQ=new TH1F("hRecoYFailDpIDCutNQ","hRecoYFailDpIDCutNQ",
19146                                  1400,-0.2,1.2);
19147     hRecoYFailDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed y");
19148     hRecoYFailDpIDCutNQ->GetXaxis()->CenterTitle();
19149     hRecoYFailDpIDCutNQ->GetYaxis()->SetTitle("");
19150     hRecoYFailDpIDCutNQ->GetYaxis()->CenterTitle();
19151     hRecoYFailDpIDCutNQ->SetFillColor(0);
19152     hRecoYFailDpIDCutNQ->SetLineColor(1);
19153     //hRecoYFailDpIDCutNQ->SetBit(TH1::kCanRebin);
19154   }
19155   
19156   //PQ
19157   if (nu.charge==+1){
19158     hSigqp_qpFailDpIDCutPQN->Fill(nu.sigqp_qp,nu.rw);
19159     hChi2FailDpIDCutPQN->Fill(nu.chi2PerNdof,nu.rw);
19160     hProbFailDpIDCutPQN->Fill(nu.prob,nu.rw);
19161     hDpIDFailDpIDCutPQN->Fill(nu.dpID,nu.rw);
19162     
19163     hRecoEnFailDpIDCutPQ->Fill(nu.energy,nu.rw);
19164     hRecoYFailDpIDCutPQ->Fill(nu.y,nu.rw);
19165   }
19166   //NQ
19167   else if (nu.charge==-1){
19168     hSigqp_qpFailDpIDCutNQN->Fill(nu.sigqp_qp,nu.rw);
19169     hChi2FailDpIDCutNQN->Fill(nu.chi2PerNdof,nu.rw);
19170     hProbFailDpIDCutNQN->Fill(nu.prob,nu.rw);
19171     hDpIDFailDpIDCutNQN->Fill(nu.dpID,nu.rw);
19172 
19173     hRecoEnFailDpIDCutNQ->Fill(nu.energy,nu.rw);
19174     hRecoYFailDpIDCutNQ->Fill(nu.y,nu.rw);
19175   }
19176   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
19177 }

void NuPlots::FillDPIdSigmaQPFailProbCutPlots const NuEvent nu  )  const
 

Definition at line 22125 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::chi2PerNdof, NuEvent::dpID, NuEvent::energy, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::prob, NuEvent::rw, NuEvent::sigqp_qp, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodStdCuts(), NuDSTAna::JeffsTestAna(), NuAnalysis::LIRejectionTest(), NuDSTAna::NMBAna(), and NuAnalysis::NMBSummaryTreeAna().

22126 { 
22127   //PQ
22128   static TH1F* hSigqp_qpFailProbCutPQN=0;
22129   static TH1F* hChi2FailProbCutPQN=0;
22130   static TH1F* hProbFailProbCutPQN=0;
22131   static TH1F* hDpIDFailProbCutPQN=0;
22132   static TH1F* hRecoEnFailProbCutPQ=0;
22133   static TH1F* hRecoYFailProbCutPQ=0;
22134 
22135   static TH1F* hNMProbFailProbCutPQ=0;
22136   static TH1F* hNMBProbFailProbCutPQ=0;
22137   static TH1F* hAllShwProbFailProbCutPQ=0;
22138   
22139   //NQ
22140   static TH1F* hSigqp_qpFailProbCutNQN=0;
22141   static TH1F* hChi2FailProbCutNQN=0;
22142   static TH1F* hProbFailProbCutNQN=0;
22143   static TH1F* hDpIDFailProbCutNQN=0;
22144   static TH1F* hRecoEnFailProbCutNQ=0;
22145   static TH1F* hRecoYFailProbCutNQ=0;
22146   
22147   static TH1F* hNMProbFailProbCutNQ=0;
22148   static TH1F* hNMBProbFailProbCutNQ=0;
22149   static TH1F* hAllShwProbFailProbCutNQ=0;
22150 
22151   if (!hChi2FailProbCutNQN){
22152     MAXMSG("NuPlots",Msg::kDebug,1)
22153       <<"Creating DPIdSigmaQPFailProbCutPlots plots..."<<endl;
22154     
22155     //PQ
22156     hSigqp_qpFailProbCutPQN=new TH1F("hSigqp_qpFailProbCutPQN","hSigqp_qpFailProbCutPQN",800*160,-160,160);
22157     hSigqp_qpFailProbCutPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
22158     hSigqp_qpFailProbCutPQN->GetXaxis()->CenterTitle();
22159     hSigqp_qpFailProbCutPQN->GetYaxis()->SetTitle("");
22160     hSigqp_qpFailProbCutPQN->GetYaxis()->CenterTitle();
22161     hSigqp_qpFailProbCutPQN->SetFillColor(0);
22162     hSigqp_qpFailProbCutPQN->SetLineColor(1);
22163     hSigqp_qpFailProbCutPQN->SetLineWidth(2);
22164     hSigqp_qpFailProbCutPQN->SetLineStyle(2);
22165     //hSigqp_qpFailProbCutPQN->SetBit(TH1::kCanRebin);
22166 
22167     hChi2FailProbCutPQN=new TH1F("hChi2FailProbCutPQN","hChi2FailProbCutPQN",10*176,-16,160);
22168     hChi2FailProbCutPQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
22169     hChi2FailProbCutPQN->GetXaxis()->CenterTitle();
22170     hChi2FailProbCutPQN->GetYaxis()->SetTitle("");
22171     hChi2FailProbCutPQN->GetYaxis()->CenterTitle();
22172     hChi2FailProbCutPQN->SetFillColor(0);
22173     hChi2FailProbCutPQN->SetLineColor(1);
22174     hChi2FailProbCutPQN->SetLineWidth(2);
22175     hChi2FailProbCutPQN->SetLineStyle(2);
22176     //hChi2FailProbCutPQN->SetBit(TH1::kCanRebin);
22177 
22178     hProbFailProbCutPQN=new TH1F("hProbFailProbCutPQN","hProbFailProbCutPQN",14000,-0.2,1.2);
22179     hProbFailProbCutPQN->GetXaxis()->SetTitle("Fit Probability");
22180     hProbFailProbCutPQN->GetXaxis()->CenterTitle();
22181     hProbFailProbCutPQN->GetYaxis()->SetTitle("");
22182     hProbFailProbCutPQN->GetYaxis()->CenterTitle();
22183     hProbFailProbCutPQN->SetFillColor(0);
22184     hProbFailProbCutPQN->SetLineColor(1);
22185     hProbFailProbCutPQN->SetLineWidth(2);
22186     hProbFailProbCutPQN->SetLineStyle(2);
22187     //hProbFailProbCutPQN->SetBit(TH1::kCanRebin);
22188 
22189     hDpIDFailProbCutPQN=new TH1F("hDpIDFailProbCutPQN","hDpIDFailProbCutPQN",4*160,-1.6,1.6);
22190     hDpIDFailProbCutPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
22191     hDpIDFailProbCutPQN->GetXaxis()->CenterTitle();
22192     hDpIDFailProbCutPQN->GetYaxis()->SetTitle("");
22193     hDpIDFailProbCutPQN->GetYaxis()->CenterTitle();
22194     hDpIDFailProbCutPQN->SetFillColor(0);
22195     hDpIDFailProbCutPQN->SetLineColor(1);
22196     hDpIDFailProbCutPQN->SetLineWidth(2);
22197     //hDpIDFailProbCutPQN->SetBit(TH1::kCanRebin);
22198 
22199     hRecoEnFailProbCutPQ=new TH1F("hRecoEnFailProbCutPQ","hRecoEnFailProbCutPQ",
22200                                   4*352,-32,320);
22201     hRecoEnFailProbCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22202     hRecoEnFailProbCutPQ->GetXaxis()->CenterTitle();
22203     hRecoEnFailProbCutPQ->GetYaxis()->SetTitle("");
22204     hRecoEnFailProbCutPQ->GetYaxis()->CenterTitle();
22205     hRecoEnFailProbCutPQ->SetFillColor(0);
22206     hRecoEnFailProbCutPQ->SetLineColor(1);
22207     //hRecoEnFailProbCutPQ->SetBit(TH1::kCanRebin);
22208 
22209     hRecoYFailProbCutPQ=new TH1F("hRecoYFailProbCutPQ","hRecoYFailProbCutPQ",
22210                                  1400,-0.2,1.2);
22211     hRecoYFailProbCutPQ->GetXaxis()->SetTitle("Reconstructed y");
22212     hRecoYFailProbCutPQ->GetXaxis()->CenterTitle();
22213     hRecoYFailProbCutPQ->GetYaxis()->SetTitle("");
22214     hRecoYFailProbCutPQ->GetYaxis()->CenterTitle();
22215     hRecoYFailProbCutPQ->SetFillColor(0);
22216     hRecoYFailProbCutPQ->SetLineColor(1);
22217     //hRecoYFailProbCutPQ->SetBit(TH1::kCanRebin);
22218 
22219 
22220     hNMProbFailProbCutPQ=new TH1F
22221       ("hNMProbFailProbCutPQ","hNMProbFailProbCutPQ",14000,-0.2,1.2);
22222     hNMProbFailProbCutPQ->GetXaxis()->SetTitle("Fit Probability");
22223     hNMProbFailProbCutPQ->GetXaxis()->CenterTitle();
22224     hNMProbFailProbCutPQ->GetYaxis()->SetTitle("");
22225     hNMProbFailProbCutPQ->GetYaxis()->CenterTitle();
22226     hNMProbFailProbCutPQ->SetFillColor(0);
22227     hNMProbFailProbCutPQ->SetLineColor(1);
22228     hNMProbFailProbCutPQ->SetLineWidth(2);
22229     hNMProbFailProbCutPQ->SetLineStyle(2);
22230     //hNMProbFailProbCutPQ->SetBit(TH1::kCanRebin);
22231     
22232     hNMBProbFailProbCutPQ=new TH1F
22233       ("hNMBProbFailProbCutPQ","hNMBProbFailProbCutPQ",14000,-0.2,1.2);
22234     hNMBProbFailProbCutPQ->GetXaxis()->SetTitle("Fit Probability");
22235     hNMBProbFailProbCutPQ->GetXaxis()->CenterTitle();
22236     hNMBProbFailProbCutPQ->GetYaxis()->SetTitle("");
22237     hNMBProbFailProbCutPQ->GetYaxis()->CenterTitle();
22238     hNMBProbFailProbCutPQ->SetFillColor(0);
22239     hNMBProbFailProbCutPQ->SetLineColor(1);
22240     hNMBProbFailProbCutPQ->SetLineWidth(2);
22241     hNMBProbFailProbCutPQ->SetLineStyle(2);
22242     //hNMBProbFailProbCutPQ->SetBit(TH1::kCanRebin);
22243 
22244     hAllShwProbFailProbCutPQ=new TH1F
22245       ("hAllShwProbFailProbCutPQ",
22246        "hAllShwProbFailProbCutPQ",14000,-0.2,1.2);
22247     hAllShwProbFailProbCutPQ->GetXaxis()->SetTitle("Fit Probability");
22248     hAllShwProbFailProbCutPQ->GetXaxis()->CenterTitle();
22249     hAllShwProbFailProbCutPQ->GetYaxis()->SetTitle("");
22250     hAllShwProbFailProbCutPQ->GetYaxis()->CenterTitle();
22251     hAllShwProbFailProbCutPQ->SetFillColor(0);
22252     hAllShwProbFailProbCutPQ->SetLineColor(1);
22253     hAllShwProbFailProbCutPQ->SetLineWidth(2);
22254     hAllShwProbFailProbCutPQ->SetLineStyle(2);
22255     //hAllShwProbFailProbCutPQ->SetBit(TH1::kCanRebin);
22256 
22257 
22258 
22259     //NQ
22260     hSigqp_qpFailProbCutNQN=new TH1F("hSigqp_qpFailProbCutNQN","hSigqp_qpFailProbCutNQN",800*160,-160,160);
22261     hSigqp_qpFailProbCutNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
22262     hSigqp_qpFailProbCutNQN->GetXaxis()->CenterTitle();
22263     hSigqp_qpFailProbCutNQN->GetYaxis()->SetTitle("");
22264     hSigqp_qpFailProbCutNQN->GetYaxis()->CenterTitle();
22265     hSigqp_qpFailProbCutNQN->SetFillColor(0);
22266     hSigqp_qpFailProbCutNQN->SetLineColor(1);
22267     hSigqp_qpFailProbCutNQN->SetLineWidth(2);
22268     hSigqp_qpFailProbCutNQN->SetLineStyle(2);
22269     //hSigqp_qpFailProbCutNQN->SetBit(TH1::kCanRebin);
22270 
22271     hChi2FailProbCutNQN=new TH1F("hChi2FailProbCutNQN","hChi2FailProbCutNQN",10*176,-16,160);
22272     hChi2FailProbCutNQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
22273     hChi2FailProbCutNQN->GetXaxis()->CenterTitle();
22274     hChi2FailProbCutNQN->GetYaxis()->SetTitle("");
22275     hChi2FailProbCutNQN->GetYaxis()->CenterTitle();
22276     hChi2FailProbCutNQN->SetFillColor(0);
22277     hChi2FailProbCutNQN->SetLineColor(1);
22278     hChi2FailProbCutNQN->SetLineWidth(2);
22279     hChi2FailProbCutNQN->SetLineStyle(2);
22280     //hChi2FailProbCutNQN->SetBit(TH1::kCanRebin);
22281 
22282     hProbFailProbCutNQN=new TH1F("hProbFailProbCutNQN","hProbFailProbCutNQN",14000,-0.2,1.2);
22283     hProbFailProbCutNQN->GetXaxis()->SetTitle("Fit Probability");
22284     hProbFailProbCutNQN->GetXaxis()->CenterTitle();
22285     hProbFailProbCutNQN->GetYaxis()->SetTitle("");
22286     hProbFailProbCutNQN->GetYaxis()->CenterTitle();
22287     hProbFailProbCutNQN->SetFillColor(0);
22288     hProbFailProbCutNQN->SetLineColor(1);
22289     hProbFailProbCutNQN->SetLineWidth(2);
22290     hProbFailProbCutNQN->SetLineStyle(2);
22291     //hProbFailProbCutNQN->SetBit(TH1::kCanRebin);
22292 
22293     hDpIDFailProbCutNQN=new TH1F("hDpIDFailProbCutNQN","hDpIDFailProbCutNQN",4*160,-1.6,1.6);
22294     hDpIDFailProbCutNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
22295     hDpIDFailProbCutNQN->GetXaxis()->CenterTitle();
22296     hDpIDFailProbCutNQN->GetYaxis()->SetTitle("");
22297     hDpIDFailProbCutNQN->GetYaxis()->CenterTitle();
22298     hDpIDFailProbCutNQN->SetFillColor(0);
22299     hDpIDFailProbCutNQN->SetLineColor(1);
22300     hDpIDFailProbCutNQN->SetLineWidth(2);
22301     //hDpIDFailProbCutNQN->SetBit(TH1::kCanRebin);
22302 
22303     hRecoEnFailProbCutNQ=new TH1F("hRecoEnFailProbCutNQ","hRecoEnFailProbCutNQ",
22304                                   4*352,-32,320);
22305     hRecoEnFailProbCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22306     hRecoEnFailProbCutNQ->GetXaxis()->CenterTitle();
22307     hRecoEnFailProbCutNQ->GetYaxis()->SetTitle("");
22308     hRecoEnFailProbCutNQ->GetYaxis()->CenterTitle();
22309     hRecoEnFailProbCutNQ->SetFillColor(0);
22310     hRecoEnFailProbCutNQ->SetLineColor(1);
22311     //hRecoEnFailProbCutNQ->SetBit(TH1::kCanRebin);
22312     
22313     hRecoYFailProbCutNQ=new TH1F("hRecoYFailProbCutNQ","hRecoYFailProbCutNQ",
22314                                  1400,-0.2,1.2);
22315     hRecoYFailProbCutNQ->GetXaxis()->SetTitle("Reconstructed y");
22316     hRecoYFailProbCutNQ->GetXaxis()->CenterTitle();
22317     hRecoYFailProbCutNQ->GetYaxis()->SetTitle("");
22318     hRecoYFailProbCutNQ->GetYaxis()->CenterTitle();
22319     hRecoYFailProbCutNQ->SetFillColor(0);
22320     hRecoYFailProbCutNQ->SetLineColor(1);
22321     //hRecoYFailProbCutNQ->SetBit(TH1::kCanRebin);
22322 
22323 
22324     hNMProbFailProbCutNQ=new TH1F
22325       ("hNMProbFailProbCutNQ","hNMProbFailProbCutNQ",14000,-0.2,1.2);
22326     hNMProbFailProbCutNQ->GetXaxis()->SetTitle("Fit Probability");
22327     hNMProbFailProbCutNQ->GetXaxis()->CenterTitle();
22328     hNMProbFailProbCutNQ->GetYaxis()->SetTitle("");
22329     hNMProbFailProbCutNQ->GetYaxis()->CenterTitle();
22330     hNMProbFailProbCutNQ->SetFillColor(0);
22331     hNMProbFailProbCutNQ->SetLineColor(1);
22332     hNMProbFailProbCutNQ->SetLineWidth(2);
22333     hNMProbFailProbCutNQ->SetLineStyle(2);
22334     //hNMProbFailProbCutNQ->SetBit(TH1::kCanRebin);
22335     
22336     hNMBProbFailProbCutNQ=new TH1F
22337       ("hNMBProbFailProbCutNQ","hNMBProbFailProbCutNQ",14000,-0.2,1.2);
22338     hNMBProbFailProbCutNQ->GetXaxis()->SetTitle("Fit Probability");
22339     hNMBProbFailProbCutNQ->GetXaxis()->CenterTitle();
22340     hNMBProbFailProbCutNQ->GetYaxis()->SetTitle("");
22341     hNMBProbFailProbCutNQ->GetYaxis()->CenterTitle();
22342     hNMBProbFailProbCutNQ->SetFillColor(0);
22343     hNMBProbFailProbCutNQ->SetLineColor(1);
22344     hNMBProbFailProbCutNQ->SetLineWidth(2);
22345     hNMBProbFailProbCutNQ->SetLineStyle(2);
22346     //hNMBProbFailProbCutNQ->SetBit(TH1::kCanRebin);
22347 
22348     hAllShwProbFailProbCutNQ=new TH1F
22349       ("hAllShwProbFailProbCutNQ",
22350        "hAllShwProbFailProbCutNQ",14000,-0.2,1.2);
22351     hAllShwProbFailProbCutNQ->GetXaxis()->SetTitle("Fit Probability");
22352     hAllShwProbFailProbCutNQ->GetXaxis()->CenterTitle();
22353     hAllShwProbFailProbCutNQ->GetYaxis()->SetTitle("");
22354     hAllShwProbFailProbCutNQ->GetYaxis()->CenterTitle();
22355     hAllShwProbFailProbCutNQ->SetFillColor(0);
22356     hAllShwProbFailProbCutNQ->SetLineColor(1);
22357     hAllShwProbFailProbCutNQ->SetLineWidth(2);
22358     hAllShwProbFailProbCutNQ->SetLineStyle(2);
22359     //hAllShwProbFailProbCutNQ->SetBit(TH1::kCanRebin);
22360 
22361   }
22362   
22363   //PQ
22364   if (nu.charge==+1){
22365     hSigqp_qpFailProbCutPQN->Fill(nu.sigqp_qp,nu.rw);
22366     hChi2FailProbCutPQN->Fill(nu.chi2PerNdof,nu.rw);
22367     hProbFailProbCutPQN->Fill(nu.prob,nu.rw);
22368     hDpIDFailProbCutPQN->Fill(nu.dpID,nu.rw);
22369     
22370     hRecoEnFailProbCutPQ->Fill(nu.energy,nu.rw);
22371     hRecoYFailProbCutPQ->Fill(nu.y,nu.rw);
22372   }
22373   //NQ
22374   else if (nu.charge==-1){
22375     hSigqp_qpFailProbCutNQN->Fill(nu.sigqp_qp,nu.rw);
22376     hChi2FailProbCutNQN->Fill(nu.chi2PerNdof,nu.rw);
22377     hProbFailProbCutNQN->Fill(nu.prob,nu.rw);
22378     hDpIDFailProbCutNQN->Fill(nu.dpID,nu.rw);
22379 
22380     hRecoEnFailProbCutNQ->Fill(nu.energy,nu.rw);
22381     hRecoYFailProbCutNQ->Fill(nu.y,nu.rw);
22382   }
22383   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
22384 
22385 
22386   //now fill the truth plots
22387   if (nu.iaction==1){//CC
22388     if (nu.inu==14){//NuMu
22389       if (nu.charge==+1) {
22390         hNMProbFailProbCutPQ->Fill(nu.prob,nu.rw);
22391       }
22392       else if (nu.charge==-1){
22393         hNMProbFailProbCutNQ->Fill(nu.prob,nu.rw);
22394       }
22395     }
22396     else if (nu.inu==-14){//NuMuBar
22397       if (nu.charge==+1) {
22398         hNMBProbFailProbCutPQ->Fill(nu.prob,nu.rw);
22399       }
22400       else if (nu.charge==-1){
22401         hNMBProbFailProbCutNQ->Fill(nu.prob,nu.rw);
22402       }
22403     }
22404   }
22405 
22406   
22407   //all but NuMu/NuMuBar CC
22408   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
22409     if (nu.charge==+1) {
22410       hAllShwProbFailProbCutPQ->Fill(nu.prob,nu.rw);
22411     }
22412     else if (nu.charge==-1){
22413       hAllShwProbFailProbCutNQ->Fill(nu.prob,nu.rw);
22414     }    
22415   }
22416 
22417 }

void NuPlots::FillDPIdSigmaQPFailSigQPCutPlots const NuEvent nu  )  const
 

Definition at line 20221 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::chi2PerNdof, NuEvent::dpID, NuEvent::energy, MAXMSG, MSG, NuEvent::prob, NuEvent::rw, NuEvent::sigqp_qp, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodStdCuts(), NuDSTAna::JeffsTestAna(), NuAnalysis::LIRejectionTest(), NuDSTAna::NMBAna(), and NuAnalysis::NMBSummaryTreeAna().

20222 { 
20223   //PQ
20224   static TH1F* hSigqp_qpFailSigQPCutPQN=0;
20225   static TH1F* hChi2FailSigQPCutPQN=0;
20226   static TH1F* hProbFailSigQPCutPQN=0;
20227   static TH1F* hDpIDFailSigQPCutPQN=0;
20228   static TH1F* hRecoEnFailSigQPCutPQ=0;
20229   static TH1F* hRecoYFailSigQPCutPQ=0;
20230 
20231   //NQ
20232   static TH1F* hSigqp_qpFailSigQPCutNQN=0;
20233   static TH1F* hChi2FailSigQPCutNQN=0;
20234   static TH1F* hProbFailSigQPCutNQN=0;
20235   static TH1F* hDpIDFailSigQPCutNQN=0;
20236   static TH1F* hRecoEnFailSigQPCutNQ=0;
20237   static TH1F* hRecoYFailSigQPCutNQ=0;
20238 
20239   if (!hChi2FailSigQPCutNQN){
20240     MAXMSG("NuPlots",Msg::kDebug,1)
20241       <<"Creating DPIdSigmaQPFailSigQPCutPlots plots..."<<endl;
20242     
20243     //PQ
20244     hSigqp_qpFailSigQPCutPQN=new TH1F("hSigqp_qpFailSigQPCutPQN","hSigqp_qpFailSigQPCutPQN",800*160,-160,160);
20245     hSigqp_qpFailSigQPCutPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
20246     hSigqp_qpFailSigQPCutPQN->GetXaxis()->CenterTitle();
20247     hSigqp_qpFailSigQPCutPQN->GetYaxis()->SetTitle("");
20248     hSigqp_qpFailSigQPCutPQN->GetYaxis()->CenterTitle();
20249     hSigqp_qpFailSigQPCutPQN->SetFillColor(0);
20250     hSigqp_qpFailSigQPCutPQN->SetLineColor(1);
20251     hSigqp_qpFailSigQPCutPQN->SetLineWidth(2);
20252     hSigqp_qpFailSigQPCutPQN->SetLineStyle(2);
20253     //hSigqp_qpFailSigQPCutPQN->SetBit(TH1::kCanRebin);
20254 
20255     hChi2FailSigQPCutPQN=new TH1F("hChi2FailSigQPCutPQN","hChi2FailSigQPCutPQN",10*176,-16,160);
20256     hChi2FailSigQPCutPQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
20257     hChi2FailSigQPCutPQN->GetXaxis()->CenterTitle();
20258     hChi2FailSigQPCutPQN->GetYaxis()->SetTitle("");
20259     hChi2FailSigQPCutPQN->GetYaxis()->CenterTitle();
20260     hChi2FailSigQPCutPQN->SetFillColor(0);
20261     hChi2FailSigQPCutPQN->SetLineColor(1);
20262     hChi2FailSigQPCutPQN->SetLineWidth(2);
20263     hChi2FailSigQPCutPQN->SetLineStyle(2);
20264     //hChi2FailSigQPCutPQN->SetBit(TH1::kCanRebin);
20265 
20266     hProbFailSigQPCutPQN=new TH1F("hProbFailSigQPCutPQN","hProbFailSigQPCutPQN",14000,-0.2,1.2);
20267     hProbFailSigQPCutPQN->GetXaxis()->SetTitle("Fit Probability");
20268     hProbFailSigQPCutPQN->GetXaxis()->CenterTitle();
20269     hProbFailSigQPCutPQN->GetYaxis()->SetTitle("");
20270     hProbFailSigQPCutPQN->GetYaxis()->CenterTitle();
20271     hProbFailSigQPCutPQN->SetFillColor(0);
20272     hProbFailSigQPCutPQN->SetLineColor(1);
20273     hProbFailSigQPCutPQN->SetLineWidth(2);
20274     hProbFailSigQPCutPQN->SetLineStyle(2);
20275     //hProbFailSigQPCutPQN->SetBit(TH1::kCanRebin);
20276 
20277     hDpIDFailSigQPCutPQN=new TH1F("hDpIDFailSigQPCutPQN","hDpIDFailSigQPCutPQN",4*160,-1.6,1.6);
20278     hDpIDFailSigQPCutPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
20279     hDpIDFailSigQPCutPQN->GetXaxis()->CenterTitle();
20280     hDpIDFailSigQPCutPQN->GetYaxis()->SetTitle("");
20281     hDpIDFailSigQPCutPQN->GetYaxis()->CenterTitle();
20282     hDpIDFailSigQPCutPQN->SetFillColor(0);
20283     hDpIDFailSigQPCutPQN->SetLineColor(1);
20284     hDpIDFailSigQPCutPQN->SetLineWidth(2);
20285     //hDpIDFailSigQPCutPQN->SetBit(TH1::kCanRebin);
20286 
20287     hRecoEnFailSigQPCutPQ=new TH1F("hRecoEnFailSigQPCutPQ","hRecoEnFailSigQPCutPQ",
20288                                    4*352,-32,320);
20289     hRecoEnFailSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20290     hRecoEnFailSigQPCutPQ->GetXaxis()->CenterTitle();
20291     hRecoEnFailSigQPCutPQ->GetYaxis()->SetTitle("");
20292     hRecoEnFailSigQPCutPQ->GetYaxis()->CenterTitle();
20293     hRecoEnFailSigQPCutPQ->SetFillColor(0);
20294     hRecoEnFailSigQPCutPQ->SetLineColor(1);
20295     //hRecoEnFailSigQPCutPQ->SetBit(TH1::kCanRebin);
20296 
20297     hRecoYFailSigQPCutPQ=new TH1F("hRecoYFailSigQPCutPQ","hRecoYFailSigQPCutPQ",
20298                                   1400,-0.2,1.2);
20299     hRecoYFailSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed y");
20300     hRecoYFailSigQPCutPQ->GetXaxis()->CenterTitle();
20301     hRecoYFailSigQPCutPQ->GetYaxis()->SetTitle("");
20302     hRecoYFailSigQPCutPQ->GetYaxis()->CenterTitle();
20303     hRecoYFailSigQPCutPQ->SetFillColor(0);
20304     hRecoYFailSigQPCutPQ->SetLineColor(1);
20305     //hRecoYFailSigQPCutPQ->SetBit(TH1::kCanRebin);
20306 
20307 
20308 
20309     //NQ
20310     hSigqp_qpFailSigQPCutNQN=new TH1F("hSigqp_qpFailSigQPCutNQN","hSigqp_qpFailSigQPCutNQN",800*160,-160,160);
20311     hSigqp_qpFailSigQPCutNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
20312     hSigqp_qpFailSigQPCutNQN->GetXaxis()->CenterTitle();
20313     hSigqp_qpFailSigQPCutNQN->GetYaxis()->SetTitle("");
20314     hSigqp_qpFailSigQPCutNQN->GetYaxis()->CenterTitle();
20315     hSigqp_qpFailSigQPCutNQN->SetFillColor(0);
20316     hSigqp_qpFailSigQPCutNQN->SetLineColor(1);
20317     hSigqp_qpFailSigQPCutNQN->SetLineWidth(2);
20318     hSigqp_qpFailSigQPCutNQN->SetLineStyle(2);
20319     //hSigqp_qpFailSigQPCutNQN->SetBit(TH1::kCanRebin);
20320 
20321     hChi2FailSigQPCutNQN=new TH1F("hChi2FailSigQPCutNQN","hChi2FailSigQPCutNQN",10*176,-16,160);
20322     hChi2FailSigQPCutNQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
20323     hChi2FailSigQPCutNQN->GetXaxis()->CenterTitle();
20324     hChi2FailSigQPCutNQN->GetYaxis()->SetTitle("");
20325     hChi2FailSigQPCutNQN->GetYaxis()->CenterTitle();
20326     hChi2FailSigQPCutNQN->SetFillColor(0);
20327     hChi2FailSigQPCutNQN->SetLineColor(1);
20328     hChi2FailSigQPCutNQN->SetLineWidth(2);
20329     hChi2FailSigQPCutNQN->SetLineStyle(2);
20330     //hChi2FailSigQPCutNQN->SetBit(TH1::kCanRebin);
20331 
20332     hProbFailSigQPCutNQN=new TH1F("hProbFailSigQPCutNQN","hProbFailSigQPCutNQN",14000,-0.2,1.2);
20333     hProbFailSigQPCutNQN->GetXaxis()->SetTitle("Fit Probability");
20334     hProbFailSigQPCutNQN->GetXaxis()->CenterTitle();
20335     hProbFailSigQPCutNQN->GetYaxis()->SetTitle("");
20336     hProbFailSigQPCutNQN->GetYaxis()->CenterTitle();
20337     hProbFailSigQPCutNQN->SetFillColor(0);
20338     hProbFailSigQPCutNQN->SetLineColor(1);
20339     hProbFailSigQPCutNQN->SetLineWidth(2);
20340     hProbFailSigQPCutNQN->SetLineStyle(2);
20341     //hProbFailSigQPCutNQN->SetBit(TH1::kCanRebin);
20342 
20343     hDpIDFailSigQPCutNQN=new TH1F("hDpIDFailSigQPCutNQN","hDpIDFailSigQPCutNQN",4*160,-1.6,1.6);
20344     hDpIDFailSigQPCutNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
20345     hDpIDFailSigQPCutNQN->GetXaxis()->CenterTitle();
20346     hDpIDFailSigQPCutNQN->GetYaxis()->SetTitle("");
20347     hDpIDFailSigQPCutNQN->GetYaxis()->CenterTitle();
20348     hDpIDFailSigQPCutNQN->SetFillColor(0);
20349     hDpIDFailSigQPCutNQN->SetLineColor(1);
20350     hDpIDFailSigQPCutNQN->SetLineWidth(2);
20351     //hDpIDFailSigQPCutNQN->SetBit(TH1::kCanRebin);
20352 
20353     hRecoEnFailSigQPCutNQ=new TH1F("hRecoEnFailSigQPCutNQ","hRecoEnFailSigQPCutNQ",
20354                                    4*352,-32,320);
20355     hRecoEnFailSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20356     hRecoEnFailSigQPCutNQ->GetXaxis()->CenterTitle();
20357     hRecoEnFailSigQPCutNQ->GetYaxis()->SetTitle("");
20358     hRecoEnFailSigQPCutNQ->GetYaxis()->CenterTitle();
20359     hRecoEnFailSigQPCutNQ->SetFillColor(0);
20360     hRecoEnFailSigQPCutNQ->SetLineColor(1);
20361     //hRecoEnFailSigQPCutNQ->SetBit(TH1::kCanRebin);
20362     
20363     hRecoYFailSigQPCutNQ=new TH1F
20364       //("hRecoYFailSigQPCutNQ","hRecoYFailSigQPCutNQ",4*144,-0.16,1.28)
20365       ("hRecoYFailSigQPCutNQ","hRecoYFailSigQPCutNQ",
20366        1400,-0.2,1.2);
20367     hRecoYFailSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed y");
20368     hRecoYFailSigQPCutNQ->GetXaxis()->CenterTitle();
20369     hRecoYFailSigQPCutNQ->GetYaxis()->SetTitle("");
20370     hRecoYFailSigQPCutNQ->GetYaxis()->CenterTitle();
20371     hRecoYFailSigQPCutNQ->SetFillColor(0);
20372     hRecoYFailSigQPCutNQ->SetLineColor(1);
20373     //hRecoYFailSigQPCutNQ->SetBit(TH1::kCanRebin);
20374   }
20375   
20376   //PQ
20377   if (nu.charge==+1){
20378     hSigqp_qpFailSigQPCutPQN->Fill(nu.sigqp_qp,nu.rw);
20379     hChi2FailSigQPCutPQN->Fill(nu.chi2PerNdof,nu.rw);
20380     hProbFailSigQPCutPQN->Fill(nu.prob,nu.rw);
20381     hDpIDFailSigQPCutPQN->Fill(nu.dpID,nu.rw);
20382     
20383     hRecoEnFailSigQPCutPQ->Fill(nu.energy,nu.rw);
20384     hRecoYFailSigQPCutPQ->Fill(nu.y,nu.rw);
20385   }
20386   //NQ
20387   else if (nu.charge==-1){
20388     hSigqp_qpFailSigQPCutNQN->Fill(nu.sigqp_qp,nu.rw);
20389     hChi2FailSigQPCutNQN->Fill(nu.chi2PerNdof,nu.rw);
20390     hProbFailSigQPCutNQN->Fill(nu.prob,nu.rw);
20391     hDpIDFailSigQPCutNQN->Fill(nu.dpID,nu.rw);
20392 
20393     hRecoEnFailSigQPCutNQ->Fill(nu.energy,nu.rw);
20394     hRecoYFailSigQPCutNQ->Fill(nu.y,nu.rw);
20395   }
20396   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
20397 }

void NuPlots::FillDPIdSigmaQPPassDpIDCutPlots const NuEvent nu  )  const
 

Definition at line 19181 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::chi2PerNdof, NuEvent::dpID, NuEvent::energy, NuEvent::energyMC, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::prob, NuEvent::rw, NuEvent::sigqp_qp, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodStdCuts(), NuDSTAna::JeffsTestAna(), NuAnalysis::LIRejectionTest(), NuDSTAna::NMBAna(), and NuAnalysis::NMBSummaryTreeAna().

19182 { 
19183   //PQ
19184   static TH1F* hSigqp_qpPassDpIDCutPQN=0;
19185   static TH1F* hChi2PassDpIDCutPQN=0;
19186   static TH1F* hProbPassDpIDCutPQN=0;
19187   static TH1F* hDpIDPassDpIDCutPQN=0;
19188   static TH1F* hRecoEnPassDpIDCutPQ=0;
19189   static TH1F* hRecoYPassDpIDCutPQ=0;
19190 
19191   static TH1F* hNMProbPassDpIDCutPQ=0;
19192   static TH1F* hNMBProbPassDpIDCutPQ=0;
19193   static TH1F* hAllShwProbPassDpIDCutPQ=0;
19194 
19195   static TH1F* hNMRecoEnPassDpIDCutPQ=0;
19196   static TH1F* hNMTrueEnPassDpIDCutPQ=0;
19197   static TH1F* hNMBRecoEnPassDpIDCutPQ=0;
19198   static TH1F* hNMBTrueEnPassDpIDCutPQ=0;
19199   static TH1F* hAllNCRecoEnPassDpIDCutPQ=0;
19200   static TH1F* hAllNCTrueEnPassDpIDCutPQ=0;
19201   static TH1F* hAllShwRecoEnPassDpIDCutPQ=0;
19202   static TH1F* hAllShwTrueEnPassDpIDCutPQ=0;
19203   static TH1F* hNotNMBRecoEnPassDpIDCutPQ=0;
19204   static TH1F* hNotNMBTrueEnPassDpIDCutPQ=0;
19205   static TH1F* hNotNMRecoEnPassDpIDCutPQ=0;
19206   static TH1F* hNotNMTrueEnPassDpIDCutPQ=0;
19207 
19208   //NQ
19209   static TH1F* hSigqp_qpPassDpIDCutNQN=0;
19210   static TH1F* hChi2PassDpIDCutNQN=0;
19211   static TH1F* hProbPassDpIDCutNQN=0;
19212   static TH1F* hDpIDPassDpIDCutNQN=0;
19213   static TH1F* hRecoEnPassDpIDCutNQ=0;
19214   static TH1F* hRecoYPassDpIDCutNQ=0;
19215 
19216   static TH1F* hNMProbPassDpIDCutNQ=0;
19217   static TH1F* hNMBProbPassDpIDCutNQ=0;
19218   static TH1F* hAllShwProbPassDpIDCutNQ=0;
19219 
19220   static TH1F* hNMBRecoEnPassDpIDCutNQ=0;
19221   static TH1F* hNMBTrueEnPassDpIDCutNQ=0;
19222   static TH1F* hNMRecoEnPassDpIDCutNQ=0;
19223   static TH1F* hNMTrueEnPassDpIDCutNQ=0;
19224   static TH1F* hAllNCRecoEnPassDpIDCutNQ=0;
19225   static TH1F* hAllNCTrueEnPassDpIDCutNQ=0;
19226   static TH1F* hAllShwRecoEnPassDpIDCutNQ=0;
19227   static TH1F* hAllShwTrueEnPassDpIDCutNQ=0;
19228   static TH1F* hNotNMBRecoEnPassDpIDCutNQ=0;
19229   static TH1F* hNotNMBTrueEnPassDpIDCutNQ=0;
19230   static TH1F* hNotNMRecoEnPassDpIDCutNQ=0;
19231   static TH1F* hNotNMTrueEnPassDpIDCutNQ=0;
19232 
19233 
19234   if (!hChi2PassDpIDCutNQN){
19235     MAXMSG("NuPlots",Msg::kDebug,1)
19236       <<"Creating DPIdSigmaQPPassDpIDCutPlots plots..."<<endl;
19237     
19238     //PQ
19239     hSigqp_qpPassDpIDCutPQN=new TH1F("hSigqp_qpPassDpIDCutPQN","hSigqp_qpPassDpIDCutPQN",800*160,-160,160);
19240     hSigqp_qpPassDpIDCutPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
19241     hSigqp_qpPassDpIDCutPQN->GetXaxis()->CenterTitle();
19242     hSigqp_qpPassDpIDCutPQN->GetYaxis()->SetTitle("");
19243     hSigqp_qpPassDpIDCutPQN->GetYaxis()->CenterTitle();
19244     hSigqp_qpPassDpIDCutPQN->SetFillColor(0);
19245     hSigqp_qpPassDpIDCutPQN->SetLineColor(1);
19246     hSigqp_qpPassDpIDCutPQN->SetLineWidth(2);
19247     hSigqp_qpPassDpIDCutPQN->SetLineStyle(2);
19248     //hSigqp_qpPassDpIDCutPQN->SetBit(TH1::kCanRebin);
19249 
19250     hChi2PassDpIDCutPQN=new TH1F("hChi2PassDpIDCutPQN","hChi2PassDpIDCutPQN",10*176,-16,160);
19251     hChi2PassDpIDCutPQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
19252     hChi2PassDpIDCutPQN->GetXaxis()->CenterTitle();
19253     hChi2PassDpIDCutPQN->GetYaxis()->SetTitle("");
19254     hChi2PassDpIDCutPQN->GetYaxis()->CenterTitle();
19255     hChi2PassDpIDCutPQN->SetFillColor(0);
19256     hChi2PassDpIDCutPQN->SetLineColor(1);
19257     hChi2PassDpIDCutPQN->SetLineWidth(2);
19258     hChi2PassDpIDCutPQN->SetLineStyle(2);
19259     //hChi2PassDpIDCutPQN->SetBit(TH1::kCanRebin);
19260 
19261     hProbPassDpIDCutPQN=new TH1F("hProbPassDpIDCutPQN","hProbPassDpIDCutPQN",14000,-0.2,1.2);
19262     hProbPassDpIDCutPQN->GetXaxis()->SetTitle("Fit Probability");
19263     hProbPassDpIDCutPQN->GetXaxis()->CenterTitle();
19264     hProbPassDpIDCutPQN->GetYaxis()->SetTitle("");
19265     hProbPassDpIDCutPQN->GetYaxis()->CenterTitle();
19266     hProbPassDpIDCutPQN->SetFillColor(0);
19267     hProbPassDpIDCutPQN->SetLineColor(1);
19268     hProbPassDpIDCutPQN->SetLineWidth(2);
19269     hProbPassDpIDCutPQN->SetLineStyle(2);
19270     //hProbPassDpIDCutPQN->SetBit(TH1::kCanRebin);
19271 
19272     hDpIDPassDpIDCutPQN=new TH1F("hDpIDPassDpIDCutPQN","hDpIDPassDpIDCutPQN",4*160,-1.6,1.6);
19273     hDpIDPassDpIDCutPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
19274     hDpIDPassDpIDCutPQN->GetXaxis()->CenterTitle();
19275     hDpIDPassDpIDCutPQN->GetYaxis()->SetTitle("");
19276     hDpIDPassDpIDCutPQN->GetYaxis()->CenterTitle();
19277     hDpIDPassDpIDCutPQN->SetFillColor(0);
19278     hDpIDPassDpIDCutPQN->SetLineColor(1);
19279     hDpIDPassDpIDCutPQN->SetLineWidth(2);
19280     //hDpIDPassDpIDCutPQN->SetBit(TH1::kCanRebin);
19281 
19282     hRecoEnPassDpIDCutPQ=new TH1F("hRecoEnPassDpIDCutPQ","hRecoEnPassDpIDCutPQ",
19283                                   4*352,-32,320);
19284     hRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19285     hRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19286     hRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19287     hRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19288     hRecoEnPassDpIDCutPQ->SetFillColor(0);
19289     hRecoEnPassDpIDCutPQ->SetLineColor(1);
19290     //hRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19291 
19292     hRecoYPassDpIDCutPQ=new TH1F("hRecoYPassDpIDCutPQ","hRecoYPassDpIDCutPQ",
19293                                  1400,-0.2,1.2);
19294     hRecoYPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed y");
19295     hRecoYPassDpIDCutPQ->GetXaxis()->CenterTitle();
19296     hRecoYPassDpIDCutPQ->GetYaxis()->SetTitle("");
19297     hRecoYPassDpIDCutPQ->GetYaxis()->CenterTitle();
19298     hRecoYPassDpIDCutPQ->SetFillColor(0);
19299     hRecoYPassDpIDCutPQ->SetLineColor(1);
19300     //hRecoYPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19301 
19302 
19303     hNMProbPassDpIDCutPQ=new TH1F
19304       ("hNMProbPassDpIDCutPQ","hNMProbPassDpIDCutPQ",14000,-0.2,1.2);
19305     hNMProbPassDpIDCutPQ->GetXaxis()->SetTitle("Fit Probability");
19306     hNMProbPassDpIDCutPQ->GetXaxis()->CenterTitle();
19307     hNMProbPassDpIDCutPQ->GetYaxis()->SetTitle("");
19308     hNMProbPassDpIDCutPQ->GetYaxis()->CenterTitle();
19309     hNMProbPassDpIDCutPQ->SetFillColor(0);
19310     hNMProbPassDpIDCutPQ->SetLineColor(1);
19311     hNMProbPassDpIDCutPQ->SetLineWidth(2);
19312     hNMProbPassDpIDCutPQ->SetLineStyle(2);
19313     //hNMProbPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19314     
19315     hNMBProbPassDpIDCutPQ=new TH1F
19316       ("hNMBProbPassDpIDCutPQ","hNMBProbPassDpIDCutPQ",14000,-0.2,1.2);
19317     hNMBProbPassDpIDCutPQ->GetXaxis()->SetTitle("Fit Probability");
19318     hNMBProbPassDpIDCutPQ->GetXaxis()->CenterTitle();
19319     hNMBProbPassDpIDCutPQ->GetYaxis()->SetTitle("");
19320     hNMBProbPassDpIDCutPQ->GetYaxis()->CenterTitle();
19321     hNMBProbPassDpIDCutPQ->SetFillColor(0);
19322     hNMBProbPassDpIDCutPQ->SetLineColor(1);
19323     hNMBProbPassDpIDCutPQ->SetLineWidth(2);
19324     hNMBProbPassDpIDCutPQ->SetLineStyle(2);
19325     //hNMBProbPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19326 
19327     hAllShwProbPassDpIDCutPQ=new TH1F
19328       ("hAllShwProbPassDpIDCutPQ",
19329        "hAllShwProbPassDpIDCutPQ",14000,-0.2,1.2);
19330     hAllShwProbPassDpIDCutPQ->GetXaxis()->SetTitle("Fit Probability");
19331     hAllShwProbPassDpIDCutPQ->GetXaxis()->CenterTitle();
19332     hAllShwProbPassDpIDCutPQ->GetYaxis()->SetTitle("");
19333     hAllShwProbPassDpIDCutPQ->GetYaxis()->CenterTitle();
19334     hAllShwProbPassDpIDCutPQ->SetFillColor(0);
19335     hAllShwProbPassDpIDCutPQ->SetLineColor(1);
19336     hAllShwProbPassDpIDCutPQ->SetLineWidth(2);
19337     hAllShwProbPassDpIDCutPQ->SetLineStyle(2);
19338     //hAllShwProbPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19339 
19340 
19341 
19342     hNMRecoEnPassDpIDCutPQ=new TH1F
19343       ("hNMRecoEnPassDpIDCutPQ","hNMRecoEnPassDpIDCutPQ",
19344        4*352,-32,320);
19345     hNMRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19346     hNMRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19347     hNMRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19348     hNMRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19349     hNMRecoEnPassDpIDCutPQ->SetFillColor(0);
19350     hNMRecoEnPassDpIDCutPQ->SetLineColor(1);
19351     //hNMRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19352     
19353     hNMTrueEnPassDpIDCutPQ=new TH1F
19354       ("hNMTrueEnPassDpIDCutPQ","hNMTrueEnPassDpIDCutPQ",
19355        4*352,-32,320);
19356     hNMTrueEnPassDpIDCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
19357     hNMTrueEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19358     hNMTrueEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19359     hNMTrueEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19360     hNMTrueEnPassDpIDCutPQ->SetFillColor(0);
19361     hNMTrueEnPassDpIDCutPQ->SetLineColor(1);
19362     //hNMTrueEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19363 
19364     hNMBRecoEnPassDpIDCutPQ=new TH1F("hNMBRecoEnPassDpIDCutPQ",
19365                                      "hNMBRecoEnPassDpIDCutPQ",
19366                                      4*352,-32,320);
19367     hNMBRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19368     hNMBRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19369     hNMBRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19370     hNMBRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19371     hNMBRecoEnPassDpIDCutPQ->SetFillColor(0);
19372     hNMBRecoEnPassDpIDCutPQ->SetLineColor(1);
19373     //hNMBRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19374     
19375     hNMBTrueEnPassDpIDCutPQ=new TH1F
19376       ("hNMBTrueEnPassDpIDCutPQ","hNMBTrueEnPassDpIDCutPQ",
19377        4*352,-32,320);
19378     hNMBTrueEnPassDpIDCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
19379     hNMBTrueEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19380     hNMBTrueEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19381     hNMBTrueEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19382     hNMBTrueEnPassDpIDCutPQ->SetFillColor(0);
19383     hNMBTrueEnPassDpIDCutPQ->SetLineColor(1);
19384     //hNMBTrueEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19385 
19386     hAllNCRecoEnPassDpIDCutPQ=new TH1F("hAllNCRecoEnPassDpIDCutPQ",
19387                                        "hAllNCRecoEnPassDpIDCutPQ",
19388                                        4*352,-32,320);
19389     hAllNCRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19390     hAllNCRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19391     hAllNCRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19392     hAllNCRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19393     hAllNCRecoEnPassDpIDCutPQ->SetFillColor(0);
19394     hAllNCRecoEnPassDpIDCutPQ->SetLineColor(1);
19395     //hAllNCRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19396     
19397     hAllNCTrueEnPassDpIDCutPQ=new TH1F
19398       ("hAllNCTrueEnPassDpIDCutPQ","hAllNCTrueEnPassDpIDCutPQ",
19399        4*352,-32,320);
19400     hAllNCTrueEnPassDpIDCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
19401     hAllNCTrueEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19402     hAllNCTrueEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19403     hAllNCTrueEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19404     hAllNCTrueEnPassDpIDCutPQ->SetFillColor(0);
19405     hAllNCTrueEnPassDpIDCutPQ->SetLineColor(1);
19406     //hAllNCTrueEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19407 
19408     hAllShwRecoEnPassDpIDCutPQ=new TH1F("hAllShwRecoEnPassDpIDCutPQ",
19409                                         "hAllShwRecoEnPassDpIDCutPQ",
19410                                         4*352,-32,320);
19411     hAllShwRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19412     hAllShwRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19413     hAllShwRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19414     hAllShwRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19415     hAllShwRecoEnPassDpIDCutPQ->SetFillColor(0);
19416     hAllShwRecoEnPassDpIDCutPQ->SetLineColor(1);
19417     //hAllShwRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19418     
19419     hAllShwTrueEnPassDpIDCutPQ=new TH1F
19420       ("hAllShwTrueEnPassDpIDCutPQ","hAllShwTrueEnPassDpIDCutPQ",
19421        4*352,-32,320);
19422     hAllShwTrueEnPassDpIDCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
19423     hAllShwTrueEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19424     hAllShwTrueEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19425     hAllShwTrueEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19426     hAllShwTrueEnPassDpIDCutPQ->SetFillColor(0);
19427     hAllShwTrueEnPassDpIDCutPQ->SetLineColor(1);
19428     //hAllShwTrueEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19429 
19430     hNotNMRecoEnPassDpIDCutPQ=new TH1F
19431       ("hNotNMRecoEnPassDpIDCutPQ","hNotNMRecoEnPassDpIDCutPQ",
19432        4*352,-32,320);
19433     hNotNMRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19434     hNotNMRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19435     hNotNMRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19436     hNotNMRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19437     hNotNMRecoEnPassDpIDCutPQ->SetFillColor(0);
19438     hNotNMRecoEnPassDpIDCutPQ->SetLineColor(1);
19439     //hNotNMRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19440     
19441     hNotNMTrueEnPassDpIDCutPQ=new TH1F
19442       ("hNotNMTrueEnPassDpIDCutPQ","hNotNMTrueEnPassDpIDCutPQ",
19443        4*352,-32,320);
19444     hNotNMTrueEnPassDpIDCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
19445     hNotNMTrueEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19446     hNotNMTrueEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19447     hNotNMTrueEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19448     hNotNMTrueEnPassDpIDCutPQ->SetFillColor(0);
19449     hNotNMTrueEnPassDpIDCutPQ->SetLineColor(1);
19450     //hNotNMTrueEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19451 
19452     hNotNMBRecoEnPassDpIDCutPQ=new TH1F("hNotNMBRecoEnPassDpIDCutPQ",
19453                                         "hNotNMBRecoEnPassDpIDCutPQ",
19454                                         4*352,-32,320);
19455     hNotNMBRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19456     hNotNMBRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19457     hNotNMBRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19458     hNotNMBRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19459     hNotNMBRecoEnPassDpIDCutPQ->SetFillColor(0);
19460     hNotNMBRecoEnPassDpIDCutPQ->SetLineColor(1);
19461     //hNotNMBRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19462     
19463     hNotNMBTrueEnPassDpIDCutPQ=new TH1F
19464       ("hNotNMBTrueEnPassDpIDCutPQ","hNotNMBTrueEnPassDpIDCutPQ",
19465        4*352,-32,320);
19466     hNotNMBTrueEnPassDpIDCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
19467     hNotNMBTrueEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19468     hNotNMBTrueEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19469     hNotNMBTrueEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19470     hNotNMBTrueEnPassDpIDCutPQ->SetFillColor(0);
19471     hNotNMBTrueEnPassDpIDCutPQ->SetLineColor(1);
19472     //hNotNMBTrueEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19473 
19474   
19475     
19476 
19477     //NQ
19478     hSigqp_qpPassDpIDCutNQN=new TH1F("hSigqp_qpPassDpIDCutNQN","hSigqp_qpPassDpIDCutNQN",800*160,-160,160);
19479     hSigqp_qpPassDpIDCutNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
19480     hSigqp_qpPassDpIDCutNQN->GetXaxis()->CenterTitle();
19481     hSigqp_qpPassDpIDCutNQN->GetYaxis()->SetTitle("");
19482     hSigqp_qpPassDpIDCutNQN->GetYaxis()->CenterTitle();
19483     hSigqp_qpPassDpIDCutNQN->SetFillColor(0);
19484     hSigqp_qpPassDpIDCutNQN->SetLineColor(1);
19485     hSigqp_qpPassDpIDCutNQN->SetLineWidth(2);
19486     hSigqp_qpPassDpIDCutNQN->SetLineStyle(2);
19487     //hSigqp_qpPassDpIDCutNQN->SetBit(TH1::kCanRebin);
19488 
19489     hChi2PassDpIDCutNQN=new TH1F("hChi2PassDpIDCutNQN","hChi2PassDpIDCutNQN",10*176,-16,160);
19490     hChi2PassDpIDCutNQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
19491     hChi2PassDpIDCutNQN->GetXaxis()->CenterTitle();
19492     hChi2PassDpIDCutNQN->GetYaxis()->SetTitle("");
19493     hChi2PassDpIDCutNQN->GetYaxis()->CenterTitle();
19494     hChi2PassDpIDCutNQN->SetFillColor(0);
19495     hChi2PassDpIDCutNQN->SetLineColor(1);
19496     hChi2PassDpIDCutNQN->SetLineWidth(2);
19497     hChi2PassDpIDCutNQN->SetLineStyle(2);
19498     //hChi2PassDpIDCutNQN->SetBit(TH1::kCanRebin);
19499 
19500     hProbPassDpIDCutNQN=new TH1F("hProbPassDpIDCutNQN","hProbPassDpIDCutNQN",14000,-0.2,1.2);
19501     hProbPassDpIDCutNQN->GetXaxis()->SetTitle("Fit Probability");
19502     hProbPassDpIDCutNQN->GetXaxis()->CenterTitle();
19503     hProbPassDpIDCutNQN->GetYaxis()->SetTitle("");
19504     hProbPassDpIDCutNQN->GetYaxis()->CenterTitle();
19505     hProbPassDpIDCutNQN->SetFillColor(0);
19506     hProbPassDpIDCutNQN->SetLineColor(1);
19507     hProbPassDpIDCutNQN->SetLineWidth(2);
19508     hProbPassDpIDCutNQN->SetLineStyle(2);
19509     //hProbPassDpIDCutNQN->SetBit(TH1::kCanRebin);
19510 
19511     hDpIDPassDpIDCutNQN=new TH1F("hDpIDPassDpIDCutNQN","hDpIDPassDpIDCutNQN",4*160,-1.6,1.6);
19512     hDpIDPassDpIDCutNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
19513     hDpIDPassDpIDCutNQN->GetXaxis()->CenterTitle();
19514     hDpIDPassDpIDCutNQN->GetYaxis()->SetTitle("");
19515     hDpIDPassDpIDCutNQN->GetYaxis()->CenterTitle();
19516     hDpIDPassDpIDCutNQN->SetFillColor(0);
19517     hDpIDPassDpIDCutNQN->SetLineColor(1);
19518     hDpIDPassDpIDCutNQN->SetLineWidth(2);
19519     //hDpIDPassDpIDCutNQN->SetBit(TH1::kCanRebin);
19520 
19521     hRecoEnPassDpIDCutNQ=new TH1F("hRecoEnPassDpIDCutNQ","hRecoEnPassDpIDCutNQ",
19522                                   4*352,-32,320);
19523     hRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19524     hRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19525     hRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19526     hRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19527     hRecoEnPassDpIDCutNQ->SetFillColor(0);
19528     hRecoEnPassDpIDCutNQ->SetLineColor(1);
19529     //hRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19530     
19531     hRecoYPassDpIDCutNQ=new TH1F("hRecoYPassDpIDCutNQ","hRecoYPassDpIDCutNQ",
19532                                  1400,-0.2,1.2);
19533     hRecoYPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed y");
19534     hRecoYPassDpIDCutNQ->GetXaxis()->CenterTitle();
19535     hRecoYPassDpIDCutNQ->GetYaxis()->SetTitle("");
19536     hRecoYPassDpIDCutNQ->GetYaxis()->CenterTitle();
19537     hRecoYPassDpIDCutNQ->SetFillColor(0);
19538     hRecoYPassDpIDCutNQ->SetLineColor(1);
19539     //hRecoYPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19540 
19541 
19542     hNMProbPassDpIDCutNQ=new TH1F
19543       ("hNMProbPassDpIDCutNQ","hNMProbPassDpIDCutNQ",14000,-0.2,1.2);
19544     hNMProbPassDpIDCutNQ->GetXaxis()->SetTitle("Fit Probability");
19545     hNMProbPassDpIDCutNQ->GetXaxis()->CenterTitle();
19546     hNMProbPassDpIDCutNQ->GetYaxis()->SetTitle("");
19547     hNMProbPassDpIDCutNQ->GetYaxis()->CenterTitle();
19548     hNMProbPassDpIDCutNQ->SetFillColor(0);
19549     hNMProbPassDpIDCutNQ->SetLineColor(1);
19550     hNMProbPassDpIDCutNQ->SetLineWidth(2);
19551     hNMProbPassDpIDCutNQ->SetLineStyle(2);
19552     //hNMProbPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19553     
19554     hNMBProbPassDpIDCutNQ=new TH1F
19555       ("hNMBProbPassDpIDCutNQ","hNMBProbPassDpIDCutNQ",14000,-0.2,1.2);
19556     hNMBProbPassDpIDCutNQ->GetXaxis()->SetTitle("Fit Probability");
19557     hNMBProbPassDpIDCutNQ->GetXaxis()->CenterTitle();
19558     hNMBProbPassDpIDCutNQ->GetYaxis()->SetTitle("");
19559     hNMBProbPassDpIDCutNQ->GetYaxis()->CenterTitle();
19560     hNMBProbPassDpIDCutNQ->SetFillColor(0);
19561     hNMBProbPassDpIDCutNQ->SetLineColor(1);
19562     hNMBProbPassDpIDCutNQ->SetLineWidth(2);
19563     hNMBProbPassDpIDCutNQ->SetLineStyle(2);
19564     //hNMBProbPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19565 
19566     hAllShwProbPassDpIDCutNQ=new TH1F
19567       ("hAllShwProbPassDpIDCutNQ",
19568        "hAllShwProbPassDpIDCutNQ",14000,-0.2,1.2);
19569     hAllShwProbPassDpIDCutNQ->GetXaxis()->SetTitle("Fit Probability");
19570     hAllShwProbPassDpIDCutNQ->GetXaxis()->CenterTitle();
19571     hAllShwProbPassDpIDCutNQ->GetYaxis()->SetTitle("");
19572     hAllShwProbPassDpIDCutNQ->GetYaxis()->CenterTitle();
19573     hAllShwProbPassDpIDCutNQ->SetFillColor(0);
19574     hAllShwProbPassDpIDCutNQ->SetLineColor(1);
19575     hAllShwProbPassDpIDCutNQ->SetLineWidth(2);
19576     hAllShwProbPassDpIDCutNQ->SetLineStyle(2);
19577     //hAllShwProbPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19578 
19579 
19580     hNMRecoEnPassDpIDCutNQ=new TH1F
19581       ("hNMRecoEnPassDpIDCutNQ","hNMRecoEnPassDpIDCutNQ",4*352,-32,320);
19582     hNMRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19583     hNMRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19584     hNMRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19585     hNMRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19586     hNMRecoEnPassDpIDCutNQ->SetFillColor(0);
19587     hNMRecoEnPassDpIDCutNQ->SetLineColor(1);
19588     //hNMRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19589     
19590     hNMTrueEnPassDpIDCutNQ=new TH1F
19591       ("hNMTrueEnPassDpIDCutNQ","hNMTrueEnPassDpIDCutNQ",4*352,-32,320);
19592     hNMTrueEnPassDpIDCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
19593     hNMTrueEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19594     hNMTrueEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19595     hNMTrueEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19596     hNMTrueEnPassDpIDCutNQ->SetFillColor(0);
19597     hNMTrueEnPassDpIDCutNQ->SetLineColor(1);
19598     //hNMTrueEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19599 
19600     hNMBRecoEnPassDpIDCutNQ=new TH1F("hNMBRecoEnPassDpIDCutNQ",
19601                                      "hNMBRecoEnPassDpIDCutNQ",
19602                                      4*352,-32,320);
19603     hNMBRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19604     hNMBRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19605     hNMBRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19606     hNMBRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19607     hNMBRecoEnPassDpIDCutNQ->SetFillColor(0);
19608     hNMBRecoEnPassDpIDCutNQ->SetLineColor(1);
19609     //hNMBRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19610     
19611     hNMBTrueEnPassDpIDCutNQ=new TH1F
19612       ("hNMBTrueEnPassDpIDCutNQ","hNMBTrueEnPassDpIDCutNQ",
19613        4*352,-32,320);
19614     hNMBTrueEnPassDpIDCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
19615     hNMBTrueEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19616     hNMBTrueEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19617     hNMBTrueEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19618     hNMBTrueEnPassDpIDCutNQ->SetFillColor(0);
19619     hNMBTrueEnPassDpIDCutNQ->SetLineColor(1);
19620     //hNMBTrueEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19621 
19622 
19623 
19624     hAllNCRecoEnPassDpIDCutNQ=new TH1F("hAllNCRecoEnPassDpIDCutNQ",
19625                                        "hAllNCRecoEnPassDpIDCutNQ",
19626                                        4*352,-32,320);
19627     hAllNCRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19628     hAllNCRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19629     hAllNCRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19630     hAllNCRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19631     hAllNCRecoEnPassDpIDCutNQ->SetFillColor(0);
19632     hAllNCRecoEnPassDpIDCutNQ->SetLineColor(1);
19633     //hAllNCRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19634     
19635     hAllNCTrueEnPassDpIDCutNQ=new TH1F
19636       ("hAllNCTrueEnPassDpIDCutNQ","hAllNCTrueEnPassDpIDCutNQ",
19637        4*352,-32,320);
19638     hAllNCTrueEnPassDpIDCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
19639     hAllNCTrueEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19640     hAllNCTrueEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19641     hAllNCTrueEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19642     hAllNCTrueEnPassDpIDCutNQ->SetFillColor(0);
19643     hAllNCTrueEnPassDpIDCutNQ->SetLineColor(1);
19644     //hAllNCTrueEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19645 
19646     hAllShwRecoEnPassDpIDCutNQ=new TH1F("hAllShwRecoEnPassDpIDCutNQ",
19647                                         "hAllShwRecoEnPassDpIDCutNQ",
19648                                         4*352,-32,320);
19649     hAllShwRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19650     hAllShwRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19651     hAllShwRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19652     hAllShwRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19653     hAllShwRecoEnPassDpIDCutNQ->SetFillColor(0);
19654     hAllShwRecoEnPassDpIDCutNQ->SetLineColor(1);
19655     //hAllShwRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19656     
19657     hAllShwTrueEnPassDpIDCutNQ=new TH1F
19658       ("hAllShwTrueEnPassDpIDCutNQ","hAllShwTrueEnPassDpIDCutNQ",
19659        4*352,-32,320);
19660     hAllShwTrueEnPassDpIDCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
19661     hAllShwTrueEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19662     hAllShwTrueEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19663     hAllShwTrueEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19664     hAllShwTrueEnPassDpIDCutNQ->SetFillColor(0);
19665     hAllShwTrueEnPassDpIDCutNQ->SetLineColor(1);
19666     //hAllShwTrueEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19667 
19668     hNotNMRecoEnPassDpIDCutNQ=new TH1F
19669       ("hNotNMRecoEnPassDpIDCutNQ","hNotNMRecoEnPassDpIDCutNQ",
19670        4*352,-32,320);
19671     hNotNMRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19672     hNotNMRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19673     hNotNMRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19674     hNotNMRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19675     hNotNMRecoEnPassDpIDCutNQ->SetFillColor(0);
19676     hNotNMRecoEnPassDpIDCutNQ->SetLineColor(1);
19677     //hNotNMRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19678     
19679     hNotNMTrueEnPassDpIDCutNQ=new TH1F
19680       ("hNotNMTrueEnPassDpIDCutNQ","hNotNMTrueEnPassDpIDCutNQ",
19681        4*352,-32,320);
19682     hNotNMTrueEnPassDpIDCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
19683     hNotNMTrueEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19684     hNotNMTrueEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19685     hNotNMTrueEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19686     hNotNMTrueEnPassDpIDCutNQ->SetFillColor(0);
19687     hNotNMTrueEnPassDpIDCutNQ->SetLineColor(1);
19688     //hNotNMTrueEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19689 
19690     hNotNMBRecoEnPassDpIDCutNQ=new TH1F("hNotNMBRecoEnPassDpIDCutNQ",
19691                                         "hNotNMBRecoEnPassDpIDCutNQ",
19692                                         4*352,-32,320);
19693     hNotNMBRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19694     hNotNMBRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19695     hNotNMBRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19696     hNotNMBRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19697     hNotNMBRecoEnPassDpIDCutNQ->SetFillColor(0);
19698     hNotNMBRecoEnPassDpIDCutNQ->SetLineColor(1);
19699     //hNotNMBRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19700     
19701     hNotNMBTrueEnPassDpIDCutNQ=new TH1F
19702       ("hNotNMBTrueEnPassDpIDCutNQ","hNotNMBTrueEnPassDpIDCutNQ",
19703        4*352,-32,320);
19704     hNotNMBTrueEnPassDpIDCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
19705     hNotNMBTrueEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
19706     hNotNMBTrueEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
19707     hNotNMBTrueEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
19708     hNotNMBTrueEnPassDpIDCutNQ->SetFillColor(0);
19709     hNotNMBTrueEnPassDpIDCutNQ->SetLineColor(1);
19710     //hNotNMBTrueEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
19711   }
19712   
19713 
19714   //PQ
19715   if (nu.charge==+1){
19716     hSigqp_qpPassDpIDCutPQN->Fill(nu.sigqp_qp,nu.rw);
19717     hChi2PassDpIDCutPQN->Fill(nu.chi2PerNdof,nu.rw);
19718     hProbPassDpIDCutPQN->Fill(nu.prob,nu.rw);
19719     hDpIDPassDpIDCutPQN->Fill(nu.dpID,nu.rw);
19720     
19721     hRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
19722     hRecoYPassDpIDCutPQ->Fill(nu.y,nu.rw);
19723   }
19724   //NQ
19725   else if (nu.charge==-1){
19726     hSigqp_qpPassDpIDCutNQN->Fill(nu.sigqp_qp,nu.rw);
19727     hChi2PassDpIDCutNQN->Fill(nu.chi2PerNdof,nu.rw);
19728     hProbPassDpIDCutNQN->Fill(nu.prob,nu.rw);
19729     hDpIDPassDpIDCutNQN->Fill(nu.dpID,nu.rw);
19730 
19731     hRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
19732     hRecoYPassDpIDCutNQ->Fill(nu.y,nu.rw);
19733   }
19734   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
19735 
19736 
19737   //now fill the truth plots
19738   if (nu.iaction==1){//CC
19739     if (nu.inu==14){//NuMu
19740       if (nu.charge==+1) {
19741         hNMProbPassDpIDCutPQ->Fill(nu.prob,nu.rw);
19742         hNMRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
19743         hNMTrueEnPassDpIDCutPQ->Fill(nu.energyMC,nu.rw);
19744       }
19745       else if (nu.charge==-1){
19746         hNMProbPassDpIDCutNQ->Fill(nu.prob,nu.rw);
19747         hNMRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
19748         hNMTrueEnPassDpIDCutNQ->Fill(nu.energyMC,nu.rw);
19749       }
19750     }
19751     else if (nu.inu==-14){//NuMuBar
19752       if (nu.charge==+1) {
19753         hNMBProbPassDpIDCutPQ->Fill(nu.prob,nu.rw);
19754         hNMBRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
19755         hNMBTrueEnPassDpIDCutPQ->Fill(nu.energyMC,nu.rw);
19756       }
19757       else if (nu.charge==-1){
19758         hNMBProbPassDpIDCutNQ->Fill(nu.prob,nu.rw);
19759         hNMBRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
19760         hNMBTrueEnPassDpIDCutNQ->Fill(nu.energyMC,nu.rw);
19761       }
19762     }
19763   }
19764   else if (nu.iaction==0){//NC
19765     if (nu.charge==+1) {
19766       hAllNCRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
19767       hAllNCTrueEnPassDpIDCutPQ->Fill(nu.energyMC,nu.rw);
19768     }
19769     else if (nu.charge==-1){
19770       hAllNCRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
19771       hAllNCTrueEnPassDpIDCutNQ->Fill(nu.energyMC,nu.rw);
19772     }
19773   }
19774 
19775   //all but NuMu/NuMuBar CC
19776   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
19777     if (nu.charge==+1) {
19778       hAllShwProbPassDpIDCutPQ->Fill(nu.prob,nu.rw);
19779       hAllShwRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
19780       hAllShwTrueEnPassDpIDCutPQ->Fill(nu.energyMC,nu.rw);
19781     }
19782     else if (nu.charge==-1){
19783       hAllShwProbPassDpIDCutNQ->Fill(nu.prob,nu.rw);
19784       hAllShwRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
19785       hAllShwTrueEnPassDpIDCutNQ->Fill(nu.energyMC,nu.rw);
19786     }    
19787   }
19788 
19789   //fill all-but-numubar-cc histos
19790   if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
19791     if (nu.charge==+1) {
19792       hNotNMBRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
19793       hNotNMBTrueEnPassDpIDCutPQ->Fill(nu.energyMC,nu.rw);
19794     }
19795     else if (nu.charge==-1){
19796       hNotNMBRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
19797       hNotNMBTrueEnPassDpIDCutNQ->Fill(nu.energyMC,nu.rw);
19798     }  
19799   }
19800 
19801   //fill all-but-numu-cc histos
19802   if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
19803     if (nu.charge==+1) {
19804       hNotNMRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
19805       hNotNMTrueEnPassDpIDCutPQ->Fill(nu.energyMC,nu.rw);
19806     }
19807     else if (nu.charge==-1){
19808       hNotNMRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
19809       hNotNMTrueEnPassDpIDCutNQ->Fill(nu.energyMC,nu.rw);
19810     }  
19811   }
19812 
19813 
19814 
19815 
19816 
19817 
19818 
19819 
19820 
19821 
19822 
19823   /*
19824 
19825 
19826   //PQ
19827   static TH1F* hSigqp_qpPassDpIDCutPQN=0;
19828   static TH1F* hChi2PassDpIDCutPQN=0;
19829   static TH1F* hProbPassDpIDCutPQN=0;
19830   static TH1F* hDpIDPassDpIDCutPQN=0;
19831   static TH1F* hRecoEnPassDpIDCutPQ=0;
19832   static TH1F* hRecoYPassDpIDCutPQ=0;
19833 
19834   static TH1F* hNMProbPassDpIDCutPQ=0;
19835   static TH1F* hNMBProbPassDpIDCutPQ=0;
19836   static TH1F* hAllShwProbPassDpIDCutPQ=0;
19837 
19838   static TH1F* hNMRecoEnPassDpIDCutPQ=0;
19839   static TH1F* hNMTrueEnPassDpIDCutPQ=0;
19840   static TH1F* hNMBRecoEnPassDpIDCutPQ=0;
19841   static TH1F* hNMBTrueEnPassDpIDCutPQ=0;
19842 
19843   //NQ
19844   static TH1F* hSigqp_qpPassDpIDCutNQN=0;
19845   static TH1F* hChi2PassDpIDCutNQN=0;
19846   static TH1F* hProbPassDpIDCutNQN=0;
19847   static TH1F* hDpIDPassDpIDCutNQN=0;
19848   static TH1F* hRecoEnPassDpIDCutNQ=0;
19849   static TH1F* hRecoYPassDpIDCutNQ=0;
19850 
19851   static TH1F* hNMProbPassDpIDCutNQ=0;
19852   static TH1F* hNMBProbPassDpIDCutNQ=0;
19853   static TH1F* hAllShwProbPassDpIDCutNQ=0;
19854 
19855   static TH1F* hNMBRecoEnPassDpIDCutNQ=0;
19856   static TH1F* hNMBTrueEnPassDpIDCutNQ=0;
19857   static TH1F* hNMRecoEnPassDpIDCutNQ=0;
19858   static TH1F* hNMTrueEnPassDpIDCutNQ=0;
19859   
19860   if (!hChi2PassDpIDCutNQN){
19861   MAXMSG("NuPlots",Msg::kDebug,1)
19862   <<"Creating DPIdSigmaQPPassDpIDCutPlots plots..."<<endl;
19863     
19864   //PQ
19865   hSigqp_qpPassDpIDCutPQN=new TH1F("hSigqp_qpPassDpIDCutPQN","hSigqp_qpPassDpIDCutPQN",800*160,-160,160);
19866   hSigqp_qpPassDpIDCutPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
19867   hSigqp_qpPassDpIDCutPQN->GetXaxis()->CenterTitle();
19868   hSigqp_qpPassDpIDCutPQN->GetYaxis()->SetTitle("");
19869   hSigqp_qpPassDpIDCutPQN->GetYaxis()->CenterTitle();
19870   hSigqp_qpPassDpIDCutPQN->SetFillColor(0);
19871   hSigqp_qpPassDpIDCutPQN->SetLineColor(1);
19872   hSigqp_qpPassDpIDCutPQN->SetLineWidth(2);
19873   hSigqp_qpPassDpIDCutPQN->SetLineStyle(2);
19874   //hSigqp_qpPassDpIDCutPQN->SetBit(TH1::kCanRebin);
19875 
19876   hChi2PassDpIDCutPQN=new TH1F("hChi2PassDpIDCutPQN","hChi2PassDpIDCutPQN",10*176,-16,160);
19877   hChi2PassDpIDCutPQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
19878   hChi2PassDpIDCutPQN->GetXaxis()->CenterTitle();
19879   hChi2PassDpIDCutPQN->GetYaxis()->SetTitle("");
19880   hChi2PassDpIDCutPQN->GetYaxis()->CenterTitle();
19881   hChi2PassDpIDCutPQN->SetFillColor(0);
19882   hChi2PassDpIDCutPQN->SetLineColor(1);
19883   hChi2PassDpIDCutPQN->SetLineWidth(2);
19884   hChi2PassDpIDCutPQN->SetLineStyle(2);
19885   //hChi2PassDpIDCutPQN->SetBit(TH1::kCanRebin);
19886 
19887   hProbPassDpIDCutPQN=new TH1F("hProbPassDpIDCutPQN","hProbPassDpIDCutPQN",14000,-0.2,1.2);
19888   hProbPassDpIDCutPQN->GetXaxis()->SetTitle("Fit Probability");
19889   hProbPassDpIDCutPQN->GetXaxis()->CenterTitle();
19890   hProbPassDpIDCutPQN->GetYaxis()->SetTitle("");
19891   hProbPassDpIDCutPQN->GetYaxis()->CenterTitle();
19892   hProbPassDpIDCutPQN->SetFillColor(0);
19893   hProbPassDpIDCutPQN->SetLineColor(1);
19894   hProbPassDpIDCutPQN->SetLineWidth(2);
19895   hProbPassDpIDCutPQN->SetLineStyle(2);
19896   //hProbPassDpIDCutPQN->SetBit(TH1::kCanRebin);
19897 
19898   hDpIDPassDpIDCutPQN=new TH1F("hDpIDPassDpIDCutPQN","hDpIDPassDpIDCutPQN",4*160,-1.6,1.6);
19899   hDpIDPassDpIDCutPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
19900   hDpIDPassDpIDCutPQN->GetXaxis()->CenterTitle();
19901   hDpIDPassDpIDCutPQN->GetYaxis()->SetTitle("");
19902   hDpIDPassDpIDCutPQN->GetYaxis()->CenterTitle();
19903   hDpIDPassDpIDCutPQN->SetFillColor(0);
19904   hDpIDPassDpIDCutPQN->SetLineColor(1);
19905   hDpIDPassDpIDCutPQN->SetLineWidth(2);
19906   //hDpIDPassDpIDCutPQN->SetBit(TH1::kCanRebin);
19907 
19908   hRecoEnPassDpIDCutPQ=new TH1F("hRecoEnPassDpIDCutPQ","hRecoEnPassDpIDCutPQ",
19909   4*352,-32,320);
19910   hRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19911   hRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19912   hRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19913   hRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19914   hRecoEnPassDpIDCutPQ->SetFillColor(0);
19915   hRecoEnPassDpIDCutPQ->SetLineColor(1);
19916   //hRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19917 
19918   hRecoYPassDpIDCutPQ=new TH1F("hRecoYPassDpIDCutPQ","hRecoYPassDpIDCutPQ",
19919   1400,-0.2,1.2);
19920   hRecoYPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed y");
19921   hRecoYPassDpIDCutPQ->GetXaxis()->CenterTitle();
19922   hRecoYPassDpIDCutPQ->GetYaxis()->SetTitle("");
19923   hRecoYPassDpIDCutPQ->GetYaxis()->CenterTitle();
19924   hRecoYPassDpIDCutPQ->SetFillColor(0);
19925   hRecoYPassDpIDCutPQ->SetLineColor(1);
19926   //hRecoYPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19927 
19928 
19929   hNMProbPassDpIDCutPQ=new TH1F
19930   ("hNMProbPassDpIDCutPQ","hNMProbPassDpIDCutPQ",14000,-0.2,1.2);
19931   hNMProbPassDpIDCutPQ->GetXaxis()->SetTitle("Fit Probability");
19932   hNMProbPassDpIDCutPQ->GetXaxis()->CenterTitle();
19933   hNMProbPassDpIDCutPQ->GetYaxis()->SetTitle("");
19934   hNMProbPassDpIDCutPQ->GetYaxis()->CenterTitle();
19935   hNMProbPassDpIDCutPQ->SetFillColor(0);
19936   hNMProbPassDpIDCutPQ->SetLineColor(1);
19937   hNMProbPassDpIDCutPQ->SetLineWidth(2);
19938   hNMProbPassDpIDCutPQ->SetLineStyle(2);
19939   //hNMProbPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19940     
19941   hNMBProbPassDpIDCutPQ=new TH1F
19942   ("hNMBProbPassDpIDCutPQ","hNMBProbPassDpIDCutPQ",14000,-0.2,1.2);
19943   hNMBProbPassDpIDCutPQ->GetXaxis()->SetTitle("Fit Probability");
19944   hNMBProbPassDpIDCutPQ->GetXaxis()->CenterTitle();
19945   hNMBProbPassDpIDCutPQ->GetYaxis()->SetTitle("");
19946   hNMBProbPassDpIDCutPQ->GetYaxis()->CenterTitle();
19947   hNMBProbPassDpIDCutPQ->SetFillColor(0);
19948   hNMBProbPassDpIDCutPQ->SetLineColor(1);
19949   hNMBProbPassDpIDCutPQ->SetLineWidth(2);
19950   hNMBProbPassDpIDCutPQ->SetLineStyle(2);
19951   //hNMBProbPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19952 
19953   hAllShwProbPassDpIDCutPQ=new TH1F
19954   ("hAllShwProbPassDpIDCutPQ",
19955   "hAllShwProbPassDpIDCutPQ",14000,-0.2,1.2);
19956   hAllShwProbPassDpIDCutPQ->GetXaxis()->SetTitle("Fit Probability");
19957   hAllShwProbPassDpIDCutPQ->GetXaxis()->CenterTitle();
19958   hAllShwProbPassDpIDCutPQ->GetYaxis()->SetTitle("");
19959   hAllShwProbPassDpIDCutPQ->GetYaxis()->CenterTitle();
19960   hAllShwProbPassDpIDCutPQ->SetFillColor(0);
19961   hAllShwProbPassDpIDCutPQ->SetLineColor(1);
19962   hAllShwProbPassDpIDCutPQ->SetLineWidth(2);
19963   hAllShwProbPassDpIDCutPQ->SetLineStyle(2);
19964   //hAllShwProbPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19965 
19966   hNMRecoEnPassDpIDCutPQ=new TH1F
19967   ("hNMRecoEnPassDpIDCutPQ","hNMRecoEnPassDpIDCutPQ",4*352,-32,320);
19968   hNMRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19969   hNMRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19970   hNMRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19971   hNMRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19972   hNMRecoEnPassDpIDCutPQ->SetFillColor(0);
19973   hNMRecoEnPassDpIDCutPQ->SetLineColor(1);
19974   //hNMRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19975     
19976   hNMTrueEnPassDpIDCutPQ=new TH1F
19977   ("hNMTrueEnPassDpIDCutPQ","hNMTrueEnPassDpIDCutPQ",4*352,-32,320);
19978   hNMTrueEnPassDpIDCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
19979   hNMTrueEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19980   hNMTrueEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19981   hNMTrueEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19982   hNMTrueEnPassDpIDCutPQ->SetFillColor(0);
19983   hNMTrueEnPassDpIDCutPQ->SetLineColor(1);
19984   //hNMTrueEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19985 
19986   hNMBRecoEnPassDpIDCutPQ=new TH1F("hNMBRecoEnPassDpIDCutPQ",
19987   "hNMBRecoEnPassDpIDCutPQ",
19988   4*352,-32,320);
19989   hNMBRecoEnPassDpIDCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
19990   hNMBRecoEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
19991   hNMBRecoEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
19992   hNMBRecoEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
19993   hNMBRecoEnPassDpIDCutPQ->SetFillColor(0);
19994   hNMBRecoEnPassDpIDCutPQ->SetLineColor(1);
19995   //hNMBRecoEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
19996     
19997   hNMBTrueEnPassDpIDCutPQ=new TH1F
19998   ("hNMBTrueEnPassDpIDCutPQ","hNMBTrueEnPassDpIDCutPQ",
19999   4*352,-32,320);
20000   hNMBTrueEnPassDpIDCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
20001   hNMBTrueEnPassDpIDCutPQ->GetXaxis()->CenterTitle();
20002   hNMBTrueEnPassDpIDCutPQ->GetYaxis()->SetTitle("");
20003   hNMBTrueEnPassDpIDCutPQ->GetYaxis()->CenterTitle();
20004   hNMBTrueEnPassDpIDCutPQ->SetFillColor(0);
20005   hNMBTrueEnPassDpIDCutPQ->SetLineColor(1);
20006   //hNMBTrueEnPassDpIDCutPQ->SetBit(TH1::kCanRebin);
20007     
20008     
20009 
20010   //NQ
20011   hSigqp_qpPassDpIDCutNQN=new TH1F("hSigqp_qpPassDpIDCutNQN","hSigqp_qpPassDpIDCutNQN",800*160,-160,160);
20012   hSigqp_qpPassDpIDCutNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
20013   hSigqp_qpPassDpIDCutNQN->GetXaxis()->CenterTitle();
20014   hSigqp_qpPassDpIDCutNQN->GetYaxis()->SetTitle("");
20015   hSigqp_qpPassDpIDCutNQN->GetYaxis()->CenterTitle();
20016   hSigqp_qpPassDpIDCutNQN->SetFillColor(0);
20017   hSigqp_qpPassDpIDCutNQN->SetLineColor(1);
20018   hSigqp_qpPassDpIDCutNQN->SetLineWidth(2);
20019   hSigqp_qpPassDpIDCutNQN->SetLineStyle(2);
20020   //hSigqp_qpPassDpIDCutNQN->SetBit(TH1::kCanRebin);
20021 
20022   hChi2PassDpIDCutNQN=new TH1F("hChi2PassDpIDCutNQN","hChi2PassDpIDCutNQN",10*176,-16,160);
20023   hChi2PassDpIDCutNQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
20024   hChi2PassDpIDCutNQN->GetXaxis()->CenterTitle();
20025   hChi2PassDpIDCutNQN->GetYaxis()->SetTitle("");
20026   hChi2PassDpIDCutNQN->GetYaxis()->CenterTitle();
20027   hChi2PassDpIDCutNQN->SetFillColor(0);
20028   hChi2PassDpIDCutNQN->SetLineColor(1);
20029   hChi2PassDpIDCutNQN->SetLineWidth(2);
20030   hChi2PassDpIDCutNQN->SetLineStyle(2);
20031   //hChi2PassDpIDCutNQN->SetBit(TH1::kCanRebin);
20032 
20033   hProbPassDpIDCutNQN=new TH1F("hProbPassDpIDCutNQN","hProbPassDpIDCutNQN",14000,-0.2,1.2);
20034   hProbPassDpIDCutNQN->GetXaxis()->SetTitle("Fit Probability");
20035   hProbPassDpIDCutNQN->GetXaxis()->CenterTitle();
20036   hProbPassDpIDCutNQN->GetYaxis()->SetTitle("");
20037   hProbPassDpIDCutNQN->GetYaxis()->CenterTitle();
20038   hProbPassDpIDCutNQN->SetFillColor(0);
20039   hProbPassDpIDCutNQN->SetLineColor(1);
20040   hProbPassDpIDCutNQN->SetLineWidth(2);
20041   hProbPassDpIDCutNQN->SetLineStyle(2);
20042   //hProbPassDpIDCutNQN->SetBit(TH1::kCanRebin);
20043 
20044   hDpIDPassDpIDCutNQN=new TH1F("hDpIDPassDpIDCutNQN","hDpIDPassDpIDCutNQN",4*160,-1.6,1.6);
20045   hDpIDPassDpIDCutNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
20046   hDpIDPassDpIDCutNQN->GetXaxis()->CenterTitle();
20047   hDpIDPassDpIDCutNQN->GetYaxis()->SetTitle("");
20048   hDpIDPassDpIDCutNQN->GetYaxis()->CenterTitle();
20049   hDpIDPassDpIDCutNQN->SetFillColor(0);
20050   hDpIDPassDpIDCutNQN->SetLineColor(1);
20051   hDpIDPassDpIDCutNQN->SetLineWidth(2);
20052   //hDpIDPassDpIDCutNQN->SetBit(TH1::kCanRebin);
20053 
20054   hRecoEnPassDpIDCutNQ=new TH1F("hRecoEnPassDpIDCutNQ","hRecoEnPassDpIDCutNQ",
20055   4*352,-32,320);
20056   hRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20057   hRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
20058   hRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
20059   hRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
20060   hRecoEnPassDpIDCutNQ->SetFillColor(0);
20061   hRecoEnPassDpIDCutNQ->SetLineColor(1);
20062   //hRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
20063     
20064   hRecoYPassDpIDCutNQ=new TH1F("hRecoYPassDpIDCutNQ","hRecoYPassDpIDCutNQ",
20065   1400,-0.2,1.2);
20066   hRecoYPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed y");
20067   hRecoYPassDpIDCutNQ->GetXaxis()->CenterTitle();
20068   hRecoYPassDpIDCutNQ->GetYaxis()->SetTitle("");
20069   hRecoYPassDpIDCutNQ->GetYaxis()->CenterTitle();
20070   hRecoYPassDpIDCutNQ->SetFillColor(0);
20071   hRecoYPassDpIDCutNQ->SetLineColor(1);
20072   //hRecoYPassDpIDCutNQ->SetBit(TH1::kCanRebin);
20073 
20074 
20075   hNMProbPassDpIDCutNQ=new TH1F
20076   ("hNMProbPassDpIDCutNQ","hNMProbPassDpIDCutNQ",14000,-0.2,1.2);
20077   hNMProbPassDpIDCutNQ->GetXaxis()->SetTitle("Fit Probability");
20078   hNMProbPassDpIDCutNQ->GetXaxis()->CenterTitle();
20079   hNMProbPassDpIDCutNQ->GetYaxis()->SetTitle("");
20080   hNMProbPassDpIDCutNQ->GetYaxis()->CenterTitle();
20081   hNMProbPassDpIDCutNQ->SetFillColor(0);
20082   hNMProbPassDpIDCutNQ->SetLineColor(1);
20083   hNMProbPassDpIDCutNQ->SetLineWidth(2);
20084   hNMProbPassDpIDCutNQ->SetLineStyle(2);
20085   //hNMProbPassDpIDCutNQ->SetBit(TH1::kCanRebin);
20086     
20087   hNMBProbPassDpIDCutNQ=new TH1F
20088   ("hNMBProbPassDpIDCutNQ","hNMBProbPassDpIDCutNQ",14000,-0.2,1.2);
20089   hNMBProbPassDpIDCutNQ->GetXaxis()->SetTitle("Fit Probability");
20090   hNMBProbPassDpIDCutNQ->GetXaxis()->CenterTitle();
20091   hNMBProbPassDpIDCutNQ->GetYaxis()->SetTitle("");
20092   hNMBProbPassDpIDCutNQ->GetYaxis()->CenterTitle();
20093   hNMBProbPassDpIDCutNQ->SetFillColor(0);
20094   hNMBProbPassDpIDCutNQ->SetLineColor(1);
20095   hNMBProbPassDpIDCutNQ->SetLineWidth(2);
20096   hNMBProbPassDpIDCutNQ->SetLineStyle(2);
20097   //hNMBProbPassDpIDCutNQ->SetBit(TH1::kCanRebin);
20098 
20099   hAllShwProbPassDpIDCutNQ=new TH1F
20100   ("hAllShwProbPassDpIDCutNQ",
20101   "hAllShwProbPassDpIDCutNQ",14000,-0.2,1.2);
20102   hAllShwProbPassDpIDCutNQ->GetXaxis()->SetTitle("Fit Probability");
20103   hAllShwProbPassDpIDCutNQ->GetXaxis()->CenterTitle();
20104   hAllShwProbPassDpIDCutNQ->GetYaxis()->SetTitle("");
20105   hAllShwProbPassDpIDCutNQ->GetYaxis()->CenterTitle();
20106   hAllShwProbPassDpIDCutNQ->SetFillColor(0);
20107   hAllShwProbPassDpIDCutNQ->SetLineColor(1);
20108   hAllShwProbPassDpIDCutNQ->SetLineWidth(2);
20109   hAllShwProbPassDpIDCutNQ->SetLineStyle(2);
20110   //hAllShwProbPassDpIDCutNQ->SetBit(TH1::kCanRebin);
20111 
20112 
20113   hNMRecoEnPassDpIDCutNQ=new TH1F
20114   ("hNMRecoEnPassDpIDCutNQ","hNMRecoEnPassDpIDCutNQ",4*352,-32,320);
20115   hNMRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20116   hNMRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
20117   hNMRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
20118   hNMRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
20119   hNMRecoEnPassDpIDCutNQ->SetFillColor(0);
20120   hNMRecoEnPassDpIDCutNQ->SetLineColor(1);
20121   //hNMRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
20122     
20123   hNMTrueEnPassDpIDCutNQ=new TH1F
20124   ("hNMTrueEnPassDpIDCutNQ","hNMTrueEnPassDpIDCutNQ",4*352,-32,320);
20125   hNMTrueEnPassDpIDCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
20126   hNMTrueEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
20127   hNMTrueEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
20128   hNMTrueEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
20129   hNMTrueEnPassDpIDCutNQ->SetFillColor(0);
20130   hNMTrueEnPassDpIDCutNQ->SetLineColor(1);
20131   //hNMTrueEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
20132 
20133   hNMBRecoEnPassDpIDCutNQ=new TH1F("hNMBRecoEnPassDpIDCutNQ",
20134   "hNMBRecoEnPassDpIDCutNQ",
20135   4*352,-32,320);
20136   hNMBRecoEnPassDpIDCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20137   hNMBRecoEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
20138   hNMBRecoEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
20139   hNMBRecoEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
20140   hNMBRecoEnPassDpIDCutNQ->SetFillColor(0);
20141   hNMBRecoEnPassDpIDCutNQ->SetLineColor(1);
20142   //hNMBRecoEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
20143     
20144   hNMBTrueEnPassDpIDCutNQ=new TH1F
20145   ("hNMBTrueEnPassDpIDCutNQ","hNMBTrueEnPassDpIDCutNQ",
20146   4*352,-32,320);
20147   hNMBTrueEnPassDpIDCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
20148   hNMBTrueEnPassDpIDCutNQ->GetXaxis()->CenterTitle();
20149   hNMBTrueEnPassDpIDCutNQ->GetYaxis()->SetTitle("");
20150   hNMBTrueEnPassDpIDCutNQ->GetYaxis()->CenterTitle();
20151   hNMBTrueEnPassDpIDCutNQ->SetFillColor(0);
20152   hNMBTrueEnPassDpIDCutNQ->SetLineColor(1);
20153   //hNMBTrueEnPassDpIDCutNQ->SetBit(TH1::kCanRebin);
20154   }
20155   
20156   //PQ
20157   if (nu.charge==+1){
20158   hSigqp_qpPassDpIDCutPQN->Fill(nu.sigqp_qp,nu.rw);
20159   hChi2PassDpIDCutPQN->Fill(nu.chi2PerNdof,nu.rw);
20160   hProbPassDpIDCutPQN->Fill(nu.prob,nu.rw);
20161   hDpIDPassDpIDCutPQN->Fill(nu.dpID,nu.rw);
20162     
20163   hRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
20164   hRecoYPassDpIDCutPQ->Fill(nu.y,nu.rw);
20165   }
20166   //NQ
20167   else if (nu.charge==-1){
20168   hSigqp_qpPassDpIDCutNQN->Fill(nu.sigqp_qp,nu.rw);
20169   hChi2PassDpIDCutNQN->Fill(nu.chi2PerNdof,nu.rw);
20170   hProbPassDpIDCutNQN->Fill(nu.prob,nu.rw);
20171   hDpIDPassDpIDCutNQN->Fill(nu.dpID,nu.rw);
20172 
20173   hRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
20174   hRecoYPassDpIDCutNQ->Fill(nu.y,nu.rw);
20175   }
20176   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
20177 
20178 
20179   //now fill the truth plots
20180   if (nu.iaction==1){//CC
20181   if (nu.inu==14){//NuMu
20182   if (nu.charge==+1) {
20183   hNMProbPassDpIDCutPQ->Fill(nu.prob,nu.rw);
20184   hNMRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
20185   hNMTrueEnPassDpIDCutPQ->Fill(nu.energyMC,nu.rw);
20186   }
20187   else if (nu.charge==-1){
20188   hNMProbPassDpIDCutNQ->Fill(nu.prob,nu.rw);
20189   hNMRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
20190   hNMTrueEnPassDpIDCutNQ->Fill(nu.energyMC,nu.rw);
20191   }
20192   }
20193   else if (nu.inu==-14){//NuMuBar
20194   if (nu.charge==+1) {
20195   hNMBProbPassDpIDCutPQ->Fill(nu.prob,nu.rw);
20196   hNMBRecoEnPassDpIDCutPQ->Fill(nu.energy,nu.rw);
20197   hNMBTrueEnPassDpIDCutPQ->Fill(nu.energyMC,nu.rw);
20198   }
20199   else if (nu.charge==-1){
20200   hNMBProbPassDpIDCutNQ->Fill(nu.prob,nu.rw);
20201   hNMBRecoEnPassDpIDCutNQ->Fill(nu.energy,nu.rw);
20202   hNMBTrueEnPassDpIDCutNQ->Fill(nu.energyMC,nu.rw);
20203   }
20204   }
20205   }
20206 
20207   //all but NuMu/NuMuBar CC
20208   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
20209   if (nu.charge==+1) {
20210   hAllShwProbPassDpIDCutPQ->Fill(nu.prob,nu.rw);
20211   }
20212   else if (nu.charge==-1){
20213   hAllShwProbPassDpIDCutNQ->Fill(nu.prob,nu.rw);
20214   }    
20215   }
20216   */
20217 }

void NuPlots::FillDPIdSigmaQPPassPreSelCutPlots const NuEvent nu  )  const
 

Definition at line 22421 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::chi2PerNdof, NuEvent::dpID, NuEvent::energy, NuEvent::energyMC, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::prob, NuEvent::rw, NuEvent::sigqp_qp, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::MakePostPreSelectionPlots(), and NuAnalysis::NMBSummaryTreeAna().

22422 { 
22423   //PQ
22424   static TH1F* hSigqp_qpPassPreSelCutPQN=0;
22425   static TH1F* hChi2PassPreSelCutPQN=0;
22426   static TH1F* hProbPassPreSelCutPQN=0;
22427   static TH1F* hDpIDPassPreSelCutPQN=0;
22428   static TH1F* hRecoEnPassPreSelCutPQ=0;
22429   static TH1F* hRecoYPassPreSelCutPQ=0;
22430 
22431   static TH1F* hNMProbPassPreSelCutPQ=0;
22432   static TH1F* hNMBProbPassPreSelCutPQ=0;
22433   static TH1F* hAllShwProbPassPreSelCutPQ=0;
22434 
22435   static TH1F* hNMRecoEnPassPreSelCutPQ=0;
22436   static TH1F* hNMTrueEnPassPreSelCutPQ=0;
22437   static TH1F* hNMBRecoEnPassPreSelCutPQ=0;
22438   static TH1F* hNMBTrueEnPassPreSelCutPQ=0;
22439   static TH1F* hAllNCRecoEnPassPreSelCutPQ=0;
22440   static TH1F* hAllNCTrueEnPassPreSelCutPQ=0;
22441   static TH1F* hAllShwRecoEnPassPreSelCutPQ=0;
22442   static TH1F* hAllShwTrueEnPassPreSelCutPQ=0;
22443   static TH1F* hNotNMBRecoEnPassPreSelCutPQ=0;
22444   static TH1F* hNotNMBTrueEnPassPreSelCutPQ=0;
22445   static TH1F* hNotNMRecoEnPassPreSelCutPQ=0;
22446   static TH1F* hNotNMTrueEnPassPreSelCutPQ=0;
22447 
22448   //NQ
22449   static TH1F* hSigqp_qpPassPreSelCutNQN=0;
22450   static TH1F* hChi2PassPreSelCutNQN=0;
22451   static TH1F* hProbPassPreSelCutNQN=0;
22452   static TH1F* hDpIDPassPreSelCutNQN=0;
22453   static TH1F* hRecoEnPassPreSelCutNQ=0;
22454   static TH1F* hRecoYPassPreSelCutNQ=0;
22455 
22456   static TH1F* hNMProbPassPreSelCutNQ=0;
22457   static TH1F* hNMBProbPassPreSelCutNQ=0;
22458   static TH1F* hAllShwProbPassPreSelCutNQ=0;
22459 
22460   static TH1F* hNMBRecoEnPassPreSelCutNQ=0;
22461   static TH1F* hNMBTrueEnPassPreSelCutNQ=0;
22462   static TH1F* hNMRecoEnPassPreSelCutNQ=0;
22463   static TH1F* hNMTrueEnPassPreSelCutNQ=0;
22464   static TH1F* hAllNCRecoEnPassPreSelCutNQ=0;
22465   static TH1F* hAllNCTrueEnPassPreSelCutNQ=0;
22466   static TH1F* hAllShwRecoEnPassPreSelCutNQ=0;
22467   static TH1F* hAllShwTrueEnPassPreSelCutNQ=0;
22468   static TH1F* hNotNMBRecoEnPassPreSelCutNQ=0;
22469   static TH1F* hNotNMBTrueEnPassPreSelCutNQ=0;
22470   static TH1F* hNotNMRecoEnPassPreSelCutNQ=0;
22471   static TH1F* hNotNMTrueEnPassPreSelCutNQ=0;
22472 
22473 
22474   if (!hChi2PassPreSelCutNQN){
22475     MAXMSG("NuPlots",Msg::kDebug,1)
22476       <<"Creating DPIdSigmaQPPassPreSelCutPlots plots..."<<endl;
22477     
22478     //PQ
22479     hSigqp_qpPassPreSelCutPQN=new TH1F("hSigqp_qpPassPreSelCutPQN","hSigqp_qpPassPreSelCutPQN",800*160,-160,160);
22480     hSigqp_qpPassPreSelCutPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
22481     hSigqp_qpPassPreSelCutPQN->GetXaxis()->CenterTitle();
22482     hSigqp_qpPassPreSelCutPQN->GetYaxis()->SetTitle("");
22483     hSigqp_qpPassPreSelCutPQN->GetYaxis()->CenterTitle();
22484     hSigqp_qpPassPreSelCutPQN->SetFillColor(0);
22485     hSigqp_qpPassPreSelCutPQN->SetLineColor(1);
22486     hSigqp_qpPassPreSelCutPQN->SetLineWidth(2);
22487     hSigqp_qpPassPreSelCutPQN->SetLineStyle(2);
22488     //hSigqp_qpPassPreSelCutPQN->SetBit(TH1::kCanRebin);
22489 
22490     hChi2PassPreSelCutPQN=new TH1F("hChi2PassPreSelCutPQN","hChi2PassPreSelCutPQN",10*176,-16,160);
22491     hChi2PassPreSelCutPQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
22492     hChi2PassPreSelCutPQN->GetXaxis()->CenterTitle();
22493     hChi2PassPreSelCutPQN->GetYaxis()->SetTitle("");
22494     hChi2PassPreSelCutPQN->GetYaxis()->CenterTitle();
22495     hChi2PassPreSelCutPQN->SetFillColor(0);
22496     hChi2PassPreSelCutPQN->SetLineColor(1);
22497     hChi2PassPreSelCutPQN->SetLineWidth(2);
22498     hChi2PassPreSelCutPQN->SetLineStyle(2);
22499     //hChi2PassPreSelCutPQN->SetBit(TH1::kCanRebin);
22500 
22501     hProbPassPreSelCutPQN=new TH1F("hProbPassPreSelCutPQN","hProbPassPreSelCutPQN",14000,-0.2,1.2);
22502     hProbPassPreSelCutPQN->GetXaxis()->SetTitle("Fit Probability");
22503     hProbPassPreSelCutPQN->GetXaxis()->CenterTitle();
22504     hProbPassPreSelCutPQN->GetYaxis()->SetTitle("");
22505     hProbPassPreSelCutPQN->GetYaxis()->CenterTitle();
22506     hProbPassPreSelCutPQN->SetFillColor(0);
22507     hProbPassPreSelCutPQN->SetLineColor(1);
22508     hProbPassPreSelCutPQN->SetLineWidth(2);
22509     hProbPassPreSelCutPQN->SetLineStyle(2);
22510     //hProbPassPreSelCutPQN->SetBit(TH1::kCanRebin);
22511 
22512     hDpIDPassPreSelCutPQN=new TH1F("hDpIDPassPreSelCutPQN","hDpIDPassPreSelCutPQN",4*160,-1.6,1.6);
22513     hDpIDPassPreSelCutPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
22514     hDpIDPassPreSelCutPQN->GetXaxis()->CenterTitle();
22515     hDpIDPassPreSelCutPQN->GetYaxis()->SetTitle("");
22516     hDpIDPassPreSelCutPQN->GetYaxis()->CenterTitle();
22517     hDpIDPassPreSelCutPQN->SetFillColor(0);
22518     hDpIDPassPreSelCutPQN->SetLineColor(1);
22519     hDpIDPassPreSelCutPQN->SetLineWidth(2);
22520     //hDpIDPassPreSelCutPQN->SetBit(TH1::kCanRebin);
22521 
22522     hRecoEnPassPreSelCutPQ=new TH1F("hRecoEnPassPreSelCutPQ","hRecoEnPassPreSelCutPQ",
22523                                     4*352,-32,320);
22524     hRecoEnPassPreSelCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22525     hRecoEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22526     hRecoEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22527     hRecoEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22528     hRecoEnPassPreSelCutPQ->SetFillColor(0);
22529     hRecoEnPassPreSelCutPQ->SetLineColor(1);
22530     //hRecoEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22531 
22532     hRecoYPassPreSelCutPQ=new TH1F("hRecoYPassPreSelCutPQ","hRecoYPassPreSelCutPQ",
22533                                    1400,-0.2,1.2);
22534     hRecoYPassPreSelCutPQ->GetXaxis()->SetTitle("Reconstructed y");
22535     hRecoYPassPreSelCutPQ->GetXaxis()->CenterTitle();
22536     hRecoYPassPreSelCutPQ->GetYaxis()->SetTitle("");
22537     hRecoYPassPreSelCutPQ->GetYaxis()->CenterTitle();
22538     hRecoYPassPreSelCutPQ->SetFillColor(0);
22539     hRecoYPassPreSelCutPQ->SetLineColor(1);
22540     //hRecoYPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22541 
22542 
22543     hNMProbPassPreSelCutPQ=new TH1F
22544       ("hNMProbPassPreSelCutPQ","hNMProbPassPreSelCutPQ",14000,-0.2,1.2);
22545     hNMProbPassPreSelCutPQ->GetXaxis()->SetTitle("Fit Probability");
22546     hNMProbPassPreSelCutPQ->GetXaxis()->CenterTitle();
22547     hNMProbPassPreSelCutPQ->GetYaxis()->SetTitle("");
22548     hNMProbPassPreSelCutPQ->GetYaxis()->CenterTitle();
22549     hNMProbPassPreSelCutPQ->SetFillColor(0);
22550     hNMProbPassPreSelCutPQ->SetLineColor(1);
22551     hNMProbPassPreSelCutPQ->SetLineWidth(2);
22552     hNMProbPassPreSelCutPQ->SetLineStyle(2);
22553     //hNMProbPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22554     
22555     hNMBProbPassPreSelCutPQ=new TH1F
22556       ("hNMBProbPassPreSelCutPQ","hNMBProbPassPreSelCutPQ",14000,-0.2,1.2);
22557     hNMBProbPassPreSelCutPQ->GetXaxis()->SetTitle("Fit Probability");
22558     hNMBProbPassPreSelCutPQ->GetXaxis()->CenterTitle();
22559     hNMBProbPassPreSelCutPQ->GetYaxis()->SetTitle("");
22560     hNMBProbPassPreSelCutPQ->GetYaxis()->CenterTitle();
22561     hNMBProbPassPreSelCutPQ->SetFillColor(0);
22562     hNMBProbPassPreSelCutPQ->SetLineColor(1);
22563     hNMBProbPassPreSelCutPQ->SetLineWidth(2);
22564     hNMBProbPassPreSelCutPQ->SetLineStyle(2);
22565     //hNMBProbPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22566 
22567     hAllShwProbPassPreSelCutPQ=new TH1F
22568       ("hAllShwProbPassPreSelCutPQ",
22569        "hAllShwProbPassPreSelCutPQ",14000,-0.2,1.2);
22570     hAllShwProbPassPreSelCutPQ->GetXaxis()->SetTitle("Fit Probability");
22571     hAllShwProbPassPreSelCutPQ->GetXaxis()->CenterTitle();
22572     hAllShwProbPassPreSelCutPQ->GetYaxis()->SetTitle("");
22573     hAllShwProbPassPreSelCutPQ->GetYaxis()->CenterTitle();
22574     hAllShwProbPassPreSelCutPQ->SetFillColor(0);
22575     hAllShwProbPassPreSelCutPQ->SetLineColor(1);
22576     hAllShwProbPassPreSelCutPQ->SetLineWidth(2);
22577     hAllShwProbPassPreSelCutPQ->SetLineStyle(2);
22578     //hAllShwProbPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22579 
22580 
22581 
22582     hNMRecoEnPassPreSelCutPQ=new TH1F
22583       ("hNMRecoEnPassPreSelCutPQ","hNMRecoEnPassPreSelCutPQ",
22584        4*352,-32,320);
22585     hNMRecoEnPassPreSelCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22586     hNMRecoEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22587     hNMRecoEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22588     hNMRecoEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22589     hNMRecoEnPassPreSelCutPQ->SetFillColor(0);
22590     hNMRecoEnPassPreSelCutPQ->SetLineColor(1);
22591     //hNMRecoEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22592     
22593     hNMTrueEnPassPreSelCutPQ=new TH1F
22594       ("hNMTrueEnPassPreSelCutPQ","hNMTrueEnPassPreSelCutPQ",
22595        4*352,-32,320);
22596     hNMTrueEnPassPreSelCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
22597     hNMTrueEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22598     hNMTrueEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22599     hNMTrueEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22600     hNMTrueEnPassPreSelCutPQ->SetFillColor(0);
22601     hNMTrueEnPassPreSelCutPQ->SetLineColor(1);
22602     //hNMTrueEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22603 
22604     hNMBRecoEnPassPreSelCutPQ=new TH1F("hNMBRecoEnPassPreSelCutPQ",
22605                                        "hNMBRecoEnPassPreSelCutPQ",
22606                                        4*352,-32,320);
22607     hNMBRecoEnPassPreSelCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22608     hNMBRecoEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22609     hNMBRecoEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22610     hNMBRecoEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22611     hNMBRecoEnPassPreSelCutPQ->SetFillColor(0);
22612     hNMBRecoEnPassPreSelCutPQ->SetLineColor(1);
22613     //hNMBRecoEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22614     
22615     hNMBTrueEnPassPreSelCutPQ=new TH1F
22616       ("hNMBTrueEnPassPreSelCutPQ","hNMBTrueEnPassPreSelCutPQ",
22617        4*352,-32,320);
22618     hNMBTrueEnPassPreSelCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
22619     hNMBTrueEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22620     hNMBTrueEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22621     hNMBTrueEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22622     hNMBTrueEnPassPreSelCutPQ->SetFillColor(0);
22623     hNMBTrueEnPassPreSelCutPQ->SetLineColor(1);
22624     //hNMBTrueEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22625 
22626     hAllNCRecoEnPassPreSelCutPQ=new TH1F("hAllNCRecoEnPassPreSelCutPQ",
22627                                          "hAllNCRecoEnPassPreSelCutPQ",
22628                                          4*352,-32,320);
22629     hAllNCRecoEnPassPreSelCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22630     hAllNCRecoEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22631     hAllNCRecoEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22632     hAllNCRecoEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22633     hAllNCRecoEnPassPreSelCutPQ->SetFillColor(0);
22634     hAllNCRecoEnPassPreSelCutPQ->SetLineColor(1);
22635     //hAllNCRecoEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22636     
22637     hAllNCTrueEnPassPreSelCutPQ=new TH1F
22638       ("hAllNCTrueEnPassPreSelCutPQ","hAllNCTrueEnPassPreSelCutPQ",
22639        4*352,-32,320);
22640     hAllNCTrueEnPassPreSelCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
22641     hAllNCTrueEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22642     hAllNCTrueEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22643     hAllNCTrueEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22644     hAllNCTrueEnPassPreSelCutPQ->SetFillColor(0);
22645     hAllNCTrueEnPassPreSelCutPQ->SetLineColor(1);
22646     //hAllNCTrueEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22647 
22648     hAllShwRecoEnPassPreSelCutPQ=new TH1F("hAllShwRecoEnPassPreSelCutPQ",
22649                                           "hAllShwRecoEnPassPreSelCutPQ",
22650                                           4*352,-32,320);
22651     hAllShwRecoEnPassPreSelCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22652     hAllShwRecoEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22653     hAllShwRecoEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22654     hAllShwRecoEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22655     hAllShwRecoEnPassPreSelCutPQ->SetFillColor(0);
22656     hAllShwRecoEnPassPreSelCutPQ->SetLineColor(1);
22657     //hAllShwRecoEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22658     
22659     hAllShwTrueEnPassPreSelCutPQ=new TH1F
22660       ("hAllShwTrueEnPassPreSelCutPQ","hAllShwTrueEnPassPreSelCutPQ",
22661        4*352,-32,320);
22662     hAllShwTrueEnPassPreSelCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
22663     hAllShwTrueEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22664     hAllShwTrueEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22665     hAllShwTrueEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22666     hAllShwTrueEnPassPreSelCutPQ->SetFillColor(0);
22667     hAllShwTrueEnPassPreSelCutPQ->SetLineColor(1);
22668     //hAllShwTrueEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22669 
22670     hNotNMRecoEnPassPreSelCutPQ=new TH1F
22671       ("hNotNMRecoEnPassPreSelCutPQ","hNotNMRecoEnPassPreSelCutPQ",
22672        4*352,-32,320);
22673     hNotNMRecoEnPassPreSelCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22674     hNotNMRecoEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22675     hNotNMRecoEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22676     hNotNMRecoEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22677     hNotNMRecoEnPassPreSelCutPQ->SetFillColor(0);
22678     hNotNMRecoEnPassPreSelCutPQ->SetLineColor(1);
22679     //hNotNMRecoEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22680     
22681     hNotNMTrueEnPassPreSelCutPQ=new TH1F
22682       ("hNotNMTrueEnPassPreSelCutPQ","hNotNMTrueEnPassPreSelCutPQ",
22683        4*352,-32,320);
22684     hNotNMTrueEnPassPreSelCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
22685     hNotNMTrueEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22686     hNotNMTrueEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22687     hNotNMTrueEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22688     hNotNMTrueEnPassPreSelCutPQ->SetFillColor(0);
22689     hNotNMTrueEnPassPreSelCutPQ->SetLineColor(1);
22690     //hNotNMTrueEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22691 
22692     hNotNMBRecoEnPassPreSelCutPQ=new TH1F("hNotNMBRecoEnPassPreSelCutPQ",
22693                                           "hNotNMBRecoEnPassPreSelCutPQ",
22694                                           4*352,-32,320);
22695     hNotNMBRecoEnPassPreSelCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22696     hNotNMBRecoEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22697     hNotNMBRecoEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22698     hNotNMBRecoEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22699     hNotNMBRecoEnPassPreSelCutPQ->SetFillColor(0);
22700     hNotNMBRecoEnPassPreSelCutPQ->SetLineColor(1);
22701     //hNotNMBRecoEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22702     
22703     hNotNMBTrueEnPassPreSelCutPQ=new TH1F
22704       ("hNotNMBTrueEnPassPreSelCutPQ","hNotNMBTrueEnPassPreSelCutPQ",
22705        4*352,-32,320);
22706     hNotNMBTrueEnPassPreSelCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
22707     hNotNMBTrueEnPassPreSelCutPQ->GetXaxis()->CenterTitle();
22708     hNotNMBTrueEnPassPreSelCutPQ->GetYaxis()->SetTitle("");
22709     hNotNMBTrueEnPassPreSelCutPQ->GetYaxis()->CenterTitle();
22710     hNotNMBTrueEnPassPreSelCutPQ->SetFillColor(0);
22711     hNotNMBTrueEnPassPreSelCutPQ->SetLineColor(1);
22712     //hNotNMBTrueEnPassPreSelCutPQ->SetBit(TH1::kCanRebin);
22713 
22714   
22715     
22716 
22717     //NQ
22718     hSigqp_qpPassPreSelCutNQN=new TH1F("hSigqp_qpPassPreSelCutNQN","hSigqp_qpPassPreSelCutNQN",800*160,-160,160);
22719     hSigqp_qpPassPreSelCutNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
22720     hSigqp_qpPassPreSelCutNQN->GetXaxis()->CenterTitle();
22721     hSigqp_qpPassPreSelCutNQN->GetYaxis()->SetTitle("");
22722     hSigqp_qpPassPreSelCutNQN->GetYaxis()->CenterTitle();
22723     hSigqp_qpPassPreSelCutNQN->SetFillColor(0);
22724     hSigqp_qpPassPreSelCutNQN->SetLineColor(1);
22725     hSigqp_qpPassPreSelCutNQN->SetLineWidth(2);
22726     hSigqp_qpPassPreSelCutNQN->SetLineStyle(2);
22727     //hSigqp_qpPassPreSelCutNQN->SetBit(TH1::kCanRebin);
22728 
22729     hChi2PassPreSelCutNQN=new TH1F("hChi2PassPreSelCutNQN","hChi2PassPreSelCutNQN",10*176,-16,160);
22730     hChi2PassPreSelCutNQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
22731     hChi2PassPreSelCutNQN->GetXaxis()->CenterTitle();
22732     hChi2PassPreSelCutNQN->GetYaxis()->SetTitle("");
22733     hChi2PassPreSelCutNQN->GetYaxis()->CenterTitle();
22734     hChi2PassPreSelCutNQN->SetFillColor(0);
22735     hChi2PassPreSelCutNQN->SetLineColor(1);
22736     hChi2PassPreSelCutNQN->SetLineWidth(2);
22737     hChi2PassPreSelCutNQN->SetLineStyle(2);
22738     //hChi2PassPreSelCutNQN->SetBit(TH1::kCanRebin);
22739 
22740     hProbPassPreSelCutNQN=new TH1F("hProbPassPreSelCutNQN","hProbPassPreSelCutNQN",14000,-0.2,1.2);
22741     hProbPassPreSelCutNQN->GetXaxis()->SetTitle("Fit Probability");
22742     hProbPassPreSelCutNQN->GetXaxis()->CenterTitle();
22743     hProbPassPreSelCutNQN->GetYaxis()->SetTitle("");
22744     hProbPassPreSelCutNQN->GetYaxis()->CenterTitle();
22745     hProbPassPreSelCutNQN->SetFillColor(0);
22746     hProbPassPreSelCutNQN->SetLineColor(1);
22747     hProbPassPreSelCutNQN->SetLineWidth(2);
22748     hProbPassPreSelCutNQN->SetLineStyle(2);
22749     //hProbPassPreSelCutNQN->SetBit(TH1::kCanRebin);
22750 
22751     hDpIDPassPreSelCutNQN=new TH1F("hDpIDPassPreSelCutNQN","hDpIDPassPreSelCutNQN",4*160,-1.6,1.6);
22752     hDpIDPassPreSelCutNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
22753     hDpIDPassPreSelCutNQN->GetXaxis()->CenterTitle();
22754     hDpIDPassPreSelCutNQN->GetYaxis()->SetTitle("");
22755     hDpIDPassPreSelCutNQN->GetYaxis()->CenterTitle();
22756     hDpIDPassPreSelCutNQN->SetFillColor(0);
22757     hDpIDPassPreSelCutNQN->SetLineColor(1);
22758     hDpIDPassPreSelCutNQN->SetLineWidth(2);
22759     //hDpIDPassPreSelCutNQN->SetBit(TH1::kCanRebin);
22760 
22761     hRecoEnPassPreSelCutNQ=new TH1F("hRecoEnPassPreSelCutNQ","hRecoEnPassPreSelCutNQ",
22762                                     4*352,-32,320);
22763     hRecoEnPassPreSelCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22764     hRecoEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22765     hRecoEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22766     hRecoEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22767     hRecoEnPassPreSelCutNQ->SetFillColor(0);
22768     hRecoEnPassPreSelCutNQ->SetLineColor(1);
22769     //hRecoEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22770     
22771     hRecoYPassPreSelCutNQ=new TH1F("hRecoYPassPreSelCutNQ","hRecoYPassPreSelCutNQ",
22772                                    1400,-0.2,1.2);
22773     hRecoYPassPreSelCutNQ->GetXaxis()->SetTitle("Reconstructed y");
22774     hRecoYPassPreSelCutNQ->GetXaxis()->CenterTitle();
22775     hRecoYPassPreSelCutNQ->GetYaxis()->SetTitle("");
22776     hRecoYPassPreSelCutNQ->GetYaxis()->CenterTitle();
22777     hRecoYPassPreSelCutNQ->SetFillColor(0);
22778     hRecoYPassPreSelCutNQ->SetLineColor(1);
22779     //hRecoYPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22780 
22781 
22782     hNMProbPassPreSelCutNQ=new TH1F
22783       ("hNMProbPassPreSelCutNQ","hNMProbPassPreSelCutNQ",14000,-0.2,1.2);
22784     hNMProbPassPreSelCutNQ->GetXaxis()->SetTitle("Fit Probability");
22785     hNMProbPassPreSelCutNQ->GetXaxis()->CenterTitle();
22786     hNMProbPassPreSelCutNQ->GetYaxis()->SetTitle("");
22787     hNMProbPassPreSelCutNQ->GetYaxis()->CenterTitle();
22788     hNMProbPassPreSelCutNQ->SetFillColor(0);
22789     hNMProbPassPreSelCutNQ->SetLineColor(1);
22790     hNMProbPassPreSelCutNQ->SetLineWidth(2);
22791     hNMProbPassPreSelCutNQ->SetLineStyle(2);
22792     //hNMProbPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22793     
22794     hNMBProbPassPreSelCutNQ=new TH1F
22795       ("hNMBProbPassPreSelCutNQ","hNMBProbPassPreSelCutNQ",14000,-0.2,1.2);
22796     hNMBProbPassPreSelCutNQ->GetXaxis()->SetTitle("Fit Probability");
22797     hNMBProbPassPreSelCutNQ->GetXaxis()->CenterTitle();
22798     hNMBProbPassPreSelCutNQ->GetYaxis()->SetTitle("");
22799     hNMBProbPassPreSelCutNQ->GetYaxis()->CenterTitle();
22800     hNMBProbPassPreSelCutNQ->SetFillColor(0);
22801     hNMBProbPassPreSelCutNQ->SetLineColor(1);
22802     hNMBProbPassPreSelCutNQ->SetLineWidth(2);
22803     hNMBProbPassPreSelCutNQ->SetLineStyle(2);
22804     //hNMBProbPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22805 
22806     hAllShwProbPassPreSelCutNQ=new TH1F
22807       ("hAllShwProbPassPreSelCutNQ",
22808        "hAllShwProbPassPreSelCutNQ",14000,-0.2,1.2);
22809     hAllShwProbPassPreSelCutNQ->GetXaxis()->SetTitle("Fit Probability");
22810     hAllShwProbPassPreSelCutNQ->GetXaxis()->CenterTitle();
22811     hAllShwProbPassPreSelCutNQ->GetYaxis()->SetTitle("");
22812     hAllShwProbPassPreSelCutNQ->GetYaxis()->CenterTitle();
22813     hAllShwProbPassPreSelCutNQ->SetFillColor(0);
22814     hAllShwProbPassPreSelCutNQ->SetLineColor(1);
22815     hAllShwProbPassPreSelCutNQ->SetLineWidth(2);
22816     hAllShwProbPassPreSelCutNQ->SetLineStyle(2);
22817     //hAllShwProbPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22818 
22819 
22820     hNMRecoEnPassPreSelCutNQ=new TH1F
22821       ("hNMRecoEnPassPreSelCutNQ","hNMRecoEnPassPreSelCutNQ",4*352,-32,320);
22822     hNMRecoEnPassPreSelCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22823     hNMRecoEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22824     hNMRecoEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22825     hNMRecoEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22826     hNMRecoEnPassPreSelCutNQ->SetFillColor(0);
22827     hNMRecoEnPassPreSelCutNQ->SetLineColor(1);
22828     //hNMRecoEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22829     
22830     hNMTrueEnPassPreSelCutNQ=new TH1F
22831       ("hNMTrueEnPassPreSelCutNQ","hNMTrueEnPassPreSelCutNQ",4*352,-32,320);
22832     hNMTrueEnPassPreSelCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
22833     hNMTrueEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22834     hNMTrueEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22835     hNMTrueEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22836     hNMTrueEnPassPreSelCutNQ->SetFillColor(0);
22837     hNMTrueEnPassPreSelCutNQ->SetLineColor(1);
22838     //hNMTrueEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22839 
22840     hNMBRecoEnPassPreSelCutNQ=new TH1F("hNMBRecoEnPassPreSelCutNQ",
22841                                        "hNMBRecoEnPassPreSelCutNQ",
22842                                        4*352,-32,320);
22843     hNMBRecoEnPassPreSelCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22844     hNMBRecoEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22845     hNMBRecoEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22846     hNMBRecoEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22847     hNMBRecoEnPassPreSelCutNQ->SetFillColor(0);
22848     hNMBRecoEnPassPreSelCutNQ->SetLineColor(1);
22849     //hNMBRecoEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22850     
22851     hNMBTrueEnPassPreSelCutNQ=new TH1F
22852       ("hNMBTrueEnPassPreSelCutNQ","hNMBTrueEnPassPreSelCutNQ",
22853        4*352,-32,320);
22854     hNMBTrueEnPassPreSelCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
22855     hNMBTrueEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22856     hNMBTrueEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22857     hNMBTrueEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22858     hNMBTrueEnPassPreSelCutNQ->SetFillColor(0);
22859     hNMBTrueEnPassPreSelCutNQ->SetLineColor(1);
22860     //hNMBTrueEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22861 
22862 
22863 
22864     hAllNCRecoEnPassPreSelCutNQ=new TH1F("hAllNCRecoEnPassPreSelCutNQ",
22865                                          "hAllNCRecoEnPassPreSelCutNQ",
22866                                          4*352,-32,320);
22867     hAllNCRecoEnPassPreSelCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22868     hAllNCRecoEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22869     hAllNCRecoEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22870     hAllNCRecoEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22871     hAllNCRecoEnPassPreSelCutNQ->SetFillColor(0);
22872     hAllNCRecoEnPassPreSelCutNQ->SetLineColor(1);
22873     //hAllNCRecoEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22874     
22875     hAllNCTrueEnPassPreSelCutNQ=new TH1F
22876       ("hAllNCTrueEnPassPreSelCutNQ","hAllNCTrueEnPassPreSelCutNQ",
22877        4*352,-32,320);
22878     hAllNCTrueEnPassPreSelCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
22879     hAllNCTrueEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22880     hAllNCTrueEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22881     hAllNCTrueEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22882     hAllNCTrueEnPassPreSelCutNQ->SetFillColor(0);
22883     hAllNCTrueEnPassPreSelCutNQ->SetLineColor(1);
22884     //hAllNCTrueEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22885 
22886     hAllShwRecoEnPassPreSelCutNQ=new TH1F("hAllShwRecoEnPassPreSelCutNQ",
22887                                           "hAllShwRecoEnPassPreSelCutNQ",
22888                                           4*352,-32,320);
22889     hAllShwRecoEnPassPreSelCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22890     hAllShwRecoEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22891     hAllShwRecoEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22892     hAllShwRecoEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22893     hAllShwRecoEnPassPreSelCutNQ->SetFillColor(0);
22894     hAllShwRecoEnPassPreSelCutNQ->SetLineColor(1);
22895     //hAllShwRecoEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22896     
22897     hAllShwTrueEnPassPreSelCutNQ=new TH1F
22898       ("hAllShwTrueEnPassPreSelCutNQ","hAllShwTrueEnPassPreSelCutNQ",
22899        4*352,-32,320);
22900     hAllShwTrueEnPassPreSelCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
22901     hAllShwTrueEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22902     hAllShwTrueEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22903     hAllShwTrueEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22904     hAllShwTrueEnPassPreSelCutNQ->SetFillColor(0);
22905     hAllShwTrueEnPassPreSelCutNQ->SetLineColor(1);
22906     //hAllShwTrueEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22907 
22908     hNotNMRecoEnPassPreSelCutNQ=new TH1F
22909       ("hNotNMRecoEnPassPreSelCutNQ","hNotNMRecoEnPassPreSelCutNQ",
22910        4*352,-32,320);
22911     hNotNMRecoEnPassPreSelCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22912     hNotNMRecoEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22913     hNotNMRecoEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22914     hNotNMRecoEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22915     hNotNMRecoEnPassPreSelCutNQ->SetFillColor(0);
22916     hNotNMRecoEnPassPreSelCutNQ->SetLineColor(1);
22917     //hNotNMRecoEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22918     
22919     hNotNMTrueEnPassPreSelCutNQ=new TH1F
22920       ("hNotNMTrueEnPassPreSelCutNQ","hNotNMTrueEnPassPreSelCutNQ",
22921        4*352,-32,320);
22922     hNotNMTrueEnPassPreSelCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
22923     hNotNMTrueEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22924     hNotNMTrueEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22925     hNotNMTrueEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22926     hNotNMTrueEnPassPreSelCutNQ->SetFillColor(0);
22927     hNotNMTrueEnPassPreSelCutNQ->SetLineColor(1);
22928     //hNotNMTrueEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22929 
22930     hNotNMBRecoEnPassPreSelCutNQ=new TH1F("hNotNMBRecoEnPassPreSelCutNQ",
22931                                           "hNotNMBRecoEnPassPreSelCutNQ",
22932                                           4*352,-32,320);
22933     hNotNMBRecoEnPassPreSelCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22934     hNotNMBRecoEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22935     hNotNMBRecoEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22936     hNotNMBRecoEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22937     hNotNMBRecoEnPassPreSelCutNQ->SetFillColor(0);
22938     hNotNMBRecoEnPassPreSelCutNQ->SetLineColor(1);
22939     //hNotNMBRecoEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22940     
22941     hNotNMBTrueEnPassPreSelCutNQ=new TH1F
22942       ("hNotNMBTrueEnPassPreSelCutNQ","hNotNMBTrueEnPassPreSelCutNQ",
22943        4*352,-32,320);
22944     hNotNMBTrueEnPassPreSelCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
22945     hNotNMBTrueEnPassPreSelCutNQ->GetXaxis()->CenterTitle();
22946     hNotNMBTrueEnPassPreSelCutNQ->GetYaxis()->SetTitle("");
22947     hNotNMBTrueEnPassPreSelCutNQ->GetYaxis()->CenterTitle();
22948     hNotNMBTrueEnPassPreSelCutNQ->SetFillColor(0);
22949     hNotNMBTrueEnPassPreSelCutNQ->SetLineColor(1);
22950     //hNotNMBTrueEnPassPreSelCutNQ->SetBit(TH1::kCanRebin);
22951   }
22952   
22953 
22954   //PQ
22955   if (nu.charge==+1){
22956     hSigqp_qpPassPreSelCutPQN->Fill(nu.sigqp_qp,nu.rw);
22957     hChi2PassPreSelCutPQN->Fill(nu.chi2PerNdof,nu.rw);
22958     hProbPassPreSelCutPQN->Fill(nu.prob,nu.rw);
22959     hDpIDPassPreSelCutPQN->Fill(nu.dpID,nu.rw);
22960     
22961     hRecoEnPassPreSelCutPQ->Fill(nu.energy,nu.rw);
22962     hRecoYPassPreSelCutPQ->Fill(nu.y,nu.rw);
22963   }
22964   //NQ
22965   else if (nu.charge==-1){
22966     hSigqp_qpPassPreSelCutNQN->Fill(nu.sigqp_qp,nu.rw);
22967     hChi2PassPreSelCutNQN->Fill(nu.chi2PerNdof,nu.rw);
22968     hProbPassPreSelCutNQN->Fill(nu.prob,nu.rw);
22969     hDpIDPassPreSelCutNQN->Fill(nu.dpID,nu.rw);
22970 
22971     hRecoEnPassPreSelCutNQ->Fill(nu.energy,nu.rw);
22972     hRecoYPassPreSelCutNQ->Fill(nu.y,nu.rw);
22973   }
22974   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
22975 
22976 
22977   //now fill the truth plots
22978   if (nu.iaction==1){//CC
22979     if (nu.inu==14){//NuMu
22980       if (nu.charge==+1) {
22981         hNMProbPassPreSelCutPQ->Fill(nu.prob,nu.rw);
22982         hNMRecoEnPassPreSelCutPQ->Fill(nu.energy,nu.rw);
22983         hNMTrueEnPassPreSelCutPQ->Fill(nu.energyMC,nu.rw);
22984       }
22985       else if (nu.charge==-1){
22986         hNMProbPassPreSelCutNQ->Fill(nu.prob,nu.rw);
22987         hNMRecoEnPassPreSelCutNQ->Fill(nu.energy,nu.rw);
22988         hNMTrueEnPassPreSelCutNQ->Fill(nu.energyMC,nu.rw);
22989       }
22990     }
22991     else if (nu.inu==-14){//NuMuBar
22992       if (nu.charge==+1) {
22993         hNMBProbPassPreSelCutPQ->Fill(nu.prob,nu.rw);
22994         hNMBRecoEnPassPreSelCutPQ->Fill(nu.energy,nu.rw);
22995         hNMBTrueEnPassPreSelCutPQ->Fill(nu.energyMC,nu.rw);
22996       }
22997       else if (nu.charge==-1){
22998         hNMBProbPassPreSelCutNQ->Fill(nu.prob,nu.rw);
22999         hNMBRecoEnPassPreSelCutNQ->Fill(nu.energy,nu.rw);
23000         hNMBTrueEnPassPreSelCutNQ->Fill(nu.energyMC,nu.rw);
23001       }
23002     }
23003   }
23004   else if (nu.iaction==0){//NC
23005     if (nu.charge==+1) {
23006       hAllNCRecoEnPassPreSelCutPQ->Fill(nu.energy,nu.rw);
23007       hAllNCTrueEnPassPreSelCutPQ->Fill(nu.energyMC,nu.rw);
23008     }
23009     else if (nu.charge==-1){
23010       hAllNCRecoEnPassPreSelCutNQ->Fill(nu.energy,nu.rw);
23011       hAllNCTrueEnPassPreSelCutNQ->Fill(nu.energyMC,nu.rw);
23012     }
23013   }
23014 
23015   //all but NuMu/NuMuBar CC
23016   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
23017     if (nu.charge==+1) {
23018       hAllShwProbPassPreSelCutPQ->Fill(nu.prob,nu.rw);
23019       hAllShwRecoEnPassPreSelCutPQ->Fill(nu.energy,nu.rw);
23020       hAllShwTrueEnPassPreSelCutPQ->Fill(nu.energyMC,nu.rw);
23021     }
23022     else if (nu.charge==-1){
23023       hAllShwProbPassPreSelCutNQ->Fill(nu.prob,nu.rw);
23024       hAllShwRecoEnPassPreSelCutNQ->Fill(nu.energy,nu.rw);
23025       hAllShwTrueEnPassPreSelCutNQ->Fill(nu.energyMC,nu.rw);
23026     }    
23027   }
23028 
23029   //fill all-but-numubar-cc histos
23030   if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
23031     if (nu.charge==+1) {
23032       hNotNMBRecoEnPassPreSelCutPQ->Fill(nu.energy,nu.rw);
23033       hNotNMBTrueEnPassPreSelCutPQ->Fill(nu.energyMC,nu.rw);
23034     }
23035     else if (nu.charge==-1){
23036       hNotNMBRecoEnPassPreSelCutNQ->Fill(nu.energy,nu.rw);
23037       hNotNMBTrueEnPassPreSelCutNQ->Fill(nu.energyMC,nu.rw);
23038     }  
23039   }
23040 
23041   //fill all-but-numu-cc histos
23042   if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
23043     if (nu.charge==+1) {
23044       hNotNMRecoEnPassPreSelCutPQ->Fill(nu.energy,nu.rw);
23045       hNotNMTrueEnPassPreSelCutPQ->Fill(nu.energyMC,nu.rw);
23046     }
23047     else if (nu.charge==-1){
23048       hNotNMRecoEnPassPreSelCutNQ->Fill(nu.energy,nu.rw);
23049       hNotNMTrueEnPassPreSelCutNQ->Fill(nu.energyMC,nu.rw);
23050     }  
23051   }
23052 }

void NuPlots::FillDPIdSigmaQPPassSigQPCutPlots const NuEvent nu  )  const
 

Definition at line 20401 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::chi2PerNdof, NuEvent::dpID, NuEvent::energy, NuEvent::energyMC, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::prob, NuEvent::rw, NuEvent::sigqp_qp, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::IsGoodStdCuts(), NuDSTAna::JeffsTestAna(), NuAnalysis::LIRejectionTest(), NuDSTAna::NMBAna(), and NuAnalysis::NMBSummaryTreeAna().

20402 { 
20403   //PQ
20404   static TH1F* hSigqp_qpPassSigQPCutPQN=0;
20405   static TH1F* hChi2PassSigQPCutPQN=0;
20406   static TH1F* hProbPassSigQPCutPQN=0;
20407   static TH1F* hDpIDPassSigQPCutPQN=0;
20408   static TH1F* hRecoEnPassSigQPCutPQ=0;
20409   static TH1F* hRecoYPassSigQPCutPQ=0;
20410 
20411   static TH1F* hNMProbPassSigQPCutPQ=0;
20412   static TH1F* hNMBProbPassSigQPCutPQ=0;
20413   static TH1F* hAllShwProbPassSigQPCutPQ=0;
20414 
20415   static TH1F* hNMRecoEnPassSigQPCutPQ=0;
20416   static TH1F* hNMTrueEnPassSigQPCutPQ=0;
20417   static TH1F* hNMBRecoEnPassSigQPCutPQ=0;
20418   static TH1F* hNMBTrueEnPassSigQPCutPQ=0;
20419   static TH1F* hAllNCRecoEnPassSigQPCutPQ=0;
20420   static TH1F* hAllNCTrueEnPassSigQPCutPQ=0;
20421   static TH1F* hAllShwRecoEnPassSigQPCutPQ=0;
20422   static TH1F* hAllShwTrueEnPassSigQPCutPQ=0;
20423   static TH1F* hNotNMBRecoEnPassSigQPCutPQ=0;
20424   static TH1F* hNotNMBTrueEnPassSigQPCutPQ=0;
20425   static TH1F* hNotNMRecoEnPassSigQPCutPQ=0;
20426   static TH1F* hNotNMTrueEnPassSigQPCutPQ=0;
20427 
20428   //NQ
20429   static TH1F* hSigqp_qpPassSigQPCutNQN=0;
20430   static TH1F* hChi2PassSigQPCutNQN=0;
20431   static TH1F* hProbPassSigQPCutNQN=0;
20432   static TH1F* hDpIDPassSigQPCutNQN=0;
20433   static TH1F* hRecoEnPassSigQPCutNQ=0;
20434   static TH1F* hRecoYPassSigQPCutNQ=0;
20435 
20436   static TH1F* hNMProbPassSigQPCutNQ=0;
20437   static TH1F* hNMBProbPassSigQPCutNQ=0;
20438   static TH1F* hAllShwProbPassSigQPCutNQ=0;
20439 
20440   static TH1F* hNMBRecoEnPassSigQPCutNQ=0;
20441   static TH1F* hNMBTrueEnPassSigQPCutNQ=0;
20442   static TH1F* hNMRecoEnPassSigQPCutNQ=0;
20443   static TH1F* hNMTrueEnPassSigQPCutNQ=0;
20444   static TH1F* hAllNCRecoEnPassSigQPCutNQ=0;
20445   static TH1F* hAllNCTrueEnPassSigQPCutNQ=0;
20446   static TH1F* hAllShwRecoEnPassSigQPCutNQ=0;
20447   static TH1F* hAllShwTrueEnPassSigQPCutNQ=0;
20448   static TH1F* hNotNMBRecoEnPassSigQPCutNQ=0;
20449   static TH1F* hNotNMBTrueEnPassSigQPCutNQ=0;
20450   static TH1F* hNotNMRecoEnPassSigQPCutNQ=0;
20451   static TH1F* hNotNMTrueEnPassSigQPCutNQ=0;
20452 
20453 
20454   if (!hChi2PassSigQPCutNQN){
20455     MAXMSG("NuPlots",Msg::kDebug,1)
20456       <<"Creating DPIdSigmaQPPassSigQPCutPlots plots..."<<endl;
20457     
20458     //PQ
20459     hSigqp_qpPassSigQPCutPQN=new TH1F("hSigqp_qpPassSigQPCutPQN","hSigqp_qpPassSigQPCutPQN",800*160,-160,160);
20460     hSigqp_qpPassSigQPCutPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
20461     hSigqp_qpPassSigQPCutPQN->GetXaxis()->CenterTitle();
20462     hSigqp_qpPassSigQPCutPQN->GetYaxis()->SetTitle("");
20463     hSigqp_qpPassSigQPCutPQN->GetYaxis()->CenterTitle();
20464     hSigqp_qpPassSigQPCutPQN->SetFillColor(0);
20465     hSigqp_qpPassSigQPCutPQN->SetLineColor(1);
20466     hSigqp_qpPassSigQPCutPQN->SetLineWidth(2);
20467     hSigqp_qpPassSigQPCutPQN->SetLineStyle(2);
20468     //hSigqp_qpPassSigQPCutPQN->SetBit(TH1::kCanRebin);
20469 
20470     hChi2PassSigQPCutPQN=new TH1F("hChi2PassSigQPCutPQN","hChi2PassSigQPCutPQN",10*176,-16,160);
20471     hChi2PassSigQPCutPQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
20472     hChi2PassSigQPCutPQN->GetXaxis()->CenterTitle();
20473     hChi2PassSigQPCutPQN->GetYaxis()->SetTitle("");
20474     hChi2PassSigQPCutPQN->GetYaxis()->CenterTitle();
20475     hChi2PassSigQPCutPQN->SetFillColor(0);
20476     hChi2PassSigQPCutPQN->SetLineColor(1);
20477     hChi2PassSigQPCutPQN->SetLineWidth(2);
20478     hChi2PassSigQPCutPQN->SetLineStyle(2);
20479     //hChi2PassSigQPCutPQN->SetBit(TH1::kCanRebin);
20480 
20481     hProbPassSigQPCutPQN=new TH1F("hProbPassSigQPCutPQN","hProbPassSigQPCutPQN",14000,-0.2,1.2);
20482     hProbPassSigQPCutPQN->GetXaxis()->SetTitle("Fit Probability");
20483     hProbPassSigQPCutPQN->GetXaxis()->CenterTitle();
20484     hProbPassSigQPCutPQN->GetYaxis()->SetTitle("");
20485     hProbPassSigQPCutPQN->GetYaxis()->CenterTitle();
20486     hProbPassSigQPCutPQN->SetFillColor(0);
20487     hProbPassSigQPCutPQN->SetLineColor(1);
20488     hProbPassSigQPCutPQN->SetLineWidth(2);
20489     hProbPassSigQPCutPQN->SetLineStyle(2);
20490     //hProbPassSigQPCutPQN->SetBit(TH1::kCanRebin);
20491 
20492     hDpIDPassSigQPCutPQN=new TH1F("hDpIDPassSigQPCutPQN","hDpIDPassSigQPCutPQN",4*160,-1.6,1.6);
20493     hDpIDPassSigQPCutPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
20494     hDpIDPassSigQPCutPQN->GetXaxis()->CenterTitle();
20495     hDpIDPassSigQPCutPQN->GetYaxis()->SetTitle("");
20496     hDpIDPassSigQPCutPQN->GetYaxis()->CenterTitle();
20497     hDpIDPassSigQPCutPQN->SetFillColor(0);
20498     hDpIDPassSigQPCutPQN->SetLineColor(1);
20499     hDpIDPassSigQPCutPQN->SetLineWidth(2);
20500     //hDpIDPassSigQPCutPQN->SetBit(TH1::kCanRebin);
20501 
20502     hRecoEnPassSigQPCutPQ=new TH1F("hRecoEnPassSigQPCutPQ","hRecoEnPassSigQPCutPQ",
20503                                    4*352,-32,320);
20504     hRecoEnPassSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20505     hRecoEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20506     hRecoEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20507     hRecoEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20508     hRecoEnPassSigQPCutPQ->SetFillColor(0);
20509     hRecoEnPassSigQPCutPQ->SetLineColor(1);
20510     //hRecoEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20511 
20512     hRecoYPassSigQPCutPQ=new TH1F("hRecoYPassSigQPCutPQ","hRecoYPassSigQPCutPQ",
20513                                   1400,-0.2,1.2);
20514     hRecoYPassSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed y");
20515     hRecoYPassSigQPCutPQ->GetXaxis()->CenterTitle();
20516     hRecoYPassSigQPCutPQ->GetYaxis()->SetTitle("");
20517     hRecoYPassSigQPCutPQ->GetYaxis()->CenterTitle();
20518     hRecoYPassSigQPCutPQ->SetFillColor(0);
20519     hRecoYPassSigQPCutPQ->SetLineColor(1);
20520     //hRecoYPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20521 
20522 
20523     hNMProbPassSigQPCutPQ=new TH1F
20524       ("hNMProbPassSigQPCutPQ","hNMProbPassSigQPCutPQ",14000,-0.2,1.2);
20525     hNMProbPassSigQPCutPQ->GetXaxis()->SetTitle("Fit Probability");
20526     hNMProbPassSigQPCutPQ->GetXaxis()->CenterTitle();
20527     hNMProbPassSigQPCutPQ->GetYaxis()->SetTitle("");
20528     hNMProbPassSigQPCutPQ->GetYaxis()->CenterTitle();
20529     hNMProbPassSigQPCutPQ->SetFillColor(0);
20530     hNMProbPassSigQPCutPQ->SetLineColor(1);
20531     hNMProbPassSigQPCutPQ->SetLineWidth(2);
20532     hNMProbPassSigQPCutPQ->SetLineStyle(2);
20533     //hNMProbPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20534     
20535     hNMBProbPassSigQPCutPQ=new TH1F
20536       ("hNMBProbPassSigQPCutPQ","hNMBProbPassSigQPCutPQ",14000,-0.2,1.2);
20537     hNMBProbPassSigQPCutPQ->GetXaxis()->SetTitle("Fit Probability");
20538     hNMBProbPassSigQPCutPQ->GetXaxis()->CenterTitle();
20539     hNMBProbPassSigQPCutPQ->GetYaxis()->SetTitle("");
20540     hNMBProbPassSigQPCutPQ->GetYaxis()->CenterTitle();
20541     hNMBProbPassSigQPCutPQ->SetFillColor(0);
20542     hNMBProbPassSigQPCutPQ->SetLineColor(1);
20543     hNMBProbPassSigQPCutPQ->SetLineWidth(2);
20544     hNMBProbPassSigQPCutPQ->SetLineStyle(2);
20545     //hNMBProbPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20546 
20547     hAllShwProbPassSigQPCutPQ=new TH1F
20548       ("hAllShwProbPassSigQPCutPQ",
20549        "hAllShwProbPassSigQPCutPQ",14000,-0.2,1.2);
20550     hAllShwProbPassSigQPCutPQ->GetXaxis()->SetTitle("Fit Probability");
20551     hAllShwProbPassSigQPCutPQ->GetXaxis()->CenterTitle();
20552     hAllShwProbPassSigQPCutPQ->GetYaxis()->SetTitle("");
20553     hAllShwProbPassSigQPCutPQ->GetYaxis()->CenterTitle();
20554     hAllShwProbPassSigQPCutPQ->SetFillColor(0);
20555     hAllShwProbPassSigQPCutPQ->SetLineColor(1);
20556     hAllShwProbPassSigQPCutPQ->SetLineWidth(2);
20557     hAllShwProbPassSigQPCutPQ->SetLineStyle(2);
20558     //hAllShwProbPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20559 
20560 
20561 
20562     hNMRecoEnPassSigQPCutPQ=new TH1F
20563       ("hNMRecoEnPassSigQPCutPQ","hNMRecoEnPassSigQPCutPQ",
20564        4*352,-32,320);
20565     hNMRecoEnPassSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20566     hNMRecoEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20567     hNMRecoEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20568     hNMRecoEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20569     hNMRecoEnPassSigQPCutPQ->SetFillColor(0);
20570     hNMRecoEnPassSigQPCutPQ->SetLineColor(1);
20571     //hNMRecoEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20572     
20573     hNMTrueEnPassSigQPCutPQ=new TH1F
20574       ("hNMTrueEnPassSigQPCutPQ","hNMTrueEnPassSigQPCutPQ",
20575        4*352,-32,320);
20576     hNMTrueEnPassSigQPCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
20577     hNMTrueEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20578     hNMTrueEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20579     hNMTrueEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20580     hNMTrueEnPassSigQPCutPQ->SetFillColor(0);
20581     hNMTrueEnPassSigQPCutPQ->SetLineColor(1);
20582     //hNMTrueEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20583 
20584     hNMBRecoEnPassSigQPCutPQ=new TH1F("hNMBRecoEnPassSigQPCutPQ",
20585                                       "hNMBRecoEnPassSigQPCutPQ",
20586                                       4*352,-32,320);
20587     hNMBRecoEnPassSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20588     hNMBRecoEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20589     hNMBRecoEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20590     hNMBRecoEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20591     hNMBRecoEnPassSigQPCutPQ->SetFillColor(0);
20592     hNMBRecoEnPassSigQPCutPQ->SetLineColor(1);
20593     //hNMBRecoEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20594     
20595     hNMBTrueEnPassSigQPCutPQ=new TH1F
20596       ("hNMBTrueEnPassSigQPCutPQ","hNMBTrueEnPassSigQPCutPQ",
20597        4*352,-32,320);
20598     hNMBTrueEnPassSigQPCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
20599     hNMBTrueEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20600     hNMBTrueEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20601     hNMBTrueEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20602     hNMBTrueEnPassSigQPCutPQ->SetFillColor(0);
20603     hNMBTrueEnPassSigQPCutPQ->SetLineColor(1);
20604     //hNMBTrueEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20605 
20606     hAllNCRecoEnPassSigQPCutPQ=new TH1F("hAllNCRecoEnPassSigQPCutPQ",
20607                                         "hAllNCRecoEnPassSigQPCutPQ",
20608                                         4*352,-32,320);
20609     hAllNCRecoEnPassSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20610     hAllNCRecoEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20611     hAllNCRecoEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20612     hAllNCRecoEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20613     hAllNCRecoEnPassSigQPCutPQ->SetFillColor(0);
20614     hAllNCRecoEnPassSigQPCutPQ->SetLineColor(1);
20615     //hAllNCRecoEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20616     
20617     hAllNCTrueEnPassSigQPCutPQ=new TH1F
20618       ("hAllNCTrueEnPassSigQPCutPQ","hAllNCTrueEnPassSigQPCutPQ",
20619        4*352,-32,320);
20620     hAllNCTrueEnPassSigQPCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
20621     hAllNCTrueEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20622     hAllNCTrueEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20623     hAllNCTrueEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20624     hAllNCTrueEnPassSigQPCutPQ->SetFillColor(0);
20625     hAllNCTrueEnPassSigQPCutPQ->SetLineColor(1);
20626     //hAllNCTrueEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20627 
20628     hAllShwRecoEnPassSigQPCutPQ=new TH1F("hAllShwRecoEnPassSigQPCutPQ",
20629                                          "hAllShwRecoEnPassSigQPCutPQ",
20630                                          4*352,-32,320);
20631     hAllShwRecoEnPassSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20632     hAllShwRecoEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20633     hAllShwRecoEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20634     hAllShwRecoEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20635     hAllShwRecoEnPassSigQPCutPQ->SetFillColor(0);
20636     hAllShwRecoEnPassSigQPCutPQ->SetLineColor(1);
20637     //hAllShwRecoEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20638     
20639     hAllShwTrueEnPassSigQPCutPQ=new TH1F
20640       ("hAllShwTrueEnPassSigQPCutPQ","hAllShwTrueEnPassSigQPCutPQ",
20641        4*352,-32,320);
20642     hAllShwTrueEnPassSigQPCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
20643     hAllShwTrueEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20644     hAllShwTrueEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20645     hAllShwTrueEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20646     hAllShwTrueEnPassSigQPCutPQ->SetFillColor(0);
20647     hAllShwTrueEnPassSigQPCutPQ->SetLineColor(1);
20648     //hAllShwTrueEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20649 
20650     hNotNMRecoEnPassSigQPCutPQ=new TH1F
20651       ("hNotNMRecoEnPassSigQPCutPQ","hNotNMRecoEnPassSigQPCutPQ",
20652        4*352,-32,320);
20653     hNotNMRecoEnPassSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20654     hNotNMRecoEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20655     hNotNMRecoEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20656     hNotNMRecoEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20657     hNotNMRecoEnPassSigQPCutPQ->SetFillColor(0);
20658     hNotNMRecoEnPassSigQPCutPQ->SetLineColor(1);
20659     //hNotNMRecoEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20660     
20661     hNotNMTrueEnPassSigQPCutPQ=new TH1F
20662       ("hNotNMTrueEnPassSigQPCutPQ","hNotNMTrueEnPassSigQPCutPQ",
20663        4*352,-32,320);
20664     hNotNMTrueEnPassSigQPCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
20665     hNotNMTrueEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20666     hNotNMTrueEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20667     hNotNMTrueEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20668     hNotNMTrueEnPassSigQPCutPQ->SetFillColor(0);
20669     hNotNMTrueEnPassSigQPCutPQ->SetLineColor(1);
20670     //hNotNMTrueEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20671 
20672     hNotNMBRecoEnPassSigQPCutPQ=new TH1F("hNotNMBRecoEnPassSigQPCutPQ",
20673                                          "hNotNMBRecoEnPassSigQPCutPQ",
20674                                          4*352,-32,320);
20675     hNotNMBRecoEnPassSigQPCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20676     hNotNMBRecoEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20677     hNotNMBRecoEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20678     hNotNMBRecoEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20679     hNotNMBRecoEnPassSigQPCutPQ->SetFillColor(0);
20680     hNotNMBRecoEnPassSigQPCutPQ->SetLineColor(1);
20681     //hNotNMBRecoEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20682     
20683     hNotNMBTrueEnPassSigQPCutPQ=new TH1F
20684       ("hNotNMBTrueEnPassSigQPCutPQ","hNotNMBTrueEnPassSigQPCutPQ",
20685        4*352,-32,320);
20686     hNotNMBTrueEnPassSigQPCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
20687     hNotNMBTrueEnPassSigQPCutPQ->GetXaxis()->CenterTitle();
20688     hNotNMBTrueEnPassSigQPCutPQ->GetYaxis()->SetTitle("");
20689     hNotNMBTrueEnPassSigQPCutPQ->GetYaxis()->CenterTitle();
20690     hNotNMBTrueEnPassSigQPCutPQ->SetFillColor(0);
20691     hNotNMBTrueEnPassSigQPCutPQ->SetLineColor(1);
20692     //hNotNMBTrueEnPassSigQPCutPQ->SetBit(TH1::kCanRebin);
20693 
20694   
20695     
20696 
20697     //NQ
20698     hSigqp_qpPassSigQPCutNQN=new TH1F("hSigqp_qpPassSigQPCutNQN","hSigqp_qpPassSigQPCutNQN",800*160,-160,160);
20699     hSigqp_qpPassSigQPCutNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
20700     hSigqp_qpPassSigQPCutNQN->GetXaxis()->CenterTitle();
20701     hSigqp_qpPassSigQPCutNQN->GetYaxis()->SetTitle("");
20702     hSigqp_qpPassSigQPCutNQN->GetYaxis()->CenterTitle();
20703     hSigqp_qpPassSigQPCutNQN->SetFillColor(0);
20704     hSigqp_qpPassSigQPCutNQN->SetLineColor(1);
20705     hSigqp_qpPassSigQPCutNQN->SetLineWidth(2);
20706     hSigqp_qpPassSigQPCutNQN->SetLineStyle(2);
20707     //hSigqp_qpPassSigQPCutNQN->SetBit(TH1::kCanRebin);
20708 
20709     hChi2PassSigQPCutNQN=new TH1F("hChi2PassSigQPCutNQN","hChi2PassSigQPCutNQN",10*176,-16,160);
20710     hChi2PassSigQPCutNQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
20711     hChi2PassSigQPCutNQN->GetXaxis()->CenterTitle();
20712     hChi2PassSigQPCutNQN->GetYaxis()->SetTitle("");
20713     hChi2PassSigQPCutNQN->GetYaxis()->CenterTitle();
20714     hChi2PassSigQPCutNQN->SetFillColor(0);
20715     hChi2PassSigQPCutNQN->SetLineColor(1);
20716     hChi2PassSigQPCutNQN->SetLineWidth(2);
20717     hChi2PassSigQPCutNQN->SetLineStyle(2);
20718     //hChi2PassSigQPCutNQN->SetBit(TH1::kCanRebin);
20719 
20720     hProbPassSigQPCutNQN=new TH1F("hProbPassSigQPCutNQN","hProbPassSigQPCutNQN",14000,-0.2,1.2);
20721     hProbPassSigQPCutNQN->GetXaxis()->SetTitle("Fit Probability");
20722     hProbPassSigQPCutNQN->GetXaxis()->CenterTitle();
20723     hProbPassSigQPCutNQN->GetYaxis()->SetTitle("");
20724     hProbPassSigQPCutNQN->GetYaxis()->CenterTitle();
20725     hProbPassSigQPCutNQN->SetFillColor(0);
20726     hProbPassSigQPCutNQN->SetLineColor(1);
20727     hProbPassSigQPCutNQN->SetLineWidth(2);
20728     hProbPassSigQPCutNQN->SetLineStyle(2);
20729     //hProbPassSigQPCutNQN->SetBit(TH1::kCanRebin);
20730 
20731     hDpIDPassSigQPCutNQN=new TH1F("hDpIDPassSigQPCutNQN","hDpIDPassSigQPCutNQN",4*160,-1.6,1.6);
20732     hDpIDPassSigQPCutNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
20733     hDpIDPassSigQPCutNQN->GetXaxis()->CenterTitle();
20734     hDpIDPassSigQPCutNQN->GetYaxis()->SetTitle("");
20735     hDpIDPassSigQPCutNQN->GetYaxis()->CenterTitle();
20736     hDpIDPassSigQPCutNQN->SetFillColor(0);
20737     hDpIDPassSigQPCutNQN->SetLineColor(1);
20738     hDpIDPassSigQPCutNQN->SetLineWidth(2);
20739     //hDpIDPassSigQPCutNQN->SetBit(TH1::kCanRebin);
20740 
20741     hRecoEnPassSigQPCutNQ=new TH1F("hRecoEnPassSigQPCutNQ","hRecoEnPassSigQPCutNQ",
20742                                    4*352,-32,320);
20743     hRecoEnPassSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20744     hRecoEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20745     hRecoEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20746     hRecoEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20747     hRecoEnPassSigQPCutNQ->SetFillColor(0);
20748     hRecoEnPassSigQPCutNQ->SetLineColor(1);
20749     //hRecoEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20750     
20751     hRecoYPassSigQPCutNQ=new TH1F("hRecoYPassSigQPCutNQ","hRecoYPassSigQPCutNQ",
20752                                   1400,-0.2,1.2);
20753     hRecoYPassSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed y");
20754     hRecoYPassSigQPCutNQ->GetXaxis()->CenterTitle();
20755     hRecoYPassSigQPCutNQ->GetYaxis()->SetTitle("");
20756     hRecoYPassSigQPCutNQ->GetYaxis()->CenterTitle();
20757     hRecoYPassSigQPCutNQ->SetFillColor(0);
20758     hRecoYPassSigQPCutNQ->SetLineColor(1);
20759     //hRecoYPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20760 
20761 
20762     hNMProbPassSigQPCutNQ=new TH1F
20763       ("hNMProbPassSigQPCutNQ","hNMProbPassSigQPCutNQ",14000,-0.2,1.2);
20764     hNMProbPassSigQPCutNQ->GetXaxis()->SetTitle("Fit Probability");
20765     hNMProbPassSigQPCutNQ->GetXaxis()->CenterTitle();
20766     hNMProbPassSigQPCutNQ->GetYaxis()->SetTitle("");
20767     hNMProbPassSigQPCutNQ->GetYaxis()->CenterTitle();
20768     hNMProbPassSigQPCutNQ->SetFillColor(0);
20769     hNMProbPassSigQPCutNQ->SetLineColor(1);
20770     hNMProbPassSigQPCutNQ->SetLineWidth(2);
20771     hNMProbPassSigQPCutNQ->SetLineStyle(2);
20772     //hNMProbPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20773     
20774     hNMBProbPassSigQPCutNQ=new TH1F
20775       ("hNMBProbPassSigQPCutNQ","hNMBProbPassSigQPCutNQ",14000,-0.2,1.2);
20776     hNMBProbPassSigQPCutNQ->GetXaxis()->SetTitle("Fit Probability");
20777     hNMBProbPassSigQPCutNQ->GetXaxis()->CenterTitle();
20778     hNMBProbPassSigQPCutNQ->GetYaxis()->SetTitle("");
20779     hNMBProbPassSigQPCutNQ->GetYaxis()->CenterTitle();
20780     hNMBProbPassSigQPCutNQ->SetFillColor(0);
20781     hNMBProbPassSigQPCutNQ->SetLineColor(1);
20782     hNMBProbPassSigQPCutNQ->SetLineWidth(2);
20783     hNMBProbPassSigQPCutNQ->SetLineStyle(2);
20784     //hNMBProbPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20785 
20786     hAllShwProbPassSigQPCutNQ=new TH1F
20787       ("hAllShwProbPassSigQPCutNQ",
20788        "hAllShwProbPassSigQPCutNQ",14000,-0.2,1.2);
20789     hAllShwProbPassSigQPCutNQ->GetXaxis()->SetTitle("Fit Probability");
20790     hAllShwProbPassSigQPCutNQ->GetXaxis()->CenterTitle();
20791     hAllShwProbPassSigQPCutNQ->GetYaxis()->SetTitle("");
20792     hAllShwProbPassSigQPCutNQ->GetYaxis()->CenterTitle();
20793     hAllShwProbPassSigQPCutNQ->SetFillColor(0);
20794     hAllShwProbPassSigQPCutNQ->SetLineColor(1);
20795     hAllShwProbPassSigQPCutNQ->SetLineWidth(2);
20796     hAllShwProbPassSigQPCutNQ->SetLineStyle(2);
20797     //hAllShwProbPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20798 
20799 
20800     hNMRecoEnPassSigQPCutNQ=new TH1F
20801       ("hNMRecoEnPassSigQPCutNQ","hNMRecoEnPassSigQPCutNQ",4*352,-32,320);
20802     hNMRecoEnPassSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20803     hNMRecoEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20804     hNMRecoEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20805     hNMRecoEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20806     hNMRecoEnPassSigQPCutNQ->SetFillColor(0);
20807     hNMRecoEnPassSigQPCutNQ->SetLineColor(1);
20808     //hNMRecoEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20809     
20810     hNMTrueEnPassSigQPCutNQ=new TH1F
20811       ("hNMTrueEnPassSigQPCutNQ","hNMTrueEnPassSigQPCutNQ",4*352,-32,320);
20812     hNMTrueEnPassSigQPCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
20813     hNMTrueEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20814     hNMTrueEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20815     hNMTrueEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20816     hNMTrueEnPassSigQPCutNQ->SetFillColor(0);
20817     hNMTrueEnPassSigQPCutNQ->SetLineColor(1);
20818     //hNMTrueEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20819 
20820     hNMBRecoEnPassSigQPCutNQ=new TH1F("hNMBRecoEnPassSigQPCutNQ",
20821                                       "hNMBRecoEnPassSigQPCutNQ",
20822                                       4*352,-32,320);
20823     hNMBRecoEnPassSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20824     hNMBRecoEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20825     hNMBRecoEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20826     hNMBRecoEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20827     hNMBRecoEnPassSigQPCutNQ->SetFillColor(0);
20828     hNMBRecoEnPassSigQPCutNQ->SetLineColor(1);
20829     //hNMBRecoEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20830     
20831     hNMBTrueEnPassSigQPCutNQ=new TH1F
20832       ("hNMBTrueEnPassSigQPCutNQ","hNMBTrueEnPassSigQPCutNQ",
20833        4*352,-32,320);
20834     hNMBTrueEnPassSigQPCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
20835     hNMBTrueEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20836     hNMBTrueEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20837     hNMBTrueEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20838     hNMBTrueEnPassSigQPCutNQ->SetFillColor(0);
20839     hNMBTrueEnPassSigQPCutNQ->SetLineColor(1);
20840     //hNMBTrueEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20841 
20842 
20843 
20844     hAllNCRecoEnPassSigQPCutNQ=new TH1F("hAllNCRecoEnPassSigQPCutNQ",
20845                                         "hAllNCRecoEnPassSigQPCutNQ",
20846                                         4*352,-32,320);
20847     hAllNCRecoEnPassSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20848     hAllNCRecoEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20849     hAllNCRecoEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20850     hAllNCRecoEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20851     hAllNCRecoEnPassSigQPCutNQ->SetFillColor(0);
20852     hAllNCRecoEnPassSigQPCutNQ->SetLineColor(1);
20853     //hAllNCRecoEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20854     
20855     hAllNCTrueEnPassSigQPCutNQ=new TH1F
20856       ("hAllNCTrueEnPassSigQPCutNQ","hAllNCTrueEnPassSigQPCutNQ",
20857        4*352,-32,320);
20858     hAllNCTrueEnPassSigQPCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
20859     hAllNCTrueEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20860     hAllNCTrueEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20861     hAllNCTrueEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20862     hAllNCTrueEnPassSigQPCutNQ->SetFillColor(0);
20863     hAllNCTrueEnPassSigQPCutNQ->SetLineColor(1);
20864     //hAllNCTrueEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20865 
20866     hAllShwRecoEnPassSigQPCutNQ=new TH1F("hAllShwRecoEnPassSigQPCutNQ",
20867                                          "hAllShwRecoEnPassSigQPCutNQ",
20868                                          4*352,-32,320);
20869     hAllShwRecoEnPassSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20870     hAllShwRecoEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20871     hAllShwRecoEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20872     hAllShwRecoEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20873     hAllShwRecoEnPassSigQPCutNQ->SetFillColor(0);
20874     hAllShwRecoEnPassSigQPCutNQ->SetLineColor(1);
20875     //hAllShwRecoEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20876     
20877     hAllShwTrueEnPassSigQPCutNQ=new TH1F
20878       ("hAllShwTrueEnPassSigQPCutNQ","hAllShwTrueEnPassSigQPCutNQ",
20879        4*352,-32,320);
20880     hAllShwTrueEnPassSigQPCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
20881     hAllShwTrueEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20882     hAllShwTrueEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20883     hAllShwTrueEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20884     hAllShwTrueEnPassSigQPCutNQ->SetFillColor(0);
20885     hAllShwTrueEnPassSigQPCutNQ->SetLineColor(1);
20886     //hAllShwTrueEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20887 
20888     hNotNMRecoEnPassSigQPCutNQ=new TH1F
20889       ("hNotNMRecoEnPassSigQPCutNQ","hNotNMRecoEnPassSigQPCutNQ",
20890        4*352,-32,320);
20891     hNotNMRecoEnPassSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20892     hNotNMRecoEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20893     hNotNMRecoEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20894     hNotNMRecoEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20895     hNotNMRecoEnPassSigQPCutNQ->SetFillColor(0);
20896     hNotNMRecoEnPassSigQPCutNQ->SetLineColor(1);
20897     //hNotNMRecoEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20898     
20899     hNotNMTrueEnPassSigQPCutNQ=new TH1F
20900       ("hNotNMTrueEnPassSigQPCutNQ","hNotNMTrueEnPassSigQPCutNQ",
20901        4*352,-32,320);
20902     hNotNMTrueEnPassSigQPCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
20903     hNotNMTrueEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20904     hNotNMTrueEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20905     hNotNMTrueEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20906     hNotNMTrueEnPassSigQPCutNQ->SetFillColor(0);
20907     hNotNMTrueEnPassSigQPCutNQ->SetLineColor(1);
20908     //hNotNMTrueEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20909 
20910     hNotNMBRecoEnPassSigQPCutNQ=new TH1F("hNotNMBRecoEnPassSigQPCutNQ",
20911                                          "hNotNMBRecoEnPassSigQPCutNQ",
20912                                          4*352,-32,320);
20913     hNotNMBRecoEnPassSigQPCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
20914     hNotNMBRecoEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20915     hNotNMBRecoEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20916     hNotNMBRecoEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20917     hNotNMBRecoEnPassSigQPCutNQ->SetFillColor(0);
20918     hNotNMBRecoEnPassSigQPCutNQ->SetLineColor(1);
20919     //hNotNMBRecoEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20920     
20921     hNotNMBTrueEnPassSigQPCutNQ=new TH1F
20922       ("hNotNMBTrueEnPassSigQPCutNQ","hNotNMBTrueEnPassSigQPCutNQ",
20923        4*352,-32,320);
20924     hNotNMBTrueEnPassSigQPCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
20925     hNotNMBTrueEnPassSigQPCutNQ->GetXaxis()->CenterTitle();
20926     hNotNMBTrueEnPassSigQPCutNQ->GetYaxis()->SetTitle("");
20927     hNotNMBTrueEnPassSigQPCutNQ->GetYaxis()->CenterTitle();
20928     hNotNMBTrueEnPassSigQPCutNQ->SetFillColor(0);
20929     hNotNMBTrueEnPassSigQPCutNQ->SetLineColor(1);
20930     //hNotNMBTrueEnPassSigQPCutNQ->SetBit(TH1::kCanRebin);
20931   }
20932   
20933 
20934   //PQ
20935   if (nu.charge==+1){
20936     hSigqp_qpPassSigQPCutPQN->Fill(nu.sigqp_qp,nu.rw);
20937     hChi2PassSigQPCutPQN->Fill(nu.chi2PerNdof,nu.rw);
20938     hProbPassSigQPCutPQN->Fill(nu.prob,nu.rw);
20939     hDpIDPassSigQPCutPQN->Fill(nu.dpID,nu.rw);
20940     
20941     hRecoEnPassSigQPCutPQ->Fill(nu.energy,nu.rw);
20942     hRecoYPassSigQPCutPQ->Fill(nu.y,nu.rw);
20943   }
20944   //NQ
20945   else if (nu.charge==-1){
20946     hSigqp_qpPassSigQPCutNQN->Fill(nu.sigqp_qp,nu.rw);
20947     hChi2PassSigQPCutNQN->Fill(nu.chi2PerNdof,nu.rw);
20948     hProbPassSigQPCutNQN->Fill(nu.prob,nu.rw);
20949     hDpIDPassSigQPCutNQN->Fill(nu.dpID,nu.rw);
20950 
20951     hRecoEnPassSigQPCutNQ->Fill(nu.energy,nu.rw);
20952     hRecoYPassSigQPCutNQ->Fill(nu.y,nu.rw);
20953   }
20954   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
20955 
20956 
20957   //now fill the truth plots
20958   if (nu.iaction==1){//CC
20959     if (nu.inu==14){//NuMu
20960       if (nu.charge==+1) {
20961         hNMProbPassSigQPCutPQ->Fill(nu.prob,nu.rw);
20962         hNMRecoEnPassSigQPCutPQ->Fill(nu.energy,nu.rw);
20963         hNMTrueEnPassSigQPCutPQ->Fill(nu.energyMC,nu.rw);
20964       }
20965       else if (nu.charge==-1){
20966         hNMProbPassSigQPCutNQ->Fill(nu.prob,nu.rw);
20967         hNMRecoEnPassSigQPCutNQ->Fill(nu.energy,nu.rw);
20968         hNMTrueEnPassSigQPCutNQ->Fill(nu.energyMC,nu.rw);
20969       }
20970     }
20971     else if (nu.inu==-14){//NuMuBar
20972       if (nu.charge==+1) {
20973         hNMBProbPassSigQPCutPQ->Fill(nu.prob,nu.rw);
20974         hNMBRecoEnPassSigQPCutPQ->Fill(nu.energy,nu.rw);
20975         hNMBTrueEnPassSigQPCutPQ->Fill(nu.energyMC,nu.rw);
20976       }
20977       else if (nu.charge==-1){
20978         hNMBProbPassSigQPCutNQ->Fill(nu.prob,nu.rw);
20979         hNMBRecoEnPassSigQPCutNQ->Fill(nu.energy,nu.rw);
20980         hNMBTrueEnPassSigQPCutNQ->Fill(nu.energyMC,nu.rw);
20981       }
20982     }
20983   }
20984   else if (nu.iaction==0){//NC
20985     if (nu.charge==+1) {
20986       hAllNCRecoEnPassSigQPCutPQ->Fill(nu.energy,nu.rw);
20987       hAllNCTrueEnPassSigQPCutPQ->Fill(nu.energyMC,nu.rw);
20988     }
20989     else if (nu.charge==-1){
20990       hAllNCRecoEnPassSigQPCutNQ->Fill(nu.energy,nu.rw);
20991       hAllNCTrueEnPassSigQPCutNQ->Fill(nu.energyMC,nu.rw);
20992     }
20993   }
20994 
20995   //all but NuMu/NuMuBar CC
20996   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
20997     if (nu.charge==+1) {
20998       hAllShwProbPassSigQPCutPQ->Fill(nu.prob,nu.rw);
20999       hAllShwRecoEnPassSigQPCutPQ->Fill(nu.energy,nu.rw);
21000       hAllShwTrueEnPassSigQPCutPQ->Fill(nu.energyMC,nu.rw);
21001     }
21002     else if (nu.charge==-1){
21003       hAllShwProbPassSigQPCutNQ->Fill(nu.prob,nu.rw);
21004       hAllShwRecoEnPassSigQPCutNQ->Fill(nu.energy,nu.rw);
21005       hAllShwTrueEnPassSigQPCutNQ->Fill(nu.energyMC,nu.rw);
21006     }    
21007   }
21008 
21009   //fill all-but-numubar-cc histos
21010   if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
21011     if (nu.charge==+1) {
21012       hNotNMBRecoEnPassSigQPCutPQ->Fill(nu.energy,nu.rw);
21013       hNotNMBTrueEnPassSigQPCutPQ->Fill(nu.energyMC,nu.rw);
21014     }
21015     else if (nu.charge==-1){
21016       hNotNMBRecoEnPassSigQPCutNQ->Fill(nu.energy,nu.rw);
21017       hNotNMBTrueEnPassSigQPCutNQ->Fill(nu.energyMC,nu.rw);
21018     }  
21019   }
21020 
21021   //fill all-but-numu-cc histos
21022   if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
21023     if (nu.charge==+1) {
21024       hNotNMRecoEnPassSigQPCutPQ->Fill(nu.energy,nu.rw);
21025       hNotNMTrueEnPassSigQPCutPQ->Fill(nu.energyMC,nu.rw);
21026     }
21027     else if (nu.charge==-1){
21028       hNotNMRecoEnPassSigQPCutNQ->Fill(nu.energy,nu.rw);
21029       hNotNMTrueEnPassSigQPCutNQ->Fill(nu.energyMC,nu.rw);
21030     }  
21031   }
21032 }

void NuPlots::FillDPIdSigmaQPPassUVVtxCutPlots const NuEvent nu  )  const
 

Definition at line 21036 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::chi2PerNdof, NuEvent::dpID, NuEvent::energy, NuEvent::energyMC, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::prob, NuEvent::rw, NuEvent::sigqp_qp, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), and NuCutImps::NuCutsSelection::MakePostPreSelectionPlots().

21037 { 
21038   //PQ
21039   static TH1F* hSigqp_qpPassUVVtxCutPQN=0;
21040   static TH1F* hChi2PassUVVtxCutPQN=0;
21041   static TH1F* hProbPassUVVtxCutPQN=0;
21042   static TH1F* hDpIDPassUVVtxCutPQN=0;
21043   static TH1F* hRecoEnPassUVVtxCutPQ=0;
21044   static TH1F* hRecoYPassUVVtxCutPQ=0;
21045 
21046   static TH1F* hNMProbPassUVVtxCutPQ=0;
21047   static TH1F* hNMBProbPassUVVtxCutPQ=0;
21048   static TH1F* hAllShwProbPassUVVtxCutPQ=0;
21049 
21050   static TH1F* hNMRecoEnPassUVVtxCutPQ=0;
21051   static TH1F* hNMTrueEnPassUVVtxCutPQ=0;
21052   static TH1F* hNMBRecoEnPassUVVtxCutPQ=0;
21053   static TH1F* hNMBTrueEnPassUVVtxCutPQ=0;
21054   static TH1F* hAllNCRecoEnPassUVVtxCutPQ=0;
21055   static TH1F* hAllNCTrueEnPassUVVtxCutPQ=0;
21056   static TH1F* hAllShwRecoEnPassUVVtxCutPQ=0;
21057   static TH1F* hAllShwTrueEnPassUVVtxCutPQ=0;
21058   static TH1F* hNotNMBRecoEnPassUVVtxCutPQ=0;
21059   static TH1F* hNotNMBTrueEnPassUVVtxCutPQ=0;
21060   static TH1F* hNotNMRecoEnPassUVVtxCutPQ=0;
21061   static TH1F* hNotNMTrueEnPassUVVtxCutPQ=0;
21062 
21063   //NQ
21064   static TH1F* hSigqp_qpPassUVVtxCutNQN=0;
21065   static TH1F* hChi2PassUVVtxCutNQN=0;
21066   static TH1F* hProbPassUVVtxCutNQN=0;
21067   static TH1F* hDpIDPassUVVtxCutNQN=0;
21068   static TH1F* hRecoEnPassUVVtxCutNQ=0;
21069   static TH1F* hRecoYPassUVVtxCutNQ=0;
21070 
21071   static TH1F* hNMProbPassUVVtxCutNQ=0;
21072   static TH1F* hNMBProbPassUVVtxCutNQ=0;
21073   static TH1F* hAllShwProbPassUVVtxCutNQ=0;
21074 
21075   static TH1F* hNMBRecoEnPassUVVtxCutNQ=0;
21076   static TH1F* hNMBTrueEnPassUVVtxCutNQ=0;
21077   static TH1F* hNMRecoEnPassUVVtxCutNQ=0;
21078   static TH1F* hNMTrueEnPassUVVtxCutNQ=0;
21079   static TH1F* hAllNCRecoEnPassUVVtxCutNQ=0;
21080   static TH1F* hAllNCTrueEnPassUVVtxCutNQ=0;
21081   static TH1F* hAllShwRecoEnPassUVVtxCutNQ=0;
21082   static TH1F* hAllShwTrueEnPassUVVtxCutNQ=0;
21083   static TH1F* hNotNMBRecoEnPassUVVtxCutNQ=0;
21084   static TH1F* hNotNMBTrueEnPassUVVtxCutNQ=0;
21085   static TH1F* hNotNMRecoEnPassUVVtxCutNQ=0;
21086   static TH1F* hNotNMTrueEnPassUVVtxCutNQ=0;
21087 
21088 
21089   if (!hChi2PassUVVtxCutNQN){
21090     MAXMSG("NuPlots",Msg::kDebug,1)
21091       <<"Creating DPIdSigmaQPPassUVVtxCutPlots plots..."<<endl;
21092     
21093     //PQ
21094     hSigqp_qpPassUVVtxCutPQN=new TH1F("hSigqp_qpPassUVVtxCutPQN","hSigqp_qpPassUVVtxCutPQN",800*160,-160,160);
21095     hSigqp_qpPassUVVtxCutPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
21096     hSigqp_qpPassUVVtxCutPQN->GetXaxis()->CenterTitle();
21097     hSigqp_qpPassUVVtxCutPQN->GetYaxis()->SetTitle("");
21098     hSigqp_qpPassUVVtxCutPQN->GetYaxis()->CenterTitle();
21099     hSigqp_qpPassUVVtxCutPQN->SetFillColor(0);
21100     hSigqp_qpPassUVVtxCutPQN->SetLineColor(1);
21101     hSigqp_qpPassUVVtxCutPQN->SetLineWidth(2);
21102     hSigqp_qpPassUVVtxCutPQN->SetLineStyle(2);
21103     //hSigqp_qpPassUVVtxCutPQN->SetBit(TH1::kCanRebin);
21104 
21105     hChi2PassUVVtxCutPQN=new TH1F("hChi2PassUVVtxCutPQN","hChi2PassUVVtxCutPQN",10*176,-16,160);
21106     hChi2PassUVVtxCutPQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
21107     hChi2PassUVVtxCutPQN->GetXaxis()->CenterTitle();
21108     hChi2PassUVVtxCutPQN->GetYaxis()->SetTitle("");
21109     hChi2PassUVVtxCutPQN->GetYaxis()->CenterTitle();
21110     hChi2PassUVVtxCutPQN->SetFillColor(0);
21111     hChi2PassUVVtxCutPQN->SetLineColor(1);
21112     hChi2PassUVVtxCutPQN->SetLineWidth(2);
21113     hChi2PassUVVtxCutPQN->SetLineStyle(2);
21114     //hChi2PassUVVtxCutPQN->SetBit(TH1::kCanRebin);
21115 
21116     hProbPassUVVtxCutPQN=new TH1F("hProbPassUVVtxCutPQN","hProbPassUVVtxCutPQN",14000,-0.2,1.2);
21117     hProbPassUVVtxCutPQN->GetXaxis()->SetTitle("Fit Probability");
21118     hProbPassUVVtxCutPQN->GetXaxis()->CenterTitle();
21119     hProbPassUVVtxCutPQN->GetYaxis()->SetTitle("");
21120     hProbPassUVVtxCutPQN->GetYaxis()->CenterTitle();
21121     hProbPassUVVtxCutPQN->SetFillColor(0);
21122     hProbPassUVVtxCutPQN->SetLineColor(1);
21123     hProbPassUVVtxCutPQN->SetLineWidth(2);
21124     hProbPassUVVtxCutPQN->SetLineStyle(2);
21125     //hProbPassUVVtxCutPQN->SetBit(TH1::kCanRebin);
21126 
21127     hDpIDPassUVVtxCutPQN=new TH1F("hDpIDPassUVVtxCutPQN","hDpIDPassUVVtxCutPQN",4*160,-1.6,1.6);
21128     hDpIDPassUVVtxCutPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
21129     hDpIDPassUVVtxCutPQN->GetXaxis()->CenterTitle();
21130     hDpIDPassUVVtxCutPQN->GetYaxis()->SetTitle("");
21131     hDpIDPassUVVtxCutPQN->GetYaxis()->CenterTitle();
21132     hDpIDPassUVVtxCutPQN->SetFillColor(0);
21133     hDpIDPassUVVtxCutPQN->SetLineColor(1);
21134     hDpIDPassUVVtxCutPQN->SetLineWidth(2);
21135     //hDpIDPassUVVtxCutPQN->SetBit(TH1::kCanRebin);
21136 
21137     hRecoEnPassUVVtxCutPQ=new TH1F("hRecoEnPassUVVtxCutPQ","hRecoEnPassUVVtxCutPQ",
21138                                    4*352,-32,320);
21139     hRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21140     hRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21141     hRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21142     hRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21143     hRecoEnPassUVVtxCutPQ->SetFillColor(0);
21144     hRecoEnPassUVVtxCutPQ->SetLineColor(1);
21145     //hRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21146 
21147     hRecoYPassUVVtxCutPQ=new TH1F("hRecoYPassUVVtxCutPQ","hRecoYPassUVVtxCutPQ",
21148                                   1400,-0.2,1.2);
21149     hRecoYPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed y");
21150     hRecoYPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21151     hRecoYPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21152     hRecoYPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21153     hRecoYPassUVVtxCutPQ->SetFillColor(0);
21154     hRecoYPassUVVtxCutPQ->SetLineColor(1);
21155     //hRecoYPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21156 
21157 
21158     hNMProbPassUVVtxCutPQ=new TH1F
21159       ("hNMProbPassUVVtxCutPQ","hNMProbPassUVVtxCutPQ",14000,-0.2,1.2);
21160     hNMProbPassUVVtxCutPQ->GetXaxis()->SetTitle("Fit Probability");
21161     hNMProbPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21162     hNMProbPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21163     hNMProbPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21164     hNMProbPassUVVtxCutPQ->SetFillColor(0);
21165     hNMProbPassUVVtxCutPQ->SetLineColor(1);
21166     hNMProbPassUVVtxCutPQ->SetLineWidth(2);
21167     hNMProbPassUVVtxCutPQ->SetLineStyle(2);
21168     //hNMProbPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21169     
21170     hNMBProbPassUVVtxCutPQ=new TH1F
21171       ("hNMBProbPassUVVtxCutPQ","hNMBProbPassUVVtxCutPQ",14000,-0.2,1.2);
21172     hNMBProbPassUVVtxCutPQ->GetXaxis()->SetTitle("Fit Probability");
21173     hNMBProbPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21174     hNMBProbPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21175     hNMBProbPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21176     hNMBProbPassUVVtxCutPQ->SetFillColor(0);
21177     hNMBProbPassUVVtxCutPQ->SetLineColor(1);
21178     hNMBProbPassUVVtxCutPQ->SetLineWidth(2);
21179     hNMBProbPassUVVtxCutPQ->SetLineStyle(2);
21180     //hNMBProbPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21181 
21182     hAllShwProbPassUVVtxCutPQ=new TH1F
21183       ("hAllShwProbPassUVVtxCutPQ",
21184        "hAllShwProbPassUVVtxCutPQ",14000,-0.2,1.2);
21185     hAllShwProbPassUVVtxCutPQ->GetXaxis()->SetTitle("Fit Probability");
21186     hAllShwProbPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21187     hAllShwProbPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21188     hAllShwProbPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21189     hAllShwProbPassUVVtxCutPQ->SetFillColor(0);
21190     hAllShwProbPassUVVtxCutPQ->SetLineColor(1);
21191     hAllShwProbPassUVVtxCutPQ->SetLineWidth(2);
21192     hAllShwProbPassUVVtxCutPQ->SetLineStyle(2);
21193     //hAllShwProbPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21194 
21195 
21196 
21197     hNMRecoEnPassUVVtxCutPQ=new TH1F
21198       ("hNMRecoEnPassUVVtxCutPQ","hNMRecoEnPassUVVtxCutPQ",
21199        4*352,-32,320);
21200     hNMRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21201     hNMRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21202     hNMRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21203     hNMRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21204     hNMRecoEnPassUVVtxCutPQ->SetFillColor(0);
21205     hNMRecoEnPassUVVtxCutPQ->SetLineColor(1);
21206     //hNMRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21207     
21208     hNMTrueEnPassUVVtxCutPQ=new TH1F
21209       ("hNMTrueEnPassUVVtxCutPQ","hNMTrueEnPassUVVtxCutPQ",
21210        4*352,-32,320);
21211     hNMTrueEnPassUVVtxCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
21212     hNMTrueEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21213     hNMTrueEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21214     hNMTrueEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21215     hNMTrueEnPassUVVtxCutPQ->SetFillColor(0);
21216     hNMTrueEnPassUVVtxCutPQ->SetLineColor(1);
21217     //hNMTrueEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21218 
21219     hNMBRecoEnPassUVVtxCutPQ=new TH1F("hNMBRecoEnPassUVVtxCutPQ",
21220                                       "hNMBRecoEnPassUVVtxCutPQ",
21221                                       4*352,-32,320);
21222     hNMBRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21223     hNMBRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21224     hNMBRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21225     hNMBRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21226     hNMBRecoEnPassUVVtxCutPQ->SetFillColor(0);
21227     hNMBRecoEnPassUVVtxCutPQ->SetLineColor(1);
21228     //hNMBRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21229     
21230     hNMBTrueEnPassUVVtxCutPQ=new TH1F
21231       ("hNMBTrueEnPassUVVtxCutPQ","hNMBTrueEnPassUVVtxCutPQ",
21232        4*352,-32,320);
21233     hNMBTrueEnPassUVVtxCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
21234     hNMBTrueEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21235     hNMBTrueEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21236     hNMBTrueEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21237     hNMBTrueEnPassUVVtxCutPQ->SetFillColor(0);
21238     hNMBTrueEnPassUVVtxCutPQ->SetLineColor(1);
21239     //hNMBTrueEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21240 
21241     hAllNCRecoEnPassUVVtxCutPQ=new TH1F("hAllNCRecoEnPassUVVtxCutPQ",
21242                                         "hAllNCRecoEnPassUVVtxCutPQ",
21243                                         4*352,-32,320);
21244     hAllNCRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21245     hAllNCRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21246     hAllNCRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21247     hAllNCRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21248     hAllNCRecoEnPassUVVtxCutPQ->SetFillColor(0);
21249     hAllNCRecoEnPassUVVtxCutPQ->SetLineColor(1);
21250     //hAllNCRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21251     
21252     hAllNCTrueEnPassUVVtxCutPQ=new TH1F
21253       ("hAllNCTrueEnPassUVVtxCutPQ","hAllNCTrueEnPassUVVtxCutPQ",
21254        4*352,-32,320);
21255     hAllNCTrueEnPassUVVtxCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
21256     hAllNCTrueEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21257     hAllNCTrueEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21258     hAllNCTrueEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21259     hAllNCTrueEnPassUVVtxCutPQ->SetFillColor(0);
21260     hAllNCTrueEnPassUVVtxCutPQ->SetLineColor(1);
21261     //hAllNCTrueEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21262 
21263     hAllShwRecoEnPassUVVtxCutPQ=new TH1F("hAllShwRecoEnPassUVVtxCutPQ",
21264                                          "hAllShwRecoEnPassUVVtxCutPQ",
21265                                          4*352,-32,320);
21266     hAllShwRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21267     hAllShwRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21268     hAllShwRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21269     hAllShwRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21270     hAllShwRecoEnPassUVVtxCutPQ->SetFillColor(0);
21271     hAllShwRecoEnPassUVVtxCutPQ->SetLineColor(1);
21272     //hAllShwRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21273     
21274     hAllShwTrueEnPassUVVtxCutPQ=new TH1F
21275       ("hAllShwTrueEnPassUVVtxCutPQ","hAllShwTrueEnPassUVVtxCutPQ",
21276        4*352,-32,320);
21277     hAllShwTrueEnPassUVVtxCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
21278     hAllShwTrueEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21279     hAllShwTrueEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21280     hAllShwTrueEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21281     hAllShwTrueEnPassUVVtxCutPQ->SetFillColor(0);
21282     hAllShwTrueEnPassUVVtxCutPQ->SetLineColor(1);
21283     //hAllShwTrueEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21284 
21285     hNotNMRecoEnPassUVVtxCutPQ=new TH1F
21286       ("hNotNMRecoEnPassUVVtxCutPQ","hNotNMRecoEnPassUVVtxCutPQ",
21287        4*352,-32,320);
21288     hNotNMRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21289     hNotNMRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21290     hNotNMRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21291     hNotNMRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21292     hNotNMRecoEnPassUVVtxCutPQ->SetFillColor(0);
21293     hNotNMRecoEnPassUVVtxCutPQ->SetLineColor(1);
21294     //hNotNMRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21295     
21296     hNotNMTrueEnPassUVVtxCutPQ=new TH1F
21297       ("hNotNMTrueEnPassUVVtxCutPQ","hNotNMTrueEnPassUVVtxCutPQ",
21298        4*352,-32,320);
21299     hNotNMTrueEnPassUVVtxCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
21300     hNotNMTrueEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21301     hNotNMTrueEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21302     hNotNMTrueEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21303     hNotNMTrueEnPassUVVtxCutPQ->SetFillColor(0);
21304     hNotNMTrueEnPassUVVtxCutPQ->SetLineColor(1);
21305     //hNotNMTrueEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21306 
21307     hNotNMBRecoEnPassUVVtxCutPQ=new TH1F("hNotNMBRecoEnPassUVVtxCutPQ",
21308                                          "hNotNMBRecoEnPassUVVtxCutPQ",
21309                                          4*352,-32,320);
21310     hNotNMBRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21311     hNotNMBRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21312     hNotNMBRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21313     hNotNMBRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21314     hNotNMBRecoEnPassUVVtxCutPQ->SetFillColor(0);
21315     hNotNMBRecoEnPassUVVtxCutPQ->SetLineColor(1);
21316     //hNotNMBRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21317     
21318     hNotNMBTrueEnPassUVVtxCutPQ=new TH1F
21319       ("hNotNMBTrueEnPassUVVtxCutPQ","hNotNMBTrueEnPassUVVtxCutPQ",
21320        4*352,-32,320);
21321     hNotNMBTrueEnPassUVVtxCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
21322     hNotNMBTrueEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21323     hNotNMBTrueEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21324     hNotNMBTrueEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21325     hNotNMBTrueEnPassUVVtxCutPQ->SetFillColor(0);
21326     hNotNMBTrueEnPassUVVtxCutPQ->SetLineColor(1);
21327     //hNotNMBTrueEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21328 
21329   
21330     
21331 
21332     //NQ
21333     hSigqp_qpPassUVVtxCutNQN=new TH1F("hSigqp_qpPassUVVtxCutNQN","hSigqp_qpPassUVVtxCutNQN",800*160,-160,160);
21334     hSigqp_qpPassUVVtxCutNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
21335     hSigqp_qpPassUVVtxCutNQN->GetXaxis()->CenterTitle();
21336     hSigqp_qpPassUVVtxCutNQN->GetYaxis()->SetTitle("");
21337     hSigqp_qpPassUVVtxCutNQN->GetYaxis()->CenterTitle();
21338     hSigqp_qpPassUVVtxCutNQN->SetFillColor(0);
21339     hSigqp_qpPassUVVtxCutNQN->SetLineColor(1);
21340     hSigqp_qpPassUVVtxCutNQN->SetLineWidth(2);
21341     hSigqp_qpPassUVVtxCutNQN->SetLineStyle(2);
21342     //hSigqp_qpPassUVVtxCutNQN->SetBit(TH1::kCanRebin);
21343 
21344     hChi2PassUVVtxCutNQN=new TH1F("hChi2PassUVVtxCutNQN","hChi2PassUVVtxCutNQN",10*176,-16,160);
21345     hChi2PassUVVtxCutNQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
21346     hChi2PassUVVtxCutNQN->GetXaxis()->CenterTitle();
21347     hChi2PassUVVtxCutNQN->GetYaxis()->SetTitle("");
21348     hChi2PassUVVtxCutNQN->GetYaxis()->CenterTitle();
21349     hChi2PassUVVtxCutNQN->SetFillColor(0);
21350     hChi2PassUVVtxCutNQN->SetLineColor(1);
21351     hChi2PassUVVtxCutNQN->SetLineWidth(2);
21352     hChi2PassUVVtxCutNQN->SetLineStyle(2);
21353     //hChi2PassUVVtxCutNQN->SetBit(TH1::kCanRebin);
21354 
21355     hProbPassUVVtxCutNQN=new TH1F("hProbPassUVVtxCutNQN","hProbPassUVVtxCutNQN",14000,-0.2,1.2);
21356     hProbPassUVVtxCutNQN->GetXaxis()->SetTitle("Fit Probability");
21357     hProbPassUVVtxCutNQN->GetXaxis()->CenterTitle();
21358     hProbPassUVVtxCutNQN->GetYaxis()->SetTitle("");
21359     hProbPassUVVtxCutNQN->GetYaxis()->CenterTitle();
21360     hProbPassUVVtxCutNQN->SetFillColor(0);
21361     hProbPassUVVtxCutNQN->SetLineColor(1);
21362     hProbPassUVVtxCutNQN->SetLineWidth(2);
21363     hProbPassUVVtxCutNQN->SetLineStyle(2);
21364     //hProbPassUVVtxCutNQN->SetBit(TH1::kCanRebin);
21365 
21366     hDpIDPassUVVtxCutNQN=new TH1F("hDpIDPassUVVtxCutNQN","hDpIDPassUVVtxCutNQN",4*160,-1.6,1.6);
21367     hDpIDPassUVVtxCutNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
21368     hDpIDPassUVVtxCutNQN->GetXaxis()->CenterTitle();
21369     hDpIDPassUVVtxCutNQN->GetYaxis()->SetTitle("");
21370     hDpIDPassUVVtxCutNQN->GetYaxis()->CenterTitle();
21371     hDpIDPassUVVtxCutNQN->SetFillColor(0);
21372     hDpIDPassUVVtxCutNQN->SetLineColor(1);
21373     hDpIDPassUVVtxCutNQN->SetLineWidth(2);
21374     //hDpIDPassUVVtxCutNQN->SetBit(TH1::kCanRebin);
21375 
21376     hRecoEnPassUVVtxCutNQ=new TH1F("hRecoEnPassUVVtxCutNQ","hRecoEnPassUVVtxCutNQ",
21377                                    4*352,-32,320);
21378     hRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21379     hRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21380     hRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21381     hRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21382     hRecoEnPassUVVtxCutNQ->SetFillColor(0);
21383     hRecoEnPassUVVtxCutNQ->SetLineColor(1);
21384     //hRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21385     
21386     hRecoYPassUVVtxCutNQ=new TH1F("hRecoYPassUVVtxCutNQ","hRecoYPassUVVtxCutNQ",
21387                                   1400,-0.2,1.2);
21388     hRecoYPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed y");
21389     hRecoYPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21390     hRecoYPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21391     hRecoYPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21392     hRecoYPassUVVtxCutNQ->SetFillColor(0);
21393     hRecoYPassUVVtxCutNQ->SetLineColor(1);
21394     //hRecoYPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21395 
21396 
21397     hNMProbPassUVVtxCutNQ=new TH1F
21398       ("hNMProbPassUVVtxCutNQ","hNMProbPassUVVtxCutNQ",14000,-0.2,1.2);
21399     hNMProbPassUVVtxCutNQ->GetXaxis()->SetTitle("Fit Probability");
21400     hNMProbPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21401     hNMProbPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21402     hNMProbPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21403     hNMProbPassUVVtxCutNQ->SetFillColor(0);
21404     hNMProbPassUVVtxCutNQ->SetLineColor(1);
21405     hNMProbPassUVVtxCutNQ->SetLineWidth(2);
21406     hNMProbPassUVVtxCutNQ->SetLineStyle(2);
21407     //hNMProbPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21408     
21409     hNMBProbPassUVVtxCutNQ=new TH1F
21410       ("hNMBProbPassUVVtxCutNQ","hNMBProbPassUVVtxCutNQ",14000,-0.2,1.2);
21411     hNMBProbPassUVVtxCutNQ->GetXaxis()->SetTitle("Fit Probability");
21412     hNMBProbPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21413     hNMBProbPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21414     hNMBProbPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21415     hNMBProbPassUVVtxCutNQ->SetFillColor(0);
21416     hNMBProbPassUVVtxCutNQ->SetLineColor(1);
21417     hNMBProbPassUVVtxCutNQ->SetLineWidth(2);
21418     hNMBProbPassUVVtxCutNQ->SetLineStyle(2);
21419     //hNMBProbPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21420 
21421     hAllShwProbPassUVVtxCutNQ=new TH1F
21422       ("hAllShwProbPassUVVtxCutNQ",
21423        "hAllShwProbPassUVVtxCutNQ",14000,-0.2,1.2);
21424     hAllShwProbPassUVVtxCutNQ->GetXaxis()->SetTitle("Fit Probability");
21425     hAllShwProbPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21426     hAllShwProbPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21427     hAllShwProbPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21428     hAllShwProbPassUVVtxCutNQ->SetFillColor(0);
21429     hAllShwProbPassUVVtxCutNQ->SetLineColor(1);
21430     hAllShwProbPassUVVtxCutNQ->SetLineWidth(2);
21431     hAllShwProbPassUVVtxCutNQ->SetLineStyle(2);
21432     //hAllShwProbPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21433 
21434 
21435     hNMRecoEnPassUVVtxCutNQ=new TH1F
21436       ("hNMRecoEnPassUVVtxCutNQ","hNMRecoEnPassUVVtxCutNQ",4*352,-32,320);
21437     hNMRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21438     hNMRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21439     hNMRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21440     hNMRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21441     hNMRecoEnPassUVVtxCutNQ->SetFillColor(0);
21442     hNMRecoEnPassUVVtxCutNQ->SetLineColor(1);
21443     //hNMRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21444     
21445     hNMTrueEnPassUVVtxCutNQ=new TH1F
21446       ("hNMTrueEnPassUVVtxCutNQ","hNMTrueEnPassUVVtxCutNQ",4*352,-32,320);
21447     hNMTrueEnPassUVVtxCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
21448     hNMTrueEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21449     hNMTrueEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21450     hNMTrueEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21451     hNMTrueEnPassUVVtxCutNQ->SetFillColor(0);
21452     hNMTrueEnPassUVVtxCutNQ->SetLineColor(1);
21453     //hNMTrueEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21454 
21455     hNMBRecoEnPassUVVtxCutNQ=new TH1F("hNMBRecoEnPassUVVtxCutNQ",
21456                                       "hNMBRecoEnPassUVVtxCutNQ",
21457                                       4*352,-32,320);
21458     hNMBRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21459     hNMBRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21460     hNMBRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21461     hNMBRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21462     hNMBRecoEnPassUVVtxCutNQ->SetFillColor(0);
21463     hNMBRecoEnPassUVVtxCutNQ->SetLineColor(1);
21464     //hNMBRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21465     
21466     hNMBTrueEnPassUVVtxCutNQ=new TH1F
21467       ("hNMBTrueEnPassUVVtxCutNQ","hNMBTrueEnPassUVVtxCutNQ",
21468        4*352,-32,320);
21469     hNMBTrueEnPassUVVtxCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
21470     hNMBTrueEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21471     hNMBTrueEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21472     hNMBTrueEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21473     hNMBTrueEnPassUVVtxCutNQ->SetFillColor(0);
21474     hNMBTrueEnPassUVVtxCutNQ->SetLineColor(1);
21475     //hNMBTrueEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21476 
21477 
21478 
21479     hAllNCRecoEnPassUVVtxCutNQ=new TH1F("hAllNCRecoEnPassUVVtxCutNQ",
21480                                         "hAllNCRecoEnPassUVVtxCutNQ",
21481                                         4*352,-32,320);
21482     hAllNCRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21483     hAllNCRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21484     hAllNCRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21485     hAllNCRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21486     hAllNCRecoEnPassUVVtxCutNQ->SetFillColor(0);
21487     hAllNCRecoEnPassUVVtxCutNQ->SetLineColor(1);
21488     //hAllNCRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21489     
21490     hAllNCTrueEnPassUVVtxCutNQ=new TH1F
21491       ("hAllNCTrueEnPassUVVtxCutNQ","hAllNCTrueEnPassUVVtxCutNQ",
21492        4*352,-32,320);
21493     hAllNCTrueEnPassUVVtxCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
21494     hAllNCTrueEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21495     hAllNCTrueEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21496     hAllNCTrueEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21497     hAllNCTrueEnPassUVVtxCutNQ->SetFillColor(0);
21498     hAllNCTrueEnPassUVVtxCutNQ->SetLineColor(1);
21499     //hAllNCTrueEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21500 
21501     hAllShwRecoEnPassUVVtxCutNQ=new TH1F("hAllShwRecoEnPassUVVtxCutNQ",
21502                                          "hAllShwRecoEnPassUVVtxCutNQ",
21503                                          4*352,-32,320);
21504     hAllShwRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21505     hAllShwRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21506     hAllShwRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21507     hAllShwRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21508     hAllShwRecoEnPassUVVtxCutNQ->SetFillColor(0);
21509     hAllShwRecoEnPassUVVtxCutNQ->SetLineColor(1);
21510     //hAllShwRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21511     
21512     hAllShwTrueEnPassUVVtxCutNQ=new TH1F
21513       ("hAllShwTrueEnPassUVVtxCutNQ","hAllShwTrueEnPassUVVtxCutNQ",
21514        4*352,-32,320);
21515     hAllShwTrueEnPassUVVtxCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
21516     hAllShwTrueEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21517     hAllShwTrueEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21518     hAllShwTrueEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21519     hAllShwTrueEnPassUVVtxCutNQ->SetFillColor(0);
21520     hAllShwTrueEnPassUVVtxCutNQ->SetLineColor(1);
21521     //hAllShwTrueEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21522 
21523     hNotNMRecoEnPassUVVtxCutNQ=new TH1F
21524       ("hNotNMRecoEnPassUVVtxCutNQ","hNotNMRecoEnPassUVVtxCutNQ",
21525        4*352,-32,320);
21526     hNotNMRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21527     hNotNMRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21528     hNotNMRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21529     hNotNMRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21530     hNotNMRecoEnPassUVVtxCutNQ->SetFillColor(0);
21531     hNotNMRecoEnPassUVVtxCutNQ->SetLineColor(1);
21532     //hNotNMRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21533     
21534     hNotNMTrueEnPassUVVtxCutNQ=new TH1F
21535       ("hNotNMTrueEnPassUVVtxCutNQ","hNotNMTrueEnPassUVVtxCutNQ",
21536        4*352,-32,320);
21537     hNotNMTrueEnPassUVVtxCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
21538     hNotNMTrueEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21539     hNotNMTrueEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21540     hNotNMTrueEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21541     hNotNMTrueEnPassUVVtxCutNQ->SetFillColor(0);
21542     hNotNMTrueEnPassUVVtxCutNQ->SetLineColor(1);
21543     //hNotNMTrueEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21544 
21545     hNotNMBRecoEnPassUVVtxCutNQ=new TH1F("hNotNMBRecoEnPassUVVtxCutNQ",
21546                                          "hNotNMBRecoEnPassUVVtxCutNQ",
21547                                          4*352,-32,320);
21548     hNotNMBRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21549     hNotNMBRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21550     hNotNMBRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21551     hNotNMBRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21552     hNotNMBRecoEnPassUVVtxCutNQ->SetFillColor(0);
21553     hNotNMBRecoEnPassUVVtxCutNQ->SetLineColor(1);
21554     //hNotNMBRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21555     
21556     hNotNMBTrueEnPassUVVtxCutNQ=new TH1F
21557       ("hNotNMBTrueEnPassUVVtxCutNQ","hNotNMBTrueEnPassUVVtxCutNQ",
21558        4*352,-32,320);
21559     hNotNMBTrueEnPassUVVtxCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
21560     hNotNMBTrueEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21561     hNotNMBTrueEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21562     hNotNMBTrueEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21563     hNotNMBTrueEnPassUVVtxCutNQ->SetFillColor(0);
21564     hNotNMBTrueEnPassUVVtxCutNQ->SetLineColor(1);
21565     //hNotNMBTrueEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21566   }
21567   
21568 
21569   //PQ
21570   if (nu.charge==+1){
21571     hSigqp_qpPassUVVtxCutPQN->Fill(nu.sigqp_qp,nu.rw);
21572     hChi2PassUVVtxCutPQN->Fill(nu.chi2PerNdof,nu.rw);
21573     hProbPassUVVtxCutPQN->Fill(nu.prob,nu.rw);
21574     hDpIDPassUVVtxCutPQN->Fill(nu.dpID,nu.rw);
21575     
21576     hRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
21577     hRecoYPassUVVtxCutPQ->Fill(nu.y,nu.rw);
21578   }
21579   //NQ
21580   else if (nu.charge==-1){
21581     hSigqp_qpPassUVVtxCutNQN->Fill(nu.sigqp_qp,nu.rw);
21582     hChi2PassUVVtxCutNQN->Fill(nu.chi2PerNdof,nu.rw);
21583     hProbPassUVVtxCutNQN->Fill(nu.prob,nu.rw);
21584     hDpIDPassUVVtxCutNQN->Fill(nu.dpID,nu.rw);
21585 
21586     hRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
21587     hRecoYPassUVVtxCutNQ->Fill(nu.y,nu.rw);
21588   }
21589   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
21590 
21591 
21592   //now fill the truth plots
21593   if (nu.iaction==1){//CC
21594     if (nu.inu==14){//NuMu
21595       if (nu.charge==+1) {
21596         hNMProbPassUVVtxCutPQ->Fill(nu.prob,nu.rw);
21597         hNMRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
21598         hNMTrueEnPassUVVtxCutPQ->Fill(nu.energyMC,nu.rw);
21599       }
21600       else if (nu.charge==-1){
21601         hNMProbPassUVVtxCutNQ->Fill(nu.prob,nu.rw);
21602         hNMRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
21603         hNMTrueEnPassUVVtxCutNQ->Fill(nu.energyMC,nu.rw);
21604       }
21605     }
21606     else if (nu.inu==-14){//NuMuBar
21607       if (nu.charge==+1) {
21608         hNMBProbPassUVVtxCutPQ->Fill(nu.prob,nu.rw);
21609         hNMBRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
21610         hNMBTrueEnPassUVVtxCutPQ->Fill(nu.energyMC,nu.rw);
21611       }
21612       else if (nu.charge==-1){
21613         hNMBProbPassUVVtxCutNQ->Fill(nu.prob,nu.rw);
21614         hNMBRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
21615         hNMBTrueEnPassUVVtxCutNQ->Fill(nu.energyMC,nu.rw);
21616       }
21617     }
21618   }
21619   else if (nu.iaction==0){//NC
21620     if (nu.charge==+1) {
21621       hAllNCRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
21622       hAllNCTrueEnPassUVVtxCutPQ->Fill(nu.energyMC,nu.rw);
21623     }
21624     else if (nu.charge==-1){
21625       hAllNCRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
21626       hAllNCTrueEnPassUVVtxCutNQ->Fill(nu.energyMC,nu.rw);
21627     }
21628   }
21629 
21630   //all but NuMu/NuMuBar CC
21631   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
21632     if (nu.charge==+1) {
21633       hAllShwProbPassUVVtxCutPQ->Fill(nu.prob,nu.rw);
21634       hAllShwRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
21635       hAllShwTrueEnPassUVVtxCutPQ->Fill(nu.energyMC,nu.rw);
21636     }
21637     else if (nu.charge==-1){
21638       hAllShwProbPassUVVtxCutNQ->Fill(nu.prob,nu.rw);
21639       hAllShwRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
21640       hAllShwTrueEnPassUVVtxCutNQ->Fill(nu.energyMC,nu.rw);
21641     }    
21642   }
21643 
21644   //fill all-but-numubar-cc histos
21645   if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
21646     if (nu.charge==+1) {
21647       hNotNMBRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
21648       hNotNMBTrueEnPassUVVtxCutPQ->Fill(nu.energyMC,nu.rw);
21649     }
21650     else if (nu.charge==-1){
21651       hNotNMBRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
21652       hNotNMBTrueEnPassUVVtxCutNQ->Fill(nu.energyMC,nu.rw);
21653     }  
21654   }
21655 
21656   //fill all-but-numu-cc histos
21657   if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
21658     if (nu.charge==+1) {
21659       hNotNMRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
21660       hNotNMTrueEnPassUVVtxCutPQ->Fill(nu.energyMC,nu.rw);
21661     }
21662     else if (nu.charge==-1){
21663       hNotNMRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
21664       hNotNMTrueEnPassUVVtxCutNQ->Fill(nu.energyMC,nu.rw);
21665     }  
21666   }
21667 
21668 
21669 
21670 
21671 
21672   /*
21673 
21674 
21675     static TH1F* hNMRecoEnPassUVVtxCut=0;
21676     static TH1F* hNMTrueEnPassUVVtxCut=0;
21677     static TH1F* hNMBRecoEnPassUVVtxCut=0;
21678     static TH1F* hNMBTrueEnPassUVVtxCut=0;
21679 
21680     //PQ
21681     static TH1F* hSigqp_qpPassUVVtxCutPQN=0;
21682     static TH1F* hChi2PassUVVtxCutPQN=0;
21683     static TH1F* hProbPassUVVtxCutPQN=0;
21684     static TH1F* hDpIDPassUVVtxCutPQN=0;
21685     static TH1F* hRecoEnPassUVVtxCutPQ=0;
21686     static TH1F* hRecoYPassUVVtxCutPQ=0;
21687 
21688     static TH1F* hNMProbPassUVVtxCutPQ=0;
21689     static TH1F* hNMBProbPassUVVtxCutPQ=0;
21690     static TH1F* hAllShwProbPassUVVtxCutPQ=0;
21691 
21692     static TH1F* hNMRecoEnPassUVVtxCutPQ=0;
21693     static TH1F* hNMTrueEnPassUVVtxCutPQ=0;
21694     static TH1F* hNMBRecoEnPassUVVtxCutPQ=0;
21695     static TH1F* hNMBTrueEnPassUVVtxCutPQ=0;
21696 
21697     //NQ
21698     static TH1F* hSigqp_qpPassUVVtxCutNQN=0;
21699     static TH1F* hChi2PassUVVtxCutNQN=0;
21700     static TH1F* hProbPassUVVtxCutNQN=0;
21701     static TH1F* hDpIDPassUVVtxCutNQN=0;
21702     static TH1F* hRecoEnPassUVVtxCutNQ=0;
21703     static TH1F* hRecoYPassUVVtxCutNQ=0;
21704 
21705     static TH1F* hNMProbPassUVVtxCutNQ=0;
21706     static TH1F* hNMBProbPassUVVtxCutNQ=0;
21707     static TH1F* hAllShwProbPassUVVtxCutNQ=0;
21708 
21709     static TH1F* hNMBRecoEnPassUVVtxCutNQ=0;
21710     static TH1F* hNMBTrueEnPassUVVtxCutNQ=0;
21711     static TH1F* hNMRecoEnPassUVVtxCutNQ=0;
21712     static TH1F* hNMTrueEnPassUVVtxCutNQ=0;
21713   
21714     if (!hChi2PassUVVtxCutNQN){
21715     MAXMSG("NuPlots",Msg::kDebug,1)
21716     <<"Creating DPIdSigmaQPPassUVVtxCutPlots plots..."<<endl;
21717     
21718     //PQ
21719     hSigqp_qpPassUVVtxCutPQN=new TH1F("hSigqp_qpPassUVVtxCutPQN","hSigqp_qpPassUVVtxCutPQN",800*160,-160,160);
21720     hSigqp_qpPassUVVtxCutPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
21721     hSigqp_qpPassUVVtxCutPQN->GetXaxis()->CenterTitle();
21722     hSigqp_qpPassUVVtxCutPQN->GetYaxis()->SetTitle("");
21723     hSigqp_qpPassUVVtxCutPQN->GetYaxis()->CenterTitle();
21724     hSigqp_qpPassUVVtxCutPQN->SetFillColor(0);
21725     hSigqp_qpPassUVVtxCutPQN->SetLineColor(1);
21726     hSigqp_qpPassUVVtxCutPQN->SetLineWidth(2);
21727     hSigqp_qpPassUVVtxCutPQN->SetLineStyle(2);
21728     //hSigqp_qpPassUVVtxCutPQN->SetBit(TH1::kCanRebin);
21729 
21730     hChi2PassUVVtxCutPQN=new TH1F("hChi2PassUVVtxCutPQN","hChi2PassUVVtxCutPQN",10*176,-16,160);
21731     hChi2PassUVVtxCutPQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
21732     hChi2PassUVVtxCutPQN->GetXaxis()->CenterTitle();
21733     hChi2PassUVVtxCutPQN->GetYaxis()->SetTitle("");
21734     hChi2PassUVVtxCutPQN->GetYaxis()->CenterTitle();
21735     hChi2PassUVVtxCutPQN->SetFillColor(0);
21736     hChi2PassUVVtxCutPQN->SetLineColor(1);
21737     hChi2PassUVVtxCutPQN->SetLineWidth(2);
21738     hChi2PassUVVtxCutPQN->SetLineStyle(2);
21739     //hChi2PassUVVtxCutPQN->SetBit(TH1::kCanRebin);
21740 
21741     hProbPassUVVtxCutPQN=new TH1F("hProbPassUVVtxCutPQN","hProbPassUVVtxCutPQN",14000,-0.2,1.2);
21742     hProbPassUVVtxCutPQN->GetXaxis()->SetTitle("Fit Probability");
21743     hProbPassUVVtxCutPQN->GetXaxis()->CenterTitle();
21744     hProbPassUVVtxCutPQN->GetYaxis()->SetTitle("");
21745     hProbPassUVVtxCutPQN->GetYaxis()->CenterTitle();
21746     hProbPassUVVtxCutPQN->SetFillColor(0);
21747     hProbPassUVVtxCutPQN->SetLineColor(1);
21748     hProbPassUVVtxCutPQN->SetLineWidth(2);
21749     hProbPassUVVtxCutPQN->SetLineStyle(2);
21750     //hProbPassUVVtxCutPQN->SetBit(TH1::kCanRebin);
21751 
21752     hDpIDPassUVVtxCutPQN=new TH1F("hDpIDPassUVVtxCutPQN","hDpIDPassUVVtxCutPQN",4*160,-1.6,1.6);
21753     hDpIDPassUVVtxCutPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
21754     hDpIDPassUVVtxCutPQN->GetXaxis()->CenterTitle();
21755     hDpIDPassUVVtxCutPQN->GetYaxis()->SetTitle("");
21756     hDpIDPassUVVtxCutPQN->GetYaxis()->CenterTitle();
21757     hDpIDPassUVVtxCutPQN->SetFillColor(0);
21758     hDpIDPassUVVtxCutPQN->SetLineColor(1);
21759     hDpIDPassUVVtxCutPQN->SetLineWidth(2);
21760     //hDpIDPassUVVtxCutPQN->SetBit(TH1::kCanRebin);
21761 
21762     hRecoEnPassUVVtxCutPQ=new TH1F("hRecoEnPassUVVtxCutPQ","hRecoEnPassUVVtxCutPQ",
21763     4*352,-32,320);
21764     hRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21765     hRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21766     hRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21767     hRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21768     hRecoEnPassUVVtxCutPQ->SetFillColor(0);
21769     hRecoEnPassUVVtxCutPQ->SetLineColor(1);
21770     //hRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21771 
21772     hRecoYPassUVVtxCutPQ=new TH1F("hRecoYPassUVVtxCutPQ","hRecoYPassUVVtxCutPQ",
21773     1400,-0.2,1.2);
21774     hRecoYPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed y");
21775     hRecoYPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21776     hRecoYPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21777     hRecoYPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21778     hRecoYPassUVVtxCutPQ->SetFillColor(0);
21779     hRecoYPassUVVtxCutPQ->SetLineColor(1);
21780     //hRecoYPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21781 
21782 
21783     hNMProbPassUVVtxCutPQ=new TH1F
21784     ("hNMProbPassUVVtxCutPQ","hNMProbPassUVVtxCutPQ",14000,-0.2,1.2);
21785     hNMProbPassUVVtxCutPQ->GetXaxis()->SetTitle("Fit Probability");
21786     hNMProbPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21787     hNMProbPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21788     hNMProbPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21789     hNMProbPassUVVtxCutPQ->SetFillColor(0);
21790     hNMProbPassUVVtxCutPQ->SetLineColor(1);
21791     hNMProbPassUVVtxCutPQ->SetLineWidth(2);
21792     hNMProbPassUVVtxCutPQ->SetLineStyle(2);
21793     //hNMProbPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21794     
21795     hNMBProbPassUVVtxCutPQ=new TH1F
21796     ("hNMBProbPassUVVtxCutPQ","hNMBProbPassUVVtxCutPQ",14000,-0.2,1.2);
21797     hNMBProbPassUVVtxCutPQ->GetXaxis()->SetTitle("Fit Probability");
21798     hNMBProbPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21799     hNMBProbPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21800     hNMBProbPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21801     hNMBProbPassUVVtxCutPQ->SetFillColor(0);
21802     hNMBProbPassUVVtxCutPQ->SetLineColor(1);
21803     hNMBProbPassUVVtxCutPQ->SetLineWidth(2);
21804     hNMBProbPassUVVtxCutPQ->SetLineStyle(2);
21805     //hNMBProbPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21806 
21807     hAllShwProbPassUVVtxCutPQ=new TH1F
21808     ("hAllShwProbPassUVVtxCutPQ",
21809     "hAllShwProbPassUVVtxCutPQ",14000,-0.2,1.2);
21810     hAllShwProbPassUVVtxCutPQ->GetXaxis()->SetTitle("Fit Probability");
21811     hAllShwProbPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21812     hAllShwProbPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21813     hAllShwProbPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21814     hAllShwProbPassUVVtxCutPQ->SetFillColor(0);
21815     hAllShwProbPassUVVtxCutPQ->SetLineColor(1);
21816     hAllShwProbPassUVVtxCutPQ->SetLineWidth(2);
21817     hAllShwProbPassUVVtxCutPQ->SetLineStyle(2);
21818     //hAllShwProbPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21819 
21820     hNMRecoEnPassUVVtxCutPQ=new TH1F
21821     ("hNMRecoEnPassUVVtxCutPQ","hNMRecoEnPassUVVtxCutPQ",4*352,-32,320);
21822     hNMRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21823     hNMRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21824     hNMRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21825     hNMRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21826     hNMRecoEnPassUVVtxCutPQ->SetFillColor(0);
21827     hNMRecoEnPassUVVtxCutPQ->SetLineColor(1);
21828     //hNMRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21829     
21830     hNMTrueEnPassUVVtxCutPQ=new TH1F
21831     ("hNMTrueEnPassUVVtxCutPQ","hNMTrueEnPassUVVtxCutPQ",4*352,-32,320);
21832     hNMTrueEnPassUVVtxCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
21833     hNMTrueEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21834     hNMTrueEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21835     hNMTrueEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21836     hNMTrueEnPassUVVtxCutPQ->SetFillColor(0);
21837     hNMTrueEnPassUVVtxCutPQ->SetLineColor(1);
21838     //hNMTrueEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21839 
21840     hNMBRecoEnPassUVVtxCutPQ=new TH1F("hNMBRecoEnPassUVVtxCutPQ",
21841     "hNMBRecoEnPassUVVtxCutPQ",
21842     4*352,-32,320);
21843     hNMBRecoEnPassUVVtxCutPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21844     hNMBRecoEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21845     hNMBRecoEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21846     hNMBRecoEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21847     hNMBRecoEnPassUVVtxCutPQ->SetFillColor(0);
21848     hNMBRecoEnPassUVVtxCutPQ->SetLineColor(1);
21849     //hNMBRecoEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21850     
21851     hNMBTrueEnPassUVVtxCutPQ=new TH1F
21852     ("hNMBTrueEnPassUVVtxCutPQ","hNMBTrueEnPassUVVtxCutPQ",
21853     4*352,-32,320);
21854     hNMBTrueEnPassUVVtxCutPQ->GetXaxis()->SetTitle("True Energy (GeV)");
21855     hNMBTrueEnPassUVVtxCutPQ->GetXaxis()->CenterTitle();
21856     hNMBTrueEnPassUVVtxCutPQ->GetYaxis()->SetTitle("");
21857     hNMBTrueEnPassUVVtxCutPQ->GetYaxis()->CenterTitle();
21858     hNMBTrueEnPassUVVtxCutPQ->SetFillColor(0);
21859     hNMBTrueEnPassUVVtxCutPQ->SetLineColor(1);
21860     //hNMBTrueEnPassUVVtxCutPQ->SetBit(TH1::kCanRebin);
21861     
21862 
21863     hNMRecoEnPassUVVtxCut=new TH1F
21864     ("hNMRecoEnPassUVVtxCut","hNMRecoEnPassUVVtxCut",
21865     4*352,-32,320);
21866     hNMRecoEnPassUVVtxCut->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21867     hNMRecoEnPassUVVtxCut->GetXaxis()->CenterTitle();
21868     hNMRecoEnPassUVVtxCut->GetYaxis()->SetTitle("");
21869     hNMRecoEnPassUVVtxCut->GetYaxis()->CenterTitle();
21870     hNMRecoEnPassUVVtxCut->SetFillColor(0);
21871     hNMRecoEnPassUVVtxCut->SetLineColor(1);
21872     //hNMRecoEnPassUVVtxCut->SetBit(TH1::kCanRebin);
21873     
21874     hNMTrueEnPassUVVtxCut=new TH1F
21875     ("hNMTrueEnPassUVVtxCut","hNMTrueEnPassUVVtxCut",
21876     4*352,-32,320);
21877     hNMTrueEnPassUVVtxCut->GetXaxis()->SetTitle("True Energy (GeV)");
21878     hNMTrueEnPassUVVtxCut->GetXaxis()->CenterTitle();
21879     hNMTrueEnPassUVVtxCut->GetYaxis()->SetTitle("");
21880     hNMTrueEnPassUVVtxCut->GetYaxis()->CenterTitle();
21881     hNMTrueEnPassUVVtxCut->SetFillColor(0);
21882     hNMTrueEnPassUVVtxCut->SetLineColor(1);
21883     //hNMTrueEnPassUVVtxCut->SetBit(TH1::kCanRebin);
21884 
21885     hNMBRecoEnPassUVVtxCut=new TH1F("hNMBRecoEnPassUVVtxCut",
21886     "hNMBRecoEnPassUVVtxCut",
21887     4*352,-32,320);
21888     hNMBRecoEnPassUVVtxCut->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21889     hNMBRecoEnPassUVVtxCut->GetXaxis()->CenterTitle();
21890     hNMBRecoEnPassUVVtxCut->GetYaxis()->SetTitle("");
21891     hNMBRecoEnPassUVVtxCut->GetYaxis()->CenterTitle();
21892     hNMBRecoEnPassUVVtxCut->SetFillColor(0);
21893     hNMBRecoEnPassUVVtxCut->SetLineColor(1);
21894     //hNMBRecoEnPassUVVtxCut->SetBit(TH1::kCanRebin);
21895     
21896     hNMBTrueEnPassUVVtxCut=new TH1F
21897     ("hNMBTrueEnPassUVVtxCut","hNMBTrueEnPassUVVtxCut",
21898     4*352,-32,320);
21899     hNMBTrueEnPassUVVtxCut->GetXaxis()->SetTitle("True Energy (GeV)");
21900     hNMBTrueEnPassUVVtxCut->GetXaxis()->CenterTitle();
21901     hNMBTrueEnPassUVVtxCut->GetYaxis()->SetTitle("");
21902     hNMBTrueEnPassUVVtxCut->GetYaxis()->CenterTitle();
21903     hNMBTrueEnPassUVVtxCut->SetFillColor(0);
21904     hNMBTrueEnPassUVVtxCut->SetLineColor(1);
21905     //hNMBTrueEnPassUVVtxCut->SetBit(TH1::kCanRebin);
21906     
21907 
21908     
21909 
21910     //NQ
21911     hSigqp_qpPassUVVtxCutNQN=new TH1F("hSigqp_qpPassUVVtxCutNQN","hSigqp_qpPassUVVtxCutNQN",800*160,-160,160);
21912     hSigqp_qpPassUVVtxCutNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
21913     hSigqp_qpPassUVVtxCutNQN->GetXaxis()->CenterTitle();
21914     hSigqp_qpPassUVVtxCutNQN->GetYaxis()->SetTitle("");
21915     hSigqp_qpPassUVVtxCutNQN->GetYaxis()->CenterTitle();
21916     hSigqp_qpPassUVVtxCutNQN->SetFillColor(0);
21917     hSigqp_qpPassUVVtxCutNQN->SetLineColor(1);
21918     hSigqp_qpPassUVVtxCutNQN->SetLineWidth(2);
21919     hSigqp_qpPassUVVtxCutNQN->SetLineStyle(2);
21920     //hSigqp_qpPassUVVtxCutNQN->SetBit(TH1::kCanRebin);
21921 
21922     hChi2PassUVVtxCutNQN=new TH1F("hChi2PassUVVtxCutNQN","hChi2PassUVVtxCutNQN",10*176,-16,160);
21923     hChi2PassUVVtxCutNQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
21924     hChi2PassUVVtxCutNQN->GetXaxis()->CenterTitle();
21925     hChi2PassUVVtxCutNQN->GetYaxis()->SetTitle("");
21926     hChi2PassUVVtxCutNQN->GetYaxis()->CenterTitle();
21927     hChi2PassUVVtxCutNQN->SetFillColor(0);
21928     hChi2PassUVVtxCutNQN->SetLineColor(1);
21929     hChi2PassUVVtxCutNQN->SetLineWidth(2);
21930     hChi2PassUVVtxCutNQN->SetLineStyle(2);
21931     //hChi2PassUVVtxCutNQN->SetBit(TH1::kCanRebin);
21932 
21933     hProbPassUVVtxCutNQN=new TH1F("hProbPassUVVtxCutNQN","hProbPassUVVtxCutNQN",14000,-0.2,1.2);
21934     hProbPassUVVtxCutNQN->GetXaxis()->SetTitle("Fit Probability");
21935     hProbPassUVVtxCutNQN->GetXaxis()->CenterTitle();
21936     hProbPassUVVtxCutNQN->GetYaxis()->SetTitle("");
21937     hProbPassUVVtxCutNQN->GetYaxis()->CenterTitle();
21938     hProbPassUVVtxCutNQN->SetFillColor(0);
21939     hProbPassUVVtxCutNQN->SetLineColor(1);
21940     hProbPassUVVtxCutNQN->SetLineWidth(2);
21941     hProbPassUVVtxCutNQN->SetLineStyle(2);
21942     //hProbPassUVVtxCutNQN->SetBit(TH1::kCanRebin);
21943 
21944     hDpIDPassUVVtxCutNQN=new TH1F("hDpIDPassUVVtxCutNQN","hDpIDPassUVVtxCutNQN",4*160,-1.6,1.6);
21945     hDpIDPassUVVtxCutNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
21946     hDpIDPassUVVtxCutNQN->GetXaxis()->CenterTitle();
21947     hDpIDPassUVVtxCutNQN->GetYaxis()->SetTitle("");
21948     hDpIDPassUVVtxCutNQN->GetYaxis()->CenterTitle();
21949     hDpIDPassUVVtxCutNQN->SetFillColor(0);
21950     hDpIDPassUVVtxCutNQN->SetLineColor(1);
21951     hDpIDPassUVVtxCutNQN->SetLineWidth(2);
21952     //hDpIDPassUVVtxCutNQN->SetBit(TH1::kCanRebin);
21953 
21954     hRecoEnPassUVVtxCutNQ=new TH1F("hRecoEnPassUVVtxCutNQ","hRecoEnPassUVVtxCutNQ",
21955     4*352,-32,320);
21956     hRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
21957     hRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21958     hRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21959     hRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21960     hRecoEnPassUVVtxCutNQ->SetFillColor(0);
21961     hRecoEnPassUVVtxCutNQ->SetLineColor(1);
21962     //hRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21963     
21964     hRecoYPassUVVtxCutNQ=new TH1F("hRecoYPassUVVtxCutNQ","hRecoYPassUVVtxCutNQ",
21965     1400,-0.2,1.2);
21966     hRecoYPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed y");
21967     hRecoYPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21968     hRecoYPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21969     hRecoYPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21970     hRecoYPassUVVtxCutNQ->SetFillColor(0);
21971     hRecoYPassUVVtxCutNQ->SetLineColor(1);
21972     //hRecoYPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21973 
21974 
21975     hNMProbPassUVVtxCutNQ=new TH1F
21976     ("hNMProbPassUVVtxCutNQ","hNMProbPassUVVtxCutNQ",14000,-0.2,1.2);
21977     hNMProbPassUVVtxCutNQ->GetXaxis()->SetTitle("Fit Probability");
21978     hNMProbPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21979     hNMProbPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21980     hNMProbPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21981     hNMProbPassUVVtxCutNQ->SetFillColor(0);
21982     hNMProbPassUVVtxCutNQ->SetLineColor(1);
21983     hNMProbPassUVVtxCutNQ->SetLineWidth(2);
21984     hNMProbPassUVVtxCutNQ->SetLineStyle(2);
21985     //hNMProbPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21986     
21987     hNMBProbPassUVVtxCutNQ=new TH1F
21988     ("hNMBProbPassUVVtxCutNQ","hNMBProbPassUVVtxCutNQ",14000,-0.2,1.2);
21989     hNMBProbPassUVVtxCutNQ->GetXaxis()->SetTitle("Fit Probability");
21990     hNMBProbPassUVVtxCutNQ->GetXaxis()->CenterTitle();
21991     hNMBProbPassUVVtxCutNQ->GetYaxis()->SetTitle("");
21992     hNMBProbPassUVVtxCutNQ->GetYaxis()->CenterTitle();
21993     hNMBProbPassUVVtxCutNQ->SetFillColor(0);
21994     hNMBProbPassUVVtxCutNQ->SetLineColor(1);
21995     hNMBProbPassUVVtxCutNQ->SetLineWidth(2);
21996     hNMBProbPassUVVtxCutNQ->SetLineStyle(2);
21997     //hNMBProbPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
21998 
21999     hAllShwProbPassUVVtxCutNQ=new TH1F
22000     ("hAllShwProbPassUVVtxCutNQ",
22001     "hAllShwProbPassUVVtxCutNQ",14000,-0.2,1.2);
22002     hAllShwProbPassUVVtxCutNQ->GetXaxis()->SetTitle("Fit Probability");
22003     hAllShwProbPassUVVtxCutNQ->GetXaxis()->CenterTitle();
22004     hAllShwProbPassUVVtxCutNQ->GetYaxis()->SetTitle("");
22005     hAllShwProbPassUVVtxCutNQ->GetYaxis()->CenterTitle();
22006     hAllShwProbPassUVVtxCutNQ->SetFillColor(0);
22007     hAllShwProbPassUVVtxCutNQ->SetLineColor(1);
22008     hAllShwProbPassUVVtxCutNQ->SetLineWidth(2);
22009     hAllShwProbPassUVVtxCutNQ->SetLineStyle(2);
22010     //hAllShwProbPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
22011 
22012 
22013     hNMRecoEnPassUVVtxCutNQ=new TH1F
22014     ("hNMRecoEnPassUVVtxCutNQ","hNMRecoEnPassUVVtxCutNQ",4*352,-32,320);
22015     hNMRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22016     hNMRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
22017     hNMRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
22018     hNMRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
22019     hNMRecoEnPassUVVtxCutNQ->SetFillColor(0);
22020     hNMRecoEnPassUVVtxCutNQ->SetLineColor(1);
22021     //hNMRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
22022     
22023     hNMTrueEnPassUVVtxCutNQ=new TH1F
22024     ("hNMTrueEnPassUVVtxCutNQ","hNMTrueEnPassUVVtxCutNQ",4*352,-32,320);
22025     hNMTrueEnPassUVVtxCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
22026     hNMTrueEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
22027     hNMTrueEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
22028     hNMTrueEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
22029     hNMTrueEnPassUVVtxCutNQ->SetFillColor(0);
22030     hNMTrueEnPassUVVtxCutNQ->SetLineColor(1);
22031     //hNMTrueEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
22032 
22033     hNMBRecoEnPassUVVtxCutNQ=new TH1F("hNMBRecoEnPassUVVtxCutNQ",
22034     "hNMBRecoEnPassUVVtxCutNQ",
22035     4*352,-32,320);
22036     hNMBRecoEnPassUVVtxCutNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
22037     hNMBRecoEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
22038     hNMBRecoEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
22039     hNMBRecoEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
22040     hNMBRecoEnPassUVVtxCutNQ->SetFillColor(0);
22041     hNMBRecoEnPassUVVtxCutNQ->SetLineColor(1);
22042     //hNMBRecoEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
22043     
22044     hNMBTrueEnPassUVVtxCutNQ=new TH1F
22045     ("hNMBTrueEnPassUVVtxCutNQ","hNMBTrueEnPassUVVtxCutNQ",
22046     4*352,-32,320);
22047     hNMBTrueEnPassUVVtxCutNQ->GetXaxis()->SetTitle("True Energy (GeV)");
22048     hNMBTrueEnPassUVVtxCutNQ->GetXaxis()->CenterTitle();
22049     hNMBTrueEnPassUVVtxCutNQ->GetYaxis()->SetTitle("");
22050     hNMBTrueEnPassUVVtxCutNQ->GetYaxis()->CenterTitle();
22051     hNMBTrueEnPassUVVtxCutNQ->SetFillColor(0);
22052     hNMBTrueEnPassUVVtxCutNQ->SetLineColor(1);
22053     //hNMBTrueEnPassUVVtxCutNQ->SetBit(TH1::kCanRebin);
22054     }
22055   
22056     //PQ
22057     if (nu.charge==+1){
22058     hSigqp_qpPassUVVtxCutPQN->Fill(nu.sigqp_qp,nu.rw);
22059     hChi2PassUVVtxCutPQN->Fill(nu.chi2PerNdof,nu.rw);
22060     hProbPassUVVtxCutPQN->Fill(nu.prob,nu.rw);
22061     hDpIDPassUVVtxCutPQN->Fill(nu.dpID,nu.rw);
22062     
22063     hRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
22064     hRecoYPassUVVtxCutPQ->Fill(nu.y,nu.rw);
22065     }
22066     //NQ
22067     else if (nu.charge==-1){
22068     hSigqp_qpPassUVVtxCutNQN->Fill(nu.sigqp_qp,nu.rw);
22069     hChi2PassUVVtxCutNQN->Fill(nu.chi2PerNdof,nu.rw);
22070     hProbPassUVVtxCutNQN->Fill(nu.prob,nu.rw);
22071     hDpIDPassUVVtxCutNQN->Fill(nu.dpID,nu.rw);
22072 
22073     hRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
22074     hRecoYPassUVVtxCutNQ->Fill(nu.y,nu.rw);
22075     }
22076     else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
22077 
22078 
22079     //now fill the truth plots
22080     if (nu.iaction==1){//CC
22081     if (nu.inu==14){//NuMu
22082     hNMRecoEnPassUVVtxCut->Fill(nu.energy,nu.rw);
22083     hNMTrueEnPassUVVtxCut->Fill(nu.energyMC,nu.rw);
22084     if (nu.charge==+1) {
22085     hNMProbPassUVVtxCutPQ->Fill(nu.prob,nu.rw);
22086     hNMRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
22087     hNMTrueEnPassUVVtxCutPQ->Fill(nu.energyMC,nu.rw);
22088     }
22089     else if (nu.charge==-1){
22090     hNMProbPassUVVtxCutNQ->Fill(nu.prob,nu.rw);
22091     hNMRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
22092     hNMTrueEnPassUVVtxCutNQ->Fill(nu.energyMC,nu.rw);
22093     }
22094     }
22095     else if (nu.inu==-14){//NuMuBar
22096     hNMBRecoEnPassUVVtxCut->Fill(nu.energy,nu.rw);
22097     hNMBTrueEnPassUVVtxCut->Fill(nu.energyMC,nu.rw);
22098     if (nu.charge==+1) {
22099     hNMBProbPassUVVtxCutPQ->Fill(nu.prob,nu.rw);
22100     hNMBRecoEnPassUVVtxCutPQ->Fill(nu.energy,nu.rw);
22101     hNMBTrueEnPassUVVtxCutPQ->Fill(nu.energyMC,nu.rw);
22102     }
22103     else if (nu.charge==-1){
22104     hNMBProbPassUVVtxCutNQ->Fill(nu.prob,nu.rw);
22105     hNMBRecoEnPassUVVtxCutNQ->Fill(nu.energy,nu.rw);
22106     hNMBTrueEnPassUVVtxCutNQ->Fill(nu.energyMC,nu.rw);
22107     }
22108     }
22109     }
22110 
22111     //all but NuMu/NuMuBar CC
22112     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
22113     if (nu.charge==+1) {
22114     hAllShwProbPassUVVtxCutPQ->Fill(nu.prob,nu.rw);
22115     }
22116     else if (nu.charge==-1){
22117     hAllShwProbPassUVVtxCutNQ->Fill(nu.prob,nu.rw);
22118     }    
22119     }
22120   */
22121 }

void NuPlots::FillDPIdSigmaQPPlotsN const NuEvent nu  )  const
 

Definition at line 18521 of file NuPlots.cxx.

References NuEvent::abID, NuEvent::charge, NuEvent::chi2PerNdof, NuEvent::dpID, NuEvent::jPID, MAXMSG, NuEvent::medianTime, MSG, NuEvent::prob, NuEvent::qp, NuEvent::roID, NuEvent::rw, NuEvent::sigqp, NuEvent::sigqp_qp, NuEvent::timeEvtMax, NuEvent::timeEvtMin, NuEvent::timeNanoSec, and NuEvent::timeToNearestSpill.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::EnergySpect(), NuAnalysis::LIRejectionTest(), NuDSTAna::MakeFinalPlots(), and NuAnalysis::NMBSummaryTreeAna().

18522 { 
18523   //PQ
18524   static TH1F* hqpPQN=0;
18525   static TH1F* hSigqpPQN=0;
18526   static TH1F* hSigqp_qpPQN=0;
18527   static TH1F* hChi2PQN=0;
18528   static TH1F* hProbPQN=0;
18529   static TH1F* hDpIDPQN=0;
18530   static TH1F* hDpIDNoRwPQN=0;
18531   //static TH1F* hPoIDPQN=0;
18532   static TH1F* hRoIDPQN=0;
18533   static TH1F* hRoIDNoRwPQN=0;
18534   static TH1F* hAbIDPQN=0;
18535   static TH1F* hJeIDPQN=0;
18536   static TH1D* hEvtTimeWrtSpillPQN=0;
18537   static TH1D* hEvtMedianTimeWrtSpillPQN=0;
18538   static TH1D* hEvtTimeWrtTriggerPQN=0;
18539   static TH1D* hEventTimeLengthPQN=0;
18540   static TH1D* hEvtMedMinusMinPQN;
18541 
18542   //NQ
18543   static TH1F* hqpNQN=0;
18544   static TH1F* hSigqpNQN=0;
18545   static TH1F* hSigqp_qpNQN=0;
18546   static TH1F* hChi2NQN=0;
18547   static TH1F* hProbNQN=0;
18548   static TH1F* hDpIDNQN=0;
18549   static TH1F* hDpIDNoRwNQN=0;
18550   //static TH1F* hPoIDNQN=0;
18551   static TH1F* hRoIDNQN=0;
18552   static TH1F* hRoIDNoRwNQN=0;
18553   static TH1F* hAbIDNQN=0;
18554   static TH1F* hJeIDNQN=0;
18555   static TH1D* hEvtTimeWrtSpillNQN=0;
18556   static TH1D* hEvtMedianTimeWrtSpillNQN=0;
18557   static TH1D* hEvtTimeWrtTriggerNQN=0;
18558   static TH1D* hEventTimeLengthNQN=0;
18559   static TH1D* hEvtMedMinusMinNQN;
18560 
18561   Double_t medianTimeWrtTrigger=nu.medianTime-(nu.timeNanoSec*(Munits::ns));
18562 
18563   if (!hChi2NQN){
18564     MAXMSG("NuPlots",Msg::kDebug,1)
18565       <<"Creating DPIdSigmaQPPlotsN plots..."<<endl;
18566     
18567     //PQ
18568     hqpPQN=new TH1F("hqpPQN","hqpPQN",200*160,-16,16);
18569     hqpPQN->GetXaxis()->SetTitle("Q/P");
18570     hqpPQN->GetXaxis()->CenterTitle();
18571     hqpPQN->GetYaxis()->SetTitle("");
18572     hqpPQN->GetYaxis()->CenterTitle();
18573     hqpPQN->SetFillColor(0);
18574     hqpPQN->SetLineColor(1);
18575     hqpPQN->SetLineWidth(2);
18576     hqpPQN->SetLineStyle(2);
18577     //hqpPQN->SetBit(TH1::kCanRebin);
18578 
18579     //PQ
18580     hSigqpPQN=new TH1F("hSigqpPQN","hSigqpPQN",200*160,-16,16);
18581     hSigqpPQN->GetXaxis()->SetTitle("#sigma(Q/P)");
18582     hSigqpPQN->GetXaxis()->CenterTitle();
18583     hSigqpPQN->GetYaxis()->SetTitle("");
18584     hSigqpPQN->GetYaxis()->CenterTitle();
18585     hSigqpPQN->SetFillColor(0);
18586     hSigqpPQN->SetLineColor(1);
18587     hSigqpPQN->SetLineWidth(2);
18588     hSigqpPQN->SetLineStyle(2);
18589     //hSigqpPQN->SetBit(TH1::kCanRebin);
18590 
18591     //PQ
18592     hSigqp_qpPQN=new TH1F("hSigqp_qpPQN","hSigqp_qpPQN",800*160,-160,160);
18593     hSigqp_qpPQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
18594     hSigqp_qpPQN->GetXaxis()->CenterTitle();
18595     hSigqp_qpPQN->GetYaxis()->SetTitle("");
18596     hSigqp_qpPQN->GetYaxis()->CenterTitle();
18597     hSigqp_qpPQN->SetFillColor(0);
18598     hSigqp_qpPQN->SetLineColor(1);
18599     hSigqp_qpPQN->SetLineWidth(2);
18600     hSigqp_qpPQN->SetLineStyle(2);
18601     //hSigqp_qpPQN->SetBit(TH1::kCanRebin);
18602 
18603     hChi2PQN=new TH1F("hChi2PQN","hChi2PQN",10*176,-16,160);
18604     hChi2PQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
18605     hChi2PQN->GetXaxis()->CenterTitle();
18606     hChi2PQN->GetYaxis()->SetTitle("");
18607     hChi2PQN->GetYaxis()->CenterTitle();
18608     hChi2PQN->SetFillColor(0);
18609     hChi2PQN->SetLineColor(1);
18610     hChi2PQN->SetLineWidth(2);
18611     hChi2PQN->SetLineStyle(2);
18612     //hChi2PQN->SetBit(TH1::kCanRebin);
18613 
18614     hProbPQN=new TH1F("hProbPQN","hProbPQN",14000,-0.2,1.2);
18615     //hProbPQN=new TH1F("hProbPQN","hProbPQN",10*160,-0.5,1.5);
18616     hProbPQN->GetXaxis()->SetTitle("Fit Probability");
18617     hProbPQN->GetXaxis()->CenterTitle();
18618     hProbPQN->GetYaxis()->SetTitle("");
18619     hProbPQN->GetYaxis()->CenterTitle();
18620     hProbPQN->SetFillColor(0);
18621     hProbPQN->SetLineColor(1);
18622     hProbPQN->SetLineWidth(2);
18623     hProbPQN->SetLineStyle(2);
18624     //hProbPQN->SetBit(TH1::kCanRebin);
18625 
18626     hDpIDPQN=new TH1F("hDpIDPQN","hDpIDPQN",4*160,-1.6,1.6);
18627     hDpIDPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
18628     hDpIDPQN->GetXaxis()->CenterTitle();
18629     hDpIDPQN->GetYaxis()->SetTitle("");
18630     hDpIDPQN->GetYaxis()->CenterTitle();
18631     hDpIDPQN->SetFillColor(0);
18632     hDpIDPQN->SetLineColor(1);
18633     hDpIDPQN->SetLineWidth(2);
18634     //hDpIDPQN->SetBit(TH1::kCanRebin);
18635 
18636     hDpIDNoRwPQN=new TH1F("hDpIDNoRwPQN","hDpIDNoRwPQN",4*160,-1.6,1.6);
18637     hDpIDNoRwPQN->GetXaxis()->SetTitle("PID (from MadDpID)");
18638     hDpIDNoRwPQN->GetXaxis()->CenterTitle();
18639     hDpIDNoRwPQN->GetYaxis()->SetTitle("");
18640     hDpIDNoRwPQN->GetYaxis()->CenterTitle();
18641     hDpIDNoRwPQN->SetFillColor(0);
18642     hDpIDNoRwPQN->SetLineColor(1);
18643     hDpIDNoRwPQN->SetLineWidth(2);
18644     //hDpIDNoRwPQN->SetBit(TH1::kCanRebin);
18645 
18646     // PoID Officially depracated
18647 //    hPoIDPQN=new TH1F("hPoIDPQN","hPoIDPQN",4*320,-3.2,3.2);
18648 //    hPoIDPQN->GetXaxis()->SetTitle("PID (from NuBarPID)");
18649 //    hPoIDPQN->GetXaxis()->CenterTitle();
18650 //    hPoIDPQN->GetYaxis()->SetTitle("");
18651 //    hPoIDPQN->GetYaxis()->CenterTitle();
18652 //    hPoIDPQN->SetFillColor(0);
18653 //    hPoIDPQN->SetLineColor(1);
18654 //    hPoIDPQN->SetLineWidth(2);
18655 //    //hPoIDPQN->SetBit(TH1::kCanRebin);
18656 
18657     hRoIDPQN=new TH1F("hRoIDPQN","hRoIDPQN",4*320,-3.2,3.2);
18658     hRoIDPQN->GetXaxis()->SetTitle("PID (from Rustem O)");
18659     hRoIDPQN->GetXaxis()->CenterTitle();
18660     hRoIDPQN->GetYaxis()->SetTitle("");
18661     hRoIDPQN->GetYaxis()->CenterTitle();
18662     hRoIDPQN->SetFillColor(0);
18663     hRoIDPQN->SetLineColor(1);
18664     hRoIDPQN->SetLineWidth(2);
18665     //hRoIDPQN->SetBit(TH1::kCanRebin);
18666 
18667 
18668     hRoIDNoRwPQN=new TH1F("hRoIDNoRwPQN","hRoIDNoRwPQN",4*320,-3.2,3.2);
18669     hRoIDNoRwPQN->GetXaxis()->SetTitle("PID (from Rustem O)");
18670     hRoIDNoRwPQN->GetXaxis()->CenterTitle();
18671     hRoIDNoRwPQN->GetYaxis()->SetTitle("");
18672     hRoIDNoRwPQN->GetYaxis()->CenterTitle();
18673     hRoIDNoRwPQN->SetFillColor(0);
18674     hRoIDNoRwPQN->SetLineColor(1);
18675     hRoIDNoRwPQN->SetLineWidth(2);
18676     //hRoIDNoRwPQN->SetBit(TH1::kCanRebin);
18677 
18678     hAbIDPQN=new TH1F("hAbIDPQN","hAbIDPQN",4*320,-3.2,3.2);
18679     hAbIDPQN->GetXaxis()->SetTitle("PID (from Andy B)");
18680     hAbIDPQN->GetXaxis()->CenterTitle();
18681     hAbIDPQN->GetYaxis()->SetTitle("");
18682     hAbIDPQN->GetYaxis()->CenterTitle();
18683     hAbIDPQN->SetFillColor(0);
18684     hAbIDPQN->SetLineColor(1);
18685     hAbIDPQN->SetLineWidth(2);
18686     //hAbIDPQN->SetBit(TH1::kCanRebin);
18687 
18688     hJeIDPQN=new TH1F("hJeIDPQN","hJeIDPQN",4*320,-3.2,3.2);
18689     hJeIDPQN->GetXaxis()->SetTitle("PID (from Justin E)");
18690     hJeIDPQN->GetXaxis()->CenterTitle();
18691     hJeIDPQN->GetYaxis()->SetTitle("");
18692     hJeIDPQN->GetYaxis()->CenterTitle();
18693     hJeIDPQN->SetFillColor(0);
18694     hJeIDPQN->SetLineColor(1);
18695     hJeIDPQN->SetLineWidth(2);
18696     //hJeIDPQN->SetBit(TH1::kCanRebin);
18697 
18698     //10 ns resolution
18699     hEvtTimeWrtSpillPQN=new TH1D
18700       ("hEvtTimeWrtSpillPQN","hEvtTimeWrtSpillPQN",20000,
18701        -100*(Munits::microsecond),
18702        +100*(Munits::microsecond));
18703     hEvtTimeWrtSpillPQN->GetXaxis()->
18704       SetTitle("Event time - beam spill time (s)");
18705     hEvtTimeWrtSpillPQN->GetXaxis()->CenterTitle();
18706     hEvtTimeWrtSpillPQN->GetYaxis()->SetTitle("");
18707     hEvtTimeWrtSpillPQN->GetYaxis()->CenterTitle();
18708     hEvtTimeWrtSpillPQN->SetFillColor(0);
18709     //hEvtTimeWrtSpillPQN->SetBit(TH1::kCanRebin);
18710 
18711 
18712     //10 ns resolution
18713     hEvtMedianTimeWrtSpillPQN=new TH1D
18714       ("hEvtMedianTimeWrtSpillPQN","hEvtMedianTimeWrtSpillPQN",20000,
18715        -100*(Munits::microsecond),
18716        +100*(Munits::microsecond));
18717     hEvtMedianTimeWrtSpillPQN->GetXaxis()->
18718       SetTitle("Event median time - beam spill time (s)");
18719     hEvtMedianTimeWrtSpillPQN->GetXaxis()->CenterTitle();
18720     hEvtMedianTimeWrtSpillPQN->GetYaxis()->SetTitle("");
18721     hEvtMedianTimeWrtSpillPQN->GetYaxis()->CenterTitle();
18722     hEvtMedianTimeWrtSpillPQN->SetFillColor(0);
18723     //hEvtMedianTimeWrtSpillPQN->SetBit(TH1::kCanRebin);
18724 
18725     //10 ns resolution
18726     hEvtMedMinusMinPQN=new TH1D
18727       ("hEvtMedMinusMinPQN","hEvtMedMinusMinPQN",20000,
18728        -100*(Munits::microsecond),
18729        +100*(Munits::microsecond));
18730     hEvtMedMinusMinPQN->GetXaxis()->
18731       SetTitle("(Event median time - Event time) (s)");
18732     hEvtMedMinusMinPQN->GetXaxis()->CenterTitle();
18733     hEvtMedMinusMinPQN->GetYaxis()->SetTitle("");
18734     hEvtMedMinusMinPQN->GetYaxis()->CenterTitle();
18735     hEvtMedMinusMinPQN->SetFillColor(0);
18736     //hEvtMedMinusMinPQN->SetBit(TH1::kCanRebin);
18737   
18738     //10 ns resolution
18739     hEvtTimeWrtTriggerPQN=new TH1D
18740       ("hEvtTimeWrtTriggerPQN","hEvtTimeWrtTriggerPQN",20000,
18741        -100*(Munits::microsecond),
18742        +100*(Munits::microsecond));
18743     hEvtTimeWrtTriggerPQN->GetXaxis()->
18744       SetTitle("Event time - trigger time (s)");
18745     hEvtTimeWrtTriggerPQN->GetXaxis()->CenterTitle();
18746     hEvtTimeWrtTriggerPQN->GetYaxis()->SetTitle("");
18747     hEvtTimeWrtTriggerPQN->GetYaxis()->CenterTitle();
18748     hEvtTimeWrtTriggerPQN->SetFillColor(0);
18749     //hEvtTimeWrtTriggerPQN->SetBit(TH1::kCanRebin);
18750 
18751     //10 ns resolution
18752     hEventTimeLengthPQN=new TH1D
18753       ("hEventTimeLengthPQN","hEventTimeLengthPQN",20000,
18754        -100*(Munits::microsecond),
18755        +100*(Munits::microsecond));
18756     hEventTimeLengthPQN->GetXaxis()->SetTitle("Event length (s)");
18757     hEventTimeLengthPQN->GetXaxis()->CenterTitle();
18758     hEventTimeLengthPQN->GetYaxis()->SetTitle("");
18759     hEventTimeLengthPQN->GetYaxis()->CenterTitle();
18760     hEventTimeLengthPQN->SetFillColor(0);
18761     //hEventTimeLengthPQN->SetBit(TH1::kCanRebin);
18762 
18763 
18764     //NQ
18765     hqpNQN=new TH1F("hqpNQN","hqpNQN",200*160,-16,16);
18766     hqpNQN->GetXaxis()->SetTitle("Q/P");
18767     hqpNQN->GetXaxis()->CenterTitle();
18768     hqpNQN->GetYaxis()->SetTitle("");
18769     hqpNQN->GetYaxis()->CenterTitle();
18770     hqpNQN->SetFillColor(0);
18771     hqpNQN->SetLineColor(1);
18772     hqpNQN->SetLineWidth(2);
18773     hqpNQN->SetLineStyle(2);
18774     //hqpNQN->SetBit(TH1::kCanRebin);
18775 
18776     hSigqpNQN=new TH1F("hSigqpNQN","hSigqpNQN",200*160,-16,16);
18777     hSigqpNQN->GetXaxis()->SetTitle("#sigma(Q/P)");
18778     hSigqpNQN->GetXaxis()->CenterTitle();
18779     hSigqpNQN->GetYaxis()->SetTitle("");
18780     hSigqpNQN->GetYaxis()->CenterTitle();
18781     hSigqpNQN->SetFillColor(0);
18782     hSigqpNQN->SetLineColor(1);
18783     hSigqpNQN->SetLineWidth(2);
18784     hSigqpNQN->SetLineStyle(2);
18785     //hSigqpNQN->SetBit(TH1::kCanRebin);
18786 
18787     hSigqp_qpNQN=new TH1F("hSigqp_qpNQN","hSigqp_qpNQN",800*160,-160,160);
18788     hSigqp_qpNQN->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
18789     hSigqp_qpNQN->GetXaxis()->CenterTitle();
18790     hSigqp_qpNQN->GetYaxis()->SetTitle("");
18791     hSigqp_qpNQN->GetYaxis()->CenterTitle();
18792     hSigqp_qpNQN->SetFillColor(0);
18793     hSigqp_qpNQN->SetLineColor(1);
18794     hSigqp_qpNQN->SetLineWidth(2);
18795     hSigqp_qpNQN->SetLineStyle(2);
18796     //hSigqp_qpNQN->SetBit(TH1::kCanRebin);
18797 
18798     hChi2NQN=new TH1F("hChi2NQN","hChi2NQN",10*176,-16,160);
18799     hChi2NQN->GetXaxis()->SetTitle("#chi^{2}/ndof");
18800     hChi2NQN->GetXaxis()->CenterTitle();
18801     hChi2NQN->GetYaxis()->SetTitle("");
18802     hChi2NQN->GetYaxis()->CenterTitle();
18803     hChi2NQN->SetFillColor(0);
18804     hChi2NQN->SetLineColor(1);
18805     hChi2NQN->SetLineWidth(2);
18806     hChi2NQN->SetLineStyle(2);
18807     //hChi2NQN->SetBit(TH1::kCanRebin);
18808 
18809     hProbNQN=new TH1F("hProbNQN","hProbNQN",14000,-0.2,1.2);
18810     hProbNQN->GetXaxis()->SetTitle("Fit Probability");
18811     hProbNQN->GetXaxis()->CenterTitle();
18812     hProbNQN->GetYaxis()->SetTitle("");
18813     hProbNQN->GetYaxis()->CenterTitle();
18814     hProbNQN->SetFillColor(0);
18815     hProbNQN->SetLineColor(1);
18816     hProbNQN->SetLineWidth(2);
18817     hProbNQN->SetLineStyle(2);
18818     //hProbNQN->SetBit(TH1::kCanRebin);
18819 
18820     hDpIDNQN=new TH1F("hDpIDNQN","hDpIDNQN",4*160,-1.6,1.6);
18821     hDpIDNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
18822     hDpIDNQN->GetXaxis()->CenterTitle();
18823     hDpIDNQN->GetYaxis()->SetTitle("");
18824     hDpIDNQN->GetYaxis()->CenterTitle();
18825     hDpIDNQN->SetFillColor(0);
18826     hDpIDNQN->SetLineColor(1);
18827     hDpIDNQN->SetLineWidth(2);
18828     //hDpIDNQN->SetBit(TH1::kCanRebin);
18829 
18830     hDpIDNoRwNQN=new TH1F("hDpIDNoRwNQN","hDpIDNoRwNQN",4*160,-1.6,1.6);
18831     hDpIDNoRwNQN->GetXaxis()->SetTitle("PID (from MadDpID)");
18832     hDpIDNoRwNQN->GetXaxis()->CenterTitle();
18833     hDpIDNoRwNQN->GetYaxis()->SetTitle("");
18834     hDpIDNoRwNQN->GetYaxis()->CenterTitle();
18835     hDpIDNoRwNQN->SetFillColor(0);
18836     hDpIDNoRwNQN->SetLineColor(1);
18837     hDpIDNoRwNQN->SetLineWidth(2);
18838     //hDpIDNoRwNQN->SetBit(TH1::kCanRebin);
18839 
18840     // PoID Officially depracated
18841 //    hPoIDNQN=new TH1F("hPoIDNQN","hPoIDNQN",4*320,-3.2,3.2);
18842 //    hPoIDNQN->GetXaxis()->SetTitle("PID (from NuBarPID)");
18843 //    hPoIDNQN->GetXaxis()->CenterTitle();
18844 //    hPoIDNQN->GetYaxis()->SetTitle("");
18845 //    hPoIDNQN->GetYaxis()->CenterTitle();
18846 //    hPoIDNQN->SetFillColor(0);
18847 //    hPoIDNQN->SetLineColor(1);
18848 //    hPoIDNQN->SetLineWidth(2);
18849 //    //hPoIDNQN->SetBit(TH1::kCanRebin);
18850 
18851     hRoIDNQN=new TH1F("hRoIDNQN","hRoIDNQN",4*320,-3.2,3.2);
18852     hRoIDNQN->GetXaxis()->SetTitle("PID (from Rustem O)");
18853     hRoIDNQN->GetXaxis()->CenterTitle();
18854     hRoIDNQN->GetYaxis()->SetTitle("");
18855     hRoIDNQN->GetYaxis()->CenterTitle();
18856     hRoIDNQN->SetFillColor(0);
18857     hRoIDNQN->SetLineColor(1);
18858     hRoIDNQN->SetLineWidth(2);
18859     //hRoIDNQN->SetBit(TH1::kCanRebin);
18860 
18861     hRoIDNoRwNQN=new TH1F("hRoIDNoRwNQN","hRoIDNoRwNQN",4*320,-3.2,3.2);
18862     hRoIDNoRwNQN->GetXaxis()->SetTitle("PID (from Rustem O)");
18863     hRoIDNoRwNQN->GetXaxis()->CenterTitle();
18864     hRoIDNoRwNQN->GetYaxis()->SetTitle("");
18865     hRoIDNoRwNQN->GetYaxis()->CenterTitle();
18866     hRoIDNoRwNQN->SetFillColor(0);
18867     hRoIDNoRwNQN->SetLineColor(1);
18868     hRoIDNoRwNQN->SetLineWidth(2);
18869     //hRoIDNoRwNQN->SetBit(TH1::kCanRebin);
18870 
18871     hAbIDNQN=new TH1F("hAbIDNQN","hAbIDNQN",4*320,-3.2,3.2);
18872     hAbIDNQN->GetXaxis()->SetTitle("PID (from Andy B)");
18873     hAbIDNQN->GetXaxis()->CenterTitle();
18874     hAbIDNQN->GetYaxis()->SetTitle("");
18875     hAbIDNQN->GetYaxis()->CenterTitle();
18876     hAbIDNQN->SetFillColor(0);
18877     hAbIDNQN->SetLineColor(1);
18878     hAbIDNQN->SetLineWidth(2);
18879     //hAbIDNQN->SetBit(TH1::kCanRebin);
18880 
18881     hJeIDNQN=new TH1F("hJeIDNQN","hJeIDNQN",4*320,-3.2,3.2);
18882     hJeIDNQN->GetXaxis()->SetTitle("PID (from Justin E)");
18883     hJeIDNQN->GetXaxis()->CenterTitle();
18884     hJeIDNQN->GetYaxis()->SetTitle("");
18885     hJeIDNQN->GetYaxis()->CenterTitle();
18886     hJeIDNQN->SetFillColor(0);
18887     hJeIDNQN->SetLineColor(1);
18888     hJeIDNQN->SetLineWidth(2);
18889     //hJeIDNQN->SetBit(TH1::kCanRebin);
18890 
18891     //10 ns resolution
18892     hEvtTimeWrtSpillNQN=new TH1D
18893       ("hEvtTimeWrtSpillNQN","hEvtTimeWrtSpillNQN",20000,
18894        -100*(Munits::microsecond),
18895        +100*(Munits::microsecond));
18896     hEvtTimeWrtSpillNQN->GetXaxis()->
18897       SetTitle("Event time - beam spill time (s)");
18898     hEvtTimeWrtSpillNQN->GetXaxis()->CenterTitle();
18899     hEvtTimeWrtSpillNQN->GetYaxis()->SetTitle("");
18900     hEvtTimeWrtSpillNQN->GetYaxis()->CenterTitle();
18901     hEvtTimeWrtSpillNQN->SetFillColor(0);
18902     //hEvtTimeWrtSpillNQN->SetBit(TH1::kCanRebin);
18903 
18904     //10 ns resolution
18905     hEvtMedianTimeWrtSpillNQN=new TH1D
18906       ("hEvtMedianTimeWrtSpillNQN","hEvtMedianTimeWrtSpillNQN",20000,
18907        -100*(Munits::microsecond),
18908        +100*(Munits::microsecond));
18909     hEvtMedianTimeWrtSpillNQN->GetXaxis()->
18910       SetTitle("Event median time - beam spill time (s)");
18911     hEvtMedianTimeWrtSpillNQN->GetXaxis()->CenterTitle();
18912     hEvtMedianTimeWrtSpillNQN->GetYaxis()->SetTitle("");
18913     hEvtMedianTimeWrtSpillNQN->GetYaxis()->CenterTitle();
18914     hEvtMedianTimeWrtSpillNQN->SetFillColor(0);
18915     //hEvtMedianTimeWrtSpillNQN->SetBit(TH1::kCanRebin);
18916 
18917     //10 ns resolution
18918     hEvtMedMinusMinNQN=new TH1D
18919       ("hEvtMedMinusMinNQN","hEvtMedMinusMinNQN",20000,
18920        -100*(Munits::microsecond),
18921        +100*(Munits::microsecond));
18922     hEvtMedMinusMinNQN->GetXaxis()->
18923       SetTitle("(Event median time - Event time) (s)");
18924     hEvtMedMinusMinNQN->GetXaxis()->CenterTitle();
18925     hEvtMedMinusMinNQN->GetYaxis()->SetTitle("");
18926     hEvtMedMinusMinNQN->GetYaxis()->CenterTitle();
18927     hEvtMedMinusMinNQN->SetFillColor(0);
18928     //hEvtMedMinusMinNQN->SetBit(TH1::kCanRebin);
18929 
18930     //10 ns resolution
18931     hEvtTimeWrtTriggerNQN=new TH1D
18932       ("hEvtTimeWrtTriggerNQN","hEvtTimeWrtTriggerNQN",20000,
18933        -100*(Munits::microsecond),
18934        +100*(Munits::microsecond));
18935     hEvtTimeWrtTriggerNQN->GetXaxis()->
18936       SetTitle("Event time - trigger time (s)");
18937     hEvtTimeWrtTriggerNQN->GetXaxis()->CenterTitle();
18938     hEvtTimeWrtTriggerNQN->GetYaxis()->SetTitle("");
18939     hEvtTimeWrtTriggerNQN->GetYaxis()->CenterTitle();
18940     hEvtTimeWrtTriggerNQN->SetFillColor(0);
18941     //hEvtTimeWrtTriggerNQN->SetBit(TH1::kCanRebin);
18942 
18943     //10 ns resolution
18944     hEventTimeLengthNQN=new TH1D
18945       ("hEventTimeLengthNQN","hEventTimeLengthNQN",20000,
18946        -100*(Munits::microsecond),
18947        +100*(Munits::microsecond));
18948     hEventTimeLengthNQN->GetXaxis()->SetTitle("Event length (s)");
18949     hEventTimeLengthNQN->GetXaxis()->CenterTitle();
18950     hEventTimeLengthNQN->GetYaxis()->SetTitle("");
18951     hEventTimeLengthNQN->GetYaxis()->CenterTitle();
18952     hEventTimeLengthNQN->SetFillColor(0);
18953     //hEventTimeLengthNQN->SetBit(TH1::kCanRebin);
18954   }
18955   
18956   //PQ
18957   if (nu.charge==+1){
18958     hqpPQN->Fill(nu.qp,nu.rw);
18959     hSigqpPQN->Fill(nu.sigqp,nu.rw);
18960     hSigqp_qpPQN->Fill(nu.sigqp_qp,nu.rw);
18961     hChi2PQN->Fill(nu.chi2PerNdof,nu.rw);
18962     hProbPQN->Fill(nu.prob,nu.rw);
18963     hDpIDPQN->Fill(nu.dpID,nu.rw);
18964     hDpIDNoRwPQN->Fill(nu.dpID);
18965     // PoID Officially depracated
18966     //hPoIDPQN->Fill(nu.poID,nu.rw);
18967     hRoIDPQN->Fill(nu.roID,nu.rw);
18968     hRoIDNoRwPQN->Fill(nu.roID);
18969     hAbIDPQN->Fill(nu.abID,nu.rw);
18970     hJeIDPQN->Fill(nu.jPID,nu.rw);
18971     hEvtTimeWrtSpillPQN->Fill(nu.timeEvtMin-nu.timeToNearestSpill,nu.rw);
18972     hEvtMedianTimeWrtSpillPQN->Fill(medianTimeWrtTrigger-nu.timeToNearestSpill,nu.rw);
18973     hEvtMedMinusMinPQN->Fill(medianTimeWrtTrigger-nu.timeEvtMin,nu.rw);
18974     hEvtTimeWrtTriggerPQN->Fill(nu.timeEvtMin,nu.rw);
18975     hEventTimeLengthPQN->Fill(nu.timeEvtMax-nu.timeEvtMin,nu.rw);
18976   }
18977   //NQ
18978   else if (nu.charge==-1){
18979     hqpNQN->Fill(nu.qp,nu.rw);
18980     hSigqpNQN->Fill(nu.sigqp,nu.rw);
18981     hSigqp_qpNQN->Fill(nu.sigqp_qp,nu.rw);
18982     hChi2NQN->Fill(nu.chi2PerNdof,nu.rw);
18983     hProbNQN->Fill(nu.prob,nu.rw);
18984     hDpIDNQN->Fill(nu.dpID,nu.rw);
18985     hDpIDNoRwNQN->Fill(nu.dpID);
18986     // PoID Officially depracated
18987     //hPoIDNQN->Fill(nu.poID,nu.rw);
18988     hRoIDNQN->Fill(nu.roID,nu.rw);
18989     hRoIDNoRwNQN->Fill(nu.roID);
18990     hAbIDNQN->Fill(nu.abID,nu.rw);
18991     hJeIDNQN->Fill(nu.jPID,nu.rw);
18992     hEvtTimeWrtSpillNQN->Fill(nu.timeEvtMin-nu.timeToNearestSpill,nu.rw);
18993     hEvtMedianTimeWrtSpillNQN->Fill(medianTimeWrtTrigger-nu.timeToNearestSpill,nu.rw);
18994     hEvtMedMinusMinNQN->Fill(medianTimeWrtTrigger-nu.timeEvtMin,nu.rw);
18995     hEvtTimeWrtTriggerNQN->Fill(nu.timeEvtMin,nu.rw);
18996     hEventTimeLengthNQN->Fill(nu.timeEvtMax-nu.timeEvtMin,nu.rw);
18997   }
18998   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
18999 }

void NuPlots::FillEffPur const NuEvent nu,
bool  sel
const
 

Definition at line 26975 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::dpID, NuEvent::energy, NuEvent::iaction, NuEvent::inu, and NuEvent::rw.

Referenced by NuDSTAna::CSSAna().

26976 {
26977 
26978   static TH1F* Selected;
26979   static TH1F* SelectedTrue;
26980   static TH1F* SelectedFalse;
26981   static TH1F* AllTrue;
26982   static TH1F* SelectedNC;
26983   static TH1F* SelectedTrueNC;
26984   static TH1F* SelectedFalseNC;
26985   static float bins[11] = {0,2,4,6,8,10,12,16,20,24,30};
26986 
26987   if (!Selected) {
26988     Selected = new TH1F("hSelected", "Selected;Reconstructed Energy (GeV)", 10, bins);
26989     SelectedTrue = new TH1F("hSelectedTrue", "Selected True;Reconstructed Energy (GeV)", 10, bins);
26990     SelectedFalse = new TH1F("hSelectedFalse", "Selected False;Reconstructed Energy (GeV)", 10, bins);
26991     AllTrue = new TH1F("hAllTrue", "All True;Reconstructed Energy (GeV)", 10, bins);
26992     SelectedNC = new TH1F("hSelectedNC", "Selected w/ NC;Reconstructed Energy (GeV)", 10, bins);
26993     SelectedTrueNC = new TH1F("hSelectedTrueNC", "Selected True w/ NC;Reconstructed Energy (GeV)", 10, bins);
26994     SelectedFalseNC = new TH1F("hSelectedFalseNC", "Selected False w/ NC;Reconstructed Energy (GeV)", 10, bins);
26995   }
26996 
26997   bool btrue = (nu.inu == -14 && nu.iaction == 1);
26998   bool bnc   = nu.dpID > 0.4;
26999   bool bsel  = (bpid && nu.charge == +1);
27000 
27001   if (btrue) {
27002     AllTrue->Fill(nu.energy,nu.rw);
27003   }
27004 
27005   if (bsel) {
27006     Selected->Fill(nu.energy,nu.rw);
27007     if (btrue)
27008       SelectedTrue->Fill(nu.energy,nu.rw);
27009     else
27010       SelectedFalse->Fill(nu.energy,nu.rw);
27011     
27012     if (bnc) {
27013       SelectedNC->Fill(nu.energy,nu.rw);
27014       if (btrue)
27015         SelectedTrueNC->Fill(nu.energy,nu.rw);
27016       else
27017         SelectedFalseNC->Fill(nu.energy,nu.rw);
27018     }
27019   }
27020 }

void NuPlots::FillEnergyBinHistos const NuEvent nu  )  const
 

Definition at line 25512 of file NuPlots.cxx.

References NuEvent::abID, NuEvent::charge, NuEvent::chi2PerNdof, NuEvent::dpID, NuEvent::energy, Form(), NuEvent::iaction, NuEvent::inu, NuEvent::jPID, max, MAXMSG, min, MSG, NuEvent::prob, NuEvent::qp, NuEvent::roID, NuEvent::rw, s(), NuEvent::shwEn, NuEvent::sigqp, NuEvent::sigqp_qp, NuEvent::trkEn, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::LIRejectionTest(), NuDSTAna::MakeFinalPlots(), NuDSTAna::NMBAna(), and NuAnalysis::NMBSummaryTreeAna().

25513 {
25514   const Float_t min=0*(Munits::GeV);
25515   const Float_t max=30*(Munits::GeV);
25516   const Float_t binSize=2*(Munits::GeV);
25517   const Int_t bins=static_cast<Int_t>((max-min)/binSize);
25518 
25519   //decide which variable to use
25520   //Float_t energy=nu.energy;
25521   Float_t energy=nu.trkEn;
25522 
25523   //cap the energy in order to cap the index to avoid overflow
25524   if (energy>=max) energy=max-0.01*(Munits::GeV);
25525 
25526   //calc the index to access histos in the vectors
25527   Int_t index=static_cast<Int_t>(energy/binSize);
25528   MAXMSG("NuPlots",Msg::kDebug,4)
25529     <<"FillEnergyBinHistos:: energy="<<energy<<", index="<<index
25530     <<", bins="<<bins<<endl;
25531 
25532   if (index>=30) {
25533     MSG("NuPlots",Msg::kWarning)
25534       <<"FillEnergyBinHistos::energy="<<energy<<", index="<<index
25535       <<", bins="<<bins<<endl;
25536   }
25537 
25538   static Bool_t firstTime=true;
25539 
25540   //PQ
25541   static vector<TH1F*> vhRecoEnPQ(bins);
25542   static vector<TH1F*> vhRecoEnNMBPQ(bins);
25543   static vector<TH1F*> vhRecoEnNMPQ(bins);
25544   static vector<TH1F*> vhRecoEnAllShwPQ(bins);
25545   static vector<TH1F*> vhRecoEnTrkPQ(bins);
25546   static vector<TH1F*> vhRecoEnTrkNMBPQ(bins);
25547   static vector<TH1F*> vhRecoEnTrkNMPQ(bins);
25548   static vector<TH1F*> vhRecoEnTrkAllShwPQ(bins);
25549   static vector<TH1F*> vhRecoEnShwPQ(bins);
25550   static vector<TH1F*> vhRecoEnShwNMBPQ(bins);
25551   static vector<TH1F*> vhRecoEnShwNMPQ(bins);
25552   static vector<TH1F*> vhRecoEnShwAllShwPQ(bins);
25553   static vector<TH1F*> vhRecoYPQ(bins);
25554   static vector<TH1F*> vhRecoYNMBPQ(bins);
25555   static vector<TH1F*> vhRecoYNMPQ(bins);
25556   static vector<TH1F*> vhRecoYAllShwPQ(bins);
25557 
25558   static vector<TH1F*> vhqpPQ(bins);
25559   static vector<TH1F*> vhqpNMBPQ(bins);
25560   static vector<TH1F*> vhqpNMPQ(bins);
25561   static vector<TH1F*> vhqpAllShwPQ(bins);
25562   static vector<TH1F*> vhSigqpPQ(bins);
25563   static vector<TH1F*> vhSigqpNMBPQ(bins);
25564   static vector<TH1F*> vhSigqpNMPQ(bins);
25565   static vector<TH1F*> vhSigqpAllShwPQ(bins);
25566   static vector<TH1F*> vhSigqp_qpPQ(bins);
25567   static vector<TH1F*> vhSigqp_qpNMBPQ(bins);
25568   static vector<TH1F*> vhSigqp_qpNMPQ(bins);
25569   static vector<TH1F*> vhSigqp_qpAllShwPQ(bins);
25570   static vector<TH1F*> vhChi2PQ(bins);
25571   static vector<TH1F*> vhChi2NMBPQ(bins);
25572   static vector<TH1F*> vhChi2NMPQ(bins);
25573   static vector<TH1F*> vhChi2AllShwPQ(bins);
25574   static vector<TH1F*> vhProbPQ(bins);
25575   static vector<TH1F*> vhProbNMBPQ(bins);
25576   static vector<TH1F*> vhProbNMPQ(bins);
25577   static vector<TH1F*> vhProbAllShwPQ(bins);
25578   static vector<TH1F*> vhDpIDPQ(bins);
25579   static vector<TH1F*> vhDpIDNMBPQ(bins);
25580   static vector<TH1F*> vhDpIDNMPQ(bins);
25581   static vector<TH1F*> vhDpIDAllShwPQ(bins);
25582   // PoID Officially depracated
25583   //static vector<TH1F*> vhPoIDPQ(bins);
25584   //static vector<TH1F*> vhPoIDNMBPQ(bins);
25585   //static vector<TH1F*> vhPoIDNMPQ(bins);
25586   //static vector<TH1F*> vhPoIDAllShwPQ(bins);
25587   static vector<TH1F*> vhRoIDPQ(bins);
25588   static vector<TH1F*> vhRoIDNMBPQ(bins);
25589   static vector<TH1F*> vhRoIDNMPQ(bins);
25590   static vector<TH1F*> vhRoIDAllShwPQ(bins);
25591   static vector<TH1F*> vhAbIDPQ(bins);
25592   static vector<TH1F*> vhAbIDNMBPQ(bins);
25593   static vector<TH1F*> vhAbIDNMPQ(bins);
25594   static vector<TH1F*> vhAbIDAllShwPQ(bins);
25595   static vector<TH1F*> vhJeIDPQ(bins);
25596   static vector<TH1F*> vhJeIDNMBPQ(bins);
25597   static vector<TH1F*> vhJeIDNMPQ(bins);
25598   static vector<TH1F*> vhJeIDAllShwPQ(bins);
25599 
25600   //NQ
25601   static vector<TH1F*> vhRecoEnNQ(bins);
25602   static vector<TH1F*> vhRecoEnNMBNQ(bins);
25603   static vector<TH1F*> vhRecoEnNMNQ(bins);
25604   static vector<TH1F*> vhRecoEnAllShwNQ(bins);
25605   static vector<TH1F*> vhRecoEnTrkNQ(bins);
25606   static vector<TH1F*> vhRecoEnTrkNMBNQ(bins);
25607   static vector<TH1F*> vhRecoEnTrkNMNQ(bins);
25608   static vector<TH1F*> vhRecoEnTrkAllShwNQ(bins);
25609   static vector<TH1F*> vhRecoEnShwNQ(bins);
25610   static vector<TH1F*> vhRecoEnShwNMBNQ(bins);
25611   static vector<TH1F*> vhRecoEnShwNMNQ(bins);
25612   static vector<TH1F*> vhRecoEnShwAllShwNQ(bins);
25613   static vector<TH1F*> vhRecoYNQ(bins);
25614   static vector<TH1F*> vhRecoYNMBNQ(bins);
25615   static vector<TH1F*> vhRecoYNMNQ(bins);
25616   static vector<TH1F*> vhRecoYAllShwNQ(bins);
25617 
25618   static vector<TH1F*> vhqpNQ(bins);
25619   static vector<TH1F*> vhqpNMBNQ(bins);
25620   static vector<TH1F*> vhqpNMNQ(bins);
25621   static vector<TH1F*> vhqpAllShwNQ(bins);
25622   static vector<TH1F*> vhSigqpNQ(bins);
25623   static vector<TH1F*> vhSigqpNMBNQ(bins);
25624   static vector<TH1F*> vhSigqpNMNQ(bins);
25625   static vector<TH1F*> vhSigqpAllShwNQ(bins);
25626   static vector<TH1F*> vhSigqp_qpNQ(bins);
25627   static vector<TH1F*> vhSigqp_qpNMBNQ(bins);
25628   static vector<TH1F*> vhSigqp_qpNMNQ(bins);
25629   static vector<TH1F*> vhSigqp_qpAllShwNQ(bins);
25630   static vector<TH1F*> vhChi2NQ(bins);
25631   static vector<TH1F*> vhChi2NMBNQ(bins);
25632   static vector<TH1F*> vhChi2NMNQ(bins);
25633   static vector<TH1F*> vhChi2AllShwNQ(bins);
25634   static vector<TH1F*> vhProbNQ(bins);
25635   static vector<TH1F*> vhProbNMBNQ(bins);
25636   static vector<TH1F*> vhProbNMNQ(bins);
25637   static vector<TH1F*> vhProbAllShwNQ(bins);
25638   static vector<TH1F*> vhDpIDNQ(bins);
25639   static vector<TH1F*> vhDpIDNMBNQ(bins);
25640   static vector<TH1F*> vhDpIDNMNQ(bins);
25641   static vector<TH1F*> vhDpIDAllShwNQ(bins);
25642   // PoID Officially depracated
25643   //static vector<TH1F*> vhPoIDNQ(bins);
25644   //static vector<TH1F*> vhPoIDNMBNQ(bins);
25645   //static vector<TH1F*> vhPoIDNMNQ(bins);
25646   //static vector<TH1F*> vhPoIDAllShwNQ(bins);
25647   static vector<TH1F*> vhRoIDNQ(bins);
25648   static vector<TH1F*> vhRoIDNMBNQ(bins);
25649   static vector<TH1F*> vhRoIDNMNQ(bins);
25650   static vector<TH1F*> vhRoIDAllShwNQ(bins);
25651   static vector<TH1F*> vhAbIDNQ(bins);
25652   static vector<TH1F*> vhAbIDNMBNQ(bins);
25653   static vector<TH1F*> vhAbIDNMNQ(bins);
25654   static vector<TH1F*> vhAbIDAllShwNQ(bins);
25655   static vector<TH1F*> vhJeIDNQ(bins);
25656   static vector<TH1F*> vhJeIDNMBNQ(bins);
25657   static vector<TH1F*> vhJeIDNMNQ(bins);
25658   static vector<TH1F*> vhJeIDAllShwNQ(bins);
25659 
25660 
25661   if (firstTime){
25662     MAXMSG("NuPlots",Msg::kDebug,1)
25663       <<"Creating EnergyBins plots..."<<endl;
25664 
25665     for (Int_t i=0;i<bins;i++){
25666       string s="";
25667       string sBin=Form("%d",i);
25668       if (i<10) sBin="00"+sBin;
25669       else if (i<100) sBin="0"+sBin;
25670       MAXMSG("NuPlots",Msg::kDebug,100)
25671         <<"i="<<i<<", sBin="<<sBin<<endl;
25672 
25673       s="hRecoEnPQBin"+sBin;
25674       vhRecoEnPQ[i]=new TH1F(s.c_str(),s.c_str(),
25675                              4*352,-32,320);
25676       vhRecoEnPQ[i]->GetXaxis()->
25677         SetTitle("Reconstructed Energy (GeV)");
25678       vhRecoEnPQ[i]->GetXaxis()->CenterTitle();
25679       vhRecoEnPQ[i]->GetYaxis()->SetTitle("");
25680       vhRecoEnPQ[i]->GetYaxis()->CenterTitle();
25681       vhRecoEnPQ[i]->SetFillColor(0);
25682       vhRecoEnPQ[i]->SetLineColor(1);
25683       //vhRecoEnPQ[i]->SetBit(TH1::kCanRebin);
25684 
25685       MAXMSG("NuPlots",Msg::kDebug,100)
25686         <<"done first one i="<<i<<", sBin="<<sBin<<endl;
25687 
25688       s="hRecoEnNMBPQBin"+sBin;
25689       vhRecoEnNMBPQ[i]=static_cast<TH1F*>
25690         (vhRecoEnPQ[i]->Clone(s.c_str()));
25691       s="hRecoEnNMPQBin"+sBin;
25692       vhRecoEnNMPQ[i]=static_cast<TH1F*>
25693         (vhRecoEnPQ[i]->Clone(s.c_str()));
25694       s="hRecoEnAllShwPQBin"+sBin;
25695       vhRecoEnAllShwPQ[i]=static_cast<TH1F*>
25696         (vhRecoEnPQ[i]->Clone(s.c_str()));
25697 
25698       s="hRecoEnTrkPQBin"+sBin;
25699       vhRecoEnTrkPQ[i]=new TH1F(s.c_str(),s.c_str(),
25700                                 4*352,-32,320);
25701       vhRecoEnTrkPQ[i]->GetXaxis()->
25702         SetTitle("Track Reconstructed Energy (GeV)");
25703       vhRecoEnTrkPQ[i]->GetXaxis()->CenterTitle();
25704       vhRecoEnTrkPQ[i]->GetYaxis()->SetTitle("");
25705       vhRecoEnTrkPQ[i]->GetYaxis()->CenterTitle();
25706       vhRecoEnTrkPQ[i]->SetFillColor(0);
25707       vhRecoEnTrkPQ[i]->SetLineColor(1);
25708       //vhRecoEnTrkPQ[i]->SetBit(TH1::kCanRebin);
25709       
25710       s="hRecoEnTrkNMBPQBin"+sBin;
25711       vhRecoEnTrkNMBPQ[i]=static_cast<TH1F*>
25712         (vhRecoEnTrkPQ[i]->Clone(s.c_str()));
25713       s="hRecoEnTrkNMPQBin"+sBin;
25714       vhRecoEnTrkNMPQ[i]=static_cast<TH1F*>
25715         (vhRecoEnTrkPQ[i]->Clone(s.c_str()));
25716       s="hRecoEnTrkAllShwPQBin"+sBin;
25717       vhRecoEnTrkAllShwPQ[i]=static_cast<TH1F*>
25718         (vhRecoEnTrkPQ[i]->Clone(s.c_str()));
25719 
25720       s="hRecoEnShwPQBin"+sBin;
25721       vhRecoEnShwPQ[i]=new TH1F(s.c_str(),s.c_str(),
25722                                 4*352,-32,320);
25723       vhRecoEnShwPQ[i]->GetXaxis()->
25724         SetTitle("Shower Reconstructed Energy (GeV)");
25725       vhRecoEnShwPQ[i]->GetXaxis()->CenterTitle();
25726       vhRecoEnShwPQ[i]->GetYaxis()->SetTitle("");
25727       vhRecoEnShwPQ[i]->GetYaxis()->CenterTitle();
25728       vhRecoEnShwPQ[i]->SetFillColor(0);
25729       vhRecoEnShwPQ[i]->SetLineColor(1);
25730       //vhRecoEnShwPQ[i]->SetBit(TH1::kCanRebin);
25731       
25732       s="hRecoEnShwNMBPQBin"+sBin;
25733       vhRecoEnShwNMBPQ[i]=static_cast<TH1F*>
25734         (vhRecoEnShwPQ[i]->Clone(s.c_str()));
25735       s="hRecoEnShwNMPQBin"+sBin;
25736       vhRecoEnShwNMPQ[i]=static_cast<TH1F*>
25737         (vhRecoEnShwPQ[i]->Clone(s.c_str()));
25738       s="hRecoEnShwAllShwPQBin"+sBin;
25739       vhRecoEnShwAllShwPQ[i]=static_cast<TH1F*>
25740         (vhRecoEnShwPQ[i]->Clone(s.c_str()));
25741 
25742       s="hRecoYPQBin"+sBin;
25743       vhRecoYPQ[i]=new TH1F(s.c_str(),s.c_str(),
25744                             1400,-0.2,1.2);
25745       vhRecoYPQ[i]->GetXaxis()->SetTitle("Reconstructed y");
25746       vhRecoYPQ[i]->GetXaxis()->CenterTitle();
25747       vhRecoYPQ[i]->GetYaxis()->SetTitle("");
25748       vhRecoYPQ[i]->GetYaxis()->CenterTitle();
25749       vhRecoYPQ[i]->SetFillColor(0);
25750       vhRecoYPQ[i]->SetLineColor(1);
25751       //vhRecoYPQ[i]->SetBit(TH1::kCanRebin);
25752       
25753       s="hRecoYNMBPQBin"+sBin;
25754       vhRecoYNMBPQ[i]=static_cast<TH1F*>
25755         (vhRecoYPQ[i]->Clone(s.c_str()));
25756       s="hRecoYNMPQBin"+sBin;
25757       vhRecoYNMPQ[i]=static_cast<TH1F*>
25758         (vhRecoYPQ[i]->Clone(s.c_str()));
25759       s="hRecoYAllShwPQBin"+sBin;
25760       vhRecoYAllShwPQ[i]=static_cast<TH1F*>
25761         (vhRecoYPQ[i]->Clone(s.c_str()));
25762 
25763 
25764 
25765       s="hqpPQBin"+sBin;
25766       vhqpPQ[i]=new TH1F(s.c_str(),s.c_str(),200*160,-16,16);
25767       vhqpPQ[i]->GetXaxis()->SetTitle("Q/P");
25768       vhqpPQ[i]->GetXaxis()->CenterTitle();
25769       vhqpPQ[i]->GetYaxis()->SetTitle("");
25770       vhqpPQ[i]->GetYaxis()->CenterTitle();
25771       vhqpPQ[i]->SetFillColor(0);
25772       //vhqpPQ[i]->SetBit(TH1::kCanRebin);
25773 
25774       s="hqpNMBPQBin"+sBin;
25775       vhqpNMBPQ[i]=static_cast<TH1F*>
25776         (vhqpPQ[i]->Clone(s.c_str()));
25777       s="hqpNMPQBin"+sBin;
25778       vhqpNMPQ[i]=static_cast<TH1F*>
25779         (vhqpPQ[i]->Clone(s.c_str()));
25780       s="hqpAllShwPQBin"+sBin;
25781       vhqpAllShwPQ[i]=static_cast<TH1F*>
25782         (vhqpPQ[i]->Clone(s.c_str()));
25783 
25784       s="hSigqpPQBin"+sBin;
25785       vhSigqpPQ[i]=new TH1F(s.c_str(),s.c_str(),200*160,-16,16);
25786       vhSigqpPQ[i]->GetXaxis()->SetTitle("#sigma(Q/P)");
25787       vhSigqpPQ[i]->GetXaxis()->CenterTitle();
25788       vhSigqpPQ[i]->GetYaxis()->SetTitle("");
25789       vhSigqpPQ[i]->GetYaxis()->CenterTitle();
25790       vhSigqpPQ[i]->SetFillColor(0);
25791       //vhSigqpPQ[i]->SetBit(TH1::kCanRebin);
25792 
25793       s="hSigqpNMBPQBin"+sBin;
25794       vhSigqpNMBPQ[i]=static_cast<TH1F*>
25795         (vhSigqpPQ[i]->Clone(s.c_str()));
25796       s="hSigqpNMPQBin"+sBin;
25797       vhSigqpNMPQ[i]=static_cast<TH1F*>
25798         (vhSigqpPQ[i]->Clone(s.c_str()));
25799       s="hSigqpAllShwPQBin"+sBin;
25800       vhSigqpAllShwPQ[i]=static_cast<TH1F*>
25801         (vhSigqpPQ[i]->Clone(s.c_str()));
25802 
25803       s="hSigqp_qpPQBin"+sBin;
25804       vhSigqp_qpPQ[i]=new TH1F(s.c_str(),s.c_str(),800*160,-160,160);
25805       vhSigqp_qpPQ[i]->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
25806       vhSigqp_qpPQ[i]->GetXaxis()->CenterTitle();
25807       vhSigqp_qpPQ[i]->GetYaxis()->SetTitle("");
25808       vhSigqp_qpPQ[i]->GetYaxis()->CenterTitle();
25809       vhSigqp_qpPQ[i]->SetFillColor(0);
25810       //vhSigqp_qpPQ[i]->SetBit(TH1::kCanRebin);
25811 
25812       s="hSigqp_qpNMBPQBin"+sBin;
25813       vhSigqp_qpNMBPQ[i]=static_cast<TH1F*>
25814         (vhSigqp_qpPQ[i]->Clone(s.c_str()));
25815       s="hSigqp_qpNMPQBin"+sBin;
25816       vhSigqp_qpNMPQ[i]=static_cast<TH1F*>
25817         (vhSigqp_qpPQ[i]->Clone(s.c_str()));
25818       s="hSigqp_qpAllShwPQBin"+sBin;
25819       vhSigqp_qpAllShwPQ[i]=static_cast<TH1F*>
25820         (vhSigqp_qpPQ[i]->Clone(s.c_str()));
25821 
25822       s="hChi2PQBin"+sBin;
25823       vhChi2PQ[i]=new TH1F(s.c_str(),s.c_str(),10*176,-16,160);
25824       vhChi2PQ[i]->GetXaxis()->SetTitle("#chi^{2}/ndof");
25825       vhChi2PQ[i]->GetXaxis()->CenterTitle();
25826       vhChi2PQ[i]->GetYaxis()->SetTitle("");
25827       vhChi2PQ[i]->GetYaxis()->CenterTitle();
25828       vhChi2PQ[i]->SetFillColor(0);
25829       //vhChi2PQ[i]->SetBit(TH1::kCanRebin);
25830 
25831       s="hChi2NMBPQBin"+sBin;
25832       vhChi2NMBPQ[i]=static_cast<TH1F*>
25833         (vhChi2PQ[i]->Clone(s.c_str()));
25834       s="hChi2NMPQBin"+sBin;
25835       vhChi2NMPQ[i]=static_cast<TH1F*>
25836         (vhChi2PQ[i]->Clone(s.c_str()));
25837       s="hChi2AllShwPQBin"+sBin;
25838       vhChi2AllShwPQ[i]=static_cast<TH1F*>
25839         (vhChi2PQ[i]->Clone(s.c_str()));
25840 
25841       s="hProbPQBin"+sBin;
25842       vhProbPQ[i]=new TH1F(s.c_str(),s.c_str(),14000,-0.2,1.2);
25843       vhProbPQ[i]->GetXaxis()->SetTitle("Fit Probability");
25844       vhProbPQ[i]->GetXaxis()->CenterTitle();
25845       vhProbPQ[i]->GetYaxis()->SetTitle("");
25846       vhProbPQ[i]->GetYaxis()->CenterTitle();
25847       vhProbPQ[i]->SetFillColor(0);
25848       //vhProbPQ[i]->SetBit(TH1::kCanRebin);
25849 
25850       s="hProbNMBPQBin"+sBin;
25851       vhProbNMBPQ[i]=static_cast<TH1F*>
25852         (vhProbPQ[i]->Clone(s.c_str()));
25853       s="hProbNMPQBin"+sBin;
25854       vhProbNMPQ[i]=static_cast<TH1F*>
25855         (vhProbPQ[i]->Clone(s.c_str()));
25856       s="hProbAllShwPQBin"+sBin;
25857       vhProbAllShwPQ[i]=static_cast<TH1F*>
25858         (vhProbPQ[i]->Clone(s.c_str()));
25859 
25860       s="hDpIDPQBin"+sBin;
25861       vhDpIDPQ[i]=new TH1F(s.c_str(),s.c_str(),4*160,-1.6,1.6);
25862       vhDpIDPQ[i]->GetXaxis()->SetTitle("PID (from MadDpID)");
25863       vhDpIDPQ[i]->GetXaxis()->CenterTitle();
25864       vhDpIDPQ[i]->GetYaxis()->SetTitle("");
25865       vhDpIDPQ[i]->GetYaxis()->CenterTitle();
25866       vhDpIDPQ[i]->SetFillColor(0);
25867       //vhDpIDPQ[i]->SetBit(TH1::kCanRebin);
25868 
25869       s="hDpIDNMBPQBin"+sBin;
25870       vhDpIDNMBPQ[i]=static_cast<TH1F*>
25871         (vhDpIDPQ[i]->Clone(s.c_str()));
25872       s="hDpIDNMPQBin"+sBin;
25873       vhDpIDNMPQ[i]=static_cast<TH1F*>
25874         (vhDpIDPQ[i]->Clone(s.c_str()));
25875       s="hDpIDAllShwPQBin"+sBin;
25876       vhDpIDAllShwPQ[i]=static_cast<TH1F*>
25877         (vhDpIDPQ[i]->Clone(s.c_str()));
25878 
25879       // PoID Officially Depracated
25880 //      s="hPoIDPQBin"+sBin;
25881 //      vhPoIDPQ[i]=new TH1F(s.c_str(),s.c_str(),4*320,-3.2,3.2);
25882 //      vhPoIDPQ[i]->GetXaxis()->SetTitle("PID (from NuBarPID)");
25883 //      vhPoIDPQ[i]->GetXaxis()->CenterTitle();
25884 //      vhPoIDPQ[i]->GetYaxis()->SetTitle("");
25885 //      vhPoIDPQ[i]->GetYaxis()->CenterTitle();
25886 //      vhPoIDPQ[i]->SetFillColor(0);
25887 //      //vhPoIDPQ[i]->SetBit(TH1::kCanRebin);
25888 
25889 //      s="hPoIDNMBPQBin"+sBin;
25890 //      vhPoIDNMBPQ[i]=static_cast<TH1F*>
25891 //      (vhPoIDPQ[i]->Clone(s.c_str()));
25892 //      s="hPoIDNMPQBin"+sBin;
25893 //      vhPoIDNMPQ[i]=static_cast<TH1F*>
25894 //      (vhPoIDPQ[i]->Clone(s.c_str()));
25895 //      s="hPoIDAllShwPQBin"+sBin;
25896 //      vhPoIDAllShwPQ[i]=static_cast<TH1F*>
25897 //      (vhPoIDPQ[i]->Clone(s.c_str()));
25898 
25899       s="hRoIDPQBin"+sBin;
25900       vhRoIDPQ[i]=new TH1F(s.c_str(),s.c_str(),4*320,-3.2,3.2);
25901       vhRoIDPQ[i]->GetXaxis()->SetTitle("PID (from Rustem O)");
25902       vhRoIDPQ[i]->GetXaxis()->CenterTitle();
25903       vhRoIDPQ[i]->GetYaxis()->SetTitle("");
25904       vhRoIDPQ[i]->GetYaxis()->CenterTitle();
25905       vhRoIDPQ[i]->SetFillColor(0);
25906       //vhRoIDPQ[i]->SetBit(TH1::kCanRebin);
25907 
25908       s="hRoIDNMBPQBin"+sBin;
25909       vhRoIDNMBPQ[i]=static_cast<TH1F*>
25910         (vhRoIDPQ[i]->Clone(s.c_str()));
25911       s="hRoIDNMPQBin"+sBin;
25912       vhRoIDNMPQ[i]=static_cast<TH1F*>
25913         (vhRoIDPQ[i]->Clone(s.c_str()));
25914       s="hRoIDAllShwPQBin"+sBin;
25915       vhRoIDAllShwPQ[i]=static_cast<TH1F*>
25916         (vhRoIDPQ[i]->Clone(s.c_str()));
25917 
25918       s="hAbIDPQBin"+sBin;
25919       vhAbIDPQ[i]=new TH1F(s.c_str(),s.c_str(),4*320,-3.2,3.2);
25920       vhAbIDPQ[i]->GetXaxis()->SetTitle("PID (from Andy B)");
25921       vhAbIDPQ[i]->GetXaxis()->CenterTitle();
25922       vhAbIDPQ[i]->GetYaxis()->SetTitle("");
25923       vhAbIDPQ[i]->GetYaxis()->CenterTitle();
25924       vhAbIDPQ[i]->SetFillColor(0);
25925       //vhAbIDPQ[i]->SetBit(TH1::kCanRebin);
25926 
25927       s="hAbIDNMBPQBin"+sBin;
25928       vhAbIDNMBPQ[i]=static_cast<TH1F*>
25929         (vhAbIDPQ[i]->Clone(s.c_str()));
25930       s="hAbIDNMPQBin"+sBin;
25931       vhAbIDNMPQ[i]=static_cast<TH1F*>
25932         (vhAbIDPQ[i]->Clone(s.c_str()));
25933       s="hAbIDAllShwPQBin"+sBin;
25934       vhAbIDAllShwPQ[i]=static_cast<TH1F*>
25935         (vhAbIDPQ[i]->Clone(s.c_str()));
25936 
25937       s="hJeIDPQBin"+sBin;
25938       vhJeIDPQ[i]=new TH1F(s.c_str(),s.c_str(),4*320,-3.2,3.2);
25939       vhJeIDPQ[i]->GetXaxis()->SetTitle("PID (from Justin E)");
25940       vhJeIDPQ[i]->GetXaxis()->CenterTitle();
25941       vhJeIDPQ[i]->GetYaxis()->SetTitle("");
25942       vhJeIDPQ[i]->GetYaxis()->CenterTitle();
25943       vhJeIDPQ[i]->SetFillColor(0);
25944       //vhJeIDPQ[i]->SetBit(TH1::kCanRebin);
25945 
25946       s="hJeIDNMBPQBin"+sBin;
25947       vhJeIDNMBPQ[i]=static_cast<TH1F*>
25948         (vhJeIDPQ[i]->Clone(s.c_str()));
25949       s="hJeIDNMPQBin"+sBin;
25950       vhJeIDNMPQ[i]=static_cast<TH1F*>
25951         (vhJeIDPQ[i]->Clone(s.c_str()));
25952       s="hJeIDAllShwPQBin"+sBin;
25953       vhJeIDAllShwPQ[i]=static_cast<TH1F*>
25954         (vhJeIDPQ[i]->Clone(s.c_str()));
25955 
25956 
25957 
25958 
25959       //NQ
25960       s="hRecoEnNQBin"+sBin;
25961       vhRecoEnNQ[i]=new TH1F(s.c_str(),s.c_str(),
25962                              4*352,-32,320);
25963       vhRecoEnNQ[i]->GetXaxis()->
25964         SetTitle("Reconstructed Energy (GeV)");
25965       vhRecoEnNQ[i]->GetXaxis()->CenterTitle();
25966       vhRecoEnNQ[i]->GetYaxis()->SetTitle("");
25967       vhRecoEnNQ[i]->GetYaxis()->CenterTitle();
25968       vhRecoEnNQ[i]->SetFillColor(0);
25969       vhRecoEnNQ[i]->SetLineColor(1);
25970       //vhRecoEnNQ[i]->SetBit(TH1::kCanRebin);
25971 
25972       s="hRecoEnNMBNQBin"+sBin;
25973       vhRecoEnNMBNQ[i]=static_cast<TH1F*>
25974         (vhRecoEnNQ[i]->Clone(s.c_str()));
25975       s="hRecoEnNMNQBin"+sBin;
25976       vhRecoEnNMNQ[i]=static_cast<TH1F*>
25977         (vhRecoEnNQ[i]->Clone(s.c_str()));
25978       s="hRecoEnAllShwNQBin"+sBin;
25979       vhRecoEnAllShwNQ[i]=static_cast<TH1F*>
25980         (vhRecoEnNQ[i]->Clone(s.c_str()));
25981 
25982       s="hRecoEnTrkNQBin"+sBin;
25983       vhRecoEnTrkNQ[i]=new TH1F(s.c_str(),s.c_str(),
25984                                 4*352,-32,320);
25985       vhRecoEnTrkNQ[i]->GetXaxis()->
25986         SetTitle("Track Reconstructed Energy (GeV)");
25987       vhRecoEnTrkNQ[i]->GetXaxis()->CenterTitle();
25988       vhRecoEnTrkNQ[i]->GetYaxis()->SetTitle("");
25989       vhRecoEnTrkNQ[i]->GetYaxis()->CenterTitle();
25990       vhRecoEnTrkNQ[i]->SetFillColor(0);
25991       vhRecoEnTrkNQ[i]->SetLineColor(1);
25992       //vhRecoEnTrkNQ[i]->SetBit(TH1::kCanRebin);
25993       
25994       s="hRecoEnTrkNMBNQBin"+sBin;
25995       vhRecoEnTrkNMBNQ[i]=static_cast<TH1F*>
25996         (vhRecoEnTrkNQ[i]->Clone(s.c_str()));
25997       s="hRecoEnTrkNMNQBin"+sBin;
25998       vhRecoEnTrkNMNQ[i]=static_cast<TH1F*>
25999         (vhRecoEnTrkNQ[i]->Clone(s.c_str()));
26000       s="hRecoEnTrkAllShwNQBin"+sBin;
26001       vhRecoEnTrkAllShwNQ[i]=static_cast<TH1F*>
26002         (vhRecoEnTrkNQ[i]->Clone(s.c_str()));
26003 
26004       s="hRecoEnShwNQBin"+sBin;
26005       vhRecoEnShwNQ[i]=new TH1F(s.c_str(),s.c_str(),
26006                                 4*352,-32,320);
26007       vhRecoEnShwNQ[i]->GetXaxis()->
26008         SetTitle("Shower Reconstructed Energy (GeV)");
26009       vhRecoEnShwNQ[i]->GetXaxis()->CenterTitle();
26010       vhRecoEnShwNQ[i]->GetYaxis()->SetTitle("");
26011       vhRecoEnShwNQ[i]->GetYaxis()->CenterTitle();
26012       vhRecoEnShwNQ[i]->SetFillColor(0);
26013       vhRecoEnShwNQ[i]->SetLineColor(1);
26014       //vhRecoEnShwNQ[i]->SetBit(TH1::kCanRebin);
26015       
26016       s="hRecoEnShwNMBNQBin"+sBin;
26017       vhRecoEnShwNMBNQ[i]=static_cast<TH1F*>
26018         (vhRecoEnShwNQ[i]->Clone(s.c_str()));
26019       s="hRecoEnShwNMNQBin"+sBin;
26020       vhRecoEnShwNMNQ[i]=static_cast<TH1F*>
26021         (vhRecoEnShwNQ[i]->Clone(s.c_str()));
26022       s="hRecoEnShwAllShwNQBin"+sBin;
26023       vhRecoEnShwAllShwNQ[i]=static_cast<TH1F*>
26024         (vhRecoEnShwNQ[i]->Clone(s.c_str()));
26025 
26026       s="hRecoYNQBin"+sBin;
26027       vhRecoYNQ[i]=new TH1F(s.c_str(),s.c_str(),
26028                             1400,-0.2,1.2);
26029       vhRecoYNQ[i]->GetXaxis()->SetTitle("Reconstructed y");
26030       vhRecoYNQ[i]->GetXaxis()->CenterTitle();
26031       vhRecoYNQ[i]->GetYaxis()->SetTitle("");
26032       vhRecoYNQ[i]->GetYaxis()->CenterTitle();
26033       vhRecoYNQ[i]->SetFillColor(0);
26034       vhRecoYNQ[i]->SetLineColor(1);
26035       //vhRecoYNQ[i]->SetBit(TH1::kCanRebin);
26036       
26037       s="hRecoYNMBNQBin"+sBin;
26038       vhRecoYNMBNQ[i]=static_cast<TH1F*>
26039         (vhRecoYNQ[i]->Clone(s.c_str()));
26040       s="hRecoYNMNQBin"+sBin;
26041       vhRecoYNMNQ[i]=static_cast<TH1F*>
26042         (vhRecoYNQ[i]->Clone(s.c_str()));
26043       s="hRecoYAllShwNQBin"+sBin;
26044       vhRecoYAllShwNQ[i]=static_cast<TH1F*>
26045         (vhRecoYNQ[i]->Clone(s.c_str()));
26046 
26047 
26048 
26049       s="hqpNQBin"+sBin;
26050       vhqpNQ[i]=new TH1F(s.c_str(),s.c_str(),200*160,-16,16);
26051       vhqpNQ[i]->GetXaxis()->SetTitle("Q/P");
26052       vhqpNQ[i]->GetXaxis()->CenterTitle();
26053       vhqpNQ[i]->GetYaxis()->SetTitle("");
26054       vhqpNQ[i]->GetYaxis()->CenterTitle();
26055       vhqpNQ[i]->SetFillColor(0);
26056       //vhqpNQ[i]->SetBit(TH1::kCanRebin);
26057 
26058       s="hqpNMBNQBin"+sBin;
26059       vhqpNMBNQ[i]=static_cast<TH1F*>
26060         (vhqpNQ[i]->Clone(s.c_str()));
26061       s="hqpNMNQBin"+sBin;
26062       vhqpNMNQ[i]=static_cast<TH1F*>
26063         (vhqpNQ[i]->Clone(s.c_str()));
26064       s="hqpAllShwNQBin"+sBin;
26065       vhqpAllShwNQ[i]=static_cast<TH1F*>
26066         (vhqpNQ[i]->Clone(s.c_str()));
26067 
26068       s="hSigqpNQBin"+sBin;
26069       vhSigqpNQ[i]=new TH1F(s.c_str(),s.c_str(),200*160,-16,16);
26070       vhSigqpNQ[i]->GetXaxis()->SetTitle("#sigma(Q/P)");
26071       vhSigqpNQ[i]->GetXaxis()->CenterTitle();
26072       vhSigqpNQ[i]->GetYaxis()->SetTitle("");
26073       vhSigqpNQ[i]->GetYaxis()->CenterTitle();
26074       vhSigqpNQ[i]->SetFillColor(0);
26075       //vhSigqpNQ[i]->SetBit(TH1::kCanRebin);
26076 
26077       s="hSigqpNMBNQBin"+sBin;
26078       vhSigqpNMBNQ[i]=static_cast<TH1F*>
26079         (vhSigqpNQ[i]->Clone(s.c_str()));
26080       s="hSigqpNMNQBin"+sBin;
26081       vhSigqpNMNQ[i]=static_cast<TH1F*>
26082         (vhSigqpNQ[i]->Clone(s.c_str()));
26083       s="hSigqpAllShwNQBin"+sBin;
26084       vhSigqpAllShwNQ[i]=static_cast<TH1F*>
26085         (vhSigqpNQ[i]->Clone(s.c_str()));
26086 
26087       s="hSigqp_qpNQBin"+sBin;
26088       vhSigqp_qpNQ[i]=new TH1F(s.c_str(),s.c_str(),800*160,-160,160);
26089       vhSigqp_qpNQ[i]->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
26090       vhSigqp_qpNQ[i]->GetXaxis()->CenterTitle();
26091       vhSigqp_qpNQ[i]->GetYaxis()->SetTitle("");
26092       vhSigqp_qpNQ[i]->GetYaxis()->CenterTitle();
26093       vhSigqp_qpNQ[i]->SetFillColor(0);
26094       //vhSigqp_qpNQ[i]->SetBit(TH1::kCanRebin);
26095 
26096       s="hSigqp_qpNMBNQBin"+sBin;
26097       vhSigqp_qpNMBNQ[i]=static_cast<TH1F*>
26098         (vhSigqp_qpNQ[i]->Clone(s.c_str()));
26099       s="hSigqp_qpNMNQBin"+sBin;
26100       vhSigqp_qpNMNQ[i]=static_cast<TH1F*>
26101         (vhSigqp_qpNQ[i]->Clone(s.c_str()));
26102       s="hSigqp_qpAllShwNQBin"+sBin;
26103       vhSigqp_qpAllShwNQ[i]=static_cast<TH1F*>
26104         (vhSigqp_qpNQ[i]->Clone(s.c_str()));
26105 
26106       s="hChi2NQBin"+sBin;
26107       vhChi2NQ[i]=new TH1F(s.c_str(),s.c_str(),10*176,-16,160);
26108       vhChi2NQ[i]->GetXaxis()->SetTitle("#chi^{2}/ndof");
26109       vhChi2NQ[i]->GetXaxis()->CenterTitle();
26110       vhChi2NQ[i]->GetYaxis()->SetTitle("");
26111       vhChi2NQ[i]->GetYaxis()->CenterTitle();
26112       vhChi2NQ[i]->SetFillColor(0);
26113       //vhChi2NQ[i]->SetBit(TH1::kCanRebin);
26114 
26115       s="hChi2NMBNQBin"+sBin;
26116       vhChi2NMBNQ[i]=static_cast<TH1F*>
26117         (vhChi2NQ[i]->Clone(s.c_str()));
26118       s="hChi2NMNQBin"+sBin;
26119       vhChi2NMNQ[i]=static_cast<TH1F*>
26120         (vhChi2NQ[i]->Clone(s.c_str()));
26121       s="hChi2AllShwNQBin"+sBin;
26122       vhChi2AllShwNQ[i]=static_cast<TH1F*>
26123         (vhChi2NQ[i]->Clone(s.c_str()));
26124 
26125       s="hProbNQBin"+sBin;
26126       vhProbNQ[i]=new TH1F(s.c_str(),s.c_str(),14000,-0.2,1.2);
26127       vhProbNQ[i]->GetXaxis()->SetTitle("Fit Probability");
26128       vhProbNQ[i]->GetXaxis()->CenterTitle();
26129       vhProbNQ[i]->GetYaxis()->SetTitle("");
26130       vhProbNQ[i]->GetYaxis()->CenterTitle();
26131       vhProbNQ[i]->SetFillColor(0);
26132       //vhProbNQ[i]->SetBit(TH1::kCanRebin);
26133 
26134       s="hProbNMBNQBin"+sBin;
26135       vhProbNMBNQ[i]=static_cast<TH1F*>
26136         (vhProbNQ[i]->Clone(s.c_str()));
26137       s="hProbNMNQBin"+sBin;
26138       vhProbNMNQ[i]=static_cast<TH1F*>
26139         (vhProbNQ[i]->Clone(s.c_str()));
26140       s="hProbAllShwNQBin"+sBin;
26141       vhProbAllShwNQ[i]=static_cast<TH1F*>
26142         (vhProbNQ[i]->Clone(s.c_str()));
26143 
26144       s="hDpIDNQBin"+sBin;
26145       vhDpIDNQ[i]=new TH1F(s.c_str(),s.c_str(),4*160,-1.6,1.6);
26146       vhDpIDNQ[i]->GetXaxis()->SetTitle("PID (from MadDpID)");
26147       vhDpIDNQ[i]->GetXaxis()->CenterTitle();
26148       vhDpIDNQ[i]->GetYaxis()->SetTitle("");
26149       vhDpIDNQ[i]->GetYaxis()->CenterTitle();
26150       vhDpIDNQ[i]->SetFillColor(0);
26151       //vhDpIDNQ[i]->SetBit(TH1::kCanRebin);
26152 
26153       s="hDpIDNMBNQBin"+sBin;
26154       vhDpIDNMBNQ[i]=static_cast<TH1F*>
26155         (vhDpIDNQ[i]->Clone(s.c_str()));
26156       s="hDpIDNMNQBin"+sBin;
26157       vhDpIDNMNQ[i]=static_cast<TH1F*>
26158         (vhDpIDNQ[i]->Clone(s.c_str()));
26159       s="hDpIDAllShwNQBin"+sBin;
26160       vhDpIDAllShwNQ[i]=static_cast<TH1F*>
26161         (vhDpIDNQ[i]->Clone(s.c_str()));
26162 
26163       // PoID Officially Depracated
26164 //      s="hPoIDNQBin"+sBin;
26165 //      vhPoIDNQ[i]=new TH1F(s.c_str(),s.c_str(),4*320,-3.2,3.2);
26166 //      vhPoIDNQ[i]->GetXaxis()->SetTitle("PID (from NuBarPID)");
26167 //      vhPoIDNQ[i]->GetXaxis()->CenterTitle();
26168 //      vhPoIDNQ[i]->GetYaxis()->SetTitle("");
26169 //      vhPoIDNQ[i]->GetYaxis()->CenterTitle();
26170 //      vhPoIDNQ[i]->SetFillColor(0);
26171 //      //vhPoIDNQ[i]->SetBit(TH1::kCanRebin);
26172 
26173 //      s="hPoIDNMBNQBin"+sBin;
26174 //      vhPoIDNMBNQ[i]=static_cast<TH1F*>
26175 //      (vhPoIDNQ[i]->Clone(s.c_str()));
26176 //      s="hPoIDNMNQBin"+sBin;
26177 //      vhPoIDNMNQ[i]=static_cast<TH1F*>
26178 //      (vhPoIDNQ[i]->Clone(s.c_str()));
26179 //      s="hPoIDAllShwNQBin"+sBin;
26180 //      vhPoIDAllShwNQ[i]=static_cast<TH1F*>
26181 //      (vhPoIDNQ[i]->Clone(s.c_str()));
26182 
26183       s="hRoIDNQBin"+sBin;
26184       vhRoIDNQ[i]=new TH1F(s.c_str(),s.c_str(),4*320,-3.2,3.2);
26185       vhRoIDNQ[i]->GetXaxis()->SetTitle("PID (from Rustem O)");
26186       vhRoIDNQ[i]->GetXaxis()->CenterTitle();
26187       vhRoIDNQ[i]->GetYaxis()->SetTitle("");
26188       vhRoIDNQ[i]->GetYaxis()->CenterTitle();
26189       vhRoIDNQ[i]->SetFillColor(0);
26190       //vhRoIDNQ[i]->SetBit(TH1::kCanRebin);
26191 
26192       s="hRoIDNMBNQBin"+sBin;
26193       vhRoIDNMBNQ[i]=static_cast<TH1F*>
26194         (vhRoIDNQ[i]->Clone(s.c_str()));
26195       s="hRoIDNMNQBin"+sBin;
26196       vhRoIDNMNQ[i]=static_cast<TH1F*>
26197         (vhRoIDNQ[i]->Clone(s.c_str()));
26198       s="hRoIDAllShwNQBin"+sBin;
26199       vhRoIDAllShwNQ[i]=static_cast<TH1F*>
26200         (vhRoIDNQ[i]->Clone(s.c_str()));
26201 
26202       s="hAbIDNQBin"+sBin;
26203       vhAbIDNQ[i]=new TH1F(s.c_str(),s.c_str(),4*320,-3.2,3.2);
26204       vhAbIDNQ[i]->GetXaxis()->SetTitle("PID (from Andy B)");
26205       vhAbIDNQ[i]->GetXaxis()->CenterTitle();
26206       vhAbIDNQ[i]->GetYaxis()->SetTitle("");
26207       vhAbIDNQ[i]->GetYaxis()->CenterTitle();
26208       vhAbIDNQ[i]->SetFillColor(0);
26209       //vhAbIDNQ[i]->SetBit(TH1::kCanRebin);
26210 
26211       s="hAbIDNMBNQBin"+sBin;
26212       vhAbIDNMBNQ[i]=static_cast<TH1F*>
26213         (vhAbIDNQ[i]->Clone(s.c_str()));
26214       s="hAbIDNMNQBin"+sBin;
26215       vhAbIDNMNQ[i]=static_cast<TH1F*>
26216         (vhAbIDNQ[i]->Clone(s.c_str()));
26217       s="hAbIDAllShwNQBin"+sBin;
26218       vhAbIDAllShwNQ[i]=static_cast<TH1F*>
26219         (vhAbIDNQ[i]->Clone(s.c_str()));
26220 
26221       s="hJeIDNQBin"+sBin;
26222       vhJeIDNQ[i]=new TH1F(s.c_str(),s.c_str(),4*320,-3.2,3.2);
26223       vhJeIDNQ[i]->GetXaxis()->SetTitle("PID (from Justin E)");
26224       vhJeIDNQ[i]->GetXaxis()->CenterTitle();
26225       vhJeIDNQ[i]->GetYaxis()->SetTitle("");
26226       vhJeIDNQ[i]->GetYaxis()->CenterTitle();
26227       vhJeIDNQ[i]->SetFillColor(0);
26228       //vhJeIDNQ[i]->SetBit(TH1::kCanRebin);
26229 
26230       s="hJeIDNMBNQBin"+sBin;
26231       vhJeIDNMBNQ[i]=static_cast<TH1F*>
26232         (vhJeIDNQ[i]->Clone(s.c_str()));
26233       s="hJeIDNMNQBin"+sBin;
26234       vhJeIDNMNQ[i]=static_cast<TH1F*>
26235         (vhJeIDNQ[i]->Clone(s.c_str()));
26236       s="hJeIDAllShwNQBin"+sBin;
26237       vhJeIDAllShwNQ[i]=static_cast<TH1F*>
26238         (vhJeIDNQ[i]->Clone(s.c_str()));
26239     }
26240   }
26241   firstTime=false;
26242   
26243   //PQ
26244   if (nu.charge==+1){
26245     vhRecoEnPQ[index]->Fill(nu.energy,nu.rw);
26246     vhRecoEnTrkPQ[index]->Fill(nu.trkEn,nu.rw);
26247     vhRecoEnShwPQ[index]->Fill(nu.shwEn,nu.rw);
26248     vhRecoYPQ[index]->Fill(nu.y,nu.rw);
26249 
26250     vhqpPQ[index]->Fill(nu.qp,nu.rw);
26251     vhSigqpPQ[index]->Fill(nu.sigqp,nu.rw);
26252     vhSigqp_qpPQ[index]->Fill(nu.sigqp_qp,nu.rw);
26253     vhChi2PQ[index]->Fill(nu.chi2PerNdof,nu.rw);
26254     vhProbPQ[index]->Fill(nu.prob,nu.rw);
26255     vhDpIDPQ[index]->Fill(nu.dpID,nu.rw);
26256     // PoID Officially Depracated
26257     //vhPoIDPQ[index]->Fill(nu.poID,nu.rw);
26258     vhRoIDPQ[index]->Fill(nu.roID,nu.rw);
26259     vhAbIDPQ[index]->Fill(nu.abID,nu.rw);
26260     vhJeIDPQ[index]->Fill(nu.jPID,nu.rw);
26261 
26262     if (nu.iaction==1){//CC
26263       if (nu.inu==14){//NuMu
26264         vhRecoEnNMPQ[index]->Fill(nu.energy,nu.rw);
26265         vhRecoEnTrkNMPQ[index]->Fill(nu.trkEn,nu.rw);
26266         vhRecoEnShwNMPQ[index]->Fill(nu.shwEn,nu.rw);
26267         vhRecoYNMPQ[index]->Fill(nu.y,nu.rw);
26268         
26269         vhqpNMPQ[index]->Fill(nu.qp,nu.rw);
26270         vhSigqpNMPQ[index]->Fill(nu.sigqp,nu.rw);
26271         vhSigqp_qpNMPQ[index]->Fill(nu.sigqp_qp,nu.rw);
26272         vhChi2NMPQ[index]->Fill(nu.chi2PerNdof,nu.rw);
26273         vhProbNMPQ[index]->Fill(nu.prob,nu.rw);
26274         vhDpIDNMPQ[index]->Fill(nu.dpID,nu.rw);
26275         // PoID Officially Depracated
26276         //vhPoIDNMPQ[index]->Fill(nu.poID,nu.rw);
26277         vhRoIDNMPQ[index]->Fill(nu.roID,nu.rw);
26278         vhAbIDNMPQ[index]->Fill(nu.abID,nu.rw);
26279         vhJeIDNMPQ[index]->Fill(nu.jPID,nu.rw);
26280       }
26281       else if (nu.inu==-14){//NuMuBar
26282         vhRecoEnNMBPQ[index]->Fill(nu.energy,nu.rw);
26283         vhRecoEnTrkNMBPQ[index]->Fill(nu.trkEn,nu.rw);
26284         vhRecoEnShwNMBPQ[index]->Fill(nu.shwEn,nu.rw);
26285         vhRecoYNMBPQ[index]->Fill(nu.y,nu.rw);
26286         
26287         vhqpNMBPQ[index]->Fill(nu.qp,nu.rw);
26288         vhSigqpNMBPQ[index]->Fill(nu.sigqp,nu.rw);
26289         vhSigqp_qpNMBPQ[index]->Fill(nu.sigqp_qp,nu.rw);
26290         vhChi2NMBPQ[index]->Fill(nu.chi2PerNdof,nu.rw);
26291         vhProbNMBPQ[index]->Fill(nu.prob,nu.rw);
26292         vhDpIDNMBPQ[index]->Fill(nu.dpID,nu.rw);
26293         // PoID Officially Depracated
26294         //vhPoIDNMBPQ[index]->Fill(nu.poID,nu.rw);
26295         vhRoIDNMBPQ[index]->Fill(nu.roID,nu.rw);
26296         vhAbIDNMBPQ[index]->Fill(nu.abID,nu.rw);
26297         vhJeIDNMBPQ[index]->Fill(nu.jPID,nu.rw);
26298       }
26299     }
26300     
26301     //all but NuMu/NuMuBar CC
26302     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
26303       vhRecoEnAllShwPQ[index]->Fill(nu.energy,nu.rw);
26304       vhRecoEnTrkAllShwPQ[index]->Fill(nu.trkEn,nu.rw);
26305       vhRecoEnShwAllShwPQ[index]->Fill(nu.shwEn,nu.rw);
26306       vhRecoYAllShwPQ[index]->Fill(nu.y,nu.rw);
26307       
26308       vhqpAllShwPQ[index]->Fill(nu.qp,nu.rw);
26309       vhSigqpAllShwPQ[index]->Fill(nu.sigqp,nu.rw);
26310       vhSigqp_qpAllShwPQ[index]->Fill(nu.sigqp_qp,nu.rw);
26311       vhChi2AllShwPQ[index]->Fill(nu.chi2PerNdof,nu.rw);
26312       vhProbAllShwPQ[index]->Fill(nu.prob,nu.rw);
26313       vhDpIDAllShwPQ[index]->Fill(nu.dpID,nu.rw);
26314       // PoID Officially Depracated
26315       //vhPoIDAllShwPQ[index]->Fill(nu.poID,nu.rw);
26316       vhRoIDAllShwPQ[index]->Fill(nu.roID,nu.rw);
26317       vhAbIDAllShwPQ[index]->Fill(nu.abID,nu.rw);
26318       vhJeIDAllShwPQ[index]->Fill(nu.jPID,nu.rw);
26319     }
26320   }
26321   //NQ
26322   else if (nu.charge==-1){
26323     vhRecoEnNQ[index]->Fill(nu.energy,nu.rw);
26324     vhRecoEnTrkNQ[index]->Fill(nu.trkEn,nu.rw);
26325     vhRecoEnShwNQ[index]->Fill(nu.shwEn,nu.rw);
26326     vhRecoYNQ[index]->Fill(nu.y,nu.rw);
26327 
26328     vhqpNQ[index]->Fill(nu.qp,nu.rw);
26329     vhSigqpNQ[index]->Fill(nu.sigqp,nu.rw);
26330     vhSigqp_qpNQ[index]->Fill(nu.sigqp_qp,nu.rw);
26331     vhChi2NQ[index]->Fill(nu.chi2PerNdof,nu.rw);
26332     vhProbNQ[index]->Fill(nu.prob,nu.rw);
26333     vhDpIDNQ[index]->Fill(nu.dpID,nu.rw);
26334     // PoID Officially Depracated
26335     //vhPoIDNQ[index]->Fill(nu.poID,nu.rw);
26336     vhRoIDNQ[index]->Fill(nu.roID,nu.rw);
26337     vhAbIDNQ[index]->Fill(nu.abID,nu.rw);
26338     vhJeIDNQ[index]->Fill(nu.jPID,nu.rw);
26339 
26340     if (nu.iaction==1){//CC
26341       if (nu.inu==14){//NuMu
26342         vhRecoEnNMNQ[index]->Fill(nu.energy,nu.rw);
26343         vhRecoEnTrkNMNQ[index]->Fill(nu.trkEn,nu.rw);
26344         vhRecoEnShwNMNQ[index]->Fill(nu.shwEn,nu.rw);
26345         vhRecoYNMNQ[index]->Fill(nu.y,nu.rw);
26346         
26347         vhqpNMNQ[index]->Fill(nu.qp,nu.rw);
26348         vhSigqpNMNQ[index]->Fill(nu.sigqp,nu.rw);
26349         vhSigqp_qpNMNQ[index]->Fill(nu.sigqp_qp,nu.rw);
26350         vhChi2NMNQ[index]->Fill(nu.chi2PerNdof,nu.rw);
26351         vhProbNMNQ[index]->Fill(nu.prob,nu.rw);
26352         vhDpIDNMNQ[index]->Fill(nu.dpID,nu.rw);
26353         // PoID Officially Depracated
26354         //vhPoIDNMNQ[index]->Fill(nu.poID,nu.rw);
26355         vhRoIDNMNQ[index]->Fill(nu.roID,nu.rw);
26356         vhAbIDNMNQ[index]->Fill(nu.abID,nu.rw);
26357         vhJeIDNMNQ[index]->Fill(nu.jPID,nu.rw);
26358       }
26359       else if (nu.inu==-14){//NuMuBar
26360         vhRecoEnNMBNQ[index]->Fill(nu.energy,nu.rw);
26361         vhRecoEnTrkNMBNQ[index]->Fill(nu.trkEn,nu.rw);
26362         vhRecoEnShwNMBNQ[index]->Fill(nu.shwEn,nu.rw);
26363         vhRecoYNMBNQ[index]->Fill(nu.y,nu.rw);
26364         
26365         vhqpNMBNQ[index]->Fill(nu.qp,nu.rw);
26366         vhSigqpNMBNQ[index]->Fill(nu.sigqp,nu.rw);
26367         vhSigqp_qpNMBNQ[index]->Fill(nu.sigqp_qp,nu.rw);
26368         vhChi2NMBNQ[index]->Fill(nu.chi2PerNdof,nu.rw);
26369         vhProbNMBNQ[index]->Fill(nu.prob,nu.rw);
26370         vhDpIDNMBNQ[index]->Fill(nu.dpID,nu.rw);
26371         // PoID Officially Depracated
26372         //vhPoIDNMBNQ[index]->Fill(nu.poID,nu.rw);
26373         vhRoIDNMBNQ[index]->Fill(nu.roID,nu.rw);
26374         vhAbIDNMBNQ[index]->Fill(nu.abID,nu.rw);
26375         vhJeIDNMBNQ[index]->Fill(nu.jPID,nu.rw);
26376       }
26377     }
26378     
26379     //all but NuMu/NuMuBar CC
26380     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
26381       vhRecoEnAllShwNQ[index]->Fill(nu.energy,nu.rw);
26382       vhRecoEnTrkAllShwNQ[index]->Fill(nu.trkEn,nu.rw);
26383       vhRecoEnShwAllShwNQ[index]->Fill(nu.shwEn,nu.rw);
26384       vhRecoYAllShwNQ[index]->Fill(nu.y,nu.rw);
26385       
26386       vhqpAllShwNQ[index]->Fill(nu.qp,nu.rw);
26387       vhSigqpAllShwNQ[index]->Fill(nu.sigqp,nu.rw);
26388       vhSigqp_qpAllShwNQ[index]->Fill(nu.sigqp_qp,nu.rw);
26389       vhChi2AllShwNQ[index]->Fill(nu.chi2PerNdof,nu.rw);
26390       vhProbAllShwNQ[index]->Fill(nu.prob,nu.rw);
26391       vhDpIDAllShwNQ[index]->Fill(nu.dpID,nu.rw);
26392       // PoID Officially Depracated
26393       //vhPoIDAllShwNQ[index]->Fill(nu.poID,nu.rw);
26394       vhRoIDAllShwNQ[index]->Fill(nu.roID,nu.rw);
26395       vhAbIDAllShwNQ[index]->Fill(nu.abID,nu.rw);
26396       vhJeIDAllShwNQ[index]->Fill(nu.jPID,nu.rw);
26397     }
26398   }
26399   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
26400 }

void NuPlots::FillEvtAndSpillTimingPlots const NuEvent nu  )  const
 

Definition at line 975 of file NuPlots.cxx.

References NuEvent::charge, MAXMSG, NuEvent::medianTime, NuEvent::rw, NuEvent::timeEvtMax, NuEvent::timeEvtMin, NuEvent::timeNanoSec, and NuEvent::timeToNearestSpill.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), and NuCutImps::NuCutsSelection::IsGoodPreSelectionCuts().

00976 {
00977   //PQ
00978   static TH1D* hTimeToSpillPQ=0;
00979   static TH1D* hTimeToSpillSecPQ=0;
00980   static TH1D* hTimeToSpill1kSecPQ=0;
00981   static TH1D* hTimeToSpill100kSecPQ=0;
00982   
00983   static TH1D* hEvtTimeWrtSpillPQ=0;
00984   static TH1D* hEvtMedianTimeWrtSpillPQ=0;
00985   static TH1D* hEvtTimeWrtTriggerPQ=0;
00986   static TH1D* hEventTimeLengthPQ=0;
00987   static TH1D* hEvtMedMinusMinPQ;
00988 
00989 
00990   //NQ
00991   static TH1D* hTimeToSpillNQ=0;
00992   static TH1D* hTimeToSpillSecNQ=0;
00993   static TH1D* hTimeToSpill1kSecNQ=0;
00994   static TH1D* hTimeToSpill100kSecNQ=0;
00995 
00996   static TH1D* hEvtTimeWrtSpillNQ=0;
00997   static TH1D* hEvtMedianTimeWrtSpillNQ=0;
00998   static TH1D* hEvtTimeWrtTriggerNQ=0;
00999   static TH1D* hEventTimeLengthNQ=0;
01000 
01001   static TH1D* hEvtMedMinusMinNQ;
01002 
01003   Double_t medianTimeWrtTrigger=nu.medianTime-(nu.timeNanoSec*(Munits::ns));
01004 
01005   if (!hTimeToSpillPQ){
01006     MAXMSG("NuPlots",Msg::kDebug,1)
01007       <<"Creating SpillTiming plots..."<<endl;
01008 
01009     //10 ns resolution
01010     hTimeToSpillPQ=new TH1D
01011       ("hTimeToSpillPQ","hTimeToSpillPQ",20000,
01012        -100*(Munits::microsecond),
01013        +100*(Munits::microsecond));
01014     hTimeToSpillPQ->GetXaxis()->
01015       SetTitle("Time to nearest spill (s)");
01016     hTimeToSpillPQ->GetXaxis()->CenterTitle();
01017     hTimeToSpillPQ->GetYaxis()->SetTitle("");
01018     hTimeToSpillPQ->GetYaxis()->CenterTitle();
01019     hTimeToSpillPQ->SetFillColor(0);
01020     //hTimeToSpillPQ->SetBit(TH1::kCanRebin);
01021 
01022     //10 us resolution
01023     hTimeToSpillSecPQ=new TH1D
01024       ("hTimeToSpillSecPQ","hTimeToSpillSecPQ",200000,
01025        -1*(Munits::second),
01026        +1*(Munits::second));
01027     hTimeToSpillSecPQ->GetXaxis()->
01028       SetTitle("Time to nearest spill (s)");
01029     hTimeToSpillSecPQ->GetXaxis()->CenterTitle();
01030     hTimeToSpillSecPQ->GetYaxis()->SetTitle("");
01031     hTimeToSpillSecPQ->GetYaxis()->CenterTitle();
01032     hTimeToSpillSecPQ->SetFillColor(0);
01033     //hTimeToSpillSecPQ->SetBit(TH1::kCanRebin);
01034 
01035     //0.1 s resolution
01036     hTimeToSpill1kSecPQ=new TH1D
01037       ("hTimeToSpill1kSecPQ","hTimeToSpill1kSecPQ",20000,
01038        -1000*(Munits::second),
01039        +1000*(Munits::second));
01040     hTimeToSpill1kSecPQ->GetXaxis()->
01041       SetTitle("Time to nearest spill (s)");
01042     hTimeToSpill1kSecPQ->GetXaxis()->CenterTitle();
01043     hTimeToSpill1kSecPQ->GetYaxis()->SetTitle("");
01044     hTimeToSpill1kSecPQ->GetYaxis()->CenterTitle();
01045     hTimeToSpill1kSecPQ->SetFillColor(0);
01046     //hTimeToSpill1kSecPQ->SetBit(TH1::kCanRebin);
01047 
01048     //10 s resolution
01049     hTimeToSpill100kSecPQ=new TH1D
01050       ("hTimeToSpill100kSecPQ","hTimeToSpill100kSecPQ",20000,
01051        -100000*(Munits::second),
01052        +100000*(Munits::second));
01053     hTimeToSpill100kSecPQ->GetXaxis()->
01054       SetTitle("Time to nearest spill (s)");
01055     hTimeToSpill100kSecPQ->GetXaxis()->CenterTitle();
01056     hTimeToSpill100kSecPQ->GetYaxis()->SetTitle("");
01057     hTimeToSpill100kSecPQ->GetYaxis()->CenterTitle();
01058     hTimeToSpill100kSecPQ->SetFillColor(0);
01059     //hTimeToSpill100kSecPQ->SetBit(TH1::kCanRebin);
01060     
01061 
01062     //10 ns resolution
01063     hEvtTimeWrtSpillPQ=new TH1D
01064       ("hEvtTimeWrtSpillPQ","hEvtTimeWrtSpillPQ",20000,
01065        -100*(Munits::microsecond),
01066        +100*(Munits::microsecond));
01067     hEvtTimeWrtSpillPQ->GetXaxis()->
01068       SetTitle("Event time - beam spill time (s)");
01069     hEvtTimeWrtSpillPQ->GetXaxis()->CenterTitle();
01070     hEvtTimeWrtSpillPQ->GetYaxis()->SetTitle("");
01071     hEvtTimeWrtSpillPQ->GetYaxis()->CenterTitle();
01072     hEvtTimeWrtSpillPQ->SetFillColor(0);
01073     //hEvtTimeWrtSpillPQ->SetBit(TH1::kCanRebin);
01074 
01075     //10 ns resolution
01076     hEvtMedianTimeWrtSpillPQ=new TH1D
01077       ("hEvtMedianTimeWrtSpillPQ","hEvtMedianTimeWrtSpillPQ",20000,
01078        -100*(Munits::microsecond),
01079        +100*(Munits::microsecond));
01080     hEvtMedianTimeWrtSpillPQ->GetXaxis()->
01081       SetTitle("Event median time - beam spill time (s)");
01082     hEvtMedianTimeWrtSpillPQ->GetXaxis()->CenterTitle();
01083     hEvtMedianTimeWrtSpillPQ->GetYaxis()->SetTitle("");
01084     hEvtMedianTimeWrtSpillPQ->GetYaxis()->CenterTitle();
01085     hEvtMedianTimeWrtSpillPQ->SetFillColor(0);
01086     //hEvtMedianTimeWrtSpillPQ->SetBit(TH1::kCanRebin);
01087 
01088     //10 ns resolution
01089     hEvtMedMinusMinPQ=new TH1D
01090       ("hEvtMedMinusMinPQ","hEvtMedMinusMinPQ",20000,
01091        -100*(Munits::microsecond),
01092        +100*(Munits::microsecond));
01093     hEvtMedMinusMinPQ->GetXaxis()->
01094       SetTitle("(Event median time - Event time) (s)");
01095     hEvtMedMinusMinPQ->GetXaxis()->CenterTitle();
01096     hEvtMedMinusMinPQ->GetYaxis()->SetTitle("");
01097     hEvtMedMinusMinPQ->GetYaxis()->CenterTitle();
01098     hEvtMedMinusMinPQ->SetFillColor(0);
01099     //hEvtMedMinusMinPQ->SetBit(TH1::kCanRebin);
01100 
01101     //10 ns resolution
01102     hEvtTimeWrtTriggerPQ=new TH1D
01103       ("hEvtTimeWrtTriggerPQ","hEvtTimeWrtTriggerPQ",20000,
01104        -100*(Munits::microsecond),
01105        +100*(Munits::microsecond));
01106     hEvtTimeWrtTriggerPQ->GetXaxis()->
01107       SetTitle("Event time - trigger time (s)");
01108     hEvtTimeWrtTriggerPQ->GetXaxis()->CenterTitle();
01109     hEvtTimeWrtTriggerPQ->GetYaxis()->SetTitle("");
01110     hEvtTimeWrtTriggerPQ->GetYaxis()->CenterTitle();
01111     hEvtTimeWrtTriggerPQ->SetFillColor(0);
01112     //hEvtTimeWrtTriggerPQ->SetBit(TH1::kCanRebin);
01113 
01114     //10 ns resolution
01115     hEventTimeLengthPQ=new TH1D
01116       ("hEventTimeLengthPQ","hEventTimeLengthPQ",20000,
01117        -100*(Munits::microsecond),
01118        +100*(Munits::microsecond));
01119     hEventTimeLengthPQ->GetXaxis()->SetTitle("Event length (s)");
01120     hEventTimeLengthPQ->GetXaxis()->CenterTitle();
01121     hEventTimeLengthPQ->GetYaxis()->SetTitle("");
01122     hEventTimeLengthPQ->GetYaxis()->CenterTitle();
01123     hEventTimeLengthPQ->SetFillColor(0);
01124     //hEventTimeLengthPQ->SetBit(TH1::kCanRebin);
01125 
01126 
01127     //NQ
01128     //10 ns resolution
01129     hTimeToSpillNQ=new TH1D
01130       ("hTimeToSpillNQ","hTimeToSpillNQ",20000,
01131        -100*(Munits::microsecond),
01132        +100*(Munits::microsecond));
01133     hTimeToSpillNQ->GetXaxis()->
01134       SetTitle("Time to nearest spill (s)");
01135     hTimeToSpillNQ->GetXaxis()->CenterTitle();
01136     hTimeToSpillNQ->GetYaxis()->SetTitle("");
01137     hTimeToSpillNQ->GetYaxis()->CenterTitle();
01138     hTimeToSpillNQ->SetFillColor(0);
01139     //hTimeToSpillNQ->SetBit(TH1::kCanRebin);
01140 
01141     //10 us resolution
01142     hTimeToSpillSecNQ=new TH1D
01143       ("hTimeToSpillSecNQ","hTimeToSpillSecNQ",200000,
01144        -1*(Munits::second),
01145        +1*(Munits::second));
01146     hTimeToSpillSecNQ->GetXaxis()->
01147       SetTitle("Time to nearest spill (s)");
01148     hTimeToSpillSecNQ->GetXaxis()->CenterTitle();
01149     hTimeToSpillSecNQ->GetYaxis()->SetTitle("");
01150     hTimeToSpillSecNQ->GetYaxis()->CenterTitle();
01151     hTimeToSpillSecNQ->SetFillColor(0);
01152     //hTimeToSpillSecNQ->SetBit(TH1::kCanRebin);
01153 
01154     //0.1 s resolution
01155     hTimeToSpill1kSecNQ=new TH1D
01156       ("hTimeToSpill1kSecNQ","hTimeToSpill1kSecNQ",2000,
01157        -100*(Munits::second),
01158        +100*(Munits::second));
01159     hTimeToSpill1kSecNQ->GetXaxis()->
01160       SetTitle("Time to nearest spill (s)");
01161     hTimeToSpill1kSecNQ->GetXaxis()->CenterTitle();
01162     hTimeToSpill1kSecNQ->GetYaxis()->SetTitle("");
01163     hTimeToSpill1kSecNQ->GetYaxis()->CenterTitle();
01164     hTimeToSpill1kSecNQ->SetFillColor(0);
01165     //hTimeToSpill1kSecNQ->SetBit(TH1::kCanRebin);
01166 
01167     //10 s resolution
01168     hTimeToSpill100kSecNQ=new TH1D
01169       ("hTimeToSpill100kSecNQ","hTimeToSpill100kSecNQ",20000,
01170        -100000*(Munits::second),
01171        +100000*(Munits::second));
01172     hTimeToSpill100kSecNQ->GetXaxis()->
01173       SetTitle("Time to nearest spill (s)");
01174     hTimeToSpill100kSecNQ->GetXaxis()->CenterTitle();
01175     hTimeToSpill100kSecNQ->GetYaxis()->SetTitle("");
01176     hTimeToSpill100kSecNQ->GetYaxis()->CenterTitle();
01177     hTimeToSpill100kSecNQ->SetFillColor(0);
01178     //hTimeToSpill100kSecNQ->SetBit(TH1::kCanRebin);
01179     
01180 
01181     //10 ns resolution
01182     hEvtTimeWrtSpillNQ=new TH1D
01183       ("hEvtTimeWrtSpillNQ","hEvtTimeWrtSpillNQ",20000,
01184        -100*(Munits::microsecond),
01185        +100*(Munits::microsecond));
01186     hEvtTimeWrtSpillNQ->GetXaxis()->
01187       SetTitle("Event time - beam spill time (s)");
01188     hEvtTimeWrtSpillNQ->GetXaxis()->CenterTitle();
01189     hEvtTimeWrtSpillNQ->GetYaxis()->SetTitle("");
01190     hEvtTimeWrtSpillNQ->GetYaxis()->CenterTitle();
01191     hEvtTimeWrtSpillNQ->SetFillColor(0);
01192     //hEvtTimeWrtSpillNQ->SetBit(TH1::kCanRebin);
01193 
01194     //10 ns resolution
01195     hEvtMedianTimeWrtSpillNQ=new TH1D
01196       ("hEvtMedianTimeWrtSpillNQ","hEvtMedianTimeWrtSpillNQ",200000,
01197        -1000*(Munits::microsecond),
01198        +1000*(Munits::microsecond));
01199     hEvtMedianTimeWrtSpillNQ->GetXaxis()->
01200       SetTitle("Event Median time - beam spill time (s)");
01201     hEvtMedianTimeWrtSpillNQ->GetXaxis()->CenterTitle();
01202     hEvtMedianTimeWrtSpillNQ->GetYaxis()->SetTitle("");
01203     hEvtMedianTimeWrtSpillNQ->GetYaxis()->CenterTitle();
01204     hEvtMedianTimeWrtSpillNQ->SetFillColor(0);
01205     //hEvtMedianTimeWrtSpillNQ->SetBit(TH1::kCanRebin);
01206 
01207     //10 ns resolution
01208     hEvtMedMinusMinNQ=new TH1D
01209       ("hEvtMedMinusMinNQ","hEvtMedMinusMinNQ",20000,
01210        -100*(Munits::microsecond),
01211        +100*(Munits::microsecond));
01212     hEvtMedMinusMinNQ->GetXaxis()->
01213       SetTitle("(Event median time - Event time) (s)");
01214     hEvtMedMinusMinNQ->GetXaxis()->CenterTitle();
01215     hEvtMedMinusMinNQ->GetYaxis()->SetTitle("");
01216     hEvtMedMinusMinNQ->GetYaxis()->CenterTitle();
01217     hEvtMedMinusMinNQ->SetFillColor(0);
01218     //hEvtMedMinusMinNQ->SetBit(TH1::kCanRebin);
01219 
01220 
01221     //10 ns resolution
01222     hEvtTimeWrtTriggerNQ=new TH1D
01223       ("hEvtTimeWrtTriggerNQ","hEvtTimeWrtTriggerNQ",20000,
01224        -100*(Munits::microsecond),
01225        +100*(Munits::microsecond));
01226     hEvtTimeWrtTriggerNQ->GetXaxis()->
01227       SetTitle("Event time - trigger time (s)");
01228     hEvtTimeWrtTriggerNQ->GetXaxis()->CenterTitle();
01229     hEvtTimeWrtTriggerNQ->GetYaxis()->SetTitle("");
01230     hEvtTimeWrtTriggerNQ->GetYaxis()->CenterTitle();
01231     hEvtTimeWrtTriggerNQ->SetFillColor(0);
01232     //hEvtTimeWrtTriggerNQ->SetBit(TH1::kCanRebin);
01233 
01234     //10 ns resolution
01235     hEventTimeLengthNQ=new TH1D
01236       ("hEventTimeLengthNQ","hEventTimeLengthNQ",20000,
01237        -100*(Munits::microsecond),
01238        +100*(Munits::microsecond));
01239     hEventTimeLengthNQ->GetXaxis()->SetTitle("Event length (s)");
01240     hEventTimeLengthNQ->GetXaxis()->CenterTitle();
01241     hEventTimeLengthNQ->GetYaxis()->SetTitle("");
01242     hEventTimeLengthNQ->GetYaxis()->CenterTitle();
01243     hEventTimeLengthNQ->SetFillColor(0);
01244     //hEventTimeLengthNQ->SetBit(TH1::kCanRebin);
01245   }
01246   
01247   //fill histos
01248   if (nu.charge==+1) {
01249     hTimeToSpillPQ->Fill(nu.timeToNearestSpill,nu.rw);
01250     hTimeToSpillSecPQ->Fill(nu.timeToNearestSpill,nu.rw);
01251     hTimeToSpill1kSecPQ->Fill(nu.timeToNearestSpill,nu.rw);
01252     hTimeToSpill100kSecPQ->Fill(nu.timeToNearestSpill,nu.rw);
01253     
01254     hEvtTimeWrtSpillPQ->Fill(nu.timeEvtMin-nu.timeToNearestSpill,nu.rw);
01255     hEvtMedianTimeWrtSpillPQ->Fill(medianTimeWrtTrigger-nu.timeToNearestSpill,nu.rw);
01256     hEvtMedMinusMinPQ->Fill(medianTimeWrtTrigger-nu.timeEvtMin,nu.rw);
01257     hEvtTimeWrtTriggerPQ->Fill(nu.timeEvtMin,nu.rw);
01258     hEventTimeLengthPQ->Fill(nu.timeEvtMax-nu.timeEvtMin,nu.rw);
01259 
01260   }
01261   else if (nu.charge==-1) {
01262     hTimeToSpillNQ->Fill(nu.timeToNearestSpill,nu.rw);
01263     hTimeToSpillSecNQ->Fill(nu.timeToNearestSpill,nu.rw);
01264     hTimeToSpill1kSecNQ->Fill(nu.timeToNearestSpill,nu.rw);
01265     hTimeToSpill100kSecNQ->Fill(nu.timeToNearestSpill,nu.rw);
01266 
01267     hEvtTimeWrtSpillNQ->Fill(nu.timeEvtMin-nu.timeToNearestSpill,nu.rw);
01268     hEvtMedianTimeWrtSpillNQ->Fill(medianTimeWrtTrigger-nu.timeToNearestSpill,nu.rw);
01269     hEvtMedMinusMinNQ->Fill(medianTimeWrtTrigger-nu.timeEvtMin,nu.rw);
01270     hEvtTimeWrtTriggerNQ->Fill(nu.timeEvtMin,nu.rw);
01271     hEventTimeLengthNQ->Fill(nu.timeEvtMax-nu.timeEvtMin,nu.rw);
01272     
01273   }
01274 }

void NuPlots::FillGeneralHistos const NtpStRecord ntp  )  const
 

Definition at line 77 of file NuPlots.cxx.

References VldContext::GetDetector(), RecRecordImp< T >::GetHeader(), RecDataHeader::GetRun(), VldContext::GetSimFlag(), RecPhysicsHeader::GetSnarl(), RecDataHeader::GetSubRun(), RecPhysicsHeader::GetTrigSrc(), RecHeader::GetVldContext(), MAXMSG, MSG, and run().

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::ChargeSignCut(), NuAnalysis::Efficiencies(), NuAnalysis::EnergySpect(), NuAnalysis::LIRejectionTest(), NuAnalysis::MakeFullDST(), NuAnalysis::N_1(), and NuAnalysis::NuMuBarAppearance().

00078 {
00079   //histogram for recording which detector
00080   static TH1F* hDetector=0;
00081   static TH1F* hSimFlag=0;
00082   static TH1F* hTrigSrc=0;
00083   static TH1F* hRun=0;
00084   static TH1F* hSnarlCount=0;
00085   static TH1F* hSnarlCountDiffFromPrevious=0;
00086 
00087   if (!hDetector){
00088     hDetector=new TH1F("hDetector","hDetector",40,-20,20);
00089     hSimFlag=new TH1F("hSimFlag","hSimFlag",40,-20,20);
00090     
00091     hTrigSrc=new TH1F("hTrigSrc","hTrigSrc",7000,-1,70000);
00092     //hTrigSrc->SetBit(TH1::kCanRebin);
00093     
00094     //1,0000,0000 is the largest run defined by the daq file name
00095     //e.g. N00007764_0011.spill.sntp.R1_18_2.0.root
00096     hRun=new TH1F("hRun","hRun",1000,0,100000000);
00097     
00098     hSnarlCount=new TH1F("hSnarlCount","hSnarlCount",2,-0.5,1.5);
00099     hSnarlCountDiffFromPrevious=new TH1F
00100       ("hSnarlCountDiffFromPrevious","hSnarlCountDiffFromPrevious",2,-0.5,1.5);
00101   }
00102 
00103   //record which detector and simflag - useful in plotting macros
00104   hDetector->Fill(ntp.GetHeader().GetVldContext().GetDetector());
00105   hSimFlag->Fill(ntp.GetHeader().GetVldContext().GetSimFlag());
00106   hTrigSrc->Fill(ntp.GetHeader().GetTrigSrc());
00107   hSnarlCount->Fill(1);//number of times this function is called
00108 
00109   //count up the number of unique runs or subruns
00110   Int_t run=ntp.GetHeader().GetRun();  
00111   static Int_t lastRun=-1;
00112   Int_t subRun=ntp.GetHeader().GetSubRun();  
00113   static Int_t lastSubRun=-1;
00114   if (run!=lastRun || subRun!=lastSubRun){
00115     hRun->Fill(run);
00116     Int_t maxPrint=100;
00117     MAXMSG("NuPlots",Msg::kInfo,maxPrint)
00118       <<"Found new run/subRun, run="<<run<<", lastRun="<<lastRun
00119       <<", subRun="<<subRun<<", lastSubRun="<<lastSubRun
00120       <<", total="<<hRun->GetEntries()<<endl;
00121     if (hRun->GetEntries()>maxPrint) {
00122       Float_t nEntries=hRun->GetEntries();
00123       if (!nEntries%20) {
00124         MSG("NuPlots",Msg::kInfo)
00125           <<"Total runs="<<hRun->GetEntries()
00126           <<", this run="<<run<<", subRun="<<subRun<<endl;
00127       }
00128     }
00129   }
00130 
00131   //count up the number of unique snarls 
00132   //should be the same as the number of times this function is called
00133   //Note that hSnarlCount is just the number of times this function is called
00134   Int_t snarl=ntp.GetHeader().GetSnarl();  
00135   static Int_t lastSnarl=-1;
00136   if (snarl!=lastSnarl) {
00137     hSnarlCountDiffFromPrevious->Fill(1);
00138   }
00139   else if (snarl==lastSnarl) {
00140     //this shouldn't happen
00141     //but it could happen if there were only 1 snarl per file
00142     //so check if a new run also
00143     if (run!=lastRun || subRun!=lastSubRun){
00144       hSnarlCountDiffFromPrevious->Fill(1);
00145     }
00146     else {
00147       MSG("NuPlots",Msg::kWarning)
00148         <<"Ahhh, found that snarl==lastSnarl"
00149         <<", snarl="<<snarl<<", lastSnarl="<<lastSnarl
00150         <<", run="<<run<<", subRun="<<subRun
00151         <<", lastRun="<<lastRun<<", lastSubRun="<<lastSubRun
00152         <<endl;
00153     }
00154   }
00155   else {
00156     cout<<"Ahh, not sure how we got here..."<<endl;
00157   }
00158   
00159   //update the last... variables
00160   lastSnarl=snarl;
00161   lastRun=run;
00162   lastSubRun=subRun;
00163 }

void NuPlots::FillHe const NuEvent nu,
int  mode
const
 

Definition at line 27024 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::energy, NuEvent::inu, max, MAXMSG, MSG, NuEvent::neuEnMC, NuEvent::ppvz, NuEvent::rw, and NuEvent::tptype.

27025 {
27026   MAXMSG("NuPlots",Msg::kInfo,5) << "Calling FillHe" << endl;
27027   static TString sim;
27028   static TH1F* RecoPQ=0;
27029   static TH1F* RecoNQ=0;
27030   static TString id[5] = {"energy", "ttype", "vz","unttype","unvz"};
27031   static TH1F* RecoPQRW[5];
27032   static TH1F* RecoNQRW[5];
27033 
27034   static bool firstRun = true;  
27035   
27036   double Ratio[5][500];
27037   double RatioPQ[5][500];
27038   double RatioBins[5][500];
27039   double max[5];
27040   double scale[5];
27041     
27042 
27043   if( firstRun ) {
27044     firstRun = false;
27045     //switch(mode) {
27046     //case 1: // MC
27047     if (mode==1) {
27048       RecoPQ = new TH1F("hReco_PQ_MC","Reco Energy PQ MC II",30,0,30);
27049       RecoNQ = new TH1F("hReco_NQ_MC","Reco Energy NQ MC II",30,0,30);
27050       
27051       for (int i = 0; i < 5; i++) {
27052         RecoPQRW[i] = new TH1F("hReco_PQ_MC_He_"+id[i],"Reco Energy PQ MC III "+id[i],30,0,30);
27053         RecoNQRW[i] = new TH1F("hReco_NQ_MC_He_"+id[i],"Reco Energy NQ MC III "+id[i],30,0,30);
27054         
27055         RecoPQRW[i]->Sumw2();
27056         RecoNQRW[i]->Sumw2();
27057 
27058       }
27059     }
27060     else if (mode==2) {
27061       RecoPQ = new TH1F("hReco_PQ_DA","Reco Energy PQ Data II",30,0,30);
27062       RecoNQ = new TH1F("hReco_NQ_DA","Reco Energy NQ Data II",30,0,30);
27063     }
27064     else if (mode==3) {
27065       RecoPQ = new TH1F("hReco_PQ_DA_He","Reco Energy PQ Data III",30,0,30);
27066       RecoNQ = new TH1F("hReco_NQ_DA_He","Reco Energy NQ Data III",30,0,30);
27067     }
27068     else {
27069       try {
27070         MSG("NuPlots",Msg::kFatal) << "Unrecognized mode for FillHe: " << mode << endl;
27071       }
27072       catch(MSGException) {
27073         MSG("NuPlots",Msg::kError) << "Unrecognized mode for FillHe: " << mode << endl;
27074       }
27075     }
27076     RecoPQ->Sumw2();
27077     RecoNQ->Sumw2();
27078 
27079   }
27080   
27081   float herw;
27082   if (mode == 1) {
27083     // energy
27084     RatioBins[0][0]=0; RatioPQ[0][0]=1.01573; Ratio[0][0]=1.02543;
27085     RatioBins[0][1]=0.2; RatioPQ[0][1]=1.05766; Ratio[0][1]=1.03741;
27086     RatioBins[0][2]=0.4; RatioPQ[0][2]=1.06683; Ratio[0][2]=1.0208;
27087     RatioBins[0][3]=0.6; RatioPQ[0][3]=1.09057; Ratio[0][3]=1.02578;
27088     RatioBins[0][4]=0.8; RatioPQ[0][4]=1.10089; Ratio[0][4]=1.00845;
27089     RatioBins[0][5]=1; RatioPQ[0][5]=1.08355; Ratio[0][5]=1.0045;
27090     RatioBins[0][6]=1.2; RatioPQ[0][6]=1.0974; Ratio[0][6]=0.99678;
27091     RatioBins[0][7]=1.4; RatioPQ[0][7]=1.08959; Ratio[0][7]=0.99509;
27092     RatioBins[0][8]=1.6; RatioPQ[0][8]=1.10021; Ratio[0][8]=0.988374;
27093     RatioBins[0][9]=1.8; RatioPQ[0][9]=1.10802; Ratio[0][9]=0.983418;
27094     RatioBins[0][10]=2; RatioPQ[0][10]=1.09633; Ratio[0][10]=0.979338;
27095     RatioBins[0][11]=2.2; RatioPQ[0][11]=1.1036; Ratio[0][11]=0.981241;
27096     RatioBins[0][12]=2.4; RatioPQ[0][12]=1.12181; Ratio[0][12]=0.974455;
27097     RatioBins[0][13]=2.6; RatioPQ[0][13]=1.08525; Ratio[0][13]=0.962883;
27098     RatioBins[0][14]=2.8; RatioPQ[0][14]=1.0789; Ratio[0][14]=0.960125;
27099     RatioBins[0][15]=3; RatioPQ[0][15]=1.12286; Ratio[0][15]=0.961072;
27100     RatioBins[0][16]=3.2; RatioPQ[0][16]=1.08768; Ratio[0][16]=0.957573;
27101     RatioBins[0][17]=3.4; RatioPQ[0][17]=1.09097; Ratio[0][17]=0.95495;
27102     RatioBins[0][18]=3.6; RatioPQ[0][18]=1.07105; Ratio[0][18]=0.955291;
27103     RatioBins[0][19]=3.8; RatioPQ[0][19]=1.07087; Ratio[0][19]=0.956213;
27104     RatioBins[0][20]=4; RatioPQ[0][20]=1.06521; Ratio[0][20]=0.956603;
27105     RatioBins[0][21]=4.2; RatioPQ[0][21]=1.08741; Ratio[0][21]=0.961269;
27106     RatioBins[0][22]=4.4; RatioPQ[0][22]=1.08658; Ratio[0][22]=0.973445;
27107     RatioBins[0][23]=4.6; RatioPQ[0][23]=1.10944; Ratio[0][23]=0.972108;
27108     RatioBins[0][24]=4.8; RatioPQ[0][24]=1.07992; Ratio[0][24]=0.993781;
27109     RatioBins[0][25]=5; RatioPQ[0][25]=1.06781; Ratio[0][25]=0.997095;
27110     RatioBins[0][26]=6; RatioPQ[0][26]=1.07023; Ratio[0][26]=1.00913;
27111     RatioBins[0][27]=7; RatioPQ[0][27]=1.0306; Ratio[0][27]=1.00161;
27112     RatioBins[0][28]=8; RatioPQ[0][28]=1.04131; Ratio[0][28]=1.01184;
27113     RatioBins[0][29]=10; RatioPQ[0][29]=1.02807; Ratio[0][29]=1.0306;
27114     RatioBins[0][30]=12; RatioPQ[0][30]=1.02242; Ratio[0][30]=1.01342;
27115     RatioBins[0][31]=14; RatioPQ[0][31]=1.09709; Ratio[0][31]=1.00915;
27116     RatioBins[0][32]=19; RatioPQ[0][32]=1.06547; Ratio[0][32]=1.02014;
27117     RatioBins[0][33]=24; RatioPQ[0][33]=1.02785; Ratio[0][33]=0.966479;
27118     RatioBins[0][34]=29; RatioPQ[0][34]=0.804629; Ratio[0][34]=1.01799;
27119     RatioBins[0][35]=39; RatioPQ[0][35]=0.900343; Ratio[0][35]=1.03696;
27120     RatioBins[0][36]=49; RatioPQ[0][36]=0.602685; Ratio[0][36]=0.975799;
27121     RatioBins[0][37]=59; RatioPQ[0][37]=0.394548; Ratio[0][37]=0.843774;
27122     max[0] = 37;
27123     scale[0] = 1;
27124     
27125     // tptype
27126     RatioBins[1][0]=7; Ratio[1][0]=0;
27127     RatioBins[1][1]=8; Ratio[1][1]=0.99807;
27128     RatioBins[1][2]=9; Ratio[1][2]=1.11459;
27129     RatioBins[1][3]=10; Ratio[1][3]=0.966494;
27130     RatioBins[1][4]=11; Ratio[1][4]=0.999656;
27131     RatioBins[1][5]=12; Ratio[1][5]=0.986966;
27132     RatioBins[1][6]=13; Ratio[1][6]=1.09399;
27133     RatioBins[1][7]=14; Ratio[1][7]=1.68138;
27134     RatioBins[1][8]=15; Ratio[1][8]=1.23147;
27135     RatioBins[1][9]=16; Ratio[1][9]=1.11528;
27136     RatioBins[1][10]=17; Ratio[1][10]=0;
27137     RatioBins[1][11]=18; Ratio[1][11]=1.11098;
27138     max[1] = 11;
27139     scale[1] = 3.11629951792955399/4.44960359287261963;
27140     
27141     // ppvz
27142     RatioBins[2][0]=4500; Ratio[2][0]=1.2981;
27143     RatioBins[2][1]=6200; Ratio[2][1]=1.38191;
27144     RatioBins[2][2]=7900; Ratio[2][2]=1.30904;
27145     RatioBins[2][3]=9600; Ratio[2][3]=1.26918;
27146     RatioBins[2][4]=11300; Ratio[2][4]=1.26063;
27147     RatioBins[2][5]=13000; Ratio[2][5]=1.32594;
27148     RatioBins[2][6]=14700; Ratio[2][6]=1.29213;
27149     RatioBins[2][7]=16400; Ratio[2][7]=1.31813;
27150     RatioBins[2][8]=18100; Ratio[2][8]=1.42139;
27151     RatioBins[2][9]=19800; Ratio[2][9]=1.41045;
27152     RatioBins[2][10]=21500; Ratio[2][10]=1.42513;
27153     RatioBins[2][11]=23200; Ratio[2][11]=1.39586;
27154     RatioBins[2][12]=24900; Ratio[2][12]=1.38229;
27155     RatioBins[2][13]=26600; Ratio[2][13]=1.35236;
27156     RatioBins[2][14]=28300; Ratio[2][14]=1.46398;
27157     RatioBins[2][15]=30000; Ratio[2][15]=1.53269;
27158     RatioBins[2][16]=31700; Ratio[2][16]=1.536;
27159     RatioBins[2][17]=33400; Ratio[2][17]=1.70475;
27160     RatioBins[2][18]=35100; Ratio[2][18]=1.48627;
27161     RatioBins[2][19]=36800; Ratio[2][19]=1.74967;
27162     RatioBins[2][20]=38500; Ratio[2][20]=1.625;
27163     RatioBins[2][21]=40200; Ratio[2][21]=1.53684;
27164     RatioBins[2][22]=41900; Ratio[2][22]=1.50331;
27165     RatioBins[2][23]=43600; Ratio[2][23]=1.65831;
27166     RatioBins[2][24]=45300; Ratio[2][24]=1.71921;
27167     RatioBins[2][25]=47000; Ratio[2][25]=1.60113;
27168     RatioBins[2][26]=48700; Ratio[2][26]=1.61443;
27169     RatioBins[2][27]=50400; Ratio[2][27]=1.76688;
27170     RatioBins[2][28]=52100; Ratio[2][28]=1.59135;
27171     RatioBins[2][29]=53800; Ratio[2][29]=1.62402;
27172     RatioBins[2][30]=55500; Ratio[2][30]=1.72692;
27173     RatioBins[2][31]=57200; Ratio[2][31]=1.647;
27174     RatioBins[2][32]=58900; Ratio[2][32]=1.49918;
27175     RatioBins[2][33]=60600; Ratio[2][33]=1.49959;
27176     RatioBins[2][34]=62300; Ratio[2][34]=1.39756;
27177     RatioBins[2][35]=64000; Ratio[2][35]=1.47721;
27178     RatioBins[2][36]=65700; Ratio[2][36]=1.61284;
27179     RatioBins[2][37]=67400; Ratio[2][37]=1.54341;
27180     RatioBins[2][38]=69100; Ratio[2][38]=1.42658;
27181     RatioBins[2][39]=70800; Ratio[2][39]=0.865255;
27182     max[2] = 39;
27183     scale[2] = 3.12086745643615723/4.45911561393737793;
27184     
27185     for (int i = 0; i < 5; i++) {
27186       // Use the correct variable
27187       double val = 0;
27188       if (i == 0)      val = nu.neuEnMC;
27189       else if (i == 1 || i == 3) {
27190         if (nu.tptype == 111)        val = 7;
27191         else if (nu.tptype == 211)   val = 8;
27192         else if (nu.tptype == -211)  val = 9;
27193         else if (nu.tptype == 311)   val = 10;
27194         else if (nu.tptype == 321)   val = 11;
27195         else if (nu.tptype == -321)  val = 12;
27196         else if (nu.tptype == 2112)  val = 13;
27197         else if (nu.tptype == 2212)  val = 14;
27198         else if (nu.tptype == -2212) val = 15;
27199         else if (nu.tptype == -311)  val = 16;
27200         else if (nu.tptype == 3122)  val = 18;
27201         else val = 99;
27202       }
27203       else if (i == 2 || i == 4) val = nu.ppvz;
27204       
27205       if (i < 3) { // Single Weights
27206         // Find the bin
27207         int bin = 0;
27208         while (! (val > RatioBins[i][bin] && val < RatioBins[i][bin+1]) ) { 
27209           bin++;
27210           if (bin == max[i]) break;
27211         }
27212         
27213         // Apply the weight
27214         if (i == 0 && nu.inu < 0) herw = RatioPQ[i][bin]; // PQ and E weighting
27215         else herw = Ratio[i][bin];
27216       }
27217       else { // Weight and Deweight
27218         // Find the bin
27219         int bin = 0;
27220         while (! (val > RatioBins[i-2][bin] && val < RatioBins[i-2][bin+1]) ) { 
27221           bin++;
27222           if (bin == max[i-2]) break;
27223         }
27224         // Deweight - correct so we don't undo the total # of events change
27225         herw = 1.0/ (Ratio[i-2][bin] * scale[i-2]);
27226         
27227         // Find the energy bin
27228         bin = 0;
27229         while (! (nu.neuEnMC > RatioBins[0][bin] && nu.neuEnMC < RatioBins[0][bin+1]) ) { 
27230           bin++;
27231           if (bin == max[0]) break;
27232         }        
27233         
27234         // Apply the energy weight
27235         if (i == 0 && nu.inu < 0) herw *= RatioPQ[0][bin]; // PQ and E weighting
27236         else herw *= Ratio[0][bin];
27237       }
27238       
27239       
27240       if (nu.charge == +1) {
27241         RecoPQRW[i]->Fill(nu.energy,nu.rw*herw);
27242       }
27243       else if (nu.charge == -1) {
27244         RecoNQRW[i]->Fill(nu.energy,nu.rw*herw);
27245       }
27246     }
27247   }
27248 
27249   //fill the basic histograms
27250   if (nu.charge == +1) RecoPQ->Fill(nu.energy,nu.rw);
27251   else if (nu.charge == -1) RecoNQ->Fill(nu.energy,nu.rw);
27252 }

void NuPlots::FillKinematicsHistos const NuEvent nu  )  const
 

Definition at line 13118 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::dirCosNu, NuEvent::energy, MAXMSG, MSG, NuEvent::q2, NuEvent::rw, NuEvent::w2, NuEvent::x, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::LIRejectionTest(), NuDSTAna::MakeFinalPlots(), and NuAnalysis::NMBSummaryTreeAna().

13119 {
13120   //PQ
13121   static TH1F* hYPQ=0;
13122   static TH1F* hYNoRwPQ=0;
13123   static TH1F* hY0005PQ=0;
13124   static TH1F* hY0510PQ=0;
13125   static TH1F* hY1015PQ=0;
13126   static TH1F* hY1520PQ=0;
13127   static TH1F* hY2025PQ=0;
13128   static TH1F* hY2530PQ=0;
13129 
13130   static TH1F* hXPQ=0;
13131   static TH1F* hX0005PQ=0;
13132   static TH1F* hX0510PQ=0;
13133   static TH1F* hX1015PQ=0;
13134   static TH1F* hX1520PQ=0;
13135   static TH1F* hX2025PQ=0;
13136   static TH1F* hX2530PQ=0;
13137 
13138   static TH1F* hQ2PQ=0;
13139   static TH1F* hQ20005PQ=0;
13140   static TH1F* hQ20510PQ=0;
13141   static TH1F* hQ21015PQ=0;
13142   static TH1F* hQ21520PQ=0;
13143   static TH1F* hQ22025PQ=0;
13144   static TH1F* hQ22530PQ=0;
13145 
13146   static TH1F* hW2PQ=0;
13147   static TH1F* hW20005PQ=0;
13148   static TH1F* hW20510PQ=0;
13149   static TH1F* hW21015PQ=0;
13150   static TH1F* hW21520PQ=0;
13151   static TH1F* hW22025PQ=0;
13152   static TH1F* hW22530PQ=0;
13153 
13154   static TH1F* hDirCosNuPQ=0;
13155   static TH1F* hDirCosNu0005PQ=0;
13156   static TH1F* hDirCosNu0510PQ=0;
13157   static TH1F* hDirCosNu1015PQ=0;
13158   static TH1F* hDirCosNu1520PQ=0;
13159   static TH1F* hDirCosNu2025PQ=0;
13160   static TH1F* hDirCosNu2530PQ=0;
13161 
13162   //NQ
13163   static TH1F* hYNQ=0;
13164   static TH1F* hY0005NQ=0;
13165   static TH1F* hY0510NQ=0;
13166   static TH1F* hY1015NQ=0;
13167   static TH1F* hY1520NQ=0;
13168   static TH1F* hY2025NQ=0;
13169   static TH1F* hY2530NQ=0;
13170 
13171   static TH1F* hXNQ=0;
13172   static TH1F* hX0005NQ=0;
13173   static TH1F* hX0510NQ=0;
13174   static TH1F* hX1015NQ=0;
13175   static TH1F* hX1520NQ=0;
13176   static TH1F* hX2025NQ=0;
13177   static TH1F* hX2530NQ=0;
13178 
13179   static TH1F* hQ2NQ=0;
13180   static TH1F* hQ20005NQ=0;
13181   static TH1F* hQ20510NQ=0;
13182   static TH1F* hQ21015NQ=0;
13183   static TH1F* hQ21520NQ=0;
13184   static TH1F* hQ22025NQ=0;
13185   static TH1F* hQ22530NQ=0;
13186 
13187   static TH1F* hW2NQ=0;
13188   static TH1F* hW20005NQ=0;
13189   static TH1F* hW20510NQ=0;
13190   static TH1F* hW21015NQ=0;
13191   static TH1F* hW21520NQ=0;
13192   static TH1F* hW22025NQ=0;
13193   static TH1F* hW22530NQ=0;
13194 
13195   static TH1F* hDirCosNuNQ=0;
13196   static TH1F* hDirCosNu0005NQ=0;
13197   static TH1F* hDirCosNu0510NQ=0;
13198   static TH1F* hDirCosNu1015NQ=0;
13199   static TH1F* hDirCosNu1520NQ=0;
13200   static TH1F* hDirCosNu2025NQ=0;
13201   static TH1F* hDirCosNu2530NQ=0;
13202 
13203 
13204   if (!hXPQ){
13205     MAXMSG("NuPlots",Msg::kDebug,1)<<"Creating kin plots..."<<endl;
13206     
13207     //PQ
13208     hYPQ=new TH1F("hYPQ","hYPQ",
13209                   1400,-0.2,1.2);
13210     hYPQ->GetXaxis()->SetTitle("y");
13211     hYPQ->GetXaxis()->CenterTitle();
13212     hYPQ->GetYaxis()->SetTitle("");
13213     hYPQ->GetYaxis()->CenterTitle();
13214     hYPQ->SetFillColor(0);
13215     hYPQ->SetLineColor(1);
13216     //hYPQ->SetBit(TH1::kCanRebin);
13217 
13218     hYNoRwPQ=new TH1F("hYNoRwPQ","hYNoRwPQ",
13219                   1400,-0.2,1.2);
13220     hYNoRwPQ->GetXaxis()->SetTitle("y");
13221     hYNoRwPQ->GetXaxis()->CenterTitle();
13222     hYNoRwPQ->GetYaxis()->SetTitle("");
13223     hYNoRwPQ->GetYaxis()->CenterTitle();
13224     hYNoRwPQ->SetFillColor(0);
13225     hYNoRwPQ->SetLineColor(1);
13226     //hYNoRwPQ->SetBit(TH1::kCanRebin);
13227 
13228     hY0005PQ=new TH1F("hY0005PQ","hY0005PQ",
13229                       1400,-0.2,1.2);
13230     hY0005PQ->GetXaxis()->SetTitle("y");
13231     hY0005PQ->GetXaxis()->CenterTitle();
13232     hY0005PQ->GetYaxis()->SetTitle("");
13233     hY0005PQ->GetYaxis()->CenterTitle();
13234     hY0005PQ->SetFillColor(0);
13235     hY0005PQ->SetLineColor(1);
13236     //hY0005PQ->SetBit(TH1::kCanRebin);
13237 
13238     hY0510PQ=new TH1F("hY0510PQ","hY0510PQ",
13239                       1400,-0.2,1.2);
13240     hY0510PQ->GetXaxis()->SetTitle("y");
13241     hY0510PQ->GetXaxis()->CenterTitle();
13242     hY0510PQ->GetYaxis()->SetTitle("");
13243     hY0510PQ->GetYaxis()->CenterTitle();
13244     hY0510PQ->SetFillColor(0);
13245     hY0510PQ->SetLineColor(1);
13246     //hY0510PQ->SetBit(TH1::kCanRebin);
13247 
13248     hY1015PQ=new TH1F("hY1015PQ","hY1015PQ",
13249                       1400,-0.2,1.2);
13250     hY1015PQ->GetXaxis()->SetTitle("y");
13251     hY1015PQ->GetXaxis()->CenterTitle();
13252     hY1015PQ->GetYaxis()->SetTitle("");
13253     hY1015PQ->GetYaxis()->CenterTitle();
13254     hY1015PQ->SetFillColor(0);
13255     hY1015PQ->SetLineColor(1);
13256     //hY1015PQ->SetBit(TH1::kCanRebin);
13257 
13258     hY1520PQ=new TH1F("hY1520PQ","hY1520PQ",
13259                       1400,-0.2,1.2);
13260     hY1520PQ->GetXaxis()->SetTitle("y");
13261     hY1520PQ->GetXaxis()->CenterTitle();
13262     hY1520PQ->GetYaxis()->SetTitle("");
13263     hY1520PQ->GetYaxis()->CenterTitle();
13264     hY1520PQ->SetFillColor(0);
13265     hY1520PQ->SetLineColor(1);
13266     //hY1520PQ->SetBit(TH1::kCanRebin);
13267 
13268     hY2025PQ=new TH1F("hY2025PQ","hY2025PQ",
13269                       1400,-0.2,1.2);
13270     hY2025PQ->GetXaxis()->SetTitle("y");
13271     hY2025PQ->GetXaxis()->CenterTitle();
13272     hY2025PQ->GetYaxis()->SetTitle("");
13273     hY2025PQ->GetYaxis()->CenterTitle();
13274     hY2025PQ->SetFillColor(0);
13275     hY2025PQ->SetLineColor(1);
13276     //hY2025PQ->SetBit(TH1::kCanRebin);
13277 
13278     hY2530PQ=new TH1F("hY2530PQ","hY2530PQ",
13279                       1400,-0.2,1.2);
13280     hY2530PQ->GetXaxis()->SetTitle("y");
13281     hY2530PQ->GetXaxis()->CenterTitle();
13282     hY2530PQ->GetYaxis()->SetTitle("");
13283     hY2530PQ->GetYaxis()->CenterTitle();
13284     hY2530PQ->SetFillColor(0);
13285     hY2530PQ->SetLineColor(1);
13286     //hY2530PQ->SetBit(TH1::kCanRebin);
13287 
13288 
13289     hXPQ=new TH1F("hXPQ","hXPQ",
13290                   2000,-10,10);
13291     hXPQ->GetXaxis()->SetTitle("x");
13292     hXPQ->GetXaxis()->CenterTitle();
13293     hXPQ->GetYaxis()->SetTitle("");
13294     hXPQ->GetYaxis()->CenterTitle();
13295     hXPQ->SetFillColor(0);
13296     hXPQ->SetLineColor(1);
13297     //hXPQ->SetBit(TH1::kCanRebin);
13298     
13299     hX0005PQ=new TH1F("hX0005PQ","hX0005PQ",
13300                       2000,-10,10);
13301     hX0005PQ->GetXaxis()->SetTitle("x");
13302     hX0005PQ->GetXaxis()->CenterTitle();
13303     hX0005PQ->GetYaxis()->SetTitle("");
13304     hX0005PQ->GetYaxis()->CenterTitle();
13305     hX0005PQ->SetFillColor(0);
13306     hX0005PQ->SetLineColor(1);
13307     //hX0005PQ->SetBit(TH1::kCanRebin);
13308 
13309     hX0510PQ=new TH1F("hX0510PQ","hX0510PQ",
13310                       2000,-10,10);
13311     hX0510PQ->GetXaxis()->SetTitle("x");
13312     hX0510PQ->GetXaxis()->CenterTitle();
13313     hX0510PQ->GetYaxis()->SetTitle("");
13314     hX0510PQ->GetYaxis()->CenterTitle();
13315     hX0510PQ->SetFillColor(0);
13316     hX0510PQ->SetLineColor(1);
13317     //hX0510PQ->SetBit(TH1::kCanRebin);
13318 
13319     hX1015PQ=new TH1F("hX1015PQ","hX1015PQ",
13320                       2000,-10,10);
13321     hX1015PQ->GetXaxis()->SetTitle("x");
13322     hX1015PQ->GetXaxis()->CenterTitle();
13323     hX1015PQ->GetYaxis()->SetTitle("");
13324     hX1015PQ->GetYaxis()->CenterTitle();
13325     hX1015PQ->SetFillColor(0);
13326     hX1015PQ->SetLineColor(1);
13327     //hX1015PQ->SetBit(TH1::kCanRebin);
13328 
13329     hX1520PQ=new TH1F("hX1520PQ","hX1520PQ",
13330                       2000,-10,10);
13331     hX1520PQ->GetXaxis()->SetTitle("x");
13332     hX1520PQ->GetXaxis()->CenterTitle();
13333     hX1520PQ->GetYaxis()->SetTitle("");
13334     hX1520PQ->GetYaxis()->CenterTitle();
13335     hX1520PQ->SetFillColor(0);
13336     hX1520PQ->SetLineColor(1);
13337     //hX1520PQ->SetBit(TH1::kCanRebin);
13338 
13339     hX2025PQ=new TH1F("hX2025PQ","hX2025PQ",
13340                       2000,-10,10);
13341     hX2025PQ->GetXaxis()->SetTitle("x");
13342     hX2025PQ->GetXaxis()->CenterTitle();
13343     hX2025PQ->GetYaxis()->SetTitle("");
13344     hX2025PQ->GetYaxis()->CenterTitle();
13345     hX2025PQ->SetFillColor(0);
13346     hX2025PQ->SetLineColor(1);
13347     //hX2025PQ->SetBit(TH1::kCanRebin);
13348 
13349     hX2530PQ=new TH1F("hX2530PQ","hX2530PQ",
13350                       2000,-10,10);
13351     hX2530PQ->GetXaxis()->SetTitle("x");
13352     hX2530PQ->GetXaxis()->CenterTitle();
13353     hX2530PQ->GetYaxis()->SetTitle("");
13354     hX2530PQ->GetYaxis()->CenterTitle();
13355     hX2530PQ->SetFillColor(0);
13356     hX2530PQ->SetLineColor(1);
13357     //hX2530PQ->SetBit(TH1::kCanRebin);
13358 
13359 
13360     hQ2PQ=new TH1F("hQ2PQ","hQ2PQ",
13361                    4*352,-32,320);
13362     hQ2PQ->GetXaxis()->SetTitle("Q^{2}");
13363     hQ2PQ->GetXaxis()->CenterTitle();
13364     hQ2PQ->GetYaxis()->SetTitle("");
13365     hQ2PQ->GetYaxis()->CenterTitle();
13366     hQ2PQ->SetFillColor(0);
13367     hQ2PQ->SetLineColor(1);
13368     //hQ2PQ->SetBit(TH1::kCanRebin);
13369 
13370 
13371     hQ20005PQ=new TH1F("hQ20005PQ","hQ20005PQ",
13372                        4*352,-32,320);
13373     hQ20005PQ->GetXaxis()->SetTitle("Q^{2}");
13374     hQ20005PQ->GetXaxis()->CenterTitle();
13375     hQ20005PQ->GetYaxis()->SetTitle("");
13376     hQ20005PQ->GetYaxis()->CenterTitle();
13377     hQ20005PQ->SetFillColor(0);
13378     hQ20005PQ->SetLineColor(1);
13379     //hQ20005PQ->SetBit(TH1::kCanRebin);
13380 
13381     hQ20510PQ=new TH1F("hQ20510PQ","hQ20510PQ",
13382                        4*352,-32,320);
13383     hQ20510PQ->GetXaxis()->SetTitle("Q^{2}");
13384     hQ20510PQ->GetXaxis()->CenterTitle();
13385     hQ20510PQ->GetYaxis()->SetTitle("");
13386     hQ20510PQ->GetYaxis()->CenterTitle();
13387     hQ20510PQ->SetFillColor(0);
13388     hQ20510PQ->SetLineColor(1);
13389     //hQ20510PQ->SetBit(TH1::kCanRebin);
13390 
13391     hQ21015PQ=new TH1F("hQ21015PQ","hQ21015PQ",
13392                        4*352,-32,320);
13393     hQ21015PQ->GetXaxis()->SetTitle("Q^{2}");
13394     hQ21015PQ->GetXaxis()->CenterTitle();
13395     hQ21015PQ->GetYaxis()->SetTitle("");
13396     hQ21015PQ->GetYaxis()->CenterTitle();
13397     hQ21015PQ->SetFillColor(0);
13398     hQ21015PQ->SetLineColor(1);
13399     //hQ21015PQ->SetBit(TH1::kCanRebin);
13400 
13401     hQ21520PQ=new TH1F("hQ21520PQ","hQ21520PQ",
13402                        4*352,-32,320);
13403     hQ21520PQ->GetXaxis()->SetTitle("Q^{2}");
13404     hQ21520PQ->GetXaxis()->CenterTitle();
13405     hQ21520PQ->GetYaxis()->SetTitle("");
13406     hQ21520PQ->GetYaxis()->CenterTitle();
13407     hQ21520PQ->SetFillColor(0);
13408     hQ21520PQ->SetLineColor(1);
13409     //hQ21520PQ->SetBit(TH1::kCanRebin);
13410 
13411     hQ22025PQ=new TH1F("hQ22025PQ","hQ22025PQ",
13412                        4*352,-32,320);
13413     hQ22025PQ->GetXaxis()->SetTitle("Q^{2}");
13414     hQ22025PQ->GetXaxis()->CenterTitle();
13415     hQ22025PQ->GetYaxis()->SetTitle("");
13416     hQ22025PQ->GetYaxis()->CenterTitle();
13417     hQ22025PQ->SetFillColor(0);
13418     hQ22025PQ->SetLineColor(1);
13419     //hQ22025PQ->SetBit(TH1::kCanRebin);
13420 
13421     hQ22530PQ=new TH1F("hQ22530PQ","hQ22530PQ",
13422                        4*352,-32,320);
13423     hQ22530PQ->GetXaxis()->SetTitle("Q^{2}");
13424     hQ22530PQ->GetXaxis()->CenterTitle();
13425     hQ22530PQ->GetYaxis()->SetTitle("");
13426     hQ22530PQ->GetYaxis()->CenterTitle();
13427     hQ22530PQ->SetFillColor(0);
13428     hQ22530PQ->SetLineColor(1);
13429     //hQ22530PQ->SetBit(TH1::kCanRebin);
13430 
13431 
13432     hW2PQ=new TH1F("hW2PQ","hW2PQ",
13433                    4*352,-32,320);
13434     hW2PQ->GetXaxis()->SetTitle("W^{2}");
13435     hW2PQ->GetXaxis()->CenterTitle();
13436     hW2PQ->GetYaxis()->SetTitle("");
13437     hW2PQ->GetYaxis()->CenterTitle();
13438     hW2PQ->SetFillColor(0);
13439     hW2PQ->SetLineColor(1);
13440     //hW2PQ->SetBit(TH1::kCanRebin);
13441 
13442     hW20005PQ=new TH1F("hW20005PQ","hW20005PQ",
13443                        4*352,-32,320);
13444     hW20005PQ->GetXaxis()->SetTitle("W^{2}");
13445     hW20005PQ->GetXaxis()->CenterTitle();
13446     hW20005PQ->GetYaxis()->SetTitle("");
13447     hW20005PQ->GetYaxis()->CenterTitle();
13448     hW20005PQ->SetFillColor(0);
13449     hW20005PQ->SetLineColor(1);
13450     //hW20005PQ->SetBit(TH1::kCanRebin);
13451 
13452     hW20510PQ=new TH1F("hW20510PQ","hW20510PQ",
13453                        4*352,-32,320);
13454     hW20510PQ->GetXaxis()->SetTitle("W^{2}");
13455     hW20510PQ->GetXaxis()->CenterTitle();
13456     hW20510PQ->GetYaxis()->SetTitle("");
13457     hW20510PQ->GetYaxis()->CenterTitle();
13458     hW20510PQ->SetFillColor(0);
13459     hW20510PQ->SetLineColor(1);
13460     //hW20510PQ->SetBit(TH1::kCanRebin);
13461 
13462     hW21015PQ=new TH1F("hW21015PQ","hW21015PQ",
13463                        4*352,-32,320);
13464     hW21015PQ->GetXaxis()->SetTitle("W^{2}");
13465     hW21015PQ->GetXaxis()->CenterTitle();
13466     hW21015PQ->GetYaxis()->SetTitle("");
13467     hW21015PQ->GetYaxis()->CenterTitle();
13468     hW21015PQ->SetFillColor(0);
13469     hW21015PQ->SetLineColor(1);
13470     //hW21015PQ->SetBit(TH1::kCanRebin);
13471 
13472     hW21520PQ=new TH1F("hW21520PQ","hW21520PQ",
13473                        4*352,-32,320);
13474     hW21520PQ->GetXaxis()->SetTitle("W^{2}");
13475     hW21520PQ->GetXaxis()->CenterTitle();
13476     hW21520PQ->GetYaxis()->SetTitle("");
13477     hW21520PQ->GetYaxis()->CenterTitle();
13478     hW21520PQ->SetFillColor(0);
13479     hW21520PQ->SetLineColor(1);
13480     //hW21520PQ->SetBit(TH1::kCanRebin);
13481 
13482     hW22025PQ=new TH1F("hW22025PQ","hW22025PQ",
13483                        4*352,-32,320);
13484     hW22025PQ->GetXaxis()->SetTitle("W^{2}");
13485     hW22025PQ->GetXaxis()->CenterTitle();
13486     hW22025PQ->GetYaxis()->SetTitle("");
13487     hW22025PQ->GetYaxis()->CenterTitle();
13488     hW22025PQ->SetFillColor(0);
13489     hW22025PQ->SetLineColor(1);
13490     //hW22025PQ->SetBit(TH1::kCanRebin);
13491 
13492     hW22530PQ=new TH1F("hW22530PQ","hW22530PQ",
13493                        4*352,-32,320);
13494     hW22530PQ->GetXaxis()->SetTitle("W^{2}");
13495     hW22530PQ->GetXaxis()->CenterTitle();
13496     hW22530PQ->GetYaxis()->SetTitle("");
13497     hW22530PQ->GetYaxis()->CenterTitle();
13498     hW22530PQ->SetFillColor(0);
13499     hW22530PQ->SetLineColor(1);
13500     //hW22530PQ->SetBit(TH1::kCanRebin);
13501 
13502 
13503     hDirCosNuPQ=new TH1F("hDirCosNuPQ","hDirCosNuPQ",
13504                          2000,-2,2);
13505     hDirCosNuPQ->GetXaxis()->SetTitle("DirCosNu");
13506     hDirCosNuPQ->GetXaxis()->CenterTitle();
13507     hDirCosNuPQ->GetYaxis()->SetTitle("");
13508     hDirCosNuPQ->GetYaxis()->CenterTitle();
13509     hDirCosNuPQ->SetFillColor(0);
13510     hDirCosNuPQ->SetLineColor(2);
13511     //hDirCosNuPQ->SetBit(TH1::kCanRebin);
13512 
13513     hDirCosNu0005PQ=new TH1F("hDirCosNu0005PQ","hDirCosNu0005PQ",
13514                              2000,-2,2);
13515     hDirCosNu0005PQ->GetXaxis()->SetTitle("DirCosNu");
13516     hDirCosNu0005PQ->GetXaxis()->CenterTitle();
13517     hDirCosNu0005PQ->GetYaxis()->SetTitle("");
13518     hDirCosNu0005PQ->GetYaxis()->CenterTitle();
13519     hDirCosNu0005PQ->SetFillColor(0);
13520     hDirCosNu0005PQ->SetLineColor(1);
13521     //hDirCosNu0005PQ->SetBit(TH1::kCanRebin);
13522 
13523     hDirCosNu0510PQ=new TH1F("hDirCosNu0510PQ","hDirCosNu0510PQ",
13524                              2000,-2,2);
13525     hDirCosNu0510PQ->GetXaxis()->SetTitle("DirCosNu");
13526     hDirCosNu0510PQ->GetXaxis()->CenterTitle();
13527     hDirCosNu0510PQ->GetYaxis()->SetTitle("");
13528     hDirCosNu0510PQ->GetYaxis()->CenterTitle();
13529     hDirCosNu0510PQ->SetFillColor(0);
13530     hDirCosNu0510PQ->SetLineColor(1);
13531     //hDirCosNu0510PQ->SetBit(TH1::kCanRebin);
13532 
13533     hDirCosNu1015PQ=new TH1F("hDirCosNu1015PQ","hDirCosNu1015PQ",
13534                              2000,-2,2);
13535     hDirCosNu1015PQ->GetXaxis()->SetTitle("DirCosNu");
13536     hDirCosNu1015PQ->GetXaxis()->CenterTitle();
13537     hDirCosNu1015PQ->GetYaxis()->SetTitle("");
13538     hDirCosNu1015PQ->GetYaxis()->CenterTitle();
13539     hDirCosNu1015PQ->SetFillColor(0);
13540     hDirCosNu1015PQ->SetLineColor(1);
13541     //hDirCosNu1015PQ->SetBit(TH1::kCanRebin);
13542 
13543     hDirCosNu1520PQ=new TH1F("hDirCosNu1520PQ","hDirCosNu1520PQ",
13544                              2000,-2,2);
13545     hDirCosNu1520PQ->GetXaxis()->SetTitle("DirCosNu");
13546     hDirCosNu1520PQ->GetXaxis()->CenterTitle();
13547     hDirCosNu1520PQ->GetYaxis()->SetTitle("");
13548     hDirCosNu1520PQ->GetYaxis()->CenterTitle();
13549     hDirCosNu1520PQ->SetFillColor(0);
13550     hDirCosNu1520PQ->SetLineColor(1);
13551     //hDirCosNu1520PQ->SetBit(TH1::kCanRebin);
13552 
13553     hDirCosNu2025PQ=new TH1F("hDirCosNu2025PQ","hDirCosNu2025PQ",
13554                              2000,-2,2);
13555     hDirCosNu2025PQ->GetXaxis()->SetTitle("DirCosNu");
13556     hDirCosNu2025PQ->GetXaxis()->CenterTitle();
13557     hDirCosNu2025PQ->GetYaxis()->SetTitle("");
13558     hDirCosNu2025PQ->GetYaxis()->CenterTitle();
13559     hDirCosNu2025PQ->SetFillColor(0);
13560     hDirCosNu2025PQ->SetLineColor(1);
13561     //hDirCosNu2025PQ->SetBit(TH1::kCanRebin);
13562 
13563     hDirCosNu2530PQ=new TH1F("hDirCosNu2530PQ","hDirCosNu2530PQ",
13564                              2000,-2,2);
13565     hDirCosNu2530PQ->GetXaxis()->SetTitle("DirCosNu");
13566     hDirCosNu2530PQ->GetXaxis()->CenterTitle();
13567     hDirCosNu2530PQ->GetYaxis()->SetTitle("");
13568     hDirCosNu2530PQ->GetYaxis()->CenterTitle();
13569     hDirCosNu2530PQ->SetFillColor(0);
13570     hDirCosNu2530PQ->SetLineColor(1);
13571     //hDirCosNu2530PQ->SetBit(TH1::kCanRebin);
13572 
13573 
13574 
13575     //NQ
13576     hYNQ=new TH1F("hYNQ","hYNQ",
13577                   1400,-0.2,1.2);
13578     hYNQ->GetXaxis()->SetTitle("y");
13579     hYNQ->GetXaxis()->CenterTitle();
13580     hYNQ->GetYaxis()->SetTitle("");
13581     hYNQ->GetYaxis()->CenterTitle();
13582     hYNQ->SetFillColor(0);
13583     hYNQ->SetLineColor(1);
13584     //hYNQ->SetBit(TH1::kCanRebin);
13585 
13586     hY0005NQ=new TH1F("hY0005NQ","hY0005NQ",
13587                       1400,-0.2,1.2);
13588     hY0005NQ->GetXaxis()->SetTitle("y");
13589     hY0005NQ->GetXaxis()->CenterTitle();
13590     hY0005NQ->GetYaxis()->SetTitle("");
13591     hY0005NQ->GetYaxis()->CenterTitle();
13592     hY0005NQ->SetFillColor(0);
13593     hY0005NQ->SetLineColor(1);
13594     //hY0005NQ->SetBit(TH1::kCanRebin);
13595 
13596     hY0510NQ=new TH1F("hY0510NQ","hY0510NQ",
13597                       1400,-0.2,1.2);
13598     hY0510NQ->GetXaxis()->SetTitle("y");
13599     hY0510NQ->GetXaxis()->CenterTitle();
13600     hY0510NQ->GetYaxis()->SetTitle("");
13601     hY0510NQ->GetYaxis()->CenterTitle();
13602     hY0510NQ->SetFillColor(0);
13603     hY0510NQ->SetLineColor(1);
13604     //hY0510NQ->SetBit(TH1::kCanRebin);
13605 
13606     hY1015NQ=new TH1F("hY1015NQ","hY1015NQ",
13607                       1400,-0.2,1.2);
13608     hY1015NQ->GetXaxis()->SetTitle("y");
13609     hY1015NQ->GetXaxis()->CenterTitle();
13610     hY1015NQ->GetYaxis()->SetTitle("");
13611     hY1015NQ->GetYaxis()->CenterTitle();
13612     hY1015NQ->SetFillColor(0);
13613     hY1015NQ->SetLineColor(1);
13614     //hY1015NQ->SetBit(TH1::kCanRebin);
13615 
13616     hY1520NQ=new TH1F("hY1520NQ","hY1520NQ",
13617                       1400,-0.2,1.2);
13618     hY1520NQ->GetXaxis()->SetTitle("y");
13619     hY1520NQ->GetXaxis()->CenterTitle();
13620     hY1520NQ->GetYaxis()->SetTitle("");
13621     hY1520NQ->GetYaxis()->CenterTitle();
13622     hY1520NQ->SetFillColor(0);
13623     hY1520NQ->SetLineColor(1);
13624     //hY1520NQ->SetBit(TH1::kCanRebin);
13625 
13626     hY2025NQ=new TH1F("hY2025NQ","hY2025NQ",
13627                       1400,-0.2,1.2);
13628     hY2025NQ->GetXaxis()->SetTitle("y");
13629     hY2025NQ->GetXaxis()->CenterTitle();
13630     hY2025NQ->GetYaxis()->SetTitle("");
13631     hY2025NQ->GetYaxis()->CenterTitle();
13632     hY2025NQ->SetFillColor(0);
13633     hY2025NQ->SetLineColor(1);
13634     //hY2025NQ->SetBit(TH1::kCanRebin);
13635 
13636     hY2530NQ=new TH1F("hY2530NQ","hY2530NQ",
13637                       1400,-0.2,1.2);
13638     hY2530NQ->GetXaxis()->SetTitle("y");
13639     hY2530NQ->GetXaxis()->CenterTitle();
13640     hY2530NQ->GetYaxis()->SetTitle("");
13641     hY2530NQ->GetYaxis()->CenterTitle();
13642     hY2530NQ->SetFillColor(0);
13643     hY2530NQ->SetLineColor(1);
13644     //hY2530NQ->SetBit(TH1::kCanRebin);
13645 
13646 
13647     hXNQ=new TH1F("hXNQ","hXNQ",
13648                   2000,-10,10);
13649     hXNQ->GetXaxis()->SetTitle("x");
13650     hXNQ->GetXaxis()->CenterTitle();
13651     hXNQ->GetYaxis()->SetTitle("");
13652     hXNQ->GetYaxis()->CenterTitle();
13653     hXNQ->SetFillColor(0);
13654     hXNQ->SetLineColor(1);
13655     //hXNQ->SetBit(TH1::kCanRebin);
13656     
13657     hX0005NQ=new TH1F("hX0005NQ","hX0005NQ",
13658                       2000,-10,10);
13659     hX0005NQ->GetXaxis()->SetTitle("x");
13660     hX0005NQ->GetXaxis()->CenterTitle();
13661     hX0005NQ->GetYaxis()->SetTitle("");
13662     hX0005NQ->GetYaxis()->CenterTitle();
13663     hX0005NQ->SetFillColor(0);
13664     hX0005NQ->SetLineColor(1);
13665     //hX0005NQ->SetBit(TH1::kCanRebin);
13666 
13667     hX0510NQ=new TH1F("hX0510NQ","hX0510NQ",
13668                       2000,-10,10);
13669     hX0510NQ->GetXaxis()->SetTitle("x");
13670     hX0510NQ->GetXaxis()->CenterTitle();
13671     hX0510NQ->GetYaxis()->SetTitle("");
13672     hX0510NQ->GetYaxis()->CenterTitle();
13673     hX0510NQ->SetFillColor(0);
13674     hX0510NQ->SetLineColor(1);
13675     //hX0510NQ->SetBit(TH1::kCanRebin);
13676 
13677     hX1015NQ=new TH1F("hX1015NQ","hX1015NQ",
13678                       2000,-10,10);
13679     hX1015NQ->GetXaxis()->SetTitle("x");
13680     hX1015NQ->GetXaxis()->CenterTitle();
13681     hX1015NQ->GetYaxis()->SetTitle("");
13682     hX1015NQ->GetYaxis()->CenterTitle();
13683     hX1015NQ->SetFillColor(0);
13684     hX1015NQ->SetLineColor(1);
13685     //hX1015NQ->SetBit(TH1::kCanRebin);
13686 
13687     hX1520NQ=new TH1F("hX1520NQ","hX1520NQ",
13688                       2000,-10,10);
13689     hX1520NQ->GetXaxis()->SetTitle("x");
13690     hX1520NQ->GetXaxis()->CenterTitle();
13691     hX1520NQ->GetYaxis()->SetTitle("");
13692     hX1520NQ->GetYaxis()->CenterTitle();
13693     hX1520NQ->SetFillColor(0);
13694     hX1520NQ->SetLineColor(1);
13695     //hX1520NQ->SetBit(TH1::kCanRebin);
13696 
13697     hX2025NQ=new TH1F("hX2025NQ","hX2025NQ",
13698                       2000,-10,10);
13699     hX2025NQ->GetXaxis()->SetTitle("x");
13700     hX2025NQ->GetXaxis()->CenterTitle();
13701     hX2025NQ->GetYaxis()->SetTitle("");
13702     hX2025NQ->GetYaxis()->CenterTitle();
13703     hX2025NQ->SetFillColor(0);
13704     hX2025NQ->SetLineColor(1);
13705     //hX2025NQ->SetBit(TH1::kCanRebin);
13706 
13707     hX2530NQ=new TH1F("hX2530NQ","hX2530NQ",
13708                       2000,-10,10);
13709     hX2530NQ->GetXaxis()->SetTitle("x");
13710     hX2530NQ->GetXaxis()->CenterTitle();
13711     hX2530NQ->GetYaxis()->SetTitle("");
13712     hX2530NQ->GetYaxis()->CenterTitle();
13713     hX2530NQ->SetFillColor(0);
13714     hX2530NQ->SetLineColor(1);
13715     //hX2530NQ->SetBit(TH1::kCanRebin);
13716 
13717 
13718     hQ2NQ=new TH1F("hQ2NQ","hQ2NQ",
13719                    4*352,-32,320);
13720     hQ2NQ->GetXaxis()->SetTitle("Q^{2}");
13721     hQ2NQ->GetXaxis()->CenterTitle();
13722     hQ2NQ->GetYaxis()->SetTitle("");
13723     hQ2NQ->GetYaxis()->CenterTitle();
13724     hQ2NQ->SetFillColor(0);
13725     hQ2NQ->SetLineColor(1);
13726     //hQ2NQ->SetBit(TH1::kCanRebin);
13727 
13728 
13729     hQ20005NQ=new TH1F("hQ20005NQ","hQ20005NQ",
13730                        4*352,-32,320);
13731     hQ20005NQ->GetXaxis()->SetTitle("Q^{2}");
13732     hQ20005NQ->GetXaxis()->CenterTitle();
13733     hQ20005NQ->GetYaxis()->SetTitle("");
13734     hQ20005NQ->GetYaxis()->CenterTitle();
13735     hQ20005NQ->SetFillColor(0);
13736     hQ20005NQ->SetLineColor(1);
13737     //hQ20005NQ->SetBit(TH1::kCanRebin);
13738 
13739     hQ20510NQ=new TH1F("hQ20510NQ","hQ20510NQ",
13740                        4*352,-32,320);
13741     hQ20510NQ->GetXaxis()->SetTitle("Q^{2}");
13742     hQ20510NQ->GetXaxis()->CenterTitle();
13743     hQ20510NQ->GetYaxis()->SetTitle("");
13744     hQ20510NQ->GetYaxis()->CenterTitle();
13745     hQ20510NQ->SetFillColor(0);
13746     hQ20510NQ->SetLineColor(1);
13747     //hQ20510NQ->SetBit(TH1::kCanRebin);
13748 
13749     hQ21015NQ=new TH1F("hQ21015NQ","hQ21015NQ",
13750                        4*352,-32,320);
13751     hQ21015NQ->GetXaxis()->SetTitle("Q^{2}");
13752     hQ21015NQ->GetXaxis()->CenterTitle();
13753     hQ21015NQ->GetYaxis()->SetTitle("");
13754     hQ21015NQ->GetYaxis()->CenterTitle();
13755     hQ21015NQ->SetFillColor(0);
13756     hQ21015NQ->SetLineColor(1);
13757     //hQ21015NQ->SetBit(TH1::kCanRebin);
13758 
13759     hQ21520NQ=new TH1F("hQ21520NQ","hQ21520NQ",
13760                        4*352,-32,320);
13761     hQ21520NQ->GetXaxis()->SetTitle("Q^{2}");
13762     hQ21520NQ->GetXaxis()->CenterTitle();
13763     hQ21520NQ->GetYaxis()->SetTitle("");
13764     hQ21520NQ->GetYaxis()->CenterTitle();
13765     hQ21520NQ->SetFillColor(0);
13766     hQ21520NQ->SetLineColor(1);
13767     //hQ21520NQ->SetBit(TH1::kCanRebin);
13768 
13769     hQ22025NQ=new TH1F("hQ22025NQ","hQ22025NQ",
13770                        4*352,-32,320);
13771     hQ22025NQ->GetXaxis()->SetTitle("Q^{2}");
13772     hQ22025NQ->GetXaxis()->CenterTitle();
13773     hQ22025NQ->GetYaxis()->SetTitle("");
13774     hQ22025NQ->GetYaxis()->CenterTitle();
13775     hQ22025NQ->SetFillColor(0);
13776     hQ22025NQ->SetLineColor(1);
13777     //hQ22025NQ->SetBit(TH1::kCanRebin);
13778 
13779     hQ22530NQ=new TH1F("hQ22530NQ","hQ22530NQ",
13780                        4*352,-32,320);
13781     hQ22530NQ->GetXaxis()->SetTitle("Q^{2}");
13782     hQ22530NQ->GetXaxis()->CenterTitle();
13783     hQ22530NQ->GetYaxis()->SetTitle("");
13784     hQ22530NQ->GetYaxis()->CenterTitle();
13785     hQ22530NQ->SetFillColor(0);
13786     hQ22530NQ->SetLineColor(1);
13787     //hQ22530NQ->SetBit(TH1::kCanRebin);
13788 
13789 
13790     hW2NQ=new TH1F("hW2NQ","hW2NQ",
13791                    4*352,-32,320);
13792     hW2NQ->GetXaxis()->SetTitle("W^{2}");
13793     hW2NQ->GetXaxis()->CenterTitle();
13794     hW2NQ->GetYaxis()->SetTitle("");
13795     hW2NQ->GetYaxis()->CenterTitle();
13796     hW2NQ->SetFillColor(0);
13797     hW2NQ->SetLineColor(1);
13798     //hW2NQ->SetBit(TH1::kCanRebin);
13799 
13800     hW20005NQ=new TH1F("hW20005NQ","hW20005NQ",
13801                        4*352,-32,320);
13802     hW20005NQ->GetXaxis()->SetTitle("W^{2}");
13803     hW20005NQ->GetXaxis()->CenterTitle();
13804     hW20005NQ->GetYaxis()->SetTitle("");
13805     hW20005NQ->GetYaxis()->CenterTitle();
13806     hW20005NQ->SetFillColor(0);
13807     hW20005NQ->SetLineColor(1);
13808     //hW20005NQ->SetBit(TH1::kCanRebin);
13809 
13810     hW20510NQ=new TH1F("hW20510NQ","hW20510NQ",
13811                        4*352,-32,320);
13812     hW20510NQ->GetXaxis()->SetTitle("W^{2}");
13813     hW20510NQ->GetXaxis()->CenterTitle();
13814     hW20510NQ->GetYaxis()->SetTitle("");
13815     hW20510NQ->GetYaxis()->CenterTitle();
13816     hW20510NQ->SetFillColor(0);
13817     hW20510NQ->SetLineColor(1);
13818     //hW20510NQ->SetBit(TH1::kCanRebin);
13819 
13820     hW21015NQ=new TH1F("hW21015NQ","hW21015NQ",
13821                        4*352,-32,320);
13822     hW21015NQ->GetXaxis()->SetTitle("W^{2}");
13823     hW21015NQ->GetXaxis()->CenterTitle();
13824     hW21015NQ->GetYaxis()->SetTitle("");
13825     hW21015NQ->GetYaxis()->CenterTitle();
13826     hW21015NQ->SetFillColor(0);
13827     hW21015NQ->SetLineColor(1);
13828     //hW21015NQ->SetBit(TH1::kCanRebin);
13829 
13830     hW21520NQ=new TH1F("hW21520NQ","hW21520NQ",
13831                        4*352,-32,320);
13832     hW21520NQ->GetXaxis()->SetTitle("W^{2}");
13833     hW21520NQ->GetXaxis()->CenterTitle();
13834     hW21520NQ->GetYaxis()->SetTitle("");
13835     hW21520NQ->GetYaxis()->CenterTitle();
13836     hW21520NQ->SetFillColor(0);
13837     hW21520NQ->SetLineColor(1);
13838     //hW21520NQ->SetBit(TH1::kCanRebin);
13839 
13840     hW22025NQ=new TH1F("hW22025NQ","hW22025NQ",
13841                        4*352,-32,320);
13842     hW22025NQ->GetXaxis()->SetTitle("W^{2}");
13843     hW22025NQ->GetXaxis()->CenterTitle();
13844     hW22025NQ->GetYaxis()->SetTitle("");
13845     hW22025NQ->GetYaxis()->CenterTitle();
13846     hW22025NQ->SetFillColor(0);
13847     hW22025NQ->SetLineColor(1);
13848     //hW22025NQ->SetBit(TH1::kCanRebin);
13849 
13850     hW22530NQ=new TH1F("hW22530NQ","hW22530NQ",
13851                        4*352,-32,320);
13852     hW22530NQ->GetXaxis()->SetTitle("W^{2}");
13853     hW22530NQ->GetXaxis()->CenterTitle();
13854     hW22530NQ->GetYaxis()->SetTitle("");
13855     hW22530NQ->GetYaxis()->CenterTitle();
13856     hW22530NQ->SetFillColor(0);
13857     hW22530NQ->SetLineColor(1);
13858     //hW22530NQ->SetBit(TH1::kCanRebin);
13859 
13860 
13861     hDirCosNuNQ=new TH1F("hDirCosNuNQ","hDirCosNuNQ",
13862                          2000,-2,2);
13863     hDirCosNuNQ->GetXaxis()->SetTitle("DirCosNu");
13864     hDirCosNuNQ->GetXaxis()->CenterTitle();
13865     hDirCosNuNQ->GetYaxis()->SetTitle("");
13866     hDirCosNuNQ->GetYaxis()->CenterTitle();
13867     hDirCosNuNQ->SetFillColor(0);
13868     hDirCosNuNQ->SetLineColor(2);
13869     //hDirCosNuNQ->SetBit(TH1::kCanRebin);
13870 
13871     hDirCosNu0005NQ=new TH1F("hDirCosNu0005NQ","hDirCosNu0005NQ",
13872                              2000,-2,2);
13873     hDirCosNu0005NQ->GetXaxis()->SetTitle("DirCosNu");
13874     hDirCosNu0005NQ->GetXaxis()->CenterTitle();
13875     hDirCosNu0005NQ->GetYaxis()->SetTitle("");
13876     hDirCosNu0005NQ->GetYaxis()->CenterTitle();
13877     hDirCosNu0005NQ->SetFillColor(0);
13878     hDirCosNu0005NQ->SetLineColor(1);
13879     //hDirCosNu0005NQ->SetBit(TH1::kCanRebin);
13880 
13881     hDirCosNu0510NQ=new TH1F("hDirCosNu0510NQ","hDirCosNu0510NQ",
13882                              2000,-2,2);
13883     hDirCosNu0510NQ->GetXaxis()->SetTitle("DirCosNu");
13884     hDirCosNu0510NQ->GetXaxis()->CenterTitle();
13885     hDirCosNu0510NQ->GetYaxis()->SetTitle("");
13886     hDirCosNu0510NQ->GetYaxis()->CenterTitle();
13887     hDirCosNu0510NQ->SetFillColor(0);
13888     hDirCosNu0510NQ->SetLineColor(1);
13889     //hDirCosNu0510NQ->SetBit(TH1::kCanRebin);
13890 
13891     hDirCosNu1015NQ=new TH1F("hDirCosNu1015NQ","hDirCosNu1015NQ",
13892                              2000,-2,2);
13893     hDirCosNu1015NQ->GetXaxis()->SetTitle("DirCosNu");
13894     hDirCosNu1015NQ->GetXaxis()->CenterTitle();
13895     hDirCosNu1015NQ->GetYaxis()->SetTitle("");
13896     hDirCosNu1015NQ->GetYaxis()->CenterTitle();
13897     hDirCosNu1015NQ->SetFillColor(0);
13898     hDirCosNu1015NQ->SetLineColor(1);
13899     //hDirCosNu1015NQ->SetBit(TH1::kCanRebin);
13900 
13901     hDirCosNu1520NQ=new TH1F("hDirCosNu1520NQ","hDirCosNu1520NQ",
13902                              2000,-2,2);
13903     hDirCosNu1520NQ->GetXaxis()->SetTitle("DirCosNu");
13904     hDirCosNu1520NQ->GetXaxis()->CenterTitle();
13905     hDirCosNu1520NQ->GetYaxis()->SetTitle("");
13906     hDirCosNu1520NQ->GetYaxis()->CenterTitle();
13907     hDirCosNu1520NQ->SetFillColor(0);
13908     hDirCosNu1520NQ->SetLineColor(1);
13909     //hDirCosNu1520NQ->SetBit(TH1::kCanRebin);
13910 
13911     hDirCosNu2025NQ=new TH1F("hDirCosNu2025NQ","hDirCosNu2025NQ",
13912                              2000,-2,2);
13913     hDirCosNu2025NQ->GetXaxis()->SetTitle("DirCosNu");
13914     hDirCosNu2025NQ->GetXaxis()->CenterTitle();
13915     hDirCosNu2025NQ->GetYaxis()->SetTitle("");
13916     hDirCosNu2025NQ->GetYaxis()->CenterTitle();
13917     hDirCosNu2025NQ->SetFillColor(0);
13918     hDirCosNu2025NQ->SetLineColor(1);
13919     //hDirCosNu2025NQ->SetBit(TH1::kCanRebin);
13920 
13921     hDirCosNu2530NQ=new TH1F("hDirCosNu2530NQ","hDirCosNu2530NQ",
13922                              2000,-2,2);
13923     hDirCosNu2530NQ->GetXaxis()->SetTitle("DirCosNu");
13924     hDirCosNu2530NQ->GetXaxis()->CenterTitle();
13925     hDirCosNu2530NQ->GetYaxis()->SetTitle("");
13926     hDirCosNu2530NQ->GetYaxis()->CenterTitle();
13927     hDirCosNu2530NQ->SetFillColor(0);
13928     hDirCosNu2530NQ->SetLineColor(1);
13929     //hDirCosNu2530NQ->SetBit(TH1::kCanRebin);
13930   }
13931 
13932   //PQ
13933   if (nu.charge==+1){
13934     hYPQ->Fill(nu.y,nu.rw);
13935     hYNoRwPQ->Fill(nu.y);
13936     hXPQ->Fill(nu.x,nu.rw);
13937     hQ2PQ->Fill(nu.q2,nu.rw);
13938     hW2PQ->Fill(nu.w2,nu.rw);
13939     hDirCosNuPQ->Fill(nu.dirCosNu,nu.rw);
13940 
13941     if (nu.energy<5*Munits::GeV) {
13942       hY0005PQ->Fill(nu.y,nu.rw);
13943       hX0005PQ->Fill(nu.x,nu.rw);
13944       hQ20005PQ->Fill(nu.q2,nu.rw);
13945       hW20005PQ->Fill(nu.w2,nu.rw);
13946       hDirCosNu0005PQ->Fill(nu.dirCosNu,nu.rw);
13947     }
13948     else if (nu.energy<10*Munits::GeV) {
13949       hY0510PQ->Fill(nu.y,nu.rw);
13950       hX0510PQ->Fill(nu.x,nu.rw);
13951       hQ20510PQ->Fill(nu.q2,nu.rw);
13952       hW20510PQ->Fill(nu.w2,nu.rw);
13953       hDirCosNu0510PQ->Fill(nu.dirCosNu,nu.rw);
13954     }
13955     else if (nu.energy<15*Munits::GeV) {
13956       hY1015PQ->Fill(nu.y,nu.rw);
13957       hX1015PQ->Fill(nu.x,nu.rw);
13958       hQ21015PQ->Fill(nu.q2,nu.rw);
13959       hW21015PQ->Fill(nu.w2,nu.rw);
13960       hDirCosNu1015PQ->Fill(nu.dirCosNu,nu.rw);
13961     }
13962     else if (nu.energy<20*Munits::GeV) {
13963       hY1520PQ->Fill(nu.y,nu.rw);
13964       hX1520PQ->Fill(nu.x,nu.rw);
13965       hQ21520PQ->Fill(nu.q2,nu.rw);
13966       hW21520PQ->Fill(nu.w2,nu.rw);
13967       hDirCosNu1520PQ->Fill(nu.dirCosNu,nu.rw);
13968     }
13969     else if (nu.energy<25*Munits::GeV) {
13970       hY2025PQ->Fill(nu.y,nu.rw);
13971       hX2025PQ->Fill(nu.x,nu.rw);
13972       hQ22025PQ->Fill(nu.q2,nu.rw);
13973       hW22025PQ->Fill(nu.w2,nu.rw);
13974       hDirCosNu2025PQ->Fill(nu.dirCosNu,nu.rw);
13975     }
13976     else if (nu.energy<30*Munits::GeV) {
13977       hY2530PQ->Fill(nu.y,nu.rw);
13978       hX2530PQ->Fill(nu.x,nu.rw);
13979       hQ22530PQ->Fill(nu.q2,nu.rw);
13980       hW22530PQ->Fill(nu.w2,nu.rw);
13981       hDirCosNu2530PQ->Fill(nu.dirCosNu,nu.rw);
13982     }
13983     else {
13984       //do nothing... too high
13985     }
13986   }
13987   //NQ
13988   else if (nu.charge==-1){
13989     hYNQ->Fill(nu.y,nu.rw);
13990     hXNQ->Fill(nu.x,nu.rw);
13991     hQ2NQ->Fill(nu.q2,nu.rw);
13992     hW2NQ->Fill(nu.w2,nu.rw);
13993     hDirCosNuNQ->Fill(nu.dirCosNu,nu.rw);
13994 
13995     if (nu.energy<5*Munits::GeV) {
13996       hY0005NQ->Fill(nu.y,nu.rw);
13997       hX0005NQ->Fill(nu.x,nu.rw);
13998       hQ20005NQ->Fill(nu.q2,nu.rw);
13999       hW20005NQ->Fill(nu.w2,nu.rw);
14000       hDirCosNu0005NQ->Fill(nu.dirCosNu,nu.rw);
14001     }
14002     else if (nu.energy<10*Munits::GeV) {
14003       hY0510NQ->Fill(nu.y,nu.rw);
14004       hX0510NQ->Fill(nu.x,nu.rw);
14005       hQ20510NQ->Fill(nu.q2,nu.rw);
14006       hW20510NQ->Fill(nu.w2,nu.rw);
14007       hDirCosNu0510NQ->Fill(nu.dirCosNu,nu.rw);
14008     }
14009     else if (nu.energy<15*Munits::GeV) {
14010       hY1015NQ->Fill(nu.y,nu.rw);
14011       hX1015NQ->Fill(nu.x,nu.rw);
14012       hQ21015NQ->Fill(nu.q2,nu.rw);
14013       hW21015NQ->Fill(nu.w2,nu.rw);
14014       hDirCosNu1015NQ->Fill(nu.dirCosNu,nu.rw);
14015     }
14016     else if (nu.energy<20*Munits::GeV) {
14017       hY1520NQ->Fill(nu.y,nu.rw);
14018       hX1520NQ->Fill(nu.x,nu.rw);
14019       hQ21520NQ->Fill(nu.q2,nu.rw);
14020       hW21520NQ->Fill(nu.w2,nu.rw);
14021       hDirCosNu1520NQ->Fill(nu.dirCosNu,nu.rw);
14022     }
14023     else if (nu.energy<25*Munits::GeV) {
14024       hY2025NQ->Fill(nu.y,nu.rw);
14025       hX2025NQ->Fill(nu.x,nu.rw);
14026       hQ22025NQ->Fill(nu.q2,nu.rw);
14027       hW22025NQ->Fill(nu.w2,nu.rw);
14028       hDirCosNu2025NQ->Fill(nu.dirCosNu,nu.rw);
14029     }
14030     else if (nu.energy<30*Munits::GeV) {
14031       hY2530NQ->Fill(nu.y,nu.rw);
14032       hX2530NQ->Fill(nu.x,nu.rw);
14033       hQ22530NQ->Fill(nu.q2,nu.rw);
14034       hW22530NQ->Fill(nu.w2,nu.rw);
14035       hDirCosNu2530NQ->Fill(nu.dirCosNu,nu.rw);
14036     }
14037     else {
14038       //do nothing... too high
14039     }
14040   }
14041   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
14042 }

void NuPlots::FillLowProbPlots const NtpSRTrack trk,
const NuEvent nu
const
 

Definition at line 24414 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::containmentFlag, NtpSRTrack::end, NuEvent::energy, MAXMSG, MSG, NtpSRVertex::plane, NuEvent::prob, NuEvent::rw, NuEvent::trkEn, NuEvent::trkEnCurv, NuEvent::trkEnRange, NtpSRTrack::vtx, NtpSRVertex::x, NtpSRVertex::y, and NtpSRVertex::z.

Referenced by NuAnalysis::ChargeSeparationOneSnarl().

24416 { 
24417   //PQ
24418   static TH1F* hLowProbVtxXPQ=0;
24419   static TH1F* hLowProbVtxYPQ=0;
24420   static TH1F* hLowProbVtxZPQ=0;
24421   static TH1F* hLowProbVtxRPQ=0;
24422   static TH1F* hLowProbEndXPQ=0;
24423   static TH1F* hLowProbEndYPQ=0;
24424   static TH1F* hLowProbEndZPQ=0;
24425   static TH1F* hLowProbEndRPQ=0;
24426 
24427   static TH2F* hLowProbVtxXYPQ=0;
24428   static TH2F* hLowProbEndXYPQ=0;
24429 
24430   static TH1F* hLowProbPQ=0;
24431   static TH1F* hLowProbPQ1=0;
24432   static TH1F* hLowProbPQ2=0;
24433   static TH1F* hLowProbPQ3=0;
24434   static TH1F* hLowProbPQ4=0;
24435 
24436   static TH1F* hLowProbRecoEnPQ=0;
24437   static TH1F* hLowProbRecoMuEnPQ=0;
24438   static TH1F* hLowProbRecoMuEnOnExitPQ=0;
24439 
24440   static TH1F* hLowProbRngCurvPQ=0;
24441   static TH1F* hLowProbRngCurvPQ1=0;
24442   static TH1F* hLowProbRngCurvPQ2=0;
24443   static TH1F* hLowProbRngCurvPQ3=0;
24444   static TH1F* hLowProbRngCurvPQ4=0;
24445 
24446   static TH1F* hLowProbRngPQ=0;
24447   static TH1F* hLowProbRngPQ1=0;
24448   static TH1F* hLowProbRngPQ2=0;
24449   static TH1F* hLowProbRngPQ3=0;
24450   static TH1F* hLowProbRngPQ4=0;
24451 
24452   static TH1F* hLowProbCurvPQ=0;
24453   static TH1F* hLowProbCurvPQ1=0;
24454   static TH1F* hLowProbCurvPQ2=0;
24455   static TH1F* hLowProbCurvPQ3=0;
24456   static TH1F* hLowProbCurvPQ4=0;
24457 
24458   static TH1F* hLowProbTrkLenPlPQ=0;
24459   static TH1F* hLowProbTrkLenPlPQ1=0;
24460   static TH1F* hLowProbTrkLenPlPQ2=0;
24461   static TH1F* hLowProbTrkLenPlPQ3=0;
24462   static TH1F* hLowProbTrkLenPlPQ4=0;
24463 
24464 
24465   //NQ
24466   static TH1F* hLowProbVtxXNQ=0;
24467   static TH1F* hLowProbVtxYNQ=0;
24468   static TH1F* hLowProbVtxZNQ=0;
24469   static TH1F* hLowProbVtxRNQ=0;
24470   static TH1F* hLowProbEndXNQ=0;
24471   static TH1F* hLowProbEndYNQ=0;
24472   static TH1F* hLowProbEndZNQ=0;
24473   static TH1F* hLowProbEndRNQ=0;
24474 
24475   static TH2F* hLowProbVtxXYNQ=0;
24476   static TH2F* hLowProbEndXYNQ=0;
24477 
24478   static TH1F* hLowProbNQ=0;
24479   static TH1F* hLowProbNQ1=0;
24480   static TH1F* hLowProbNQ2=0;
24481   static TH1F* hLowProbNQ3=0;
24482   static TH1F* hLowProbNQ4=0;
24483 
24484   static TH1F* hLowProbRecoEnNQ=0;
24485   static TH1F* hLowProbRecoMuEnNQ=0;
24486   static TH1F* hLowProbRecoMuEnOnExitNQ=0;
24487 
24488   static TH1F* hLowProbRngCurvNQ=0;
24489   static TH1F* hLowProbRngCurvNQ1=0;
24490   static TH1F* hLowProbRngCurvNQ2=0;
24491   static TH1F* hLowProbRngCurvNQ3=0;
24492   static TH1F* hLowProbRngCurvNQ4=0;
24493 
24494   static TH1F* hLowProbRngNQ=0;
24495   static TH1F* hLowProbRngNQ1=0;
24496   static TH1F* hLowProbRngNQ2=0;
24497   static TH1F* hLowProbRngNQ3=0;
24498   static TH1F* hLowProbRngNQ4=0;
24499 
24500   static TH1F* hLowProbCurvNQ=0;
24501   static TH1F* hLowProbCurvNQ1=0;
24502   static TH1F* hLowProbCurvNQ2=0;
24503   static TH1F* hLowProbCurvNQ3=0;
24504   static TH1F* hLowProbCurvNQ4=0;
24505 
24506   static TH1F* hLowProbTrkLenPlNQ=0;
24507   static TH1F* hLowProbTrkLenPlNQ1=0;
24508   static TH1F* hLowProbTrkLenPlNQ2=0;
24509   static TH1F* hLowProbTrkLenPlNQ3=0;
24510   static TH1F* hLowProbTrkLenPlNQ4=0;
24511 
24512 
24513   if (!hLowProbVtxXPQ){
24514     MAXMSG("NuPlots",Msg::kDebug,1)
24515       <<"Creating LowProb plots..."<<endl;
24516     
24517     //PQ
24518     hLowProbVtxXPQ=new TH1F("hLowProbVtxXPQ","hLowProbVtxXPQ",
24519                             1000,-5,5);
24520     hLowProbVtxXPQ->GetXaxis()->SetTitle("Vtx X Position (m)");
24521     hLowProbVtxXPQ->GetXaxis()->CenterTitle();
24522     hLowProbVtxXPQ->GetYaxis()->SetTitle("");
24523     hLowProbVtxXPQ->GetYaxis()->CenterTitle();
24524     hLowProbVtxXPQ->SetLineWidth(2);
24525     //hLowProbVtxXPQ->SetBit(TH1::kCanRebin);
24526 
24527     hLowProbVtxYPQ=new TH1F("hLowProbVtxYPQ","hLowProbVtxYPQ",
24528                             1000,-5,5);
24529     hLowProbVtxYPQ->GetXaxis()->SetTitle("Vtx Y Position (m)");
24530     hLowProbVtxYPQ->GetXaxis()->CenterTitle();
24531     hLowProbVtxYPQ->GetYaxis()->SetTitle("");
24532     hLowProbVtxYPQ->GetYaxis()->CenterTitle();
24533     hLowProbVtxYPQ->SetLineWidth(2);
24534     //hLowProbVtxYPQ->SetBit(TH1::kCanRebin);
24535 
24536     hLowProbVtxZPQ=new TH1F("hLowProbVtxZPQ","hLowProbVtxZPQ",
24537                             4000,-1,39);
24538     hLowProbVtxZPQ->GetXaxis()->SetTitle("Vtx Z Position (m)");
24539     hLowProbVtxZPQ->GetXaxis()->CenterTitle();
24540     hLowProbVtxZPQ->GetYaxis()->SetTitle("");
24541     hLowProbVtxZPQ->GetYaxis()->CenterTitle();
24542     hLowProbVtxZPQ->SetLineWidth(2);
24543     //hLowProbVtxZPQ->SetBit(TH1::kCanRebin);
24544 
24545     hLowProbVtxRPQ=new TH1F("hLowProbVtxRPQ","hLowProbVtxRPQ",
24546                             700,-2,5);
24547     hLowProbVtxRPQ->GetXaxis()->SetTitle("Vtx Radius (m)");
24548     hLowProbVtxRPQ->GetXaxis()->CenterTitle();
24549     hLowProbVtxRPQ->GetYaxis()->SetTitle("");
24550     hLowProbVtxRPQ->GetYaxis()->CenterTitle();
24551     hLowProbVtxRPQ->SetLineWidth(2);
24552     //hLowProbVtxRPQ->SetBit(TH1::kCanRebin);
24553 
24554 
24555     hLowProbEndXPQ=new TH1F("hLowProbEndXPQ","hLowProbEndXPQ",
24556                             1000,-5,5);
24557     hLowProbEndXPQ->GetXaxis()->SetTitle("End X Position (m)");
24558     hLowProbEndXPQ->GetXaxis()->CenterTitle();
24559     hLowProbEndXPQ->GetYaxis()->SetTitle("");
24560     hLowProbEndXPQ->GetYaxis()->CenterTitle();
24561     hLowProbEndXPQ->SetLineWidth(2);
24562     //hLowProbEndXPQ->SetBit(TH1::kCanRebin);
24563 
24564     hLowProbEndYPQ=new TH1F("hLowProbEndYPQ","hLowProbEndYPQ",
24565                             1000,-5,5);
24566     hLowProbEndYPQ->GetXaxis()->SetTitle("End Y Position (m)");
24567     hLowProbEndYPQ->GetXaxis()->CenterTitle();
24568     hLowProbEndYPQ->GetYaxis()->SetTitle("");
24569     hLowProbEndYPQ->GetYaxis()->CenterTitle();
24570     hLowProbEndYPQ->SetLineWidth(2);
24571     //hLowProbEndYPQ->SetBit(TH1::kCanRebin);
24572 
24573     hLowProbEndZPQ=new TH1F("hLowProbEndZPQ","hLowProbEndZPQ",
24574                             4000,-1,39);
24575     hLowProbEndZPQ->GetXaxis()->SetTitle("End Z Position (m)");
24576     hLowProbEndZPQ->GetXaxis()->CenterTitle();
24577     hLowProbEndZPQ->GetYaxis()->SetTitle("");
24578     hLowProbEndZPQ->GetYaxis()->CenterTitle();
24579     hLowProbEndZPQ->SetLineWidth(2);
24580     //hLowProbEndZPQ->SetBit(TH1::kCanRebin);
24581 
24582     hLowProbEndRPQ=new TH1F("hLowProbEndRPQ","hLowProbEndRPQ",
24583                             700,-2,5);
24584     hLowProbEndRPQ->GetXaxis()->SetTitle("Vtx Radius (m)");
24585     hLowProbEndRPQ->GetXaxis()->CenterTitle();
24586     hLowProbEndRPQ->GetYaxis()->SetTitle("");
24587     hLowProbEndRPQ->GetYaxis()->CenterTitle();
24588     hLowProbEndRPQ->SetLineWidth(2);
24589     //hLowProbEndRPQ->SetBit(TH1::kCanRebin);
24590 
24591 
24592     hLowProbVtxXYPQ=new TH2F
24593       ("hLowProbVtxXYPQ","hLowProbVtxXYPQ",300,-3,3,300,-3,3);
24594     hLowProbVtxXYPQ->GetXaxis()->SetTitle("x (m)");
24595     hLowProbVtxXYPQ->GetXaxis()->CenterTitle();
24596     hLowProbVtxXYPQ->GetYaxis()->SetTitle("y (m)");
24597     hLowProbVtxXYPQ->GetYaxis()->CenterTitle();
24598     //hLowProbVtxXYPQ->SetBit(TH1::kCanRebin);
24599 
24600     hLowProbEndXYPQ=new TH2F
24601       ("hLowProbEndXYPQ","hLowProbEndXYPQ",300,-3,3,300,-3,3);
24602     hLowProbEndXYPQ->GetXaxis()->SetTitle("x (m)");
24603     hLowProbEndXYPQ->GetXaxis()->CenterTitle();
24604     hLowProbEndXYPQ->GetYaxis()->SetTitle("y (m)");
24605     hLowProbEndXYPQ->GetYaxis()->CenterTitle();
24606     //hLowProbEndXYPQ->SetBit(TH1::kCanRebin);
24607 
24608 
24609     hLowProbPQ=new TH1F("hLowProbPQ","hLowProbPQ",14000,-0.2,1.2);
24610     hLowProbPQ->GetXaxis()->SetTitle("Fit Probability");
24611     hLowProbPQ->GetXaxis()->CenterTitle();
24612     hLowProbPQ->GetYaxis()->SetTitle("");
24613     hLowProbPQ->GetYaxis()->CenterTitle();
24614     hLowProbPQ->SetLineWidth(2);
24615     //hLowProbPQ->SetBit(TH1::kCanRebin);
24616 
24617     hLowProbPQ1=new TH1F("hLowProbPQ1","hLowProbPQ1",14000,-0.2,1.2);
24618     hLowProbPQ1->GetXaxis()->SetTitle("Fit Probability");
24619     hLowProbPQ1->GetXaxis()->CenterTitle();
24620     hLowProbPQ1->GetYaxis()->SetTitle("");
24621     hLowProbPQ1->GetYaxis()->CenterTitle();
24622     hLowProbPQ1->SetLineWidth(2);
24623     //hLowProbPQ1->SetBit(TH1::kCanRebin);
24624 
24625     hLowProbPQ2=new TH1F("hLowProbPQ2","hLowProbPQ2",14000,-0.2,1.2);
24626     hLowProbPQ2->GetXaxis()->SetTitle("Fit Probability");
24627     hLowProbPQ2->GetXaxis()->CenterTitle();
24628     hLowProbPQ2->GetYaxis()->SetTitle("");
24629     hLowProbPQ2->GetYaxis()->CenterTitle();
24630     hLowProbPQ2->SetLineWidth(2);
24631     //hLowProbPQ2->SetBit(TH1::kCanRebin);
24632 
24633     hLowProbPQ3=new TH1F("hLowProbPQ3","hLowProbPQ3",14000,-0.2,1.2);
24634     hLowProbPQ3->GetXaxis()->SetTitle("Fit Probability");
24635     hLowProbPQ3->GetXaxis()->CenterTitle();
24636     hLowProbPQ3->GetYaxis()->SetTitle("");
24637     hLowProbPQ3->GetYaxis()->CenterTitle();
24638     hLowProbPQ3->SetLineWidth(2);
24639     //hLowProbPQ3->SetBit(TH1::kCanRebin);
24640 
24641     hLowProbPQ4=new TH1F("hLowProbPQ4","hLowProbPQ4",14000,-0.2,1.2);
24642     hLowProbPQ4->GetXaxis()->SetTitle("Fit Probability");
24643     hLowProbPQ4->GetXaxis()->CenterTitle();
24644     hLowProbPQ4->GetYaxis()->SetTitle("");
24645     hLowProbPQ4->GetYaxis()->CenterTitle();
24646     hLowProbPQ4->SetLineWidth(2);
24647     //hLowProbPQ4->SetBit(TH1::kCanRebin);
24648 
24649 
24650     hLowProbRecoEnPQ=new TH1F("hLowProbRecoEnPQ","hLowProbRecoEnPQ",
24651                               4*352,-32,320);
24652     hLowProbRecoEnPQ->GetXaxis()->SetTitle
24653       ("Reconstructed Energy (GeV)");
24654     hLowProbRecoEnPQ->GetXaxis()->CenterTitle();
24655     hLowProbRecoEnPQ->GetYaxis()->SetTitle("");
24656     hLowProbRecoEnPQ->GetYaxis()->CenterTitle();
24657     hLowProbRecoEnPQ->SetLineWidth(2);
24658     //hLowProbRecoEnPQ->SetBit(TH1::kCanRebin);
24659 
24660     hLowProbRecoMuEnPQ=new TH1F("hLowProbRecoMuEnPQ",
24661                                 "hLowProbRecoMuEnPQ",
24662                                 4*352,-32,320);
24663     hLowProbRecoMuEnPQ->GetXaxis()->SetTitle
24664       ("Reconstructed Energy (GeV)");
24665     hLowProbRecoMuEnPQ->GetXaxis()->CenterTitle();
24666     hLowProbRecoMuEnPQ->GetYaxis()->SetTitle("");
24667     hLowProbRecoMuEnPQ->GetYaxis()->CenterTitle();
24668     hLowProbRecoMuEnPQ->SetLineWidth(2);
24669     //hLowProbRecoMuEnPQ->SetBit(TH1::kCanRebin);
24670 
24671     
24672     hLowProbRecoMuEnOnExitPQ=new TH1F("hLowProbRecoMuEnOnExitPQ",
24673                                       "hLowProbRecoMuEnOnExitPQ",
24674                                       4*352,-32,320);
24675     hLowProbRecoMuEnOnExitPQ->GetXaxis()->SetTitle
24676       ("Reconstructed Energy (GeV)");
24677     hLowProbRecoMuEnOnExitPQ->GetXaxis()->CenterTitle();
24678     hLowProbRecoMuEnOnExitPQ->GetYaxis()->SetTitle("");
24679     hLowProbRecoMuEnOnExitPQ->GetYaxis()->CenterTitle();
24680     hLowProbRecoMuEnOnExitPQ->SetLineWidth(2);
24681     //hLowProbRecoMuEnOnExitPQ->SetBit(TH1::kCanRebin);
24682 
24683 
24684     hLowProbRngCurvPQ=new TH1F("hLowProbRngCurvPQ","hLowProbRngCurvPQ",
24685                                4*160,-1.6,1.6);
24686     hLowProbRngCurvPQ->GetXaxis()->SetTitle("Curv-Range/Range");
24687     hLowProbRngCurvPQ->GetXaxis()->CenterTitle();
24688     hLowProbRngCurvPQ->GetYaxis()->SetTitle("");
24689     hLowProbRngCurvPQ->GetYaxis()->CenterTitle();
24690     //hLowProbRngCurvPQ->SetBit(TH1::kCanRebin);
24691 
24692     hLowProbRngCurvPQ1=new TH1F("hLowProbRngCurvPQ1",
24693                                 "hLowProbRngCurvPQ1",
24694                                 4*160,-1.6,1.6);
24695     hLowProbRngCurvPQ1->GetXaxis()->SetTitle("Curv-Range/Range");
24696     hLowProbRngCurvPQ1->GetXaxis()->CenterTitle();
24697     hLowProbRngCurvPQ1->GetYaxis()->SetTitle("");
24698     hLowProbRngCurvPQ1->GetYaxis()->CenterTitle();
24699     //hLowProbRngCurvPQ1->SetBit(TH1::kCanRebin);
24700 
24701     hLowProbRngCurvPQ2=new TH1F("hLowProbRngCurvPQ2",
24702                                 "hLowProbRngCurvPQ2",
24703                                 4*160,-1.6,1.6);
24704     hLowProbRngCurvPQ2->GetXaxis()->SetTitle("Curv-Range/Range");
24705     hLowProbRngCurvPQ2->GetXaxis()->CenterTitle();
24706     hLowProbRngCurvPQ2->GetYaxis()->SetTitle("");
24707     hLowProbRngCurvPQ2->GetYaxis()->CenterTitle();
24708     //hLowProbRngCurvPQ2->SetBit(TH1::kCanRebin);
24709 
24710     hLowProbRngCurvPQ3=new TH1F("hLowProbRngCurvPQ3",
24711                                 "hLowProbRngCurvPQ3",
24712                                 4*160,-1.6,1.6);
24713     hLowProbRngCurvPQ3->GetXaxis()->SetTitle("Curv-Range/Range");
24714     hLowProbRngCurvPQ3->GetXaxis()->CenterTitle();
24715     hLowProbRngCurvPQ3->GetYaxis()->SetTitle("");
24716     hLowProbRngCurvPQ3->GetYaxis()->CenterTitle();
24717     //hLowProbRngCurvPQ3->SetBit(TH1::kCanRebin);
24718 
24719     hLowProbRngCurvPQ4=new TH1F("hLowProbRngCurvPQ4",
24720                                 "hLowProbRngCurvPQ4",
24721                                 4*160,-1.6,1.6);
24722     hLowProbRngCurvPQ4->GetXaxis()->SetTitle("Curv-Range/Range");
24723     hLowProbRngCurvPQ4->GetXaxis()->CenterTitle();
24724     hLowProbRngCurvPQ4->GetYaxis()->SetTitle("");
24725     hLowProbRngCurvPQ4->GetYaxis()->CenterTitle();
24726     //hLowProbRngCurvPQ4->SetBit(TH1::kCanRebin);
24727 
24728 
24729 
24730     hLowProbTrkLenPlPQ=new TH1F("hLowProbTrkLenPlPQ",
24731                                 "hLowProbTrkLenPlPQ",
24732                                 520,-20,500);
24733     hLowProbTrkLenPlPQ->GetXaxis()->SetTitle
24734       ("Track Length (Planes)");
24735     hLowProbTrkLenPlPQ->GetXaxis()->CenterTitle();
24736     hLowProbTrkLenPlPQ->GetYaxis()->SetTitle("");
24737     hLowProbTrkLenPlPQ->GetYaxis()->CenterTitle();
24738     //hLowProbTrkLenPlPQ->SetBit(TH1::kCanRebin);
24739     
24740     hLowProbTrkLenPlPQ1=new TH1F("hLowProbTrkLenPlPQ1",
24741                                  "hLowProbTrkLenPlPQ1",
24742                                  520,-20,500);
24743     hLowProbTrkLenPlPQ1->GetXaxis()->SetTitle
24744       ("Track Length (Planes)");
24745     hLowProbTrkLenPlPQ1->GetXaxis()->CenterTitle();
24746     hLowProbTrkLenPlPQ1->GetYaxis()->SetTitle("");
24747     hLowProbTrkLenPlPQ1->GetYaxis()->CenterTitle();
24748     //hLowProbTrkLenPlPQ1->SetBit(TH1::kCanRebin);
24749 
24750     hLowProbTrkLenPlPQ2=new TH1F("hLowProbTrkLenPlPQ2",
24751                                  "hLowProbTrkLenPlPQ2",
24752                                  520,-20,500);
24753     hLowProbTrkLenPlPQ2->GetXaxis()->SetTitle
24754       ("Track Length (Planes)");
24755     hLowProbTrkLenPlPQ2->GetXaxis()->CenterTitle();
24756     hLowProbTrkLenPlPQ2->GetYaxis()->SetTitle("");
24757     hLowProbTrkLenPlPQ2->GetYaxis()->CenterTitle();
24758     //hLowProbTrkLenPlPQ2->SetBit(TH1::kCanRebin);
24759 
24760     hLowProbTrkLenPlPQ3=new TH1F("hLowProbTrkLenPlPQ3",
24761                                  "hLowProbTrkLenPlPQ3",
24762                                  520,-20,500);
24763     hLowProbTrkLenPlPQ3->GetXaxis()->SetTitle
24764       ("Track Length (Planes)");
24765     hLowProbTrkLenPlPQ3->GetXaxis()->CenterTitle();
24766     hLowProbTrkLenPlPQ3->GetYaxis()->SetTitle("");
24767     hLowProbTrkLenPlPQ3->GetYaxis()->CenterTitle();
24768     //hLowProbTrkLenPlPQ3->SetBit(TH1::kCanRebin);
24769 
24770     hLowProbTrkLenPlPQ4=new TH1F("hLowProbTrkLenPlPQ4",
24771                                  "hLowProbTrkLenPlPQ4",
24772                                  520,-20,500);
24773     hLowProbTrkLenPlPQ4->GetXaxis()->SetTitle
24774       ("Track Length (Planes)");
24775     hLowProbTrkLenPlPQ4->GetXaxis()->CenterTitle();
24776     hLowProbTrkLenPlPQ4->GetYaxis()->SetTitle("");
24777     hLowProbTrkLenPlPQ4->GetYaxis()->CenterTitle();
24778     //hLowProbTrkLenPlPQ4->SetBit(TH1::kCanRebin);
24779 
24780 
24781 
24782     hLowProbRngPQ=new TH1F("hLowProbRngPQ","hLowProbRngPQ",
24783                            4*352,-32,320);
24784     hLowProbRngPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24785     hLowProbRngPQ->GetXaxis()->CenterTitle();
24786     hLowProbRngPQ->GetYaxis()->SetTitle("");
24787     hLowProbRngPQ->GetYaxis()->CenterTitle();
24788     //hLowProbRngPQ->SetBit(TH1::kCanRebin);
24789 
24790     hLowProbRngPQ1=new TH1F("hLowProbRngPQ1",
24791                             "hLowProbRngPQ1",
24792                             4*352,-32,320);
24793     hLowProbRngPQ1->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24794     hLowProbRngPQ1->GetXaxis()->CenterTitle();
24795     hLowProbRngPQ1->GetYaxis()->SetTitle("");
24796     hLowProbRngPQ1->GetYaxis()->CenterTitle();
24797     //hLowProbRngPQ1->SetBit(TH1::kCanRebin);
24798 
24799     hLowProbRngPQ2=new TH1F("hLowProbRngPQ2",
24800                             "hLowProbRngPQ2",
24801                             4*352,-32,320);
24802     hLowProbRngPQ2->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24803     hLowProbRngPQ2->GetXaxis()->CenterTitle();
24804     hLowProbRngPQ2->GetYaxis()->SetTitle("");
24805     hLowProbRngPQ2->GetYaxis()->CenterTitle();
24806     //hLowProbRngPQ2->SetBit(TH1::kCanRebin);
24807 
24808     hLowProbRngPQ3=new TH1F("hLowProbRngPQ3",
24809                             "hLowProbRngPQ3",
24810                             4*352,-32,320);
24811     hLowProbRngPQ3->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24812     hLowProbRngPQ3->GetXaxis()->CenterTitle();
24813     hLowProbRngPQ3->GetYaxis()->SetTitle("");
24814     hLowProbRngPQ3->GetYaxis()->CenterTitle();
24815     //hLowProbRngPQ3->SetBit(TH1::kCanRebin);
24816 
24817     hLowProbRngPQ4=new TH1F("hLowProbRngPQ4",
24818                             "hLowProbRngPQ4",
24819                             4*352,-32,320);
24820     hLowProbRngPQ4->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24821     hLowProbRngPQ4->GetXaxis()->CenterTitle();
24822     hLowProbRngPQ4->GetYaxis()->SetTitle("");
24823     hLowProbRngPQ4->GetYaxis()->CenterTitle();
24824     //hLowProbRngPQ4->SetBit(TH1::kCanRebin);
24825 
24826 
24827     hLowProbCurvPQ=new TH1F("hLowProbCurvPQ","hLowProbCurvPQ",
24828                             4*352,-32,320);
24829     hLowProbCurvPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24830     hLowProbCurvPQ->GetXaxis()->CenterTitle();
24831     hLowProbCurvPQ->GetYaxis()->SetTitle("");
24832     hLowProbCurvPQ->GetYaxis()->CenterTitle();
24833     //hLowProbCurvPQ->SetBit(TH1::kCanRebin);
24834 
24835     hLowProbCurvPQ1=new TH1F("hLowProbCurvPQ1",
24836                              "hLowProbCurvPQ1",
24837                              4*352,-32,320);
24838     hLowProbCurvPQ1->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24839     hLowProbCurvPQ1->GetXaxis()->CenterTitle();
24840     hLowProbCurvPQ1->GetYaxis()->SetTitle("");
24841     hLowProbCurvPQ1->GetYaxis()->CenterTitle();
24842     //hLowProbCurvPQ1->SetBit(TH1::kCanRebin);
24843 
24844     hLowProbCurvPQ2=new TH1F("hLowProbCurvPQ2",
24845                              "hLowProbCurvPQ2",
24846                              4*352,-32,320);
24847     hLowProbCurvPQ2->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24848     hLowProbCurvPQ2->GetXaxis()->CenterTitle();
24849     hLowProbCurvPQ2->GetYaxis()->SetTitle("");
24850     hLowProbCurvPQ2->GetYaxis()->CenterTitle();
24851     //hLowProbCurvPQ2->SetBit(TH1::kCanRebin);
24852 
24853     hLowProbCurvPQ3=new TH1F("hLowProbCurvPQ3",
24854                              "hLowProbCurvPQ3",
24855                              4*352,-32,320);
24856     hLowProbCurvPQ3->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24857     hLowProbCurvPQ3->GetXaxis()->CenterTitle();
24858     hLowProbCurvPQ3->GetYaxis()->SetTitle("");
24859     hLowProbCurvPQ3->GetYaxis()->CenterTitle();
24860     //hLowProbCurvPQ3->SetBit(TH1::kCanRebin);
24861 
24862     hLowProbCurvPQ4=new TH1F("hLowProbCurvPQ4",
24863                              "hLowProbCurvPQ4",
24864                              4*352,-32,320);
24865     hLowProbCurvPQ4->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
24866     hLowProbCurvPQ4->GetXaxis()->CenterTitle();
24867     hLowProbCurvPQ4->GetYaxis()->SetTitle("");
24868     hLowProbCurvPQ4->GetYaxis()->CenterTitle();
24869     //hLowProbCurvPQ4->SetBit(TH1::kCanRebin);
24870 
24871 
24872 
24873 
24874 
24875     //NQ
24876     hLowProbVtxXNQ=new TH1F("hLowProbVtxXNQ","hLowProbVtxXNQ",
24877                             1000,-5,5);
24878     hLowProbVtxXNQ->GetXaxis()->SetTitle("Vtx X Position (m)");
24879     hLowProbVtxXNQ->GetXaxis()->CenterTitle();
24880     hLowProbVtxXNQ->GetYaxis()->SetTitle("");
24881     hLowProbVtxXNQ->GetYaxis()->CenterTitle();
24882     hLowProbVtxXNQ->SetLineWidth(2);
24883     //hLowProbVtxXNQ->SetBit(TH1::kCanRebin);
24884 
24885     hLowProbVtxYNQ=new TH1F("hLowProbVtxYNQ","hLowProbVtxYNQ",
24886                             1000,-5,5);
24887     hLowProbVtxYNQ->GetXaxis()->SetTitle("Vtx Y Position (m)");
24888     hLowProbVtxYNQ->GetXaxis()->CenterTitle();
24889     hLowProbVtxYNQ->GetYaxis()->SetTitle("");
24890     hLowProbVtxYNQ->GetYaxis()->CenterTitle();
24891     hLowProbVtxYNQ->SetLineWidth(2);
24892     //hLowProbVtxYNQ->SetBit(TH1::kCanRebin);
24893 
24894     hLowProbVtxZNQ=new TH1F("hLowProbVtxZNQ","hLowProbVtxZNQ",
24895                             4000,-1,39);
24896     hLowProbVtxZNQ->GetXaxis()->SetTitle("Vtx Z Position (m)");
24897     hLowProbVtxZNQ->GetXaxis()->CenterTitle();
24898     hLowProbVtxZNQ->GetYaxis()->SetTitle("");
24899     hLowProbVtxZNQ->GetYaxis()->CenterTitle();
24900     hLowProbVtxZNQ->SetLineWidth(2);
24901     //hLowProbVtxZNQ->SetBit(TH1::kCanRebin);
24902 
24903     hLowProbVtxRNQ=new TH1F("hLowProbVtxRNQ","hLowProbVtxRNQ",
24904                             700,-2,5);
24905     hLowProbVtxRNQ->GetXaxis()->SetTitle("Vtx Radius (m)");
24906     hLowProbVtxRNQ->GetXaxis()->CenterTitle();
24907     hLowProbVtxRNQ->GetYaxis()->SetTitle("");
24908     hLowProbVtxRNQ->GetYaxis()->CenterTitle();
24909     hLowProbVtxRNQ->SetLineWidth(2);
24910     //hLowProbVtxRNQ->SetBit(TH1::kCanRebin);
24911 
24912 
24913     hLowProbEndXNQ=new TH1F("hLowProbEndXNQ","hLowProbEndXNQ",
24914                             1000,-5,5);
24915     hLowProbEndXNQ->GetXaxis()->SetTitle("End X Position (m)");
24916     hLowProbEndXNQ->GetXaxis()->CenterTitle();
24917     hLowProbEndXNQ->GetYaxis()->SetTitle("");
24918     hLowProbEndXNQ->GetYaxis()->CenterTitle();
24919     hLowProbEndXNQ->SetLineWidth(2);
24920     //hLowProbEndXNQ->SetBit(TH1::kCanRebin);
24921 
24922     hLowProbEndYNQ=new TH1F("hLowProbEndYNQ","hLowProbEndYNQ",
24923                             1000,-5,5);
24924     hLowProbEndYNQ->GetXaxis()->SetTitle("End Y Position (m)");
24925     hLowProbEndYNQ->GetXaxis()->CenterTitle();
24926     hLowProbEndYNQ->GetYaxis()->SetTitle("");
24927     hLowProbEndYNQ->GetYaxis()->CenterTitle();
24928     hLowProbEndYNQ->SetLineWidth(2);
24929     //hLowProbEndYNQ->SetBit(TH1::kCanRebin);
24930 
24931     hLowProbEndZNQ=new TH1F("hLowProbEndZNQ","hLowProbEndZNQ",
24932                             4000,-1,39);
24933     hLowProbEndZNQ->GetXaxis()->SetTitle("End Z Position (m)");
24934     hLowProbEndZNQ->GetXaxis()->CenterTitle();
24935     hLowProbEndZNQ->GetYaxis()->SetTitle("");
24936     hLowProbEndZNQ->GetYaxis()->CenterTitle();
24937     hLowProbEndZNQ->SetLineWidth(2);
24938     //hLowProbEndZNQ->SetBit(TH1::kCanRebin);
24939     
24940     hLowProbEndRNQ=new TH1F("hLowProbEndRNQ","hLowProbEndRNQ",
24941                             700,-2,5);
24942     hLowProbEndRNQ->GetXaxis()->SetTitle("Vtx Radius (m)");
24943     hLowProbEndRNQ->GetXaxis()->CenterTitle();
24944     hLowProbEndRNQ->GetYaxis()->SetTitle("");
24945     hLowProbEndRNQ->GetYaxis()->CenterTitle();
24946     hLowProbEndRNQ->SetLineWidth(2);
24947     //hLowProbEndRNQ->SetBit(TH1::kCanRebin);
24948 
24949 
24950     hLowProbVtxXYNQ=new TH2F
24951       ("hLowProbVtxXYNQ","hLowProbVtxXYNQ",300,-3,3,300,-3,3);
24952     hLowProbVtxXYNQ->GetXaxis()->SetTitle("x (m)");
24953     hLowProbVtxXYNQ->GetXaxis()->CenterTitle();
24954     hLowProbVtxXYNQ->GetYaxis()->SetTitle("y (m)");
24955     hLowProbVtxXYNQ->GetYaxis()->CenterTitle();
24956     //hLowProbVtxXYNQ->SetBit(TH1::kCanRebin);
24957 
24958     hLowProbEndXYNQ=new TH2F
24959       ("hLowProbEndXYNQ","hLowProbEndXYNQ",300,-3,3,300,-3,3);
24960     hLowProbEndXYNQ->GetXaxis()->SetTitle("x (m)");
24961     hLowProbEndXYNQ->GetXaxis()->CenterTitle();
24962     hLowProbEndXYNQ->GetYaxis()->SetTitle("y (m)");
24963     hLowProbEndXYNQ->GetYaxis()->CenterTitle();
24964     //hLowProbEndXYNQ->SetBit(TH1::kCanRebin);
24965 
24966 
24967     hLowProbNQ=new TH1F("hLowProbNQ","hLowProbNQ",14000,-0.2,1.2);
24968     hLowProbNQ->GetXaxis()->SetTitle("Fit Probability");
24969     hLowProbNQ->GetXaxis()->CenterTitle();
24970     hLowProbNQ->GetYaxis()->SetTitle("");
24971     hLowProbNQ->GetYaxis()->CenterTitle();
24972     hLowProbNQ->SetLineWidth(2);
24973     //hLowProbNQ->SetBit(TH1::kCanRebin);
24974 
24975     hLowProbNQ1=new TH1F("hLowProbNQ1","hLowProbNQ1",14000,-0.2,1.2);
24976     hLowProbNQ1->GetXaxis()->SetTitle("Fit Probability");
24977     hLowProbNQ1->GetXaxis()->CenterTitle();
24978     hLowProbNQ1->GetYaxis()->SetTitle("");
24979     hLowProbNQ1->GetYaxis()->CenterTitle();
24980     hLowProbNQ1->SetLineWidth(2);
24981     //hLowProbNQ1->SetBit(TH1::kCanRebin);
24982 
24983     hLowProbNQ2=new TH1F("hLowProbNQ2","hLowProbNQ2",14000,-0.2,1.2);
24984     hLowProbNQ2->GetXaxis()->SetTitle("Fit Probability");
24985     hLowProbNQ2->GetXaxis()->CenterTitle();
24986     hLowProbNQ2->GetYaxis()->SetTitle("");
24987     hLowProbNQ2->GetYaxis()->CenterTitle();
24988     hLowProbNQ2->SetLineWidth(2);
24989     //hLowProbNQ2->SetBit(TH1::kCanRebin);
24990 
24991     hLowProbNQ3=new TH1F("hLowProbNQ3","hLowProbNQ3",14000,-0.2,1.2);
24992     hLowProbNQ3->GetXaxis()->SetTitle("Fit Probability");
24993     hLowProbNQ3->GetXaxis()->CenterTitle();
24994     hLowProbNQ3->GetYaxis()->SetTitle("");
24995     hLowProbNQ3->GetYaxis()->CenterTitle();
24996     hLowProbNQ3->SetLineWidth(2);
24997     //hLowProbNQ3->SetBit(TH1::kCanRebin);
24998 
24999     hLowProbNQ4=new TH1F("hLowProbNQ4","hLowProbNQ4",14000,-0.2,1.2);
25000     hLowProbNQ4->GetXaxis()->SetTitle("Fit Probability");
25001     hLowProbNQ4->GetXaxis()->CenterTitle();
25002     hLowProbNQ4->GetYaxis()->SetTitle("");
25003     hLowProbNQ4->GetYaxis()->CenterTitle();
25004     hLowProbNQ4->SetLineWidth(2);
25005     //hLowProbNQ4->SetBit(TH1::kCanRebin);
25006 
25007 
25008     hLowProbRecoEnNQ=new TH1F("hLowProbRecoEnNQ","hLowProbRecoEnNQ",
25009                               4*352,-32,320);
25010     hLowProbRecoEnNQ->GetXaxis()->SetTitle
25011       ("Reconstructed Energy (GeV)");
25012     hLowProbRecoEnNQ->GetXaxis()->CenterTitle();
25013     hLowProbRecoEnNQ->GetYaxis()->SetTitle("");
25014     hLowProbRecoEnNQ->GetYaxis()->CenterTitle();
25015     hLowProbRecoEnNQ->SetLineWidth(2);
25016     //hLowProbRecoEnNQ->SetBit(TH1::kCanRebin);
25017 
25018     hLowProbRecoMuEnNQ=new TH1F("hLowProbRecoMuEnNQ",
25019                                 "hLowProbRecoMuEnNQ",
25020                                 4*352,-32,320);
25021     hLowProbRecoMuEnNQ->GetXaxis()->SetTitle
25022       ("Reconstructed Energy (GeV)");
25023     hLowProbRecoMuEnNQ->GetXaxis()->CenterTitle();
25024     hLowProbRecoMuEnNQ->GetYaxis()->SetTitle("");
25025     hLowProbRecoMuEnNQ->GetYaxis()->CenterTitle();
25026     hLowProbRecoMuEnNQ->SetLineWidth(2);
25027     //hLowProbRecoMuEnNQ->SetBit(TH1::kCanRebin);
25028 
25029     
25030     hLowProbRecoMuEnOnExitNQ=new TH1F("hLowProbRecoMuEnOnExitNQ",
25031                                       "hLowProbRecoMuEnOnExitNQ",
25032                                       4*352,-32,320);
25033     hLowProbRecoMuEnOnExitNQ->GetXaxis()->SetTitle
25034       ("Reconstructed Energy (GeV)");
25035     hLowProbRecoMuEnOnExitNQ->GetXaxis()->CenterTitle();
25036     hLowProbRecoMuEnOnExitNQ->GetYaxis()->SetTitle("");
25037     hLowProbRecoMuEnOnExitNQ->GetYaxis()->CenterTitle();
25038     hLowProbRecoMuEnOnExitNQ->SetLineWidth(2);
25039     //hLowProbRecoMuEnOnExitNQ->SetBit(TH1::kCanRebin);
25040 
25041 
25042     hLowProbRngCurvNQ=new TH1F("hLowProbRngCurvNQ","hLowProbRngCurvNQ",
25043                                4*160,-1.6,1.6);
25044     hLowProbRngCurvNQ->GetXaxis()->SetTitle("Curv-Range/Range");
25045     hLowProbRngCurvNQ->GetXaxis()->CenterTitle();
25046     hLowProbRngCurvNQ->GetYaxis()->SetTitle("");
25047     hLowProbRngCurvNQ->GetYaxis()->CenterTitle();
25048     //hLowProbRngCurvNQ->SetBit(TH1::kCanRebin);
25049 
25050     hLowProbRngCurvNQ1=new TH1F("hLowProbRngCurvNQ1",
25051                                 "hLowProbRngCurvNQ1",
25052                                 4*160,-1.6,1.6);
25053     hLowProbRngCurvNQ1->GetXaxis()->SetTitle("Curv-Range/Range");
25054     hLowProbRngCurvNQ1->GetXaxis()->CenterTitle();
25055     hLowProbRngCurvNQ1->GetYaxis()->SetTitle("");
25056     hLowProbRngCurvNQ1->GetYaxis()->CenterTitle();
25057     //hLowProbRngCurvNQ1->SetBit(TH1::kCanRebin);
25058 
25059     hLowProbRngCurvNQ2=new TH1F("hLowProbRngCurvNQ2",
25060                                 "hLowProbRngCurvNQ2",
25061                                 4*160,-1.6,1.6);
25062     hLowProbRngCurvNQ2->GetXaxis()->SetTitle("Curv-Range/Range");
25063     hLowProbRngCurvNQ2->GetXaxis()->CenterTitle();
25064     hLowProbRngCurvNQ2->GetYaxis()->SetTitle("");
25065     hLowProbRngCurvNQ2->GetYaxis()->CenterTitle();
25066     //hLowProbRngCurvNQ2->SetBit(TH1::kCanRebin);
25067 
25068     hLowProbRngCurvNQ3=new TH1F("hLowProbRngCurvNQ3",
25069                                 "hLowProbRngCurvNQ3",
25070                                 4*160,-1.6,1.6);
25071     hLowProbRngCurvNQ3->GetXaxis()->SetTitle("Curv-Range/Range");
25072     hLowProbRngCurvNQ3->GetXaxis()->CenterTitle();
25073     hLowProbRngCurvNQ3->GetYaxis()->SetTitle("");
25074     hLowProbRngCurvNQ3->GetYaxis()->CenterTitle();
25075     //hLowProbRngCurvNQ3->SetBit(TH1::kCanRebin);
25076 
25077     hLowProbRngCurvNQ4=new TH1F("hLowProbRngCurvNQ4",
25078                                 "hLowProbRngCurvNQ4",
25079                                 4*160,-1.6,1.6);
25080     hLowProbRngCurvNQ4->GetXaxis()->SetTitle("Curv-Range/Range");
25081     hLowProbRngCurvNQ4->GetXaxis()->CenterTitle();
25082     hLowProbRngCurvNQ4->GetYaxis()->SetTitle("");
25083     hLowProbRngCurvNQ4->GetYaxis()->CenterTitle();
25084     //hLowProbRngCurvNQ4->SetBit(TH1::kCanRebin);
25085 
25086 
25087     hLowProbTrkLenPlNQ=new TH1F("hLowProbTrkLenPlNQ",
25088                                 "hLowProbTrkLenPlNQ",
25089                                 520,-20,500);
25090     hLowProbTrkLenPlNQ->GetXaxis()->SetTitle
25091       ("Track Length (Planes)");
25092     hLowProbTrkLenPlNQ->GetXaxis()->CenterTitle();
25093     hLowProbTrkLenPlNQ->GetYaxis()->SetTitle("");
25094     hLowProbTrkLenPlNQ->GetYaxis()->CenterTitle();
25095     //hLowProbTrkLenPlNQ->SetBit(TH1::kCanRebin);
25096     
25097     hLowProbTrkLenPlNQ1=new TH1F("hLowProbTrkLenPlNQ1",
25098                                  "hLowProbTrkLenPlNQ1",
25099                                  520,-20,500);
25100     hLowProbTrkLenPlNQ1->GetXaxis()->SetTitle
25101       ("Track Length (Planes)");
25102     hLowProbTrkLenPlNQ1->GetXaxis()->CenterTitle();
25103     hLowProbTrkLenPlNQ1->GetYaxis()->SetTitle("");
25104     hLowProbTrkLenPlNQ1->GetYaxis()->CenterTitle();
25105     //hLowProbTrkLenPlNQ1->SetBit(TH1::kCanRebin);
25106 
25107     hLowProbTrkLenPlNQ2=new TH1F("hLowProbTrkLenPlNQ2",
25108                                  "hLowProbTrkLenPlNQ2",
25109                                  520,-20,500);
25110     hLowProbTrkLenPlNQ2->GetXaxis()->SetTitle
25111       ("Track Length (Planes)");
25112     hLowProbTrkLenPlNQ2->GetXaxis()->CenterTitle();
25113     hLowProbTrkLenPlNQ2->GetYaxis()->SetTitle("");
25114     hLowProbTrkLenPlNQ2->GetYaxis()->CenterTitle();
25115     //hLowProbTrkLenPlNQ2->SetBit(TH1::kCanRebin);
25116 
25117     hLowProbTrkLenPlNQ3=new TH1F("hLowProbTrkLenPlNQ3",
25118                                  "hLowProbTrkLenPlNQ3",
25119                                  520,-20,500);
25120     hLowProbTrkLenPlNQ3->GetXaxis()->SetTitle
25121       ("Track Length (Planes)");
25122     hLowProbTrkLenPlNQ3->GetXaxis()->CenterTitle();
25123     hLowProbTrkLenPlNQ3->GetYaxis()->SetTitle("");
25124     hLowProbTrkLenPlNQ3->GetYaxis()->CenterTitle();
25125     //hLowProbTrkLenPlNQ3->SetBit(TH1::kCanRebin);
25126 
25127     hLowProbTrkLenPlNQ4=new TH1F("hLowProbTrkLenPlNQ4",
25128                                  "hLowProbTrkLenPlNQ4",
25129                                  520,-20,500);
25130     hLowProbTrkLenPlNQ4->GetXaxis()->SetTitle
25131       ("Track Length (Planes)");
25132     hLowProbTrkLenPlNQ4->GetXaxis()->CenterTitle();
25133     hLowProbTrkLenPlNQ4->GetYaxis()->SetTitle("");
25134     hLowProbTrkLenPlNQ4->GetYaxis()->CenterTitle();
25135     //hLowProbTrkLenPlNQ4->SetBit(TH1::kCanRebin);
25136 
25137 
25138 
25139     hLowProbRngNQ=new TH1F("hLowProbRngNQ","hLowProbRngNQ",
25140                            4*352,-32,320);
25141     hLowProbRngNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25142     hLowProbRngNQ->GetXaxis()->CenterTitle();
25143     hLowProbRngNQ->GetYaxis()->SetTitle("");
25144     hLowProbRngNQ->GetYaxis()->CenterTitle();
25145     //hLowProbRngNQ->SetBit(TH1::kCanRebin);
25146 
25147     hLowProbRngNQ1=new TH1F("hLowProbRngNQ1",
25148                             "hLowProbRngNQ1",
25149                             4*352,-32,320);
25150     hLowProbRngNQ1->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25151     hLowProbRngNQ1->GetXaxis()->CenterTitle();
25152     hLowProbRngNQ1->GetYaxis()->SetTitle("");
25153     hLowProbRngNQ1->GetYaxis()->CenterTitle();
25154     //hLowProbRngNQ1->SetBit(TH1::kCanRebin);
25155 
25156     hLowProbRngNQ2=new TH1F("hLowProbRngNQ2",
25157                             "hLowProbRngNQ2",
25158                             4*352,-32,320);
25159     hLowProbRngNQ2->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25160     hLowProbRngNQ2->GetXaxis()->CenterTitle();
25161     hLowProbRngNQ2->GetYaxis()->SetTitle("");
25162     hLowProbRngNQ2->GetYaxis()->CenterTitle();
25163     //hLowProbRngNQ2->SetBit(TH1::kCanRebin);
25164 
25165     hLowProbRngNQ3=new TH1F("hLowProbRngNQ3",
25166                             "hLowProbRngNQ3",
25167                             4*352,-32,320);
25168     hLowProbRngNQ3->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25169     hLowProbRngNQ3->GetXaxis()->CenterTitle();
25170     hLowProbRngNQ3->GetYaxis()->SetTitle("");
25171     hLowProbRngNQ3->GetYaxis()->CenterTitle();
25172     //hLowProbRngNQ3->SetBit(TH1::kCanRebin);
25173 
25174     hLowProbRngNQ4=new TH1F("hLowProbRngNQ4",
25175                             "hLowProbRngNQ4",
25176                             4*352,-32,320);
25177     hLowProbRngNQ4->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25178     hLowProbRngNQ4->GetXaxis()->CenterTitle();
25179     hLowProbRngNQ4->GetYaxis()->SetTitle("");
25180     hLowProbRngNQ4->GetYaxis()->CenterTitle();
25181     //hLowProbRngNQ4->SetBit(TH1::kCanRebin);
25182 
25183 
25184     hLowProbCurvNQ=new TH1F("hLowProbCurvNQ","hLowProbCurvNQ",
25185                             4*352,-32,320);
25186     hLowProbCurvNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25187     hLowProbCurvNQ->GetXaxis()->CenterTitle();
25188     hLowProbCurvNQ->GetYaxis()->SetTitle("");
25189     hLowProbCurvNQ->GetYaxis()->CenterTitle();
25190     //hLowProbCurvNQ->SetBit(TH1::kCanRebin);
25191 
25192     hLowProbCurvNQ1=new TH1F("hLowProbCurvNQ1",
25193                              "hLowProbCurvNQ1",
25194                              4*352,-32,320);
25195     hLowProbCurvNQ1->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25196     hLowProbCurvNQ1->GetXaxis()->CenterTitle();
25197     hLowProbCurvNQ1->GetYaxis()->SetTitle("");
25198     hLowProbCurvNQ1->GetYaxis()->CenterTitle();
25199     //hLowProbCurvNQ1->SetBit(TH1::kCanRebin);
25200 
25201     hLowProbCurvNQ2=new TH1F("hLowProbCurvNQ2",
25202                              "hLowProbCurvNQ2",
25203                              4*352,-32,320);
25204     hLowProbCurvNQ2->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25205     hLowProbCurvNQ2->GetXaxis()->CenterTitle();
25206     hLowProbCurvNQ2->GetYaxis()->SetTitle("");
25207     hLowProbCurvNQ2->GetYaxis()->CenterTitle();
25208     //hLowProbCurvNQ2->SetBit(TH1::kCanRebin);
25209 
25210     hLowProbCurvNQ3=new TH1F("hLowProbCurvNQ3",
25211                              "hLowProbCurvNQ3",
25212                              4*352,-32,320);
25213     hLowProbCurvNQ3->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25214     hLowProbCurvNQ3->GetXaxis()->CenterTitle();
25215     hLowProbCurvNQ3->GetYaxis()->SetTitle("");
25216     hLowProbCurvNQ3->GetYaxis()->CenterTitle();
25217     //hLowProbCurvNQ3->SetBit(TH1::kCanRebin);
25218 
25219     hLowProbCurvNQ4=new TH1F("hLowProbCurvNQ4",
25220                              "hLowProbCurvNQ4",
25221                              4*352,-32,320);
25222     hLowProbCurvNQ4->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
25223     hLowProbCurvNQ4->GetXaxis()->CenterTitle();
25224     hLowProbCurvNQ4->GetYaxis()->SetTitle("");
25225     hLowProbCurvNQ4->GetYaxis()->CenterTitle();
25226     //hLowProbCurvNQ4->SetBit(TH1::kCanRebin);
25227 
25228   }
25229   
25230   Float_t rangeCurv=nu.trkEnCurv-nu.trkEnRange;
25231   Float_t rangeCurvDiff=(nu.trkEnCurv-nu.trkEnRange)/nu.trkEnRange;
25232   //Float_t curvRangeDiff=(nu.trkEnRange-nu.trkEnCurv)/nu.trkEnRange;
25233   //Int_t bin=static_cast<Int_t>(nu.trkEnRange);
25234   //make sure that the max bins is not exceeded
25235   //pile up events over nbins into the nth bin
25236   //if (bin>=nbins) bin=nbins-1;
25237   
25238   //cap the difference to make the distribution more symmetric
25239   //doesn't work all that well, only limits the damage...
25240   if (rangeCurvDiff>1) rangeCurvDiff=1;
25241   //if (curvRangeDiff<-1) curvRangeDiff=-1;
25242   
25243   Float_t radiusVtx=pow(trk.vtx.x,2)+pow(trk.vtx.y,2);
25244   if (radiusVtx>=0) radiusVtx=sqrt(radiusVtx);
25245   else radiusVtx=-1;
25246   Float_t radiusEnd=pow(trk.end.x,2)+pow(trk.end.y,2);
25247   if (radiusEnd>=0) radiusEnd=sqrt(radiusEnd);
25248   else radiusEnd=-1;
25249 
25250   //PQ
25251   if (nu.charge==+1){
25252     //fill with all probabilities
25253     hLowProbPQ->Fill(nu.prob,nu.rw);
25254     if (nu.containmentFlag==1){
25255       hLowProbPQ1->Fill(nu.prob,nu.rw);
25256     }
25257     else if (nu.containmentFlag==2){
25258       hLowProbPQ2->Fill(nu.prob,nu.rw);
25259     }
25260     else if (nu.containmentFlag==3){
25261       hLowProbPQ3->Fill(nu.prob,nu.rw);
25262     }
25263     else if (nu.containmentFlag==4){
25264       hLowProbPQ4->Fill(nu.prob,nu.rw);
25265     }
25266     else MSG("NuPlots",Msg::kWarning)<<"Ahhh"<<endl;     
25267 
25268     //fill just for very low fit probabilities
25269     if (nu.prob<0.001){
25270       hLowProbVtxXPQ->Fill(trk.vtx.x,nu.rw);
25271       hLowProbVtxYPQ->Fill(trk.vtx.y,nu.rw);
25272       hLowProbVtxZPQ->Fill(trk.vtx.z,nu.rw);
25273       hLowProbVtxRPQ->Fill(radiusVtx,nu.rw);
25274       hLowProbEndXPQ->Fill(trk.end.x,nu.rw);
25275       hLowProbEndYPQ->Fill(trk.end.y,nu.rw);
25276       hLowProbEndZPQ->Fill(trk.end.z,nu.rw);
25277       hLowProbEndRPQ->Fill(radiusEnd,nu.rw);
25278 
25279       hLowProbVtxXYPQ->Fill(trk.vtx.x,trk.vtx.y,nu.rw);
25280       hLowProbEndXYPQ->Fill(trk.end.x,trk.end.y,nu.rw);
25281 
25282       hLowProbRecoEnPQ->Fill(nu.energy,nu.rw);
25283       hLowProbRecoMuEnPQ->Fill(nu.trkEn,nu.rw);
25284       hLowProbRecoMuEnOnExitPQ->Fill(rangeCurv,nu.rw);
25285     
25286       hLowProbRngCurvPQ->Fill(rangeCurvDiff,nu.rw);
25287       hLowProbRngPQ->Fill(nu.trkEnRange,nu.rw);
25288       hLowProbCurvPQ->Fill(nu.trkEnCurv,nu.rw);
25289       hLowProbTrkLenPlPQ->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25290       if (nu.containmentFlag==1){
25291         hLowProbRngCurvPQ1->Fill(rangeCurvDiff,nu.rw);
25292         hLowProbRngPQ1->Fill(nu.trkEnRange,nu.rw);
25293         hLowProbCurvPQ1->Fill(nu.trkEnCurv,nu.rw);
25294         hLowProbTrkLenPlPQ1->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25295       }
25296       else if (nu.containmentFlag==2){
25297         hLowProbRngCurvPQ2->Fill(rangeCurvDiff,nu.rw);
25298         hLowProbRngPQ2->Fill(nu.trkEnRange,nu.rw);
25299         hLowProbCurvPQ2->Fill(nu.trkEnCurv,nu.rw);
25300         hLowProbTrkLenPlPQ2->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25301       }
25302       else if (nu.containmentFlag==3){
25303         hLowProbRngCurvPQ3->Fill(rangeCurvDiff,nu.rw);
25304         hLowProbRngPQ3->Fill(nu.trkEnRange,nu.rw);
25305         hLowProbCurvPQ3->Fill(nu.trkEnCurv,nu.rw);
25306         hLowProbTrkLenPlPQ3->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25307       }
25308       else if (nu.containmentFlag==4){
25309         hLowProbRngCurvPQ4->Fill(rangeCurvDiff,nu.rw);
25310         hLowProbRngPQ4->Fill(nu.trkEnRange,nu.rw);
25311         hLowProbCurvPQ4->Fill(nu.trkEnCurv,nu.rw);
25312         hLowProbTrkLenPlPQ4->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25313       }
25314       else MSG("NuPlots",Msg::kWarning)<<"Ahhh"<<endl;
25315     }
25316   }
25317   //NQ
25318   else if (nu.charge==-1){
25319     //fill with all probabilities
25320     hLowProbNQ->Fill(nu.prob,nu.rw);
25321     if (nu.containmentFlag==1){
25322       hLowProbNQ1->Fill(nu.prob,nu.rw);
25323     }
25324     else if (nu.containmentFlag==2){
25325       hLowProbNQ2->Fill(nu.prob,nu.rw);
25326     }
25327     else if (nu.containmentFlag==3){
25328       hLowProbNQ3->Fill(nu.prob,nu.rw);
25329     }
25330     else if (nu.containmentFlag==4){
25331       hLowProbNQ4->Fill(nu.prob,nu.rw);
25332     }
25333     else MSG("NuPlots",Msg::kWarning)<<"Ahhh"<<endl;     
25334 
25335     //fill just for very low fit probabilities
25336     if (nu.prob<0.001){
25337       hLowProbVtxXNQ->Fill(trk.vtx.x,nu.rw);
25338       hLowProbVtxYNQ->Fill(trk.vtx.y,nu.rw);
25339       hLowProbVtxZNQ->Fill(trk.vtx.z,nu.rw);
25340       hLowProbVtxRNQ->Fill(radiusVtx,nu.rw);
25341       hLowProbEndXNQ->Fill(trk.end.x,nu.rw);
25342       hLowProbEndYNQ->Fill(trk.end.y,nu.rw);
25343       hLowProbEndZNQ->Fill(trk.end.z,nu.rw);
25344       hLowProbEndRNQ->Fill(radiusEnd,nu.rw);
25345 
25346       hLowProbVtxXYNQ->Fill(trk.vtx.x,trk.vtx.y,nu.rw);
25347       hLowProbEndXYNQ->Fill(trk.end.x,trk.end.y,nu.rw);
25348 
25349       hLowProbRecoEnNQ->Fill(nu.energy,nu.rw);
25350       hLowProbRecoMuEnNQ->Fill(nu.trkEn,nu.rw);
25351       hLowProbRecoMuEnOnExitNQ->Fill(rangeCurv,nu.rw);
25352     
25353       hLowProbRngCurvNQ->Fill(rangeCurvDiff,nu.rw);
25354       hLowProbRngNQ->Fill(nu.trkEnRange,nu.rw);
25355       hLowProbCurvNQ->Fill(nu.trkEnCurv,nu.rw);
25356       hLowProbTrkLenPlNQ->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25357       if (nu.containmentFlag==1){
25358         hLowProbRngCurvNQ1->Fill(rangeCurvDiff,nu.rw);
25359         hLowProbRngNQ1->Fill(nu.trkEnRange,nu.rw);
25360         hLowProbCurvNQ1->Fill(nu.trkEnCurv,nu.rw);
25361         hLowProbTrkLenPlNQ1->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25362       }
25363       else if (nu.containmentFlag==2){
25364         hLowProbRngCurvNQ2->Fill(rangeCurvDiff,nu.rw);
25365         hLowProbRngNQ2->Fill(nu.trkEnRange,nu.rw);
25366         hLowProbCurvNQ2->Fill(nu.trkEnCurv,nu.rw);
25367         hLowProbTrkLenPlNQ2->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25368       }
25369       else if (nu.containmentFlag==3){
25370         hLowProbRngCurvNQ3->Fill(rangeCurvDiff,nu.rw);
25371         hLowProbRngNQ3->Fill(nu.trkEnRange,nu.rw);
25372         hLowProbCurvNQ3->Fill(nu.trkEnCurv,nu.rw);
25373         hLowProbTrkLenPlNQ3->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25374       }
25375       else if (nu.containmentFlag==4){
25376         hLowProbRngCurvNQ4->Fill(rangeCurvDiff,nu.rw);
25377         hLowProbRngNQ4->Fill(nu.trkEnRange,nu.rw);
25378         hLowProbCurvNQ4->Fill(nu.trkEnCurv,nu.rw);
25379         hLowProbTrkLenPlNQ4->Fill(trk.end.plane-trk.vtx.plane,nu.rw);
25380       }
25381       else MSG("NuPlots",Msg::kWarning)<<"Ahhh"<<endl;
25382     }
25383   }
25384   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
25385 }

void NuPlots::FillN_1Plots const NuEvent nu  )  const
 

Definition at line 244 of file NuPlots.cxx.

References abs(), NuEvent::charge, NuLibrary::cuts, NuEvent::dpID, NuEvent::iaction, NuLibrary::Instance(), NuEvent::inu, NuCuts::IsGoodFitProb(), NuCuts::IsGoodMajorityCurvature(), NuCuts::IsGoodPID(), NuCuts::IsGoodRelAngle(), NuCuts::IsGoodSigmaQP_QP(), NuCuts::IsGoodTrackLength(), MAXMSG, NuEvent::planeTrkBegu, NuEvent::planeTrkBegv, NuEvent::planeTrkEndu, NuEvent::planeTrkEndv, NuEvent::prob, NuEvent::relativeAngle, NuEvent::roID, NuEvent::rw, NuEvent::sigqp, NuEvent::sigqp_qp, NuEvent::smoothMajC, and NuEvent::trkLength.

Referenced by NuCutImps::NuCutsSelection::IsGoodStdCuts().

00245 {
00246   //PQ
00247   static TH1F* hDpIDN_1PQ=0;
00248   static TH1F* hRoIDN_1PQ=0;
00249   static TH1F* hSigmaQPN_1PQ=0;
00250   static TH1F* hSigmaQP_QPN_1PQ=0;
00251   static TH1F* hFitProbN_1PQ=0;
00252   static TH1F* hMajCurvN_1PQ=0;
00253   static TH1F* hTrkLenN_1PQ=0;
00254   static TH1F* hTrkLenUN_1PQ=0;
00255   static TH1F* hTrkLenVN_1PQ=0;
00256   static TH1F* hRelAngleN_1PQ=0;
00257   static TH1F* hRelAngleN_1PQDiffR=0;
00258   // PQ BG
00259   static TH1F* hDpIDN_1NotNMBCCPQ=0;
00260   static TH1F* hRoIDN_1NotNMBCCPQ=0;
00261   static TH1F* hQPN_1NotNMBCCPQ=0;
00262   static TH1F* hFitProbN_1NotNMBCCPQ=0;
00263   static TH1F* hMajCurvN_1NotNMBCCPQ=0;
00264   static TH1F* hTrkLenN_1NotNMBCCPQ=0;
00265   static TH1F* hTrkLenUN_1NotNMBCCPQ=0;
00266   static TH1F* hTrkLenVN_1NotNMBCCPQ=0;
00267   static TH1F* hRelAngleN_1NotNMBCCPQ=0;
00268   static TH1F* hRelAngleN_1NotNMBCCPQDiffR=0;
00269   
00270   //NQ
00271   static TH1F* hDpIDN_1NQ=0;
00272   static TH1F* hRoIDN_1NQ=0;
00273   static TH1F* hSigmaQPN_1NQ=0;
00274   static TH1F* hSigmaQP_QPN_1NQ=0;
00275   static TH1F* hFitProbN_1NQ=0;
00276   static TH1F* hMajCurvN_1NQ=0;
00277   static TH1F* hTrkLenN_1NQ=0;
00278   static TH1F* hTrkLenUN_1NQ=0;
00279   static TH1F* hTrkLenVN_1NQ=0;
00280   static TH1F* hRelAngleN_1NQ=0;
00281 
00282   if (!hDpIDN_1PQ){
00283     MAXMSG("NuPlots",Msg::kInfo,1)
00284       <<"Creating N-1 plots..."<<endl;
00285     
00286     //PQ
00287     hDpIDN_1PQ=new TH1F("hDpIDN_1PQ","hDpIDN_1PQ",
00288                         2*320,-3.2,3.2);
00289     hDpIDN_1PQ->GetXaxis()->SetTitle("DP PID");
00290     hDpIDN_1PQ->GetXaxis()->CenterTitle();
00291     hDpIDN_1PQ->GetYaxis()->SetTitle("");
00292     hDpIDN_1PQ->GetYaxis()->CenterTitle();
00293     hDpIDN_1PQ->SetFillColor(0);
00294     //hDpIDN_1PQ->SetBit(TH1::kCanRebin);
00295 
00296     hDpIDN_1NotNMBCCPQ=new TH1F("hDpIDN_1NotNMBCCPQ","hDpIDN_1NotNMBCCPQ",
00297                         2*320,-3.2,3.2);
00298     hDpIDN_1NotNMBCCPQ->GetXaxis()->SetTitle("DP PID");
00299     hDpIDN_1NotNMBCCPQ->GetXaxis()->CenterTitle();
00300     hDpIDN_1NotNMBCCPQ->GetYaxis()->SetTitle("");
00301     hDpIDN_1NotNMBCCPQ->GetYaxis()->CenterTitle();
00302     hDpIDN_1NotNMBCCPQ->SetFillColor(0);
00303     //hDpIDN_1NotNMBCCPQ->SetBit(TH1::kCanRebin);
00304 
00305     hRoIDN_1PQ=new TH1F("hRoIDN_1PQ","hRoIDN_1PQ",
00306                         2*320,-3.2,3.2);
00307     hRoIDN_1PQ->GetXaxis()->SetTitle("RO PID");
00308     hRoIDN_1PQ->GetXaxis()->CenterTitle();
00309     hRoIDN_1PQ->GetYaxis()->SetTitle("");
00310     hRoIDN_1PQ->GetYaxis()->CenterTitle();
00311     hRoIDN_1PQ->SetFillColor(0);
00312     //hRoIDN_1PQ->SetBit(TH1::kCanRebin);
00313 
00314     hRoIDN_1NotNMBCCPQ=new TH1F("hRoIDN_1NotNMBCCPQ","hRoIDN_1NotNMBCCPQ",
00315                         2*320,-3.2,3.2);
00316     hRoIDN_1NotNMBCCPQ->GetXaxis()->SetTitle("RO PID");
00317     hRoIDN_1NotNMBCCPQ->GetXaxis()->CenterTitle();
00318     hRoIDN_1NotNMBCCPQ->GetYaxis()->SetTitle("");
00319     hRoIDN_1NotNMBCCPQ->GetYaxis()->CenterTitle();
00320     hRoIDN_1NotNMBCCPQ->SetFillColor(0);
00321     //hRoIDN_1NotNMBCCPQ->SetBit(TH1::kCanRebin);
00322 
00323 
00324     hSigmaQPN_1PQ=new TH1F("hSigmaQPN_1PQ","hSigmaQPN_1PQ",
00325                            200*160,-16,16);
00326     hSigmaQPN_1PQ->GetXaxis()->SetTitle("#sigma(q/p)");
00327     hSigmaQPN_1PQ->GetXaxis()->CenterTitle();
00328     hSigmaQPN_1PQ->GetYaxis()->SetTitle("");
00329     hSigmaQPN_1PQ->GetYaxis()->CenterTitle();
00330     hSigmaQPN_1PQ->SetFillColor(0);
00331     //hSigmaQPN_1PQ->SetBit(TH1::kCanRebin);
00332 
00333     hSigmaQP_QPN_1PQ=new TH1F("hSigmaQP_QPN_1PQ","hSigmaQP_QPN_1PQ",
00334                               800*160,-160,160);
00335     hSigmaQP_QPN_1PQ->GetXaxis()->SetTitle("#sigma(q/p)/(q/p)");
00336     hSigmaQP_QPN_1PQ->GetXaxis()->CenterTitle();
00337     hSigmaQP_QPN_1PQ->GetYaxis()->SetTitle("");
00338     hSigmaQP_QPN_1PQ->GetYaxis()->CenterTitle();
00339     hSigmaQP_QPN_1PQ->SetFillColor(0);
00340     //hSigmaQP_QPN_1PQ->SetBit(TH1::kCanRebin);
00341 
00342     hQPN_1NotNMBCCPQ=new TH1F("hQPN_1NotNMBCCPQ","hQPN_1NotNMBCCPQ",
00343                       200, 0. ,100.);
00344     hQPN_1NotNMBCCPQ->GetXaxis()->SetTitle("(Q/P) / #sigma(Q/P)");
00345     hQPN_1NotNMBCCPQ->GetXaxis()->CenterTitle();
00346     hQPN_1NotNMBCCPQ->GetYaxis()->SetTitle("");
00347     hQPN_1NotNMBCCPQ->GetYaxis()->CenterTitle();
00348     hQPN_1NotNMBCCPQ->SetFillColor(0);
00349     //QPN_1NotNMBCCPQ->SetBit(TH1::kCanRebin);
00350 
00351     hFitProbN_1PQ=new TH1F("hFitProbN_1PQ","hFitProbN_1PQ",
00352                            10*140,-0.2,1.2);
00353     hFitProbN_1PQ->GetXaxis()->SetTitle("Fit Probability");
00354     hFitProbN_1PQ->GetXaxis()->CenterTitle();
00355     hFitProbN_1PQ->GetYaxis()->SetTitle("");
00356     hFitProbN_1PQ->GetYaxis()->CenterTitle();
00357     hFitProbN_1PQ->SetFillColor(0);
00358     //hFitProbN_1PQ->SetBit(TH1::kCanRebin);
00359 
00360     hFitProbN_1NotNMBCCPQ=new TH1F("hFitProbN_1NotNMBCCPQ","hFitProbN_1NotNMBCCPQ",
00361                            10*140,-0.2,1.2);
00362     hFitProbN_1NotNMBCCPQ->GetXaxis()->SetTitle("Fit Probability");
00363     hFitProbN_1NotNMBCCPQ->GetXaxis()->CenterTitle();
00364     hFitProbN_1NotNMBCCPQ->GetYaxis()->SetTitle("");
00365     hFitProbN_1NotNMBCCPQ->GetYaxis()->CenterTitle();
00366     hFitProbN_1NotNMBCCPQ->SetFillColor(0);
00367     //hFitProbN_1NotNMBCCPQ->SetBit(TH1::kCanRebin);
00368 
00369     hMajCurvN_1PQ=new TH1F("hMajCurvN_1PQ","hMajCurvN_1PQ",
00370                            100,-1.0,1.0);
00371     hMajCurvN_1PQ->GetXaxis()->SetTitle("Majority Curvature");
00372     hMajCurvN_1PQ->GetXaxis()->CenterTitle();
00373     hMajCurvN_1PQ->GetYaxis()->SetTitle("");
00374     hMajCurvN_1PQ->GetYaxis()->CenterTitle();
00375     hMajCurvN_1PQ->SetFillColor(0);
00376     //hMajCurvN_1PQ->SetBit(TH1::kCanRebin);
00377 
00378     hMajCurvN_1NotNMBCCPQ=new TH1F("hMajCurvN_1NotNMBCCPQ","hMajCurvN_1NotNMBCCPQ",
00379                            100,-1.0,1.0);
00380     hMajCurvN_1NotNMBCCPQ->GetXaxis()->SetTitle("Majority Curvature");
00381     hMajCurvN_1NotNMBCCPQ->GetXaxis()->CenterTitle();
00382     hMajCurvN_1NotNMBCCPQ->GetYaxis()->SetTitle("");
00383     hMajCurvN_1NotNMBCCPQ->GetYaxis()->CenterTitle();
00384     hMajCurvN_1NotNMBCCPQ->SetFillColor(0);
00385     //hMajCurvN_1NotNMBCCPQ->SetBit(TH1::kCanRebin);
00386 
00387     hRelAngleN_1PQ=new TH1F("hRelAngleN_1PQ","hRelAngleN_1PQ",
00388                             320,0.,3.2);
00389     hRelAngleN_1PQ->GetXaxis()->SetTitle("abs(Relative Angle - #pi)");
00390     hRelAngleN_1PQ->GetXaxis()->CenterTitle();
00391     hRelAngleN_1PQ->GetYaxis()->SetTitle("");
00392     hRelAngleN_1PQ->GetYaxis()->CenterTitle();
00393     hRelAngleN_1PQ->SetFillColor(0);
00394     //hRelAngleN_1PQ->SetBit(TH1::kCanRebin);
00395 
00396     hRelAngleN_1PQDiffR=new TH1F("hRelAngleN_1PQDiffR","hRelAngleN_1PQDiffR",
00397                             628,0.,6.28);
00398     hRelAngleN_1PQDiffR->GetXaxis()->SetTitle("Relative Angle");
00399     hRelAngleN_1PQDiffR->GetXaxis()->CenterTitle();
00400     hRelAngleN_1PQDiffR->GetYaxis()->SetTitle("");
00401     hRelAngleN_1PQDiffR->GetYaxis()->CenterTitle();
00402     hRelAngleN_1PQDiffR->SetFillColor(0);
00403     //hRelAngleN_1PQDiffR->SetBit(TH1::kCanRebin);
00404 
00405 
00406 
00407     hRelAngleN_1NotNMBCCPQ=new TH1F("hRelAngleN_1NotNMBCCPQ","hRelAngleN_1NotNMBCCPQ",
00408                             320,0.,3.2);
00409     hRelAngleN_1NotNMBCCPQ->GetXaxis()->SetTitle("abs(Relative Angle - #pi)");
00410     hRelAngleN_1NotNMBCCPQ->GetXaxis()->CenterTitle();
00411     hRelAngleN_1NotNMBCCPQ->GetYaxis()->SetTitle("");
00412     hRelAngleN_1NotNMBCCPQ->GetYaxis()->CenterTitle();
00413     hRelAngleN_1NotNMBCCPQ->SetFillColor(0);
00414     //hRelAngleN_1NotNMBCCPQ->SetBit(TH1::kCanRebin);
00415 
00416 
00417     hRelAngleN_1NotNMBCCPQDiffR=new TH1F("hRelAngleN_1NotNMBCCPQDiffR","hRelAngleN_1NotNMBCCPQDiffR",
00418                             628,0.,6.28);
00419     hRelAngleN_1NotNMBCCPQDiffR->GetXaxis()->SetTitle("Relative Angle");
00420     hRelAngleN_1NotNMBCCPQDiffR->GetXaxis()->CenterTitle();
00421     hRelAngleN_1NotNMBCCPQDiffR->GetYaxis()->SetTitle("");
00422     hRelAngleN_1NotNMBCCPQDiffR->GetYaxis()->CenterTitle();
00423     hRelAngleN_1NotNMBCCPQDiffR->SetFillColor(0);
00424     //hRelAngleN_1NotNMBCCPQDiffR->SetBit(TH1::kCanRebin);
00425 
00426     hTrkLenN_1PQ=new TH1F("hTrkLenN_1PQ","hTrkLenN_1PQ",
00427                           500,-10,490);
00428     hTrkLenN_1PQ->GetXaxis()->SetTitle("Track Length (m)");
00429     hTrkLenN_1PQ->GetXaxis()->CenterTitle();
00430     hTrkLenN_1PQ->GetYaxis()->SetTitle("");
00431     hTrkLenN_1PQ->GetYaxis()->CenterTitle();
00432     hTrkLenN_1PQ->SetFillColor(0);
00433     //hTrkLenN_1PQ->SetBit(TH1::kCanRebin);
00434 
00435 
00436     hTrkLenN_1NotNMBCCPQ=new TH1F("hTrkLenN_1NotNMBCCPQ","hTrkLenN_1NotNMBCCPQ",
00437                           500,-10,490);
00438     hTrkLenN_1NotNMBCCPQ->GetXaxis()->SetTitle("Track Length (m)");
00439     hTrkLenN_1NotNMBCCPQ->GetXaxis()->CenterTitle();
00440     hTrkLenN_1NotNMBCCPQ->GetYaxis()->SetTitle("");
00441     hTrkLenN_1NotNMBCCPQ->GetYaxis()->CenterTitle();
00442     hTrkLenN_1NotNMBCCPQ->SetFillColor(0);
00443     //hTrkLenN_1NotNMBCCPQ->SetBit(TH1::kCanRebin);
00444 
00445     hTrkLenUN_1PQ=new TH1F("hTrkLenUN_1PQ","hTrkLenUN_1PQ",
00446                           500,-10,490);
00447     hTrkLenUN_1PQ->GetXaxis()->SetTitle("Track Length (m)");
00448     hTrkLenUN_1PQ->GetXaxis()->CenterTitle();
00449     hTrkLenUN_1PQ->GetYaxis()->SetTitle("");
00450     hTrkLenUN_1PQ->GetYaxis()->CenterTitle();
00451     hTrkLenUN_1PQ->SetFillColor(0);
00452     //hTrkLenUN_1PQ->SetBit(TH1::kCanRebin);
00453 
00454     hTrkLenUN_1NotNMBCCPQ=new TH1F("hTrkLenUN_1NotNMBCCPQ","hTrkLenUN_1NotNMBCCPQ",
00455                            500,-10,490);
00456     hTrkLenUN_1NotNMBCCPQ->GetXaxis()->SetTitle("Track Length (m)");
00457     hTrkLenUN_1NotNMBCCPQ->GetXaxis()->CenterTitle();
00458     hTrkLenUN_1NotNMBCCPQ->GetYaxis()->SetTitle("");
00459     hTrkLenUN_1NotNMBCCPQ->GetYaxis()->CenterTitle();
00460     hTrkLenUN_1NotNMBCCPQ->SetFillColor(0);
00461     //hTrkLenUN_1NotNMBCCPQ->SetBit(TH1::kCanRebin);
00462 
00463     hTrkLenVN_1PQ=new TH1F("hTrkLenVN_1PQ","hTrkLenVN_1PQ",
00464                            500,-10,490);
00465     hTrkLenVN_1PQ->GetXaxis()->SetTitle("Track Length (m)");
00466     hTrkLenVN_1PQ->GetXaxis()->CenterTitle();
00467     hTrkLenVN_1PQ->GetYaxis()->SetTitle("");
00468     hTrkLenVN_1PQ->GetYaxis()->CenterTitle();
00469     hTrkLenVN_1PQ->SetFillColor(0);
00470     //hTrkLenVN_1PQ->SetBit(TH1::kCanRebin);
00471 
00472     hTrkLenVN_1NotNMBCCPQ=new TH1F("hTrkLenVN_1NotNMBCCPQ","hTrkLenVN_1NotNMBCCPQ",
00473                            500,-10,490);
00474     hTrkLenVN_1NotNMBCCPQ->GetXaxis()->SetTitle("Track Length (m)");
00475     hTrkLenVN_1NotNMBCCPQ->GetXaxis()->CenterTitle();
00476     hTrkLenVN_1NotNMBCCPQ->GetYaxis()->SetTitle("");
00477     hTrkLenVN_1NotNMBCCPQ->GetYaxis()->CenterTitle();
00478     hTrkLenVN_1NotNMBCCPQ->SetFillColor(0);
00479     //hTrkLenVN_1NotNMBCCPQ->SetBit(TH1::kCanRebin);    
00480 
00481     //NQ
00482     hDpIDN_1NQ=new TH1F("hDpIDN_1NQ","hDpIDN_1NQ",
00483                         2*320,-3.2,3.2);
00484     hDpIDN_1NQ->GetXaxis()->SetTitle("DP PID");
00485     hDpIDN_1NQ->GetXaxis()->CenterTitle();
00486     hDpIDN_1NQ->GetYaxis()->SetTitle("");
00487     hDpIDN_1NQ->GetYaxis()->CenterTitle();
00488     hDpIDN_1NQ->SetFillColor(0);
00489     //hDpIDN_1NQ->SetBit(TH1::kCanRebin);
00490     
00491     hRoIDN_1NQ=new TH1F("hRoIDN_1NQ","hRoIDN_1NQ",
00492                         2*320,-3.2,3.2);
00493     hRoIDN_1NQ->GetXaxis()->SetTitle("RO PID");
00494     hRoIDN_1NQ->GetXaxis()->CenterTitle();
00495     hRoIDN_1NQ->GetYaxis()->SetTitle("");
00496     hRoIDN_1NQ->GetYaxis()->CenterTitle();
00497     hRoIDN_1NQ->SetFillColor(0);
00498     //hRoIDN_1NQ->SetBit(TH1::kCanRebin);
00499 
00500 
00501     hSigmaQPN_1NQ=new TH1F("hSigmaQPN_1NQ","hSigmaQPN_1NQ",
00502                            200*160,-16,16);
00503     hSigmaQPN_1NQ->GetXaxis()->SetTitle("#sigma(q/p)");
00504     hSigmaQPN_1NQ->GetXaxis()->CenterTitle();
00505     hSigmaQPN_1NQ->GetYaxis()->SetTitle("");
00506     hSigmaQPN_1NQ->GetYaxis()->CenterTitle();
00507     hSigmaQPN_1NQ->SetFillColor(0);
00508     //hSigmaQPN_1NQ->SetBit(TH1::kCanRebin);
00509 
00510     hSigmaQP_QPN_1NQ=new TH1F("hSigmaQP_QPN_1NQ","hSigmaQP_QPN_1NQ",
00511                               800*160,-16,16);
00512     hSigmaQP_QPN_1NQ->GetXaxis()->SetTitle("#sigma(q/p)/(q/p)");
00513     hSigmaQP_QPN_1NQ->GetXaxis()->CenterTitle();
00514     hSigmaQP_QPN_1NQ->GetYaxis()->SetTitle("");
00515     hSigmaQP_QPN_1NQ->GetYaxis()->CenterTitle();
00516     hSigmaQP_QPN_1NQ->SetFillColor(0);
00517     //hSigmaQP_QPN_1NQ->SetBit(TH1::kCanRebin);
00518 
00519 
00520     hFitProbN_1NQ=new TH1F("hFitProbN_1NQ","hFitProbN_1NQ",
00521                            10*140,-0.2,1.2);
00522     hFitProbN_1NQ->GetXaxis()->SetTitle("Track Fit Probability");
00523     hFitProbN_1NQ->GetXaxis()->CenterTitle();
00524     hFitProbN_1NQ->GetYaxis()->SetTitle("");
00525     hFitProbN_1NQ->GetYaxis()->CenterTitle();
00526     hFitProbN_1NQ->SetFillColor(0);
00527     //hFitProbN_1NQ->SetBit(TH1::kCanRebin);
00528 
00529     hMajCurvN_1NQ=new TH1F("hMajCurvN_1NQ","hMajCurvN_1NQ",
00530                            100,-1.0,1.0);
00531     hMajCurvN_1NQ->GetXaxis()->SetTitle("Majority Curvature");
00532     hMajCurvN_1NQ->GetXaxis()->CenterTitle();
00533     hMajCurvN_1NQ->GetYaxis()->SetTitle("");
00534     hMajCurvN_1NQ->GetYaxis()->CenterTitle();
00535     hMajCurvN_1NQ->SetFillColor(0);
00536     //hMajCurvN_1NQ->SetBit(TH1::kCanRebin);
00537 
00538     hRelAngleN_1NQ=new TH1F("hRelAngleN_1NQ","hRelAngleN_1NQ",
00539                             320,0.,3.2);
00540     hRelAngleN_1NQ->GetXaxis()->SetTitle("abs(Rel Angle - #pi)");
00541     hRelAngleN_1NQ->GetXaxis()->CenterTitle();
00542     hRelAngleN_1NQ->GetYaxis()->SetTitle("");
00543     hRelAngleN_1NQ->GetYaxis()->CenterTitle();
00544     hRelAngleN_1NQ->SetFillColor(0);
00545     //hRelAngleN_1NQ->SetBit(TH1::kCanRebin);
00546 
00547     hTrkLenN_1NQ=new TH1F("hTrkLenN_1NQ","hTrkLenN_1NQ",
00548                           500,-10,490);
00549     hTrkLenN_1NQ->GetXaxis()->SetTitle("Track Length (m)");
00550     hTrkLenN_1NQ->GetXaxis()->CenterTitle();
00551     hTrkLenN_1NQ->GetYaxis()->SetTitle("");
00552     hTrkLenN_1NQ->GetYaxis()->CenterTitle();
00553     hTrkLenN_1NQ->SetFillColor(0);
00554     //hTrkLenN_1NQ->SetBit(TH1::kCanRebin);
00555 
00556     hTrkLenUN_1NQ=new TH1F("hTrkLenUN_1NQ","hTrkLenUN_1NQ",
00557                           500,-10,490);
00558     hTrkLenUN_1NQ->GetXaxis()->SetTitle("Track Length (m)");
00559     hTrkLenUN_1NQ->GetXaxis()->CenterTitle();
00560     hTrkLenUN_1NQ->GetYaxis()->SetTitle("");
00561     hTrkLenUN_1NQ->GetYaxis()->CenterTitle();
00562     hTrkLenUN_1NQ->SetFillColor(0);
00563     //hTrkLenUN_1NQ->SetBit(TH1::kCanRebin);
00564 
00565     hTrkLenVN_1NQ=new TH1F("hTrkLenVN_1NQ","hTrkLenVN_1NQ",
00566                            500,-10,490);
00567     hTrkLenVN_1NQ->GetXaxis()->SetTitle("Track Length (m)");
00568     hTrkLenVN_1NQ->GetXaxis()->CenterTitle();
00569     hTrkLenVN_1NQ->GetYaxis()->SetTitle("");
00570     hTrkLenVN_1NQ->GetYaxis()->CenterTitle();
00571     hTrkLenVN_1NQ->SetFillColor(0);
00572     //hTrkLenVN_1NQ->SetBit(TH1::kCanRebin);
00573   }
00574 
00575   //get an instance of the code library
00576   const NuLibrary& lib=NuLibrary::Instance();
00577   
00578   Bool_t goodPID=lib.cuts.IsGoodPID(nu);  
00579   Bool_t goodSigmaQP=lib.cuts.IsGoodSigmaQP_QP(nu);
00580   Bool_t goodFitProb=lib.cuts.IsGoodFitProb(nu);
00581   Bool_t goodMajorityCurvature=lib.cuts.IsGoodMajorityCurvature(nu);
00582   Bool_t goodTrackLength=lib.cuts.IsGoodTrackLength(nu);
00583   //Bool_t goodTrackLengthInUV=lib.cuts.IsGoodTrackLengthInUV(nu);
00584   Bool_t goodRelAngle=lib.cuts.IsGoodRelAngle(nu);
00585   //Bool_t good=lib.cuts.IsGood(nu);
00586   //Bool_t good=lib.cuts.IsGood(nu);
00587   //Bool_t good=lib.cuts.IsGood(nu);
00588 
00589   
00591   //fill the N-1 cuts plots
00593   if (true && // pid
00594       goodSigmaQP &&
00595       goodFitProb &&
00596       goodMajorityCurvature &&
00597       goodTrackLength &&
00598       //      goodTrackLengthInUV &&
00599       goodRelAngle) {
00600     if (nu.charge==+1) {
00601       hDpIDN_1PQ->Fill(nu.dpID,nu.rw);
00602       hRoIDN_1PQ->Fill(nu.roID,nu.rw);
00603     if (!(nu.inu==-14 && nu.iaction==1)) {
00604       hDpIDN_1NotNMBCCPQ->Fill(nu.dpID,nu.rw);
00605       hRoIDN_1NotNMBCCPQ->Fill(nu.roID,nu.rw);
00606     }
00607   }
00608     else if (nu.charge==-1) {
00609       hDpIDN_1NQ->Fill(nu.dpID,nu.rw);
00610       hRoIDN_1NQ ->Fill(nu.roID,nu.rw);
00611     }
00612   }
00613 
00614   if (true && //sigma q/p
00615       goodPID &&
00616       goodFitProb &&
00617       goodMajorityCurvature &&
00618       goodTrackLength &&
00619       //      goodTrackLengthInUV &&
00620       goodRelAngle) {
00621     if (nu.charge==+1) {
00622       hSigmaQPN_1PQ->Fill(nu.sigqp,nu.rw);
00623       hSigmaQP_QPN_1PQ->Fill(nu.sigqp_qp,nu.rw);
00624       if (!(nu.inu==-14 && nu.iaction==1)) {
00625         hQPN_1NotNMBCCPQ->Fill(nu.sigqp,nu.rw);
00626       }
00627     }
00628     else if (nu.charge==-1) {
00629       hSigmaQPN_1NQ->Fill(1./nu.sigqp,nu.rw);
00630       hSigmaQP_QPN_1NQ->Fill(nu.sigqp_qp,nu.rw);
00631     }
00632   }
00633 
00634   if (true && //fit prob
00635       goodPID &&
00636       goodSigmaQP &&
00637       goodMajorityCurvature &&
00638       goodTrackLength &&
00639       //      goodTrackLengthInUV &&
00640       goodRelAngle) {
00641     if (nu.charge==+1) {
00642       hFitProbN_1PQ->Fill(nu.prob,nu.rw);
00643       if (!(nu.inu==-14 && nu.iaction==1)) {
00644         hFitProbN_1NotNMBCCPQ->Fill(nu.prob,nu.rw);
00645       }
00646     }
00647     else if (nu.charge==-1) {
00648       hFitProbN_1NQ->Fill(nu.prob,nu.rw);
00649     }
00650   }
00651 
00652   if (true && //majC
00653       goodPID &&
00654       goodSigmaQP &&
00655       goodFitProb &&
00656       goodTrackLength &&
00657       //      goodTrackLengthInUV &&
00658       goodRelAngle) {
00659     if (nu.charge==+1) {
00660 
00661       hMajCurvN_1PQ->Fill(nu.smoothMajC,nu.rw);
00662       if (!(nu.inu==-14 && nu.iaction==1)) {
00663         hMajCurvN_1NotNMBCCPQ->Fill(nu.smoothMajC,nu.rw);
00664       }
00665     }
00666     else if (nu.charge==-1) {
00667       hMajCurvN_1NQ->Fill(nu.smoothMajC,nu.rw);
00668     }
00669   }
00670 
00671   if (true && //Trk length
00672       goodPID && 
00673       goodSigmaQP &&
00674       goodFitProb &&
00675       goodMajorityCurvature &&
00676       //      goodTrackLengthInUV &&
00677       goodRelAngle) {
00678     if (nu.charge==+1) {
00679       hTrkLenN_1PQ->Fill(nu.trkLength,nu.rw);
00680       if (!(nu.inu==-14 && nu.iaction==1)) {
00681         hTrkLenN_1NotNMBCCPQ->Fill(nu.trkLength,nu.rw);
00682       }
00683     }
00684     else if (nu.charge==-1) {
00685       hTrkLenN_1NQ->Fill(nu.trkLength,nu.rw);
00686     }
00687   }
00688 
00689   if (true && //Trk length in UV
00690       goodPID &&
00691       goodSigmaQP &&
00692       goodFitProb &&
00693       goodTrackLength &&
00694       goodMajorityCurvature &&
00695       goodRelAngle) {
00696     if (nu.charge==+1) {
00697       hTrkLenUN_1PQ->Fill(nu.planeTrkEndu-nu.planeTrkBegu,nu.rw);
00698       hTrkLenVN_1PQ->Fill(nu.planeTrkEndv-nu.planeTrkBegv,nu.rw);
00699       if (!(nu.inu==-14 && nu.iaction==1)) {
00700         hTrkLenUN_1NotNMBCCPQ->Fill(nu.planeTrkEndu-nu.planeTrkBegu,nu.rw);
00701         hTrkLenVN_1NotNMBCCPQ->Fill(nu.planeTrkEndv-nu.planeTrkBegv,nu.rw);
00702       }
00703     }
00704     else if (nu.charge==-1) {
00705       hTrkLenUN_1NQ->Fill(nu.planeTrkEndu-nu.planeTrkBegu,nu.rw);
00706       hTrkLenVN_1NQ->Fill(nu.planeTrkEndv-nu.planeTrkBegv,nu.rw);
00707     }
00708   }
00709 
00710   if (true && //rel angle
00711       goodPID &&
00712       goodSigmaQP &&
00713       goodFitProb &&
00714       goodMajorityCurvature &&
00715       //      goodTrackLengthInUV &&
00716       goodTrackLength) {
00717     if (nu.charge==+1) {
00718       hRelAngleN_1PQ->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
00719       hRelAngleN_1PQDiffR->Fill(nu.relativeAngle,nu.rw);
00720       if (!(nu.inu==-14 && nu.iaction==1)) {
00721         hRelAngleN_1NotNMBCCPQ->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
00722         hRelAngleN_1NotNMBCCPQDiffR->Fill(nu.relativeAngle,nu.rw);
00723       }
00724     }
00725     else if (nu.charge==-1) {
00726       hRelAngleN_1NQ->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
00727     }
00728   }
00729 }

void NuPlots::FillNtupleEarliestLatestTime const NuEvent nu  )  const
 

Definition at line 167 of file NuPlots.cxx.

References MAXMSG, NuEvent::Reset(), and NuEvent::timeSec.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::MakeFullDST(), NuDSTAna::MakeMicroDst2010(), NuDSTAna::MakeMicroDstFakeData(), NuDSTAna::MakeMicroDstForCSSSystematics(), NuDSTAna::MakeMicroDstHe(), NuDSTAna::MakeMicroDstJJEPresel(), NuDSTAna::MakeMicroDstWithStdCCRecoAndCuts(), and NuDSTAna::MakeSelMicroDST().

00168 {
00169   //check if this histogram already exists in the file
00170   static const TH1F* hEarliestAlreadyExists=(TH1F*)gROOT->
00171     FindObject("hNtupleEarliestTime");
00172   if (hEarliestAlreadyExists) {
00173     MAXMSG("NuPlots",Msg::kInfo,1)
00174       <<"hNtupleEarliestTime already exists in file, so not remaking"
00175       <<endl;
00176     return;
00177   }
00178   
00179   //use TH1I to store the unixtime of earliest and latest time in ntuple
00180   static TH1I* hNtupleEarliestTime=0;
00181   static TH1I* hNtupleLatestTime=0;
00182   
00183   if (!hNtupleEarliestTime){
00184     MAXMSG("NuPlots",Msg::kDebug,1)
00185       <<"Creating FillNtupleEarliestLatestTime plots..."<<endl;
00186 
00187     hNtupleEarliestTime=new TH1I
00188       ("hNtupleEarliestTime","hNtupleEarliestTime",2,-0.5,1.5);
00189     hNtupleEarliestTime->GetXaxis()->
00190       SetTitle("Ntuple Earliest Time (s)");
00191     hNtupleEarliestTime->GetXaxis()->CenterTitle();
00192     hNtupleEarliestTime->GetYaxis()->SetTitle("");
00193     hNtupleEarliestTime->GetYaxis()->CenterTitle();
00194     hNtupleEarliestTime->SetFillColor(0);
00195     //hNtupleEarliestTime->SetBit(TH1::kCanRebin);
00196 
00197     hNtupleLatestTime=new TH1I
00198       ("hNtupleLatestTime","hNtupleLatestTime",2,-0.5,1.5);
00199     hNtupleLatestTime->GetXaxis()->
00200       SetTitle("Ntuple Latest Time (s)");
00201     hNtupleLatestTime->GetXaxis()->CenterTitle();
00202     hNtupleLatestTime->GetYaxis()->SetTitle("");
00203     hNtupleLatestTime->GetYaxis()->CenterTitle();
00204     hNtupleLatestTime->SetFillColor(0);
00205     //hNtupleLatestTime->SetBit(TH1::kCanRebin);
00206   }
00207   
00208   static Int_t earliestTime=2000000000;
00209   static Int_t latestTime=1;
00210 
00211   //formatting string for times
00212   static MsgFormat ffmt("%9.f");
00213   
00214   if (nu.timeSec>latestTime) {
00215     latestTime=nu.timeSec;
00216     hNtupleLatestTime->Reset("ICE");//resets Integral, Contents, Errors
00217     hNtupleLatestTime->Fill(1,latestTime);
00218     
00219     MAXMSG("NuPlots",Msg::kDebug,100)
00220       <<"latestTime="<<ffmt(latestTime)
00221       <<", integral="<<ffmt(hNtupleLatestTime->Integral())
00222       <<", max="<<ffmt(hNtupleLatestTime->GetMaximum())
00223       <<endl;
00224   }
00225 
00226   if (nu.timeSec<earliestTime) {
00227     earliestTime=nu.timeSec;
00228     //reset the histogram that stores the earliestTime
00229     hNtupleEarliestTime->Reset("ICE");//resets Integral, Contents, Errs
00230     
00231     //fill the histogram with the new earliest time
00232     hNtupleEarliestTime->Fill(1,earliestTime);
00233     
00234     MAXMSG("NuPlots",Msg::kDebug,100)
00235       <<"earliestTime="<<ffmt(earliestTime)
00236       <<", integral="<<ffmt(hNtupleEarliestTime->Integral())
00237       <<", max="<<ffmt(hNtupleEarliestTime->GetMaximum())
00238       <<endl;
00239   }
00240 }

void NuPlots::FillRangeCurvCompHistos const NuEvent nu  )  const
 

Definition at line 1395 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::containmentFlag, NuEvent::energy, Form(), NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::rw, NuEvent::simFlag, NuEvent::trkEnCurv, NuEvent::trkEnRange, and NuEvent::trkfitpass.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::ChargeSignCut(), NuAnalysis::LIRejectionTest(), NuDSTAna::MakeFinalPlots(), and NuAnalysis::NMBSummaryTreeAna().

01396 {
01397   //PQ
01398   static TH1F* hRangeCurvDiffPQ=0;
01399   static TH1F* hRangeCurvDiffNotNMBCCPQ=0;
01400   static TH1F* hRangeCurvDiffPQ1=0;
01401   static TH1F* hRangeCurvDiffPQ3=0;
01402 
01403   static TH1F* hCurvRangeDiffPQ=0;
01404   static TH1F* hCurvRangeDiffNotNMBCCPQ=0;
01405   static TH1F* hCurvRangeDiffPQ1=0;
01406   static TH1F* hCurvRangeDiffPQ3=0;
01407 
01408   static TH1F* hRangeEventsPQ=0;
01409   static TH1F* hRangeEventsPQ1=0;
01410   static TH1F* hRangeEventsPQ3=0;
01411   static TH1F* hRangeEventsMuRngEnNotNMBCCPQ=0;
01412   static TH1F* hRangeEventsMuRngEnNotNMBCCPQ1=0;
01413   static TH1F* hRangeEventsMuRngEnNotNMBCCPQ3=0;
01414 
01415   static TH1F* hRangeEventsMuRngEnPQ=0;
01416   static TH1F* hRangeEventsMuRngEnPQ1=0;
01417   static TH1F* hRangeEventsMuRngEnPQ3=0;
01418 
01419   static TProfile* pRangeCurvDiffVsEnPQ=0;
01420   static TProfile* pRangeCurvDiffVsEn05PQ=0;
01421   static TProfile* pRangeCurvDiffVsEnPQ1=0;
01422   static TProfile* pRangeCurvDiffVsEn05PQ1=0;
01423   static TProfile* pRangeCurvDiffVsEnPQ3=0;
01424   static TProfile* pRangeCurvDiffVsEn05PQ3=0;
01425 
01426   static TProfile* pRngCurDifVsMuRngEnPQ=0;
01427   static TProfile* pRngCurDifVsMuRngEn05PQ=0;
01428   static TProfile* pRngCurDifVsMuRngEnPQ1=0;
01429   static TProfile* pRngCurDifVsMuRngEn05PQ1=0;
01430   static TProfile* pRngCurDifVsMuRngEnPQ3=0;
01431   static TProfile* pRngCurDifVsMuRngEn05PQ3=0;
01432 
01433   static TProfile* pCurRngDifVsMuRngEnPQ=0;
01434   static TProfile* pCurRngDifVsMuRngEn05PQ=0;
01435   static TProfile* pCurRngDifVsMuRngEnPQ1=0;
01436   static TProfile* pCurRngDifVsMuRngEn05PQ1=0;
01437   static TProfile* pCurRngDifVsMuRngEnPQ3=0;
01438   static TProfile* pCurRngDifVsMuRngEn05PQ3=0;
01439 
01440   static TH1F* hTrkFitPassPQ=0;
01441   static TH1F* hTrkFitPassPQ1=0;
01442   static TH1F* hTrkFitPassPQ2=0;
01443   static TH1F* hTrkFitPassPQ3=0;
01444   static TH1F* hTrkFitPassPQ4=0;
01445 
01446   //NQ
01447   static TH1F* hRangeCurvDiffNQ=0;
01448   static TH1F* hRangeCurvDiffNQ1=0;
01449   static TH1F* hRangeCurvDiffNQ3=0;
01450 
01451   static TH1F* hCurvRangeDiffNQ=0;
01452   static TH1F* hCurvRangeDiffNQ1=0;
01453   static TH1F* hCurvRangeDiffNQ3=0;
01454 
01455   static TH1F* hRangeEventsNQ=0;
01456   static TH1F* hRangeEventsNQ1=0;
01457   static TH1F* hRangeEventsNQ3=0;
01458   static TH1F* hRangeEventsMuRngEnNQ=0;
01459   static TH1F* hRangeEventsMuRngEnNQ1=0;
01460   static TH1F* hRangeEventsMuRngEnNQ3=0;
01461 
01462   static TProfile* pRangeCurvDiffVsEnNQ=0;
01463   static TProfile* pRangeCurvDiffVsEn05NQ=0;
01464   static TProfile* pRangeCurvDiffVsEnNQ1=0;
01465   static TProfile* pRangeCurvDiffVsEn05NQ1=0;
01466   static TProfile* pRangeCurvDiffVsEnNQ3=0;
01467   static TProfile* pRangeCurvDiffVsEn05NQ3=0;
01468 
01469   static TProfile* pRngCurDifVsMuRngEnNQ=0;
01470   static TProfile* pRngCurDifVsMuRngEn05NQ=0;
01471   static TProfile* pRngCurDifVsMuRngEnNQ1=0;
01472   static TProfile* pRngCurDifVsMuRngEn05NQ1=0;
01473   static TProfile* pRngCurDifVsMuRngEnNQ3=0;
01474   static TProfile* pRngCurDifVsMuRngEn05NQ3=0;
01475 
01476   static TProfile* pCurRngDifVsMuRngEnNQ=0;
01477   static TProfile* pCurRngDifVsMuRngEn05NQ=0;
01478   static TProfile* pCurRngDifVsMuRngEnNQ1=0;
01479   static TProfile* pCurRngDifVsMuRngEn05NQ1=0;
01480   static TProfile* pCurRngDifVsMuRngEnNQ3=0;
01481   static TProfile* pCurRngDifVsMuRngEn05NQ3=0;
01482 
01483   static TH1F* hTrkFitPassNQ=0;
01484   static TH1F* hTrkFitPassNQ1=0;
01485   static TH1F* hTrkFitPassNQ2=0;
01486   static TH1F* hTrkFitPassNQ3=0;
01487   static TH1F* hTrkFitPassNQ4=0;
01488 
01489   Int_t nbins=10;
01490   static vector<TH1F*> vhRangeCurvDiffPQ(nbins);
01491   static vector<TH1F*> vhRangeCurvDiffPQ1(nbins);
01492   static vector<TH1F*> vhRangeCurvDiffPQ3(nbins);
01493 
01494   static vector<TH1F*> vhRangeCurvDiffNQ(nbins);
01495   static vector<TH1F*> vhRangeCurvDiffNQ1(nbins);
01496   static vector<TH1F*> vhRangeCurvDiffNQ3(nbins);
01497 
01498   //break down by true numubar and numu as well
01499   //maybe do curv-range/true since range may get it wrong sometimes
01500 
01501   if(!hRangeCurvDiffPQ){
01502     
01503     for (Int_t i=0;i<nbins;i++){
01504       string sbin=Form("%d",i);
01505       if (i<10) sbin="0"+sbin;//add the zero
01506       string sBase="hRangeCurvDiff";
01507       
01508       string sPQ=sBase+sbin+"PQ";
01509       string sPQ1=sBase+sbin+"PQ1";
01510       string sPQ3=sBase+sbin+"PQ3";
01511       string sNQ=sBase+sbin+"NQ";
01512       string sNQ1=sBase+sbin+"NQ1";
01513       string sNQ3=sBase+sbin+"NQ3";
01514       
01515       vhRangeCurvDiffPQ[i]=new TH1F
01516         (sPQ.c_str(),sPQ.c_str(),4*160,-1.6,1.6);
01517       vhRangeCurvDiffPQ[i]->GetXaxis()->SetTitle("Curv-Range/Range");
01518       vhRangeCurvDiffPQ[i]->GetXaxis()->CenterTitle();
01519       vhRangeCurvDiffPQ[i]->GetYaxis()->SetTitle("");
01520       vhRangeCurvDiffPQ[i]->GetYaxis()->CenterTitle();
01521       //vhRangeCurvDiffPQ[i]->SetBit(TH1::kCanRebin);
01522 
01523       vhRangeCurvDiffPQ1[i]=new TH1F
01524         (sPQ1.c_str(),sPQ1.c_str(),4*160,-1.6,1.6);
01525       vhRangeCurvDiffPQ1[i]->GetXaxis()->SetTitle("Curv-Range/Range");
01526       vhRangeCurvDiffPQ1[i]->GetXaxis()->CenterTitle();
01527       vhRangeCurvDiffPQ1[i]->GetYaxis()->SetTitle("");
01528       vhRangeCurvDiffPQ1[i]->GetYaxis()->CenterTitle();
01529       //vhRangeCurvDiffPQ1[i]->SetBit(TH1::kCanRebin);
01530 
01531       vhRangeCurvDiffPQ3[i]=new TH1F
01532         (sPQ3.c_str(),sPQ3.c_str(),4*160,-1.6,1.6);
01533       vhRangeCurvDiffPQ3[i]->GetXaxis()->SetTitle("Curv-Range/Range");
01534       vhRangeCurvDiffPQ3[i]->GetXaxis()->CenterTitle();
01535       vhRangeCurvDiffPQ3[i]->GetYaxis()->SetTitle("");
01536       vhRangeCurvDiffPQ3[i]->GetYaxis()->CenterTitle();
01537       //vhRangeCurvDiffPQ3[i]->SetBit(TH1::kCanRebin);
01538       
01539       
01540       vhRangeCurvDiffNQ[i]=new TH1F
01541         (sNQ.c_str(),sNQ.c_str(),4*160,-1.6,1.6);
01542       vhRangeCurvDiffNQ[i]->GetXaxis()->SetTitle("Curv-Range/Range");
01543       vhRangeCurvDiffNQ[i]->GetXaxis()->CenterTitle();
01544       vhRangeCurvDiffNQ[i]->GetYaxis()->SetTitle("");
01545       vhRangeCurvDiffNQ[i]->GetYaxis()->CenterTitle();
01546       //vhRangeCurvDiffNQ[i]->SetBit(TH1::kCanRebin);
01547 
01548       vhRangeCurvDiffNQ1[i]=new TH1F
01549         (sNQ1.c_str(),sNQ1.c_str(),4*160,-1.6,1.6);
01550       vhRangeCurvDiffNQ1[i]->GetXaxis()->SetTitle("Curv-Range/Range");
01551       vhRangeCurvDiffNQ1[i]->GetXaxis()->CenterTitle();
01552       vhRangeCurvDiffNQ1[i]->GetYaxis()->SetTitle("");
01553       vhRangeCurvDiffNQ1[i]->GetYaxis()->CenterTitle();
01554       //vhRangeCurvDiffNQ1[i]->SetBit(TH1::kCanRebin);
01555 
01556       vhRangeCurvDiffNQ3[i]=new TH1F
01557         (sNQ3.c_str(),sNQ3.c_str(),4*160,-1.6,1.6);
01558       vhRangeCurvDiffNQ3[i]->GetXaxis()->SetTitle("Curv-Range/Range");
01559       vhRangeCurvDiffNQ3[i]->GetXaxis()->CenterTitle();
01560       vhRangeCurvDiffNQ3[i]->GetYaxis()->SetTitle("");
01561       vhRangeCurvDiffNQ3[i]->GetYaxis()->CenterTitle();
01562       //vhRangeCurvDiffNQ3[i]->SetBit(TH1::kCanRebin);
01563       
01564     }
01565 
01566     //PQ
01567     hRangeCurvDiffPQ=new TH1F("hRangeCurvDiffPQ","hRangeCurvDiffPQ",
01568                               4*160,-1.6,1.6);
01569     hRangeCurvDiffPQ->GetXaxis()->SetTitle("Curv-Range/Range");
01570     hRangeCurvDiffPQ->GetXaxis()->CenterTitle();
01571     hRangeCurvDiffPQ->GetYaxis()->SetTitle("");
01572     hRangeCurvDiffPQ->GetYaxis()->CenterTitle();
01573     //hRangeCurvDiffPQ->SetBit(TH1::kCanRebin);
01574 
01575     hRangeCurvDiffNotNMBCCPQ=new TH1F("hRangeCurvDiffNotNMBCCPQ","hRangeCurvDiffNotNMBCCPQ",
01576                               4*160,-1.6,1.6);
01577     hRangeCurvDiffNotNMBCCPQ->GetXaxis()->SetTitle("Curv-Range/Range");
01578     hRangeCurvDiffNotNMBCCPQ->GetXaxis()->CenterTitle();
01579     hRangeCurvDiffNotNMBCCPQ->GetYaxis()->SetTitle("");
01580     hRangeCurvDiffNotNMBCCPQ->GetYaxis()->CenterTitle();
01581     //hRangeCurvDiffNotNMBCCPQ->SetBit(TH1::kCanRebin);
01582 
01583     hRangeCurvDiffPQ1=new TH1F("hRangeCurvDiffPQ1","hRangeCurvDiffPQ1",
01584                                4*160,-1.6,1.6);
01585     hRangeCurvDiffPQ1->GetXaxis()->SetTitle("Curv-Range/Range");
01586     hRangeCurvDiffPQ1->GetXaxis()->CenterTitle();
01587     hRangeCurvDiffPQ1->GetYaxis()->SetTitle("");
01588     hRangeCurvDiffPQ1->GetYaxis()->CenterTitle();
01589     //hRangeCurvDiffPQ1->SetBit(TH1::kCanRebin);
01590 
01591     hRangeCurvDiffPQ3=new TH1F("hRangeCurvDiffPQ3","hRangeCurvDiffPQ3",
01592                                4*160,-1.6,1.6);
01593     hRangeCurvDiffPQ3->GetXaxis()->SetTitle("Curv-Range/Range");
01594     hRangeCurvDiffPQ3->GetXaxis()->CenterTitle();
01595     hRangeCurvDiffPQ3->GetYaxis()->SetTitle("");
01596     hRangeCurvDiffPQ3->GetYaxis()->CenterTitle();
01597     //hRangeCurvDiffPQ3->SetBit(TH1::kCanRebin);
01598 
01599 
01600     hCurvRangeDiffPQ=new TH1F("hCurvRangeDiffPQ","hCurvRangeDiffPQ",
01601                               4*160,-1.6,1.6);
01602     hCurvRangeDiffPQ->GetXaxis()->SetTitle("Range-Curv/Range");
01603     hCurvRangeDiffPQ->GetXaxis()->CenterTitle();
01604     hCurvRangeDiffPQ->GetYaxis()->SetTitle("");
01605     hCurvRangeDiffPQ->GetYaxis()->CenterTitle();
01606     //hCurvRangeDiffPQ->SetBit(TH1::kCanRebin);
01607 
01608     hCurvRangeDiffNotNMBCCPQ=new TH1F("hCurvRangeDiffNotNMBCCPQ","hCurvRangeDiffNotNMBCCPQ",
01609                               4*160,-1.6,1.6);
01610     hCurvRangeDiffNotNMBCCPQ->GetXaxis()->SetTitle("Range-Curv/Range");
01611     hCurvRangeDiffNotNMBCCPQ->GetXaxis()->CenterTitle();
01612     hCurvRangeDiffNotNMBCCPQ->GetYaxis()->SetTitle("");
01613     hCurvRangeDiffNotNMBCCPQ->GetYaxis()->CenterTitle();
01614     //hCurvRangeDiffNotNMBCCPQ->SetBit(TH1::kCanRebin);
01615 
01616     hCurvRangeDiffPQ1=new TH1F("hCurvRangeDiffPQ1","hCurvRangeDiffPQ1",
01617                                4*160,-1.6,1.6);
01618     hCurvRangeDiffPQ1->GetXaxis()->SetTitle("Range-Curv/Range");
01619     hCurvRangeDiffPQ1->GetXaxis()->CenterTitle();
01620     hCurvRangeDiffPQ1->GetYaxis()->SetTitle("");
01621     hCurvRangeDiffPQ1->GetYaxis()->CenterTitle();
01622     //hCurvRangeDiffPQ1->SetBit(TH1::kCanRebin);
01623 
01624     hCurvRangeDiffPQ3=new TH1F("hCurvRangeDiffPQ3","hCurvRangeDiffPQ3",
01625                                4*160,-1.6,1.6);
01626     hCurvRangeDiffPQ3->GetXaxis()->SetTitle("Range-Curv/Range");
01627     hCurvRangeDiffPQ3->GetXaxis()->CenterTitle();
01628     hCurvRangeDiffPQ3->GetYaxis()->SetTitle("");
01629     hCurvRangeDiffPQ3->GetYaxis()->CenterTitle();
01630     //hCurvRangeDiffPQ3->SetBit(TH1::kCanRebin);
01631 
01632 
01633 
01634     hRangeEventsPQ=new TH1F("hRangeEventsPQ","hRangeEventsPQ",
01635                             4*352,-32,320);
01636     hRangeEventsPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
01637     hRangeEventsPQ->GetXaxis()->CenterTitle();
01638     hRangeEventsPQ->GetYaxis()->SetTitle("");
01639     hRangeEventsPQ->GetYaxis()->CenterTitle();
01640     //hRangeEventsPQ->SetBit(TH1::kCanRebin);
01641 
01642     hRangeEventsMuRngEnNotNMBCCPQ=new TH1F("hRangeEventsMuRngEnNotNMBCCPQ","hRangeEventsMuRngEnNotNMBCCPQ",
01643                             4*352,-32,320);
01644     hRangeEventsMuRngEnNotNMBCCPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
01645     hRangeEventsMuRngEnNotNMBCCPQ->GetXaxis()->CenterTitle();
01646     hRangeEventsMuRngEnNotNMBCCPQ->GetYaxis()->SetTitle("");
01647     hRangeEventsMuRngEnNotNMBCCPQ->GetYaxis()->CenterTitle();
01648     //hRangeEventsMuRngEnNotNMBCCPQ->SetBit(TH1::kCanRebin);
01649 
01650     hRangeEventsPQ1=new TH1F("hRangeEventsPQ1","hRangeEventsPQ1",
01651                              4*352,-32,320);
01652     hRangeEventsPQ1->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
01653     hRangeEventsPQ1->GetXaxis()->CenterTitle();
01654     hRangeEventsPQ1->GetYaxis()->SetTitle("");
01655     hRangeEventsPQ1->GetYaxis()->CenterTitle();
01656     //hRangeEventsPQ1->SetBit(TH1::kCanRebin);
01657 
01658     hRangeEventsMuRngEnNotNMBCCPQ1=new TH1F("hRangeEventsMuRngEnNotNMBCCPQ1","hRangeEventsMuRngEnNotNMBCCPQ1",
01659                              4*352,-32,320);
01660     hRangeEventsMuRngEnNotNMBCCPQ1->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
01661     hRangeEventsMuRngEnNotNMBCCPQ1->GetXaxis()->CenterTitle();
01662     hRangeEventsMuRngEnNotNMBCCPQ1->GetYaxis()->SetTitle("");
01663     hRangeEventsMuRngEnNotNMBCCPQ1->GetYaxis()->CenterTitle();
01664     //hRangeEventsMuRngEnNotNMBCCPQ1->SetBit(TH1::kCanRebin);
01665     
01666     hRangeEventsPQ3=new TH1F("hRangeEventsPQ3","hRangeEventsPQ3",
01667                              4*352,-32,320);
01668     hRangeEventsPQ3->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
01669     hRangeEventsPQ3->GetXaxis()->CenterTitle();
01670     hRangeEventsPQ3->GetYaxis()->SetTitle("");
01671     hRangeEventsPQ3->GetYaxis()->CenterTitle();
01672     //hRangeEventsPQ3->SetBit(TH1::kCanRebin);
01673 
01674     hRangeEventsMuRngEnNotNMBCCPQ3=new TH1F("hRangeEventsMuRngEnNotNMBCCPQ3","hRangeEventsMuRngEnNotNMBCCPQ3",
01675                              4*352,-32,320);
01676     hRangeEventsMuRngEnNotNMBCCPQ3->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
01677     hRangeEventsMuRngEnNotNMBCCPQ3->GetXaxis()->CenterTitle();
01678     hRangeEventsMuRngEnNotNMBCCPQ3->GetYaxis()->SetTitle("");
01679     hRangeEventsMuRngEnNotNMBCCPQ3->GetYaxis()->CenterTitle();
01680     //hRangeEventsMuRngEnNotNMBCCPQ3->SetBit(TH1::kCanRebin);
01681 
01682     hRangeEventsMuRngEnPQ=new TH1F
01683       ("hRangeEventsMuRngEnPQ","hRangeEventsMuRngEnPQ",4*352,-32,320);
01684     hRangeEventsMuRngEnPQ->GetXaxis()->SetTitle
01685       ("Reconstructed Energy (GeV)");
01686     hRangeEventsMuRngEnPQ->GetXaxis()->CenterTitle();
01687     hRangeEventsMuRngEnPQ->GetYaxis()->SetTitle("");
01688     hRangeEventsMuRngEnPQ->GetYaxis()->CenterTitle();
01689     //hRangeEventsMuRngEnPQ->SetBit(TH1::kCanRebin);
01690 
01691     hRangeEventsMuRngEnPQ1=new TH1F
01692       ("hRangeEventsMuRngEnPQ1","hRangeEventsMuRngEnPQ1",4*352,-32,320);
01693     hRangeEventsMuRngEnPQ1->GetXaxis()->SetTitle
01694       ("Reconstructed Energy (GeV)");
01695     hRangeEventsMuRngEnPQ1->GetXaxis()->CenterTitle();
01696     hRangeEventsMuRngEnPQ1->GetYaxis()->SetTitle("");
01697     hRangeEventsMuRngEnPQ1->GetYaxis()->CenterTitle();
01698     //hRangeEventsMuRngEnPQ1->SetBit(TH1::kCanRebin);
01699     
01700     hRangeEventsMuRngEnPQ3=new TH1F
01701       ("hRangeEventsMuRngEnPQ3","hRangeEventsMuRngEnPQ3",4*352,-32,320);
01702     hRangeEventsMuRngEnPQ3->GetXaxis()->SetTitle
01703       ("Reconstructed Energy (GeV)");
01704     hRangeEventsMuRngEnPQ3->GetXaxis()->CenterTitle();
01705     hRangeEventsMuRngEnPQ3->GetYaxis()->SetTitle("");
01706     hRangeEventsMuRngEnPQ3->GetYaxis()->CenterTitle();
01707     //hRangeEventsMuRngEnPQ3->SetBit(TH1::kCanRebin);
01708 
01709 
01710 
01711     pRangeCurvDiffVsEnPQ=new TProfile
01712       ("pRangeCurvDiffVsEnPQ","pRangeCurvDiffVsEnPQ",110,-10,100);
01713     pRangeCurvDiffVsEnPQ->GetXaxis()->SetTitle
01714       ("Reconstructed Energy (GeV)");
01715     pRangeCurvDiffVsEnPQ->GetXaxis()->CenterTitle();
01716     pRangeCurvDiffVsEnPQ->GetYaxis()->SetTitle("Curv-Range/Range");
01717     pRangeCurvDiffVsEnPQ->GetYaxis()->CenterTitle();
01718 
01719     pRangeCurvDiffVsEn05PQ=new TProfile
01720       ("pRangeCurvDiffVsEn05PQ","pRangeCurvDiffVsEn05PQ",220,-10,100);
01721     pRangeCurvDiffVsEn05PQ->GetXaxis()->SetTitle
01722       ("Reconstructed Energy (GeV)");
01723     pRangeCurvDiffVsEn05PQ->GetXaxis()->CenterTitle();
01724     pRangeCurvDiffVsEn05PQ->GetYaxis()->SetTitle("Curv-Range/Range");
01725     pRangeCurvDiffVsEn05PQ->GetYaxis()->CenterTitle();
01726 
01727     pRangeCurvDiffVsEnPQ1=new TProfile
01728       ("pRangeCurvDiffVsEnPQ1","pRangeCurvDiffVsEnPQ1",110,-10,100);
01729     pRangeCurvDiffVsEnPQ1->GetXaxis()->SetTitle
01730       ("Reconstructed Energy (GeV)");
01731     pRangeCurvDiffVsEnPQ1->GetXaxis()->CenterTitle();
01732     pRangeCurvDiffVsEnPQ1->GetYaxis()->SetTitle("Curv-Range/Range");
01733     pRangeCurvDiffVsEnPQ1->GetYaxis()->CenterTitle();
01734 
01735     pRangeCurvDiffVsEn05PQ1=new TProfile
01736       ("pRangeCurvDiffVsEn05PQ1","pRangeCurvDiffVsEn05PQ1",220,-10,100);
01737     pRangeCurvDiffVsEn05PQ1->GetXaxis()->SetTitle
01738       ("Reconstructed Energy (GeV)");
01739     pRangeCurvDiffVsEn05PQ1->GetXaxis()->CenterTitle();
01740     pRangeCurvDiffVsEn05PQ1->GetYaxis()->SetTitle("Curv-Range/Range");
01741     pRangeCurvDiffVsEn05PQ1->GetYaxis()->CenterTitle();
01742 
01743     pRangeCurvDiffVsEnPQ3=new TProfile
01744       ("pRangeCurvDiffVsEnPQ3","pRangeCurvDiffVsEnPQ3",110,-10,100);
01745     pRangeCurvDiffVsEnPQ3->GetXaxis()->SetTitle
01746       ("Reconstructed Energy (GeV)");
01747     pRangeCurvDiffVsEnPQ3->GetXaxis()->CenterTitle();
01748     pRangeCurvDiffVsEnPQ3->GetYaxis()->SetTitle("Curv-Range/Range");
01749     pRangeCurvDiffVsEnPQ3->GetYaxis()->CenterTitle();
01750 
01751     pRangeCurvDiffVsEn05PQ3=new TProfile
01752       ("pRangeCurvDiffVsEn05PQ3","pRangeCurvDiffVsEn05PQ3",220,-10,100);
01753     pRangeCurvDiffVsEn05PQ3->GetXaxis()->SetTitle
01754       ("Reconstructed Energy (GeV)");
01755     pRangeCurvDiffVsEn05PQ3->GetXaxis()->CenterTitle();
01756     pRangeCurvDiffVsEn05PQ3->GetYaxis()->SetTitle("Curv-Range/Range");
01757     pRangeCurvDiffVsEn05PQ3->GetYaxis()->CenterTitle();
01758 
01759 
01760 
01761     pRngCurDifVsMuRngEnPQ=new TProfile
01762       ("pRngCurDifVsMuRngEnPQ","pRngCurDifVsMuRngEnPQ",110,-10,100);
01763     pRngCurDifVsMuRngEnPQ->GetXaxis()->SetTitle
01764       ("Reconstructed Energy (GeV)");
01765     pRngCurDifVsMuRngEnPQ->GetXaxis()->CenterTitle();
01766     pRngCurDifVsMuRngEnPQ->GetYaxis()->SetTitle("Curv-Range/Range");
01767     pRngCurDifVsMuRngEnPQ->GetYaxis()->CenterTitle();
01768 
01769     pRngCurDifVsMuRngEn05PQ=new TProfile
01770       ("pRngCurDifVsMuRngEn05PQ","pRngCurDifVsMuRngEn05PQ",220,-10,100);
01771     pRngCurDifVsMuRngEn05PQ->GetXaxis()->SetTitle
01772       ("Reconstructed Energy (GeV)");
01773     pRngCurDifVsMuRngEn05PQ->GetXaxis()->CenterTitle();
01774     pRngCurDifVsMuRngEn05PQ->GetYaxis()->SetTitle("Curv-Range/Range");
01775     pRngCurDifVsMuRngEn05PQ->GetYaxis()->CenterTitle();
01776 
01777     pRngCurDifVsMuRngEnPQ1=new TProfile
01778       ("pRngCurDifVsMuRngEnPQ1","pRngCurDifVsMuRngEnPQ1",110,-10,100);
01779     pRngCurDifVsMuRngEnPQ1->GetXaxis()->SetTitle
01780       ("Reconstructed Energy (GeV)");
01781     pRngCurDifVsMuRngEnPQ1->GetXaxis()->CenterTitle();
01782     pRngCurDifVsMuRngEnPQ1->GetYaxis()->SetTitle("Curv-Range/Range");
01783     pRngCurDifVsMuRngEnPQ1->GetYaxis()->CenterTitle();
01784 
01785     pRngCurDifVsMuRngEn05PQ1=new TProfile
01786       ("pRngCurDifVsMuRngEn05PQ1","pRngCurDifVsMuRngEn05PQ1",
01787        220,-10,100);
01788     pRngCurDifVsMuRngEn05PQ1->GetXaxis()->SetTitle
01789       ("Reconstructed Energy (GeV)");
01790     pRngCurDifVsMuRngEn05PQ1->GetXaxis()->CenterTitle();
01791     pRngCurDifVsMuRngEn05PQ1->GetYaxis()->SetTitle("Curv-Range/Range");
01792     pRngCurDifVsMuRngEn05PQ1->GetYaxis()->CenterTitle();
01793 
01794     pRngCurDifVsMuRngEnPQ3=new TProfile
01795       ("pRngCurDifVsMuRngEnPQ3","pRngCurDifVsMuRngEnPQ3",
01796        110,-10,100);
01797     pRngCurDifVsMuRngEnPQ3->GetXaxis()->SetTitle
01798       ("Reconstructed Energy (GeV)");
01799     pRngCurDifVsMuRngEnPQ3->GetXaxis()->CenterTitle();
01800     pRngCurDifVsMuRngEnPQ3->GetYaxis()->SetTitle("Curv-Range/Range");
01801     pRngCurDifVsMuRngEnPQ3->GetYaxis()->CenterTitle();
01802 
01803     pRngCurDifVsMuRngEn05PQ3=new TProfile
01804       ("pRngCurDifVsMuRngEn05PQ3","pRngCurDifVsMuRngEn05PQ3",
01805        220,-10,100);
01806     pRngCurDifVsMuRngEn05PQ3->GetXaxis()->SetTitle
01807       ("Reconstructed Energy (GeV)");
01808     pRngCurDifVsMuRngEn05PQ3->GetXaxis()->CenterTitle();
01809     pRngCurDifVsMuRngEn05PQ3->GetYaxis()->SetTitle("Curv-Range/Range");
01810     pRngCurDifVsMuRngEn05PQ3->GetYaxis()->CenterTitle();
01811 
01812 
01813 
01814     pCurRngDifVsMuRngEnPQ=new TProfile
01815       ("pCurRngDifVsMuRngEnPQ","pCurRngDifVsMuRngEnPQ",110,-10,100);
01816     pCurRngDifVsMuRngEnPQ->GetXaxis()->SetTitle
01817       ("Reconstructed Energy (GeV)");
01818     pCurRngDifVsMuRngEnPQ->GetXaxis()->CenterTitle();
01819     pCurRngDifVsMuRngEnPQ->GetYaxis()->SetTitle("Range-Curv/Range");
01820     pCurRngDifVsMuRngEnPQ->GetYaxis()->CenterTitle();
01821 
01822     pCurRngDifVsMuRngEn05PQ=new TProfile
01823       ("pCurRngDifVsMuRngEn05PQ","pCurRngDifVsMuRngEn05PQ",220,-10,100);
01824     pCurRngDifVsMuRngEn05PQ->GetXaxis()->SetTitle
01825       ("Reconstructed Energy (GeV)");
01826     pCurRngDifVsMuRngEn05PQ->GetXaxis()->CenterTitle();
01827     pCurRngDifVsMuRngEn05PQ->GetYaxis()->SetTitle("Range-Curv/Range");
01828     pCurRngDifVsMuRngEn05PQ->GetYaxis()->CenterTitle();
01829 
01830     pCurRngDifVsMuRngEnPQ1=new TProfile
01831       ("pCurRngDifVsMuRngEnPQ1","pCurRngDifVsMuRngEnPQ1",110,-10,100);
01832     pCurRngDifVsMuRngEnPQ1->GetXaxis()->SetTitle
01833       ("Reconstructed Energy (GeV)");
01834     pCurRngDifVsMuRngEnPQ1->GetXaxis()->CenterTitle();
01835     pCurRngDifVsMuRngEnPQ1->GetYaxis()->SetTitle("Range-Curv/Range");
01836     pCurRngDifVsMuRngEnPQ1->GetYaxis()->CenterTitle();
01837 
01838     pCurRngDifVsMuRngEn05PQ1=new TProfile
01839       ("pCurRngDifVsMuRngEn05PQ1","pCurRngDifVsMuRngEn05PQ1",
01840        220,-10,100);
01841     pCurRngDifVsMuRngEn05PQ1->GetXaxis()->SetTitle
01842       ("Reconstructed Energy (GeV)");
01843     pCurRngDifVsMuRngEn05PQ1->GetXaxis()->CenterTitle();
01844     pCurRngDifVsMuRngEn05PQ1->GetYaxis()->SetTitle("Range-Curv/Range");
01845     pCurRngDifVsMuRngEn05PQ1->GetYaxis()->CenterTitle();
01846 
01847     pCurRngDifVsMuRngEnPQ3=new TProfile
01848       ("pCurRngDifVsMuRngEnPQ3","pCurRngDifVsMuRngEnPQ3",
01849        110,-10,100);
01850     pCurRngDifVsMuRngEnPQ3->GetXaxis()->SetTitle
01851       ("Reconstructed Energy (GeV)");
01852     pCurRngDifVsMuRngEnPQ3->GetXaxis()->CenterTitle();
01853     pCurRngDifVsMuRngEnPQ3->GetYaxis()->SetTitle("Range-Curv/Range");
01854     pCurRngDifVsMuRngEnPQ3->GetYaxis()->CenterTitle();
01855 
01856     pCurRngDifVsMuRngEn05PQ3=new TProfile
01857       ("pCurRngDifVsMuRngEn05PQ3","pCurRngDifVsMuRngEn05PQ3",
01858        220,-10,100);
01859     pCurRngDifVsMuRngEn05PQ3->GetXaxis()->SetTitle
01860       ("Reconstructed Energy (GeV)");
01861     pCurRngDifVsMuRngEn05PQ3->GetXaxis()->CenterTitle();
01862     pCurRngDifVsMuRngEn05PQ3->GetYaxis()->SetTitle("Range-Curv/Range");
01863     pCurRngDifVsMuRngEn05PQ3->GetYaxis()->CenterTitle();
01864 
01865 
01866     hTrkFitPassPQ=new TH1F("hTrkFitPassPQ","hTrkFitPassPQ",
01867                            10,-5,5);
01868     hTrkFitPassPQ->GetXaxis()->SetTitle("trk.fit.pass");
01869     hTrkFitPassPQ->GetXaxis()->CenterTitle();
01870     hTrkFitPassPQ->GetYaxis()->SetTitle("");
01871     hTrkFitPassPQ->GetYaxis()->CenterTitle();
01872     //hTrkFitPassPQ->SetBit(TH1::kCanRebin);
01873 
01874     hTrkFitPassPQ1=new TH1F("hTrkFitPassPQ1","hTrkFitPassPQ1",
01875                             10,-5,5);
01876     hTrkFitPassPQ1->GetXaxis()->SetTitle("trk.fit.pass");
01877     hTrkFitPassPQ1->GetXaxis()->CenterTitle();
01878     hTrkFitPassPQ1->GetYaxis()->SetTitle("");
01879     hTrkFitPassPQ1->GetYaxis()->CenterTitle();
01880     //hTrkFitPassPQ1->SetBit(TH1::kCanRebin);
01881 
01882     hTrkFitPassPQ2=new TH1F("hTrkFitPassPQ2","hTrkFitPassPQ2",
01883                             10,-5,5);
01884     hTrkFitPassPQ2->GetXaxis()->SetTitle("trk.fit.pass");
01885     hTrkFitPassPQ2->GetXaxis()->CenterTitle();
01886     hTrkFitPassPQ2->GetYaxis()->SetTitle("");
01887     hTrkFitPassPQ2->GetYaxis()->CenterTitle();
01888     //hTrkFitPassPQ2->SetBit(TH1::kCanRebin);
01889 
01890     hTrkFitPassPQ3=new TH1F("hTrkFitPassPQ3","hTrkFitPassPQ3",
01891                             10,-5,5);
01892     hTrkFitPassPQ3->GetXaxis()->SetTitle("trk.fit.pass");
01893     hTrkFitPassPQ3->GetXaxis()->CenterTitle();
01894     hTrkFitPassPQ3->GetYaxis()->SetTitle("");
01895     hTrkFitPassPQ3->GetYaxis()->CenterTitle();
01896     //hTrkFitPassPQ3->SetBit(TH1::kCanRebin);
01897 
01898     hTrkFitPassPQ4=new TH1F("hTrkFitPassPQ4","hTrkFitPassPQ4",
01899                             10,-5,5);
01900     hTrkFitPassPQ4->GetXaxis()->SetTitle("trk.fit.pass");
01901     hTrkFitPassPQ4->GetXaxis()->CenterTitle();
01902     hTrkFitPassPQ4->GetYaxis()->SetTitle("");
01903     hTrkFitPassPQ4->GetYaxis()->CenterTitle();
01904     //hTrkFitPassPQ4->SetBit(TH1::kCanRebin);
01905 
01906 
01907 
01908     //NQ
01909     hRangeCurvDiffNQ=new TH1F("hRangeCurvDiffNQ","hRangeCurvDiffNQ",
01910                               4*160,-1.6,1.6);
01911     hRangeCurvDiffNQ->GetXaxis()->SetTitle("Curv-Range/Range");
01912     hRangeCurvDiffNQ->GetXaxis()->CenterTitle();
01913     hRangeCurvDiffNQ->GetYaxis()->SetTitle("");
01914     hRangeCurvDiffNQ->GetYaxis()->CenterTitle();
01915     //hRangeCurvDiffNQ->SetBit(TH1::kCanRebin);
01916 
01917     hRangeCurvDiffNQ1=new TH1F("hRangeCurvDiffNQ1","hRangeCurvDiffNQ1",
01918                                4*160,-1.6,1.6);
01919     hRangeCurvDiffNQ1->GetXaxis()->SetTitle("Curv-Range/Range");
01920     hRangeCurvDiffNQ1->GetXaxis()->CenterTitle();
01921     hRangeCurvDiffNQ1->GetYaxis()->SetTitle("");
01922     hRangeCurvDiffNQ1->GetYaxis()->CenterTitle();
01923     //hRangeCurvDiffNQ1->SetBit(TH1::kCanRebin);
01924 
01925     hRangeCurvDiffNQ3=new TH1F
01926       ("hRangeCurvDiffNQ3","hRangeCurvDiffNQ3",4*160,-1.6,1.6);
01927     hRangeCurvDiffNQ3->GetXaxis()->SetTitle("Curv-Range/Range");
01928     hRangeCurvDiffNQ3->GetXaxis()->CenterTitle();
01929     hRangeCurvDiffNQ3->GetYaxis()->SetTitle("");
01930     hRangeCurvDiffNQ3->GetYaxis()->CenterTitle();
01931     //hRangeCurvDiffNQ3->SetBit(TH1::kCanRebin);
01932 
01933 
01934     hCurvRangeDiffNQ=new TH1F("hCurvRangeDiffNQ","hCurvRangeDiffNQ",
01935                               4*160,-1.6,1.6);
01936     hCurvRangeDiffNQ->GetXaxis()->SetTitle("Range-Curv/Range");
01937     hCurvRangeDiffNQ->GetXaxis()->CenterTitle();
01938     hCurvRangeDiffNQ->GetYaxis()->SetTitle("");
01939     hCurvRangeDiffNQ->GetYaxis()->CenterTitle();
01940     //hCurvRangeDiffNQ->SetBit(TH1::kCanRebin);
01941 
01942     hCurvRangeDiffNQ1=new TH1F("hCurvRangeDiffNQ1","hCurvRangeDiffNQ1",
01943                                4*160,-1.6,1.6);
01944     hCurvRangeDiffNQ1->GetXaxis()->SetTitle("Range-Curv/Range");
01945     hCurvRangeDiffNQ1->GetXaxis()->CenterTitle();
01946     hCurvRangeDiffNQ1->GetYaxis()->SetTitle("");
01947     hCurvRangeDiffNQ1->GetYaxis()->CenterTitle();
01948     //hCurvRangeDiffNQ1->SetBit(TH1::kCanRebin);
01949 
01950     hCurvRangeDiffNQ3=new TH1F("hCurvRangeDiffNQ3","hCurvRangeDiffNQ3",
01951                                4*160,-1.6,1.6);
01952     hCurvRangeDiffNQ3->GetXaxis()->SetTitle("Range-Curv/Range");
01953     hCurvRangeDiffNQ3->GetXaxis()->CenterTitle();
01954     hCurvRangeDiffNQ3->GetYaxis()->SetTitle("");
01955     hCurvRangeDiffNQ3->GetYaxis()->CenterTitle();
01956     //hCurvRangeDiffNQ3->SetBit(TH1::kCanRebin);
01957 
01958 
01959     hRangeEventsNQ=new TH1F("hRangeEventsNQ","hRangeEventsNQ",
01960                             4*352,-32,320);
01961     hRangeEventsNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
01962     hRangeEventsNQ->GetXaxis()->CenterTitle();
01963     hRangeEventsNQ->GetYaxis()->SetTitle("");
01964     hRangeEventsNQ->GetYaxis()->CenterTitle();
01965     //hRangeEventsNQ->SetBit(TH1::kCanRebin);
01966 
01967     hRangeEventsNQ1=new TH1F("hRangeEventsNQ1","hRangeEventsNQ1",
01968                              4*352,-32,320);
01969     hRangeEventsNQ1->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
01970     hRangeEventsNQ1->GetXaxis()->CenterTitle();
01971     hRangeEventsNQ1->GetYaxis()->SetTitle("");
01972     hRangeEventsNQ1->GetYaxis()->CenterTitle();
01973     //hRangeEventsNQ1->SetBit(TH1::kCanRebin);
01974     
01975     hRangeEventsNQ3=new TH1F("hRangeEventsNQ3","hRangeEventsNQ3",
01976                              4*352,-32,320);
01977     hRangeEventsNQ3->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
01978     hRangeEventsNQ3->GetXaxis()->CenterTitle();
01979     hRangeEventsNQ3->GetYaxis()->SetTitle("");
01980     hRangeEventsNQ3->GetYaxis()->CenterTitle();
01981     //hRangeEventsNQ3->SetBit(TH1::kCanRebin);
01982 
01983 
01984     hRangeEventsMuRngEnNQ=new TH1F
01985       ("hRangeEventsMuRngEnNQ","hRangeEventsMuRngEnNQ",4*352,-32,320);
01986     hRangeEventsMuRngEnNQ->GetXaxis()->SetTitle
01987       ("Reconstructed Energy (GeV)");
01988     hRangeEventsMuRngEnNQ->GetXaxis()->CenterTitle();
01989     hRangeEventsMuRngEnNQ->GetYaxis()->SetTitle("");
01990     hRangeEventsMuRngEnNQ->GetYaxis()->CenterTitle();
01991     //hRangeEventsMuRngEnNQ->SetBit(TH1::kCanRebin);
01992 
01993     hRangeEventsMuRngEnNQ1=new TH1F
01994       ("hRangeEventsMuRngEnNQ1","hRangeEventsMuRngEnNQ1",4*352,-32,320);
01995     hRangeEventsMuRngEnNQ1->GetXaxis()->SetTitle
01996       ("Reconstructed Energy (GeV)");
01997     hRangeEventsMuRngEnNQ1->GetXaxis()->CenterTitle();
01998     hRangeEventsMuRngEnNQ1->GetYaxis()->SetTitle("");
01999     hRangeEventsMuRngEnNQ1->GetYaxis()->CenterTitle();
02000     //hRangeEventsMuRngEnNQ1->SetBit(TH1::kCanRebin);
02001     
02002     hRangeEventsMuRngEnNQ3=new TH1F
02003       ("hRangeEventsMuRngEnNQ3","hRangeEventsMuRngEnNQ3",4*352,-32,320);
02004     hRangeEventsMuRngEnNQ3->GetXaxis()->SetTitle
02005       ("Reconstructed Energy (GeV)");
02006     hRangeEventsMuRngEnNQ3->GetXaxis()->CenterTitle();
02007     hRangeEventsMuRngEnNQ3->GetYaxis()->SetTitle("");
02008     hRangeEventsMuRngEnNQ3->GetYaxis()->CenterTitle();
02009     //hRangeEventsMuRngEnNQ3->SetBit(TH1::kCanRebin);
02010 
02011 
02012 
02013     pRangeCurvDiffVsEnNQ=new TProfile
02014       ("pRangeCurvDiffVsEnNQ","pRangeCurvDiffVsEnNQ",110,-10,100);
02015     pRangeCurvDiffVsEnNQ->GetXaxis()->SetTitle
02016       ("Reconstructed Energy (GeV)");
02017     pRangeCurvDiffVsEnNQ->GetXaxis()->CenterTitle();
02018     pRangeCurvDiffVsEnNQ->GetYaxis()->SetTitle("Curv-Range/Range");
02019     pRangeCurvDiffVsEnNQ->GetYaxis()->CenterTitle();
02020 
02021     pRangeCurvDiffVsEn05NQ=new TProfile
02022       ("pRangeCurvDiffVsEn05NQ","pRangeCurvDiffVsEn05NQ",220,-10,100);
02023     pRangeCurvDiffVsEn05NQ->GetXaxis()->SetTitle
02024       ("Reconstructed Energy (GeV)");
02025     pRangeCurvDiffVsEn05NQ->GetXaxis()->CenterTitle();
02026     pRangeCurvDiffVsEn05NQ->GetYaxis()->SetTitle("Curv-Range/Range");
02027     pRangeCurvDiffVsEn05NQ->GetYaxis()->CenterTitle();
02028 
02029     pRangeCurvDiffVsEnNQ1=new TProfile
02030       ("pRangeCurvDiffVsEnNQ1","pRangeCurvDiffVsEnNQ1",110,-10,100);
02031     pRangeCurvDiffVsEnNQ1->GetXaxis()->SetTitle
02032       ("Reconstructed Energy (GeV)");
02033     pRangeCurvDiffVsEnNQ1->GetXaxis()->CenterTitle();
02034     pRangeCurvDiffVsEnNQ1->GetYaxis()->SetTitle("Curv-Range/Range");
02035     pRangeCurvDiffVsEnNQ1->GetYaxis()->CenterTitle();
02036 
02037     pRangeCurvDiffVsEn05NQ1=new TProfile
02038       ("pRangeCurvDiffVsEn05NQ1","pRangeCurvDiffVsEn05NQ1",220,-10,100);
02039     pRangeCurvDiffVsEn05NQ1->GetXaxis()->SetTitle
02040       ("Reconstructed Energy (GeV)");
02041     pRangeCurvDiffVsEn05NQ1->GetXaxis()->CenterTitle();
02042     pRangeCurvDiffVsEn05NQ1->GetYaxis()->SetTitle("Curv-Range/Range");
02043     pRangeCurvDiffVsEn05NQ1->GetYaxis()->CenterTitle();
02044 
02045     pRangeCurvDiffVsEnNQ3=new TProfile
02046       ("pRangeCurvDiffVsEnNQ3","pRangeCurvDiffVsEnNQ3",110,-10,100);
02047     pRangeCurvDiffVsEnNQ3->GetXaxis()->SetTitle
02048       ("Reconstructed Energy (GeV)");
02049     pRangeCurvDiffVsEnNQ3->GetXaxis()->CenterTitle();
02050     pRangeCurvDiffVsEnNQ3->GetYaxis()->SetTitle("Curv-Range/Range");
02051     pRangeCurvDiffVsEnNQ3->GetYaxis()->CenterTitle();
02052 
02053     pRangeCurvDiffVsEn05NQ3=new TProfile
02054       ("pRangeCurvDiffVsEn05NQ3","pRangeCurvDiffVsEn05NQ3",220,-10,100);
02055     pRangeCurvDiffVsEn05NQ3->GetXaxis()->SetTitle
02056       ("Reconstructed Energy (GeV)");
02057     pRangeCurvDiffVsEn05NQ3->GetXaxis()->CenterTitle();
02058     pRangeCurvDiffVsEn05NQ3->GetYaxis()->SetTitle("Curv-Range/Range");
02059     pRangeCurvDiffVsEn05NQ3->GetYaxis()->CenterTitle();
02060 
02061 
02062 
02063     pRngCurDifVsMuRngEnNQ=new TProfile
02064       ("pRngCurDifVsMuRngEnNQ","pRngCurDifVsMuRngEnNQ",110,-10,100);
02065     pRngCurDifVsMuRngEnNQ->GetXaxis()->SetTitle
02066       ("Reconstructed Energy (GeV)");
02067     pRngCurDifVsMuRngEnNQ->GetXaxis()->CenterTitle();
02068     pRngCurDifVsMuRngEnNQ->GetYaxis()->SetTitle("Curv-Range/Range");
02069     pRngCurDifVsMuRngEnNQ->GetYaxis()->CenterTitle();
02070 
02071     pRngCurDifVsMuRngEn05NQ=new TProfile
02072       ("pRngCurDifVsMuRngEn05NQ","pRngCurDifVsMuRngEn05NQ",220,-10,100);
02073     pRngCurDifVsMuRngEn05NQ->GetXaxis()->SetTitle
02074       ("Reconstructed Energy (GeV)");
02075     pRngCurDifVsMuRngEn05NQ->GetXaxis()->CenterTitle();
02076     pRngCurDifVsMuRngEn05NQ->GetYaxis()->SetTitle("Curv-Range/Range");
02077     pRngCurDifVsMuRngEn05NQ->GetYaxis()->CenterTitle();
02078 
02079     pRngCurDifVsMuRngEnNQ1=new TProfile
02080       ("pRngCurDifVsMuRngEnNQ1","pRngCurDifVsMuRngEnNQ1",110,-10,100);
02081     pRngCurDifVsMuRngEnNQ1->GetXaxis()->SetTitle
02082       ("Reconstructed Energy (GeV)");
02083     pRngCurDifVsMuRngEnNQ1->GetXaxis()->CenterTitle();
02084     pRngCurDifVsMuRngEnNQ1->GetYaxis()->SetTitle("Curv-Range/Range");
02085     pRngCurDifVsMuRngEnNQ1->GetYaxis()->CenterTitle();
02086 
02087     pRngCurDifVsMuRngEn05NQ1=new TProfile
02088       ("pRngCurDifVsMuRngEn05NQ1","pRngCurDifVsMuRngEn05NQ1",
02089        220,-10,100);
02090     pRngCurDifVsMuRngEn05NQ1->GetXaxis()->SetTitle
02091       ("Reconstructed Energy (GeV)");
02092     pRngCurDifVsMuRngEn05NQ1->GetXaxis()->CenterTitle();
02093     pRngCurDifVsMuRngEn05NQ1->GetYaxis()->SetTitle("Curv-Range/Range");
02094     pRngCurDifVsMuRngEn05NQ1->GetYaxis()->CenterTitle();
02095 
02096     pRngCurDifVsMuRngEnNQ3=new TProfile
02097       ("pRngCurDifVsMuRngEnNQ3","pRngCurDifVsMuRngEnNQ3",110,-10,100);
02098     pRngCurDifVsMuRngEnNQ3->GetXaxis()->SetTitle
02099       ("Reconstructed Energy (GeV)");
02100     pRngCurDifVsMuRngEnNQ3->GetXaxis()->CenterTitle();
02101     pRngCurDifVsMuRngEnNQ3->GetYaxis()->SetTitle("Curv-Range/Range");
02102     pRngCurDifVsMuRngEnNQ3->GetYaxis()->CenterTitle();
02103 
02104     pRngCurDifVsMuRngEn05NQ3=new TProfile
02105       ("pRngCurDifVsMuRngEn05NQ3","pRngCurDifVsMuRngEn05NQ3",
02106        220,-10,100);
02107     pRngCurDifVsMuRngEn05NQ3->GetXaxis()->SetTitle
02108       ("Reconstructed Energy (GeV)");
02109     pRngCurDifVsMuRngEn05NQ3->GetXaxis()->CenterTitle();
02110     pRngCurDifVsMuRngEn05NQ3->GetYaxis()->SetTitle("Curv-Range/Range");
02111     pRngCurDifVsMuRngEn05NQ3->GetYaxis()->CenterTitle();
02112 
02113 
02114 
02115     pCurRngDifVsMuRngEnNQ=new TProfile
02116       ("pCurRngDifVsMuRngEnNQ","pCurRngDifVsMuRngEnNQ",110,-10,100);
02117     pCurRngDifVsMuRngEnNQ->GetXaxis()->SetTitle
02118       ("Reconstructed Energy (GeV)");
02119     pCurRngDifVsMuRngEnNQ->GetXaxis()->CenterTitle();
02120     pCurRngDifVsMuRngEnNQ->GetYaxis()->SetTitle("Range-Curv/Range");
02121     pCurRngDifVsMuRngEnNQ->GetYaxis()->CenterTitle();
02122 
02123     pCurRngDifVsMuRngEn05NQ=new TProfile
02124       ("pCurRngDifVsMuRngEn05NQ","pCurRngDifVsMuRngEn05NQ",220,-10,100);
02125     pCurRngDifVsMuRngEn05NQ->GetXaxis()->SetTitle
02126       ("Reconstructed Energy (GeV)");
02127     pCurRngDifVsMuRngEn05NQ->GetXaxis()->CenterTitle();
02128     pCurRngDifVsMuRngEn05NQ->GetYaxis()->SetTitle("Range-Curv/Range");
02129     pCurRngDifVsMuRngEn05NQ->GetYaxis()->CenterTitle();
02130 
02131     pCurRngDifVsMuRngEnNQ1=new TProfile
02132       ("pCurRngDifVsMuRngEnNQ1","pCurRngDifVsMuRngEnNQ1",110,-10,100);
02133     pCurRngDifVsMuRngEnNQ1->GetXaxis()->SetTitle
02134       ("Reconstructed Energy (GeV)");
02135     pCurRngDifVsMuRngEnNQ1->GetXaxis()->CenterTitle();
02136     pCurRngDifVsMuRngEnNQ1->GetYaxis()->SetTitle("Range-Curv/Range");
02137     pCurRngDifVsMuRngEnNQ1->GetYaxis()->CenterTitle();
02138 
02139     pCurRngDifVsMuRngEn05NQ1=new TProfile
02140       ("pCurRngDifVsMuRngEn05NQ1","pCurRngDifVsMuRngEn05NQ1",
02141        220,-10,100);
02142     pCurRngDifVsMuRngEn05NQ1->GetXaxis()->SetTitle
02143       ("Reconstructed Energy (GeV)");
02144     pCurRngDifVsMuRngEn05NQ1->GetXaxis()->CenterTitle();
02145     pCurRngDifVsMuRngEn05NQ1->GetYaxis()->SetTitle("Range-Curv/Range");
02146     pCurRngDifVsMuRngEn05NQ1->GetYaxis()->CenterTitle();
02147 
02148     pCurRngDifVsMuRngEnNQ3=new TProfile
02149       ("pCurRngDifVsMuRngEnNQ3","pCurRngDifVsMuRngEnNQ3",110,-10,100);
02150     pCurRngDifVsMuRngEnNQ3->GetXaxis()->SetTitle
02151       ("Reconstructed Energy (GeV)");
02152     pCurRngDifVsMuRngEnNQ3->GetXaxis()->CenterTitle();
02153     pCurRngDifVsMuRngEnNQ3->GetYaxis()->SetTitle("Range-Curv/Range");
02154     pCurRngDifVsMuRngEnNQ3->GetYaxis()->CenterTitle();
02155 
02156     pCurRngDifVsMuRngEn05NQ3=new TProfile
02157       ("pCurRngDifVsMuRngEn05NQ3","pCurRngDifVsMuRngEn05NQ3",
02158        220,-10,100);
02159     pCurRngDifVsMuRngEn05NQ3->GetXaxis()->SetTitle
02160       ("Reconstructed Energy (GeV)");
02161     pCurRngDifVsMuRngEn05NQ3->GetXaxis()->CenterTitle();
02162     pCurRngDifVsMuRngEn05NQ3->GetYaxis()->SetTitle("Range-Curv/Range");
02163     pCurRngDifVsMuRngEn05NQ3->GetYaxis()->CenterTitle();
02164 
02165 
02166     hTrkFitPassNQ=new TH1F("hTrkFitPassNQ","hTrkFitPassNQ",
02167                            10,-5,5);
02168     hTrkFitPassNQ->GetXaxis()->SetTitle("trk.fit.pass");
02169     hTrkFitPassNQ->GetXaxis()->CenterTitle();
02170     hTrkFitPassNQ->GetYaxis()->SetTitle("");
02171     hTrkFitPassNQ->GetYaxis()->CenterTitle();
02172     //hTrkFitPassNQ->SetBit(TH1::kCanRebin);
02173 
02174     hTrkFitPassNQ1=new TH1F("hTrkFitPassNQ1","hTrkFitPassNQ1",
02175                             10,-5,5);
02176     hTrkFitPassNQ1->GetXaxis()->SetTitle("trk.fit.pass");
02177     hTrkFitPassNQ1->GetXaxis()->CenterTitle();
02178     hTrkFitPassNQ1->GetYaxis()->SetTitle("");
02179     hTrkFitPassNQ1->GetYaxis()->CenterTitle();
02180     //hTrkFitPassNQ1->SetBit(TH1::kCanRebin);
02181 
02182     hTrkFitPassNQ2=new TH1F("hTrkFitPassNQ2","hTrkFitPassNQ2",
02183                             10,-5,5);
02184     hTrkFitPassNQ2->GetXaxis()->SetTitle("trk.fit.pass");
02185     hTrkFitPassNQ2->GetXaxis()->CenterTitle();
02186     hTrkFitPassNQ2->GetYaxis()->SetTitle("");
02187     hTrkFitPassNQ2->GetYaxis()->CenterTitle();
02188     //hTrkFitPassNQ2->SetBit(TH1::kCanRebin);
02189 
02190     hTrkFitPassNQ3=new TH1F("hTrkFitPassNQ3","hTrkFitPassNQ3",
02191                             10,-5,5);
02192     hTrkFitPassNQ3->GetXaxis()->SetTitle("trk.fit.pass");
02193     hTrkFitPassNQ3->GetXaxis()->CenterTitle();
02194     hTrkFitPassNQ3->GetYaxis()->SetTitle("");
02195     hTrkFitPassNQ3->GetYaxis()->CenterTitle();
02196     //hTrkFitPassNQ3->SetBit(TH1::kCanRebin);
02197 
02198     hTrkFitPassNQ4=new TH1F("hTrkFitPassNQ4","hTrkFitPassNQ4",
02199                             10,-5,5);
02200     hTrkFitPassNQ4->GetXaxis()->SetTitle("trk.fit.pass");
02201     hTrkFitPassNQ4->GetXaxis()->CenterTitle();
02202     hTrkFitPassNQ4->GetYaxis()->SetTitle("");
02203     hTrkFitPassNQ4->GetYaxis()->CenterTitle();
02204     //hTrkFitPassNQ4->SetBit(TH1::kCanRebin);    
02205   }
02206   
02207   //fill the trkfitpass histos
02208   if (nu.charge==+1){
02209     hTrkFitPassPQ->Fill(nu.trkfitpass,nu.rw);
02210     if (nu.containmentFlag==1){
02211       hTrkFitPassPQ1->Fill(nu.trkfitpass,nu.rw);
02212     }
02213     else if (nu.containmentFlag==2){
02214       hTrkFitPassPQ2->Fill(nu.trkfitpass,nu.rw);
02215     }
02216     else if (nu.containmentFlag==3){
02217       hTrkFitPassPQ3->Fill(nu.trkfitpass,nu.rw);
02218     }
02219     else if (nu.containmentFlag==4){
02220       hTrkFitPassPQ4->Fill(nu.trkfitpass,nu.rw);
02221     }
02222     else MSG("NuPlots",Msg::kWarning)<<"Ahh, containmentFlag="<<nu.containmentFlag<<endl;
02223   }
02224   else if (nu.charge==-1){
02225     hTrkFitPassNQ->Fill(nu.trkfitpass,nu.rw);
02226     if (nu.containmentFlag==1){
02227       hTrkFitPassNQ1->Fill(nu.trkfitpass,nu.rw);
02228     }
02229     else if (nu.containmentFlag==2){
02230       hTrkFitPassNQ2->Fill(nu.trkfitpass,nu.rw);
02231     }
02232     else if (nu.containmentFlag==3){
02233       hTrkFitPassNQ3->Fill(nu.trkfitpass,nu.rw);
02234     }
02235     else if (nu.containmentFlag==4){
02236       hTrkFitPassNQ4->Fill(nu.trkfitpass,nu.rw);
02237     }
02238     else MSG("NuPlots",Msg::kWarning)<<"Ahh, containmentFlag="<<nu.containmentFlag<<endl;
02239   }
02240     
02241 
02243   //only make plots below for contained muons
02244   //otherwise range is incorrect
02246   if (!(nu.containmentFlag==1 || nu.containmentFlag==3)) return;
02247   
02248   if (nu.trkEnRange<=0 || nu.trkEnCurv<=0){
02249     MAXMSG("NuPlots",Msg::kInfo,30)
02250       <<"Ahhhh, trkEnRange="<<nu.trkEnRange
02251       <<", trkEnCurv="<<nu.trkEnCurv<<endl;
02252     return;
02253   }
02254 
02255   Float_t rangeCurvDiff=(nu.trkEnCurv-nu.trkEnRange)/nu.trkEnRange;
02256   Float_t curvRangeDiff=(nu.trkEnRange-nu.trkEnCurv)/nu.trkEnRange;
02257   Int_t bin=static_cast<Int_t>(nu.trkEnRange);
02258   //make sure that the max bins is not exceeded
02259   //pile up events over nbins into the nth bin
02260   if (bin>=nbins) bin=nbins-1;
02261 
02262   //cap the difference to make the distribution more symmetric
02263   //doesn't work all that well, only limits the damage...
02264   if (rangeCurvDiff>1) rangeCurvDiff=1;
02265   if (curvRangeDiff<-1) curvRangeDiff=-1;
02266   
02267   if (nu.charge==+1){
02268     vhRangeCurvDiffPQ[bin]->Fill(rangeCurvDiff,nu.rw);
02269     hRangeCurvDiffPQ->Fill(rangeCurvDiff,nu.rw);
02270     if (!(nu.inu==-14 && nu.iaction==1)) {
02271       hRangeCurvDiffNotNMBCCPQ->Fill(rangeCurvDiff,nu.rw);
02272     }
02273     hRangeEventsPQ->Fill(nu.energy,nu.rw);
02274     hRangeEventsMuRngEnPQ->Fill(nu.trkEnRange,nu.rw);
02275     pRangeCurvDiffVsEnPQ->Fill(nu.energy,rangeCurvDiff,nu.rw);
02276     pRangeCurvDiffVsEn05PQ->Fill(nu.energy,rangeCurvDiff,nu.rw);
02277     pRngCurDifVsMuRngEnPQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02278     pRngCurDifVsMuRngEn05PQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02279 
02280     hCurvRangeDiffPQ->Fill(curvRangeDiff,nu.rw);
02281     if (!(nu.inu==-14 && nu.iaction==1)) {
02282       hCurvRangeDiffNotNMBCCPQ->Fill(curvRangeDiff,nu.rw);
02283     }
02284     pCurRngDifVsMuRngEnPQ->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02285     pCurRngDifVsMuRngEn05PQ->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02286     if (!(nu.inu==-14 && nu.iaction==1)) {
02287       hRangeEventsMuRngEnNotNMBCCPQ->Fill(nu.trkEnRange,nu.rw);
02288     }
02289 
02290     if (nu.containmentFlag==1){
02291       vhRangeCurvDiffPQ1[bin]->Fill(rangeCurvDiff,nu.rw);
02292       hRangeCurvDiffPQ1->Fill(rangeCurvDiff,nu.rw);
02293       hRangeEventsPQ1->Fill(nu.energy,nu.rw);
02294       hRangeEventsMuRngEnPQ1->Fill(nu.trkEnRange,nu.rw);
02295       pRangeCurvDiffVsEnPQ1->Fill(nu.energy,rangeCurvDiff,nu.rw);
02296       pRangeCurvDiffVsEn05PQ1->Fill(nu.energy,rangeCurvDiff,nu.rw);
02297       pRngCurDifVsMuRngEnPQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02298       pRngCurDifVsMuRngEn05PQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02299 
02300       hCurvRangeDiffPQ1->Fill(curvRangeDiff,nu.rw);
02301       pCurRngDifVsMuRngEnPQ1->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02302       pCurRngDifVsMuRngEn05PQ1->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02303       if (!(nu.inu==-14 && nu.iaction==1)) {
02304         hRangeEventsMuRngEnNotNMBCCPQ1->Fill(nu.trkEnRange,nu.rw);
02305       }
02306     }
02307     else if (nu.containmentFlag==3){
02308       vhRangeCurvDiffPQ3[bin]->Fill(rangeCurvDiff,nu.rw);
02309       hRangeCurvDiffPQ3->Fill(rangeCurvDiff,nu.rw);
02310       hRangeEventsPQ3->Fill(nu.energy,nu.rw);
02311       hRangeEventsMuRngEnPQ3->Fill(nu.trkEnRange,nu.rw);
02312       pRangeCurvDiffVsEnPQ3->Fill(nu.energy,rangeCurvDiff,nu.rw);
02313       pRangeCurvDiffVsEn05PQ3->Fill(nu.energy,rangeCurvDiff,nu.rw);
02314       pRngCurDifVsMuRngEnPQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02315       pRngCurDifVsMuRngEn05PQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02316 
02317       hCurvRangeDiffPQ3->Fill(curvRangeDiff,nu.rw);
02318       pCurRngDifVsMuRngEnPQ3->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02319       pCurRngDifVsMuRngEn05PQ3->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02320       if (!(nu.inu==-14 && nu.iaction==1)) {
02321         hRangeEventsMuRngEnNotNMBCCPQ3->Fill(nu.trkEnRange,nu.rw);
02322       }
02323     }
02324     else MSG("NuPlots",Msg::kWarning)<<"Ahh, containmentFlag="<<nu.containmentFlag<<endl;
02325   }
02326   else if (nu.charge==-1){
02327     vhRangeCurvDiffNQ[bin]->Fill(rangeCurvDiff,nu.rw);
02328     hRangeCurvDiffNQ->Fill(rangeCurvDiff,nu.rw);
02329     hRangeEventsNQ->Fill(nu.energy,nu.rw);
02330     hRangeEventsMuRngEnNQ->Fill(nu.trkEnRange,nu.rw);
02331     pRangeCurvDiffVsEnNQ->Fill(nu.energy,rangeCurvDiff,nu.rw);
02332     pRangeCurvDiffVsEn05NQ->Fill(nu.energy,rangeCurvDiff,nu.rw);
02333     pRngCurDifVsMuRngEnNQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02334     pRngCurDifVsMuRngEn05NQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02335 
02336     hCurvRangeDiffNQ->Fill(curvRangeDiff,nu.rw);
02337     pCurRngDifVsMuRngEnNQ->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02338     pCurRngDifVsMuRngEn05NQ->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02339     if (nu.containmentFlag==1){
02340       vhRangeCurvDiffNQ1[bin]->Fill(rangeCurvDiff,nu.rw);
02341       hRangeCurvDiffNQ1->Fill(rangeCurvDiff,nu.rw);
02342       hRangeEventsNQ1->Fill(nu.energy,nu.rw);
02343       hRangeEventsMuRngEnNQ1->Fill(nu.trkEnRange,nu.rw);
02344       pRangeCurvDiffVsEnNQ1->Fill(nu.energy,rangeCurvDiff,nu.rw);
02345       pRangeCurvDiffVsEn05NQ1->Fill(nu.energy,rangeCurvDiff,nu.rw);
02346       pRngCurDifVsMuRngEnNQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02347       pRngCurDifVsMuRngEn05NQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02348 
02349       hCurvRangeDiffNQ1->Fill(curvRangeDiff,nu.rw);
02350       pCurRngDifVsMuRngEnNQ1->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02351       pCurRngDifVsMuRngEn05NQ1->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02352     }
02353     else if (nu.containmentFlag==3){
02354       vhRangeCurvDiffNQ3[bin]->Fill(rangeCurvDiff,nu.rw);
02355       hRangeCurvDiffNQ3->Fill(rangeCurvDiff,nu.rw);
02356       hRangeEventsNQ3->Fill(nu.energy,nu.rw);
02357       hRangeEventsMuRngEnNQ3->Fill(nu.trkEnRange,nu.rw);
02358       pRangeCurvDiffVsEnNQ3->Fill(nu.energy,rangeCurvDiff,nu.rw);
02359       pRangeCurvDiffVsEn05NQ3->Fill(nu.energy,rangeCurvDiff,nu.rw);
02360       pRngCurDifVsMuRngEnNQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02361       pRngCurDifVsMuRngEn05NQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
02362 
02363       hCurvRangeDiffNQ3->Fill(curvRangeDiff,nu.rw);
02364       pCurRngDifVsMuRngEnNQ3->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02365       pCurRngDifVsMuRngEn05NQ3->Fill(nu.trkEnRange,curvRangeDiff,nu.rw);
02366     }
02367     else MSG("NuPlots",Msg::kWarning)<<"Ahh, containmentFlag="<<nu.containmentFlag<<endl;
02368   }
02369   else MSG("NuPlots",Msg::kWarning)<<"Ahhh, charge="<<nu.charge<<endl;
02370   
02371 
02373   //now look at true NuMu/NuMuBar plots
02375   //PQ
02376   static TH1F* hRngCurNMBCCPQ=0;
02377   static TH1F* hRngCurNMCCPQ=0;
02378   static TH1F* hRngCurNotNMBCCPQ=0;
02379   static TH1F* hRngCurNotNMCCPQ=0;
02380   static TH1F* hRngCurNMBCCPQ1=0;
02381   static TH1F* hRngCurNMCCPQ1=0;
02382   static TH1F* hRngCurNotNMBCCPQ1=0;
02383   static TH1F* hRngCurNotNMCCPQ1=0;
02384   static TH1F* hRngCurNMBCCPQ3=0;
02385   static TH1F* hRngCurNMCCPQ3=0;
02386   static TH1F* hRngCurNotNMBCCPQ3=0;
02387   static TH1F* hRngCurNotNMCCPQ3=0;
02388 
02389   static TH1F* hRngEvtsNMBCCPQ=0;
02390   static TH1F* hRngEvtsNMCCPQ=0;
02391   static TH1F* hRngEvtsNotNMBCCPQ=0;
02392   static TH1F* hRngEvtsNotNMCCPQ=0;
02393   static TH1F* hRngEvtsNMBCCPQ1=0;
02394   static TH1F* hRngEvtsNMCCPQ1=0;
02395   static TH1F* hRngEvtsNotNMBCCPQ1=0;
02396   static TH1F* hRngEvtsNotNMCCPQ1=0;
02397   static TH1F* hRngEvtsNMBCCPQ3=0;
02398   static TH1F* hRngEvtsNMCCPQ3=0;
02399   static TH1F* hRngEvtsNotNMBCCPQ3=0;
02400   static TH1F* hRngEvtsNotNMCCPQ3=0;
02401 
02402   static TProfile* pRngCurVsEnNMBCCPQ=0;
02403   static TProfile* pRngCurVsEnNMCCPQ=0;
02404   static TProfile* pRngCurVsEnNotNMBCCPQ=0;
02405   static TProfile* pRngCurVsEnNotNMCCPQ=0;
02406   static TProfile* pRngCurVsEnNMBCCPQ1=0;
02407   static TProfile* pRngCurVsEnNMCCPQ1=0;
02408   static TProfile* pRngCurVsEnNotNMBCCPQ1=0;
02409   static TProfile* pRngCurVsEnNotNMCCPQ1=0;
02410   static TProfile* pRngCurVsEnNMBCCPQ3=0;
02411   static TProfile* pRngCurVsEnNMCCPQ3=0;
02412   static TProfile* pRngCurVsEnNotNMBCCPQ3=0;
02413   static TProfile* pRngCurVsEnNotNMCCPQ3=0;
02414 
02415   //NQ
02416   static TH1F* hRngCurNMBCCNQ=0;
02417   static TH1F* hRngCurNMCCNQ=0;
02418   static TH1F* hRngCurNotNMBCCNQ=0;
02419   static TH1F* hRngCurNotNMCCNQ=0;
02420   static TH1F* hRngCurNMBCCNQ1=0;
02421   static TH1F* hRngCurNMCCNQ1=0;
02422   static TH1F* hRngCurNotNMBCCNQ1=0;
02423   static TH1F* hRngCurNotNMCCNQ1=0;
02424   static TH1F* hRngCurNMBCCNQ3=0;
02425   static TH1F* hRngCurNMCCNQ3=0;
02426   static TH1F* hRngCurNotNMBCCNQ3=0;
02427   static TH1F* hRngCurNotNMCCNQ3=0;
02428 
02429   static TH1F* hRngEvtsNMBCCNQ=0;
02430   static TH1F* hRngEvtsNMCCNQ=0;
02431   static TH1F* hRngEvtsNotNMBCCNQ=0;
02432   static TH1F* hRngEvtsNotNMCCNQ=0;
02433   static TH1F* hRngEvtsNMBCCNQ1=0;
02434   static TH1F* hRngEvtsNMCCNQ1=0;
02435   static TH1F* hRngEvtsNotNMBCCNQ1=0;
02436   static TH1F* hRngEvtsNotNMCCNQ1=0;
02437   static TH1F* hRngEvtsNMBCCNQ3=0;
02438   static TH1F* hRngEvtsNMCCNQ3=0;
02439   static TH1F* hRngEvtsNotNMBCCNQ3=0;
02440   static TH1F* hRngEvtsNotNMCCNQ3=0;
02441 
02442   static TProfile* pRngCurVsEnNMBCCNQ=0;
02443   static TProfile* pRngCurVsEnNMCCNQ=0;
02444   static TProfile* pRngCurVsEnNotNMBCCNQ=0;
02445   static TProfile* pRngCurVsEnNotNMCCNQ=0;
02446   static TProfile* pRngCurVsEnNMBCCNQ1=0;
02447   static TProfile* pRngCurVsEnNMCCNQ1=0;
02448   static TProfile* pRngCurVsEnNotNMBCCNQ1=0;
02449   static TProfile* pRngCurVsEnNotNMCCNQ1=0;
02450   static TProfile* pRngCurVsEnNMBCCNQ3=0;
02451   static TProfile* pRngCurVsEnNMCCNQ3=0;
02452   static TProfile* pRngCurVsEnNotNMBCCNQ3=0;
02453   static TProfile* pRngCurVsEnNotNMCCNQ3=0;
02454 
02455   static vector<TH1F*> vhRngCurDifNMB(nbins);
02456   static vector<TH1F*> vhRngCurDifNMB1(nbins);
02457   static vector<TH1F*> vhRngCurDifNMB3(nbins);
02458 
02459   static vector<TH1F*> vhRngCurDifNM(nbins);
02460   static vector<TH1F*> vhRngCurDifNM1(nbins);
02461   static vector<TH1F*> vhRngCurDifNM3(nbins);
02462 
02463   if(!hRngCurNMBCCPQ) {
02464 
02465     for (Int_t i=0;i<nbins;i++){
02466       string sbin=Form("%d",i);
02467       if (i<10) sbin="0"+sbin;//add the zero
02468       string sBase="hRngCurDif";
02469       
02470       string sNMB=sBase+sbin+"NMB";
02471       string sNMB1=sBase+sbin+"NMB1";
02472       string sNMB3=sBase+sbin+"NMB3";
02473       
02474       string sNM=sBase+sbin+"NM";
02475       string sNM1=sBase+sbin+"NM1";
02476       string sNM3=sBase+sbin+"NM3";
02477 
02478       vhRngCurDifNMB[i]=new TH1F
02479         (sNMB.c_str(),sNMB.c_str(),4*160,-1.6,1.6);
02480       vhRngCurDifNMB[i]->GetXaxis()->SetTitle("Curv-Range/Range");
02481       vhRngCurDifNMB[i]->GetXaxis()->CenterTitle();
02482       vhRngCurDifNMB[i]->GetYaxis()->SetTitle("");
02483       vhRngCurDifNMB[i]->GetYaxis()->CenterTitle();
02484       //vhRngCurDifNMB[i]->SetBit(TH1::kCanRebin);
02485 
02486       vhRngCurDifNMB1[i]=new TH1F
02487         (sNMB1.c_str(),sNMB1.c_str(),4*160,-1.6,1.6);
02488       vhRngCurDifNMB1[i]->GetXaxis()->SetTitle("Curv-Range/Range");
02489       vhRngCurDifNMB1[i]->GetXaxis()->CenterTitle();
02490       vhRngCurDifNMB1[i]->GetYaxis()->SetTitle("");
02491       vhRngCurDifNMB1[i]->GetYaxis()->CenterTitle();
02492       //vhRngCurDifNMB1[i]->SetBit(TH1::kCanRebin);
02493 
02494       vhRngCurDifNMB3[i]=new TH1F
02495         (sNMB3.c_str(),sNMB3.c_str(),4*160,-1.6,1.6);
02496       vhRngCurDifNMB3[i]->GetXaxis()->SetTitle("Curv-Range/Range");
02497       vhRngCurDifNMB3[i]->GetXaxis()->CenterTitle();
02498       vhRngCurDifNMB3[i]->GetYaxis()->SetTitle("");
02499       vhRngCurDifNMB3[i]->GetYaxis()->CenterTitle();
02500       //vhRngCurDifNMB3[i]->SetBit(TH1::kCanRebin);
02501 
02502 
02503       vhRngCurDifNM[i]=new TH1F
02504         (sNM.c_str(),sNM.c_str(),4*160,-1.6,1.6);
02505       vhRngCurDifNM[i]->GetXaxis()->SetTitle("Curv-Range/Range");
02506       vhRngCurDifNM[i]->GetXaxis()->CenterTitle();
02507       vhRngCurDifNM[i]->GetYaxis()->SetTitle("");
02508       vhRngCurDifNM[i]->GetYaxis()->CenterTitle();
02509       //vhRngCurDifNM[i]->SetBit(TH1::kCanRebin);
02510 
02511       vhRngCurDifNM1[i]=new TH1F
02512         (sNM1.c_str(),sNM1.c_str(),4*160,-1.6,1.6);
02513       vhRngCurDifNM1[i]->GetXaxis()->SetTitle("Curv-Range/Range");
02514       vhRngCurDifNM1[i]->GetXaxis()->CenterTitle();
02515       vhRngCurDifNM1[i]->GetYaxis()->SetTitle("");
02516       vhRngCurDifNM1[i]->GetYaxis()->CenterTitle();
02517       //vhRngCurDifNM1[i]->SetBit(TH1::kCanRebin);
02518 
02519       vhRngCurDifNM3[i]=new TH1F
02520         (sNM3.c_str(),sNM3.c_str(),4*160,-1.6,1.6);
02521       vhRngCurDifNM3[i]->GetXaxis()->SetTitle("Curv-Range/Range");
02522       vhRngCurDifNM3[i]->GetXaxis()->CenterTitle();
02523       vhRngCurDifNM3[i]->GetYaxis()->SetTitle("");
02524       vhRngCurDifNM3[i]->GetYaxis()->CenterTitle();
02525       //vhRngCurDifNM3[i]->SetBit(TH1::kCanRebin);
02526       
02527     }
02528 
02529     //PQ
02530     hRngCurNMBCCPQ=new TH1F("hRngCurNMBCCPQ","hRngCurNMBCCPQ",
02531                             4*160,-1.6,1.6);
02532     hRngCurNMBCCPQ->GetXaxis()->SetTitle("Curv-Range/Range");
02533     hRngCurNMBCCPQ->GetXaxis()->CenterTitle();
02534     hRngCurNMBCCPQ->GetYaxis()->SetTitle("");
02535     hRngCurNMBCCPQ->GetYaxis()->CenterTitle();
02536     //hRngCurNMBCCPQ->SetBit(TH1::kCanRebin);
02537 
02538     hRngCurNMCCPQ=new TH1F("hRngCurNMCCPQ","hRngCurNMCCPQ",
02539                            4*160,-1.6,1.6);
02540     hRngCurNMCCPQ->GetXaxis()->SetTitle("Curv-Range/Range");
02541     hRngCurNMCCPQ->GetXaxis()->CenterTitle();
02542     hRngCurNMCCPQ->GetYaxis()->SetTitle("");
02543     hRngCurNMCCPQ->GetYaxis()->CenterTitle();
02544     //hRngCurNMCCPQ->SetBit(TH1::kCanRebin);
02545 
02546     hRngCurNotNMBCCPQ=new TH1F("hRngCurNotNMBCCPQ","hRngCurNotNMBCCPQ",
02547                                4*160,-1.6,1.6);
02548     hRngCurNotNMBCCPQ->GetXaxis()->SetTitle("Curv-Range/Range");
02549     hRngCurNotNMBCCPQ->GetXaxis()->CenterTitle();
02550     hRngCurNotNMBCCPQ->GetYaxis()->SetTitle("");
02551     hRngCurNotNMBCCPQ->GetYaxis()->CenterTitle();
02552     //hRngCurNotNMBCCPQ->SetBit(TH1::kCanRebin);
02553 
02554     hRngCurNotNMCCPQ=new TH1F("hRngCurNotNMCCPQ","hRngCurNotNMCCPQ",
02555                               4*160,-1.6,1.6);
02556     hRngCurNotNMCCPQ->GetXaxis()->SetTitle("Curv-Range/Range");
02557     hRngCurNotNMCCPQ->GetXaxis()->CenterTitle();
02558     hRngCurNotNMCCPQ->GetYaxis()->SetTitle("");
02559     hRngCurNotNMCCPQ->GetYaxis()->CenterTitle();
02560     //hRngCurNotNMCCPQ->SetBit(TH1::kCanRebin);
02561 
02562 
02563     hRngCurNMBCCPQ1=new TH1F("hRngCurNMBCCPQ1",
02564                              "hRngCurNMBCCPQ1",
02565                              4*160,-1.6,1.6);
02566     hRngCurNMBCCPQ1->GetXaxis()->SetTitle("Curv-Range/Range");
02567     hRngCurNMBCCPQ1->GetXaxis()->CenterTitle();
02568     hRngCurNMBCCPQ1->GetYaxis()->SetTitle("");
02569     hRngCurNMBCCPQ1->GetYaxis()->CenterTitle();
02570     //hRngCurNMBCCPQ1->SetBit(TH1::kCanRebin);
02571 
02572     hRngCurNMCCPQ1=new TH1F("hRngCurNMCCPQ1",
02573                             "hRngCurNMCCPQ1",
02574                             4*160,-1.6,1.6);
02575     hRngCurNMCCPQ1->GetXaxis()->SetTitle("Curv-Range/Range");
02576     hRngCurNMCCPQ1->GetXaxis()->CenterTitle();
02577     hRngCurNMCCPQ1->GetYaxis()->SetTitle("");
02578     hRngCurNMCCPQ1->GetYaxis()->CenterTitle();
02579     //hRngCurNMCCPQ1->SetBit(TH1::kCanRebin);
02580 
02581     hRngCurNotNMBCCPQ1=new TH1F("hRngCurNotNMBCCPQ1",
02582                                 "hRngCurNotNMBCCPQ1",
02583                                 4*160,-1.6,1.6);
02584     hRngCurNotNMBCCPQ1->GetXaxis()->SetTitle("Curv-Range/Range");
02585     hRngCurNotNMBCCPQ1->GetXaxis()->CenterTitle();
02586     hRngCurNotNMBCCPQ1->GetYaxis()->SetTitle("");
02587     hRngCurNotNMBCCPQ1->GetYaxis()->CenterTitle();
02588     //hRngCurNotNMBCCPQ1->SetBit(TH1::kCanRebin);
02589 
02590     hRngCurNotNMCCPQ1=new TH1F("hRngCurNotNMCCPQ1",
02591                                "hRngCurNotNMCCPQ1",
02592                                4*160,-1.6,1.6);
02593     hRngCurNotNMCCPQ1->GetXaxis()->SetTitle("Curv-Range/Range");
02594     hRngCurNotNMCCPQ1->GetXaxis()->CenterTitle();
02595     hRngCurNotNMCCPQ1->GetYaxis()->SetTitle("");
02596     hRngCurNotNMCCPQ1->GetYaxis()->CenterTitle();
02597     //hRngCurNotNMCCPQ1->SetBit(TH1::kCanRebin);
02598 
02599 
02600     hRngCurNMBCCPQ3=new TH1F("hRngCurNMBCCPQ3",
02601                              "hRngCurNMBCCPQ3",
02602                              4*160,-1.6,1.6);
02603     hRngCurNMBCCPQ3->GetXaxis()->SetTitle("Curv-Range/Range");
02604     hRngCurNMBCCPQ3->GetXaxis()->CenterTitle();
02605     hRngCurNMBCCPQ3->GetYaxis()->SetTitle("");
02606     hRngCurNMBCCPQ3->GetYaxis()->CenterTitle();
02607     //hRngCurNMBCCPQ3->SetBit(TH1::kCanRebin);
02608 
02609     hRngCurNMCCPQ3=new TH1F("hRngCurNMCCPQ3",
02610                             "hRngCurNMCCPQ3",
02611                             4*160,-1.6,1.6);
02612     hRngCurNMCCPQ3->GetXaxis()->SetTitle("Curv-Range/Range");
02613     hRngCurNMCCPQ3->GetXaxis()->CenterTitle();
02614     hRngCurNMCCPQ3->GetYaxis()->SetTitle("");
02615     hRngCurNMCCPQ3->GetYaxis()->CenterTitle();
02616     //hRngCurNMCCPQ3->SetBit(TH1::kCanRebin);
02617 
02618     hRngCurNotNMBCCPQ3=new TH1F("hRngCurNotNMBCCPQ3",
02619                                 "hRngCurNotNMBCCPQ3",
02620                                 4*160,-1.6,1.6);
02621     hRngCurNotNMBCCPQ3->GetXaxis()->SetTitle("Curv-Range/Range");
02622     hRngCurNotNMBCCPQ3->GetXaxis()->CenterTitle();
02623     hRngCurNotNMBCCPQ3->GetYaxis()->SetTitle("");
02624     hRngCurNotNMBCCPQ3->GetYaxis()->CenterTitle();
02625     //hRngCurNotNMBCCPQ3->SetBit(TH1::kCanRebin);
02626 
02627     hRngCurNotNMCCPQ3=new TH1F("hRngCurNotNMCCPQ3",
02628                                "hRngCurNotNMCCPQ3",
02629                                4*160,-1.6,1.6);
02630     hRngCurNotNMCCPQ3->GetXaxis()->SetTitle("Curv-Range/Range");
02631     hRngCurNotNMCCPQ3->GetXaxis()->CenterTitle();
02632     hRngCurNotNMCCPQ3->GetYaxis()->SetTitle("");
02633     hRngCurNotNMCCPQ3->GetYaxis()->CenterTitle();
02634     //hRngCurNotNMCCPQ3->SetBit(TH1::kCanRebin);
02635 
02636 
02637 
02638     hRngEvtsNMBCCPQ=new TH1F("hRngEvtsNMBCCPQ",
02639                              "hRngEvtsNMBCCPQ",
02640                              4*352,-32,320);
02641     hRngEvtsNMBCCPQ->GetXaxis()->SetTitle
02642       ("Reconstructed Energy (GeV)");
02643     hRngEvtsNMBCCPQ->GetXaxis()->CenterTitle();
02644     hRngEvtsNMBCCPQ->GetYaxis()->SetTitle("");
02645     hRngEvtsNMBCCPQ->GetYaxis()->CenterTitle();
02646     //hRngEvtsNMBCCPQ->SetBit(TH1::kCanRebin);
02647 
02648     hRngEvtsNMCCPQ=new TH1F("hRngEvtsNMCCPQ",
02649                             "hRngEvtsNMCCPQ",
02650                             4*352,-32,320);
02651     hRngEvtsNMCCPQ->GetXaxis()->SetTitle
02652       ("Reconstructed Energy (GeV)");
02653     hRngEvtsNMCCPQ->GetXaxis()->CenterTitle();
02654     hRngEvtsNMCCPQ->GetYaxis()->SetTitle("");
02655     hRngEvtsNMCCPQ->GetYaxis()->CenterTitle();
02656     //hRngEvtsNMCCPQ->SetBit(TH1::kCanRebin);
02657 
02658     hRngEvtsNotNMBCCPQ=new TH1F("hRngEvtsNotNMBCCPQ",
02659                                 "hRngEvtsNotNMBCCPQ",
02660                                 4*352,-32,320);
02661     hRngEvtsNotNMBCCPQ->GetXaxis()->SetTitle
02662       ("Reconstructed Energy (GeV)");
02663     hRngEvtsNotNMBCCPQ->GetXaxis()->CenterTitle();
02664     hRngEvtsNotNMBCCPQ->GetYaxis()->SetTitle("");
02665     hRngEvtsNotNMBCCPQ->GetYaxis()->CenterTitle();
02666     //hRngEvtsNotNMBCCPQ->SetBit(TH1::kCanRebin);
02667 
02668     hRngEvtsNotNMCCPQ=new TH1F("hRngEvtsNotNMCCPQ",
02669                                "hRngEvtsNotNMCCPQ",
02670                                4*352,-32,320);
02671     hRngEvtsNotNMCCPQ->GetXaxis()->SetTitle
02672       ("Reconstructed Energy (GeV)");
02673     hRngEvtsNotNMCCPQ->GetXaxis()->CenterTitle();
02674     hRngEvtsNotNMCCPQ->GetYaxis()->SetTitle("");
02675     hRngEvtsNotNMCCPQ->GetYaxis()->CenterTitle();
02676     //hRngEvtsNotNMCCPQ->SetBit(TH1::kCanRebin);
02677 
02678 
02679     hRngEvtsNMBCCPQ1=new TH1F("hRngEvtsNMBCCPQ1",
02680                               "hRngEvtsNMBCCPQ1",
02681                               4*352,-32,320);
02682     hRngEvtsNMBCCPQ1->GetXaxis()->SetTitle
02683       ("Reconstructed Energy (GeV)");
02684     hRngEvtsNMBCCPQ1->GetXaxis()->CenterTitle();
02685     hRngEvtsNMBCCPQ1->GetYaxis()->SetTitle("");
02686     hRngEvtsNMBCCPQ1->GetYaxis()->CenterTitle();
02687     //hRngEvtsNMBCCPQ1->SetBit(TH1::kCanRebin);
02688 
02689     hRngEvtsNMCCPQ1=new TH1F("hRngEvtsNMCCPQ1",
02690                              "hRngEvtsNMCCPQ1",
02691                              4*352,-32,320);
02692     hRngEvtsNMCCPQ1->GetXaxis()->SetTitle
02693       ("Reconstructed Energy (GeV)");
02694     hRngEvtsNMCCPQ1->GetXaxis()->CenterTitle();
02695     hRngEvtsNMCCPQ1->GetYaxis()->SetTitle("");
02696     hRngEvtsNMCCPQ1->GetYaxis()->CenterTitle();
02697     //hRngEvtsNMCCPQ1->SetBit(TH1::kCanRebin);
02698 
02699     hRngEvtsNotNMBCCPQ1=new TH1F("hRngEvtsNotNMBCCPQ1",
02700                                  "hRngEvtsNotNMBCCPQ1",
02701                                  4*352,-32,320);
02702     hRngEvtsNotNMBCCPQ1->GetXaxis()->SetTitle
02703       ("Reconstructed Energy (GeV)");
02704     hRngEvtsNotNMBCCPQ1->GetXaxis()->CenterTitle();
02705     hRngEvtsNotNMBCCPQ1->GetYaxis()->SetTitle("");
02706     hRngEvtsNotNMBCCPQ1->GetYaxis()->CenterTitle();
02707     //hRngEvtsNotNMBCCPQ1->SetBit(TH1::kCanRebin);
02708 
02709     hRngEvtsNotNMCCPQ1=new TH1F("hRngEvtsNotNMCCPQ1",
02710                                 "hRngEvtsNotNMCCPQ1",
02711                                 4*352,-32,320);
02712     hRngEvtsNotNMCCPQ1->GetXaxis()->SetTitle
02713       ("Reconstructed Energy (GeV)");
02714     hRngEvtsNotNMCCPQ1->GetXaxis()->CenterTitle();
02715     hRngEvtsNotNMCCPQ1->GetYaxis()->SetTitle("");
02716     hRngEvtsNotNMCCPQ1->GetYaxis()->CenterTitle();
02717     //hRngEvtsNotNMCCPQ1->SetBit(TH1::kCanRebin);
02718 
02719 
02720     hRngEvtsNMBCCPQ3=new TH1F("hRngEvtsNMBCCPQ3",
02721                               "hRngEvtsNMBCCPQ3",
02722                               4*352,-32,320);
02723     hRngEvtsNMBCCPQ3->GetXaxis()->SetTitle
02724       ("Reconstructed Energy (GeV)");
02725     hRngEvtsNMBCCPQ3->GetXaxis()->CenterTitle();
02726     hRngEvtsNMBCCPQ3->GetYaxis()->SetTitle("");
02727     hRngEvtsNMBCCPQ3->GetYaxis()->CenterTitle();
02728     //hRngEvtsNMBCCPQ3->SetBit(TH1::kCanRebin);
02729 
02730     hRngEvtsNMCCPQ3=new TH1F("hRngEvtsNMCCPQ3",
02731                              "hRngEvtsNMCCPQ3",
02732                              4*352,-32,320);
02733     hRngEvtsNMCCPQ3->GetXaxis()->SetTitle
02734       ("Reconstructed Energy (GeV)");
02735     hRngEvtsNMCCPQ3->GetXaxis()->CenterTitle();
02736     hRngEvtsNMCCPQ3->GetYaxis()->SetTitle("");
02737     hRngEvtsNMCCPQ3->GetYaxis()->CenterTitle();
02738     //hRngEvtsNMCCPQ3->SetBit(TH1::kCanRebin);
02739 
02740     hRngEvtsNotNMBCCPQ3=new TH1F("hRngEvtsNotNMBCCPQ3",
02741                                  "hRngEvtsNotNMBCCPQ3",
02742                                  4*352,-32,320);
02743     hRngEvtsNotNMBCCPQ3->GetXaxis()->SetTitle
02744       ("Reconstructed Energy (GeV)");
02745     hRngEvtsNotNMBCCPQ3->GetXaxis()->CenterTitle();
02746     hRngEvtsNotNMBCCPQ3->GetYaxis()->SetTitle("");
02747     hRngEvtsNotNMBCCPQ3->GetYaxis()->CenterTitle();
02748     //hRngEvtsNotNMBCCPQ3->SetBit(TH1::kCanRebin);
02749 
02750     hRngEvtsNotNMCCPQ3=new TH1F("hRngEvtsNotNMCCPQ3",
02751                                 "hRngEvtsNotNMCCPQ3",
02752                                 4*352,-32,320);
02753     hRngEvtsNotNMCCPQ3->GetXaxis()->SetTitle
02754       ("Reconstructed Energy (GeV)");
02755     hRngEvtsNotNMCCPQ3->GetXaxis()->CenterTitle();
02756     hRngEvtsNotNMCCPQ3->GetYaxis()->SetTitle("");
02757     hRngEvtsNotNMCCPQ3->GetYaxis()->CenterTitle();
02758     //hRngEvtsNotNMCCPQ3->SetBit(TH1::kCanRebin);
02759 
02760 
02761 
02762     pRngCurVsEnNMBCCPQ=new TProfile
02763       ("pRngCurVsEnNMBCCPQ","pRngCurVsEnNMBCCPQ",110,-10,100);
02764     pRngCurVsEnNMBCCPQ->GetXaxis()->SetTitle
02765       ("Reconstructed Energy (GeV)");
02766     pRngCurVsEnNMBCCPQ->GetXaxis()->CenterTitle();
02767     pRngCurVsEnNMBCCPQ->GetYaxis()->SetTitle("Curv-Range/Range");
02768     pRngCurVsEnNMBCCPQ->GetYaxis()->CenterTitle();
02769 
02770     pRngCurVsEnNMCCPQ=new TProfile
02771       ("pRngCurVsEnNMCCPQ","pRngCurVsEnNMCCPQ",110,-10,100);
02772     pRngCurVsEnNMCCPQ->GetXaxis()->SetTitle
02773       ("Reconstructed Energy (GeV)");
02774     pRngCurVsEnNMCCPQ->GetXaxis()->CenterTitle();
02775     pRngCurVsEnNMCCPQ->GetYaxis()->SetTitle("Curv-Range/Range");
02776     pRngCurVsEnNMCCPQ->GetYaxis()->CenterTitle();
02777 
02778     pRngCurVsEnNotNMBCCPQ=new TProfile
02779       ("pRngCurVsEnNotNMBCCPQ","pRngCurVsEnNotNMBCCPQ",110,-10,100);
02780     pRngCurVsEnNotNMBCCPQ->GetXaxis()->SetTitle
02781       ("Reconstructed Energy (GeV)");
02782     pRngCurVsEnNotNMBCCPQ->GetXaxis()->CenterTitle();
02783     pRngCurVsEnNotNMBCCPQ->GetYaxis()->SetTitle("Curv-Range/Range");
02784     pRngCurVsEnNotNMBCCPQ->GetYaxis()->CenterTitle();
02785 
02786     pRngCurVsEnNotNMCCPQ=new TProfile
02787       ("pRngCurVsEnNotNMCCPQ","pRngCurVsEnNotNMCCPQ",110,-10,100);
02788     pRngCurVsEnNotNMCCPQ->GetXaxis()->SetTitle
02789       ("Reconstructed Energy (GeV)");
02790     pRngCurVsEnNotNMCCPQ->GetXaxis()->CenterTitle();
02791     pRngCurVsEnNotNMCCPQ->GetYaxis()->SetTitle("Curv-Range/Range");
02792     pRngCurVsEnNotNMCCPQ->GetYaxis()->CenterTitle();
02793 
02794 
02795     pRngCurVsEnNMBCCPQ1=new TProfile
02796       ("pRngCurVsEnNMBCCPQ1","pRngCurVsEnNMBCCPQ1",110,-10,100);
02797     pRngCurVsEnNMBCCPQ1->GetXaxis()->SetTitle
02798       ("Reconstructed Energy (GeV)");
02799     pRngCurVsEnNMBCCPQ1->GetXaxis()->CenterTitle();
02800     pRngCurVsEnNMBCCPQ1->GetYaxis()->SetTitle("Curv-Range/Range");
02801     pRngCurVsEnNMBCCPQ1->GetYaxis()->CenterTitle();
02802 
02803     pRngCurVsEnNMCCPQ1=new TProfile
02804       ("pRngCurVsEnNMCCPQ1","pRngCurVsEnNMCCPQ1",110,-10,100);
02805     pRngCurVsEnNMCCPQ1->GetXaxis()->SetTitle
02806       ("Reconstructed Energy (GeV)");
02807     pRngCurVsEnNMCCPQ1->GetXaxis()->CenterTitle();
02808     pRngCurVsEnNMCCPQ1->GetYaxis()->SetTitle("Curv-Range/Range");
02809     pRngCurVsEnNMCCPQ1->GetYaxis()->CenterTitle();
02810 
02811     pRngCurVsEnNotNMBCCPQ1=new TProfile
02812       ("pRngCurVsEnNotNMBCCPQ1","pRngCurVsEnNotNMBCCPQ1",110,-10,100);
02813     pRngCurVsEnNotNMBCCPQ1->GetXaxis()->SetTitle
02814       ("Reconstructed Energy (GeV)");
02815     pRngCurVsEnNotNMBCCPQ1->GetXaxis()->CenterTitle();
02816     pRngCurVsEnNotNMBCCPQ1->GetYaxis()->SetTitle("Curv-Range/Range");
02817     pRngCurVsEnNotNMBCCPQ1->GetYaxis()->CenterTitle();
02818 
02819     pRngCurVsEnNotNMCCPQ1=new TProfile
02820       ("pRngCurVsEnNotNMCCPQ1","pRngCurVsEnNotNMCCPQ1",110,-10,100);
02821     pRngCurVsEnNotNMCCPQ1->GetXaxis()->SetTitle
02822       ("Reconstructed Energy (GeV)");
02823     pRngCurVsEnNotNMCCPQ1->GetXaxis()->CenterTitle();
02824     pRngCurVsEnNotNMCCPQ1->GetYaxis()->SetTitle("Curv-Range/Range");
02825     pRngCurVsEnNotNMCCPQ1->GetYaxis()->CenterTitle();
02826 
02827 
02828     pRngCurVsEnNMBCCPQ3=new TProfile
02829       ("pRngCurVsEnNMBCCPQ3","pRngCurVsEnNMBCCPQ3",110,-10,100);
02830     pRngCurVsEnNMBCCPQ3->GetXaxis()->SetTitle
02831       ("Reconstructed Energy (GeV)");
02832     pRngCurVsEnNMBCCPQ3->GetXaxis()->CenterTitle();
02833     pRngCurVsEnNMBCCPQ3->GetYaxis()->SetTitle("Curv-Range/Range");
02834     pRngCurVsEnNMBCCPQ3->GetYaxis()->CenterTitle();
02835 
02836     pRngCurVsEnNMCCPQ3=new TProfile
02837       ("pRngCurVsEnNMCCPQ3","pRngCurVsEnNMCCPQ3",110,-10,100);
02838     pRngCurVsEnNMCCPQ3->GetXaxis()->SetTitle
02839       ("Reconstructed Energy (GeV)");
02840     pRngCurVsEnNMCCPQ3->GetXaxis()->CenterTitle();
02841     pRngCurVsEnNMCCPQ3->GetYaxis()->SetTitle("Curv-Range/Range");
02842     pRngCurVsEnNMCCPQ3->GetYaxis()->CenterTitle();
02843 
02844     pRngCurVsEnNotNMBCCPQ3=new TProfile
02845       ("pRngCurVsEnNotNMBCCPQ3","pRngCurVsEnNotNMBCCPQ3",110,-10,100);
02846     pRngCurVsEnNotNMBCCPQ3->GetXaxis()->SetTitle
02847       ("Reconstructed Energy (GeV)");
02848     pRngCurVsEnNotNMBCCPQ3->GetXaxis()->CenterTitle();
02849     pRngCurVsEnNotNMBCCPQ3->GetYaxis()->SetTitle("Curv-Range/Range");
02850     pRngCurVsEnNotNMBCCPQ3->GetYaxis()->CenterTitle();
02851 
02852     pRngCurVsEnNotNMCCPQ3=new TProfile
02853       ("pRngCurVsEnNotNMCCPQ3","pRngCurVsEnNotNMCCPQ3",110,-10,100);
02854     pRngCurVsEnNotNMCCPQ3->GetXaxis()->SetTitle
02855       ("Reconstructed Energy (GeV)");
02856     pRngCurVsEnNotNMCCPQ3->GetXaxis()->CenterTitle();
02857     pRngCurVsEnNotNMCCPQ3->GetYaxis()->SetTitle("Curv-Range/Range");
02858     pRngCurVsEnNotNMCCPQ3->GetYaxis()->CenterTitle();
02859 
02860 
02861 
02862 
02863     //NQ
02864     hRngCurNMBCCNQ=new TH1F("hRngCurNMBCCNQ","hRngCurNMBCCNQ",
02865                             4*160,-1.6,1.6);
02866     hRngCurNMBCCNQ->GetXaxis()->SetTitle("Curv-Range/Range");
02867     hRngCurNMBCCNQ->GetXaxis()->CenterTitle();
02868     hRngCurNMBCCNQ->GetYaxis()->SetTitle("");
02869     hRngCurNMBCCNQ->GetYaxis()->CenterTitle();
02870     //hRngCurNMBCCNQ->SetBit(TH1::kCanRebin);
02871 
02872     hRngCurNMCCNQ=new TH1F("hRngCurNMCCNQ","hRngCurNMCCNQ",
02873                            4*160,-1.6,1.6);
02874     hRngCurNMCCNQ->GetXaxis()->SetTitle("Curv-Range/Range");
02875     hRngCurNMCCNQ->GetXaxis()->CenterTitle();
02876     hRngCurNMCCNQ->GetYaxis()->SetTitle("");
02877     hRngCurNMCCNQ->GetYaxis()->CenterTitle();
02878     //hRngCurNMCCNQ->SetBit(TH1::kCanRebin);
02879 
02880     hRngCurNotNMBCCNQ=new TH1F("hRngCurNotNMBCCNQ","hRngCurNotNMBCCNQ",
02881                                4*160,-1.6,1.6);
02882     hRngCurNotNMBCCNQ->GetXaxis()->SetTitle("Curv-Range/Range");
02883     hRngCurNotNMBCCNQ->GetXaxis()->CenterTitle();
02884     hRngCurNotNMBCCNQ->GetYaxis()->SetTitle("");
02885     hRngCurNotNMBCCNQ->GetYaxis()->CenterTitle();
02886     //hRngCurNotNMBCCNQ->SetBit(TH1::kCanRebin);
02887 
02888     hRngCurNotNMCCNQ=new TH1F("hRngCurNotNMCCNQ","hRngCurNotNMCCNQ",
02889                               4*160,-1.6,1.6);
02890     hRngCurNotNMCCNQ->GetXaxis()->SetTitle("Curv-Range/Range");
02891     hRngCurNotNMCCNQ->GetXaxis()->CenterTitle();
02892     hRngCurNotNMCCNQ->GetYaxis()->SetTitle("");
02893     hRngCurNotNMCCNQ->GetYaxis()->CenterTitle();
02894     //hRngCurNotNMCCNQ->SetBit(TH1::kCanRebin);
02895 
02896 
02897     hRngCurNMBCCNQ1=new TH1F("hRngCurNMBCCNQ1",
02898                              "hRngCurNMBCCNQ1",
02899                              4*160,-1.6,1.6);
02900     hRngCurNMBCCNQ1->GetXaxis()->SetTitle("Curv-Range/Range");
02901     hRngCurNMBCCNQ1->GetXaxis()->CenterTitle();
02902     hRngCurNMBCCNQ1->GetYaxis()->SetTitle("");
02903     hRngCurNMBCCNQ1->GetYaxis()->CenterTitle();
02904     //hRngCurNMBCCNQ1->SetBit(TH1::kCanRebin);
02905 
02906     hRngCurNMCCNQ1=new TH1F("hRngCurNMCCNQ1",
02907                             "hRngCurNMCCNQ1",
02908                             4*160,-1.6,1.6);
02909     hRngCurNMCCNQ1->GetXaxis()->SetTitle("Curv-Range/Range");
02910     hRngCurNMCCNQ1->GetXaxis()->CenterTitle();
02911     hRngCurNMCCNQ1->GetYaxis()->SetTitle("");
02912     hRngCurNMCCNQ1->GetYaxis()->CenterTitle();
02913     //hRngCurNMCCNQ1->SetBit(TH1::kCanRebin);
02914 
02915     hRngCurNotNMBCCNQ1=new TH1F("hRngCurNotNMBCCNQ1",
02916                                 "hRngCurNotNMBCCNQ1",
02917                                 4*160,-1.6,1.6);
02918     hRngCurNotNMBCCNQ1->GetXaxis()->SetTitle("Curv-Range/Range");
02919     hRngCurNotNMBCCNQ1->GetXaxis()->CenterTitle();
02920     hRngCurNotNMBCCNQ1->GetYaxis()->SetTitle("");
02921     hRngCurNotNMBCCNQ1->GetYaxis()->CenterTitle();
02922     //hRngCurNotNMBCCNQ1->SetBit(TH1::kCanRebin);
02923 
02924     hRngCurNotNMCCNQ1=new TH1F("hRngCurNotNMCCNQ1",
02925                                "hRngCurNotNMCCNQ1",
02926                                4*160,-1.6,1.6);
02927     hRngCurNotNMCCNQ1->GetXaxis()->SetTitle("Curv-Range/Range");
02928     hRngCurNotNMCCNQ1->GetXaxis()->CenterTitle();
02929     hRngCurNotNMCCNQ1->GetYaxis()->SetTitle("");
02930     hRngCurNotNMCCNQ1->GetYaxis()->CenterTitle();
02931     //hRngCurNotNMCCNQ1->SetBit(TH1::kCanRebin);
02932 
02933 
02934     hRngCurNMBCCNQ3=new TH1F("hRngCurNMBCCNQ3",
02935                              "hRngCurNMBCCNQ3",
02936                              4*160,-1.6,1.6);
02937     hRngCurNMBCCNQ3->GetXaxis()->SetTitle("Curv-Range/Range");
02938     hRngCurNMBCCNQ3->GetXaxis()->CenterTitle();
02939     hRngCurNMBCCNQ3->GetYaxis()->SetTitle("");
02940     hRngCurNMBCCNQ3->GetYaxis()->CenterTitle();
02941     //hRngCurNMBCCNQ3->SetBit(TH1::kCanRebin);
02942 
02943     hRngCurNMCCNQ3=new TH1F("hRngCurNMCCNQ3",
02944                             "hRngCurNMCCNQ3",
02945                             4*160,-1.6,1.6);
02946     hRngCurNMCCNQ3->GetXaxis()->SetTitle("Curv-Range/Range");
02947     hRngCurNMCCNQ3->GetXaxis()->CenterTitle();
02948     hRngCurNMCCNQ3->GetYaxis()->SetTitle("");
02949     hRngCurNMCCNQ3->GetYaxis()->CenterTitle();
02950     //hRngCurNMCCNQ3->SetBit(TH1::kCanRebin);
02951 
02952     hRngCurNotNMBCCNQ3=new TH1F("hRngCurNotNMBCCNQ3",
02953                                 "hRngCurNotNMBCCNQ3",
02954                                 4*160,-1.6,1.6);
02955     hRngCurNotNMBCCNQ3->GetXaxis()->SetTitle("Curv-Range/Range");
02956     hRngCurNotNMBCCNQ3->GetXaxis()->CenterTitle();
02957     hRngCurNotNMBCCNQ3->GetYaxis()->SetTitle("");
02958     hRngCurNotNMBCCNQ3->GetYaxis()->CenterTitle();
02959     //hRngCurNotNMBCCNQ3->SetBit(TH1::kCanRebin);
02960 
02961     hRngCurNotNMCCNQ3=new TH1F("hRngCurNotNMCCNQ3",
02962                                "hRngCurNotNMCCNQ3",
02963                                4*160,-1.6,1.6);
02964     hRngCurNotNMCCNQ3->GetXaxis()->SetTitle("Curv-Range/Range");
02965     hRngCurNotNMCCNQ3->GetXaxis()->CenterTitle();
02966     hRngCurNotNMCCNQ3->GetYaxis()->SetTitle("");
02967     hRngCurNotNMCCNQ3->GetYaxis()->CenterTitle();
02968     //hRngCurNotNMCCNQ3->SetBit(TH1::kCanRebin);
02969 
02970 
02971 
02972     hRngEvtsNMBCCNQ=new TH1F("hRngEvtsNMBCCNQ",
02973                              "hRngEvtsNMBCCNQ",
02974                              4*352,-32,320);
02975     hRngEvtsNMBCCNQ->GetXaxis()->SetTitle
02976       ("Reconstructed Energy (GeV)");
02977     hRngEvtsNMBCCNQ->GetXaxis()->CenterTitle();
02978     hRngEvtsNMBCCNQ->GetYaxis()->SetTitle("");
02979     hRngEvtsNMBCCNQ->GetYaxis()->CenterTitle();
02980     //hRngEvtsNMBCCNQ->SetBit(TH1::kCanRebin);
02981 
02982     hRngEvtsNMCCNQ=new TH1F("hRngEvtsNMCCNQ",
02983                             "hRngEvtsNMCCNQ",
02984                             4*352,-32,320);
02985     hRngEvtsNMCCNQ->GetXaxis()->SetTitle
02986       ("Reconstructed Energy (GeV)");
02987     hRngEvtsNMCCNQ->GetXaxis()->CenterTitle();
02988     hRngEvtsNMCCNQ->GetYaxis()->SetTitle("");
02989     hRngEvtsNMCCNQ->GetYaxis()->CenterTitle();
02990     //hRngEvtsNMCCNQ->SetBit(TH1::kCanRebin);
02991 
02992     hRngEvtsNotNMBCCNQ=new TH1F("hRngEvtsNotNMBCCNQ",
02993                                 "hRngEvtsNotNMBCCNQ",
02994                                 4*352,-32,320);
02995     hRngEvtsNotNMBCCNQ->GetXaxis()->SetTitle
02996       ("Reconstructed Energy (GeV)");
02997     hRngEvtsNotNMBCCNQ->GetXaxis()->CenterTitle();
02998     hRngEvtsNotNMBCCNQ->GetYaxis()->SetTitle("");
02999     hRngEvtsNotNMBCCNQ->GetYaxis()->CenterTitle();
03000     //hRngEvtsNotNMBCCNQ->SetBit(TH1::kCanRebin);
03001 
03002     hRngEvtsNotNMCCNQ=new TH1F("hRngEvtsNotNMCCNQ",
03003                                "hRngEvtsNotNMCCNQ",
03004                                4*352,-32,320);
03005     hRngEvtsNotNMCCNQ->GetXaxis()->SetTitle
03006       ("Reconstructed Energy (GeV)");
03007     hRngEvtsNotNMCCNQ->GetXaxis()->CenterTitle();
03008     hRngEvtsNotNMCCNQ->GetYaxis()->SetTitle("");
03009     hRngEvtsNotNMCCNQ->GetYaxis()->CenterTitle();
03010     //hRngEvtsNotNMCCNQ->SetBit(TH1::kCanRebin);
03011 
03012 
03013     hRngEvtsNMBCCNQ1=new TH1F("hRngEvtsNMBCCNQ1",
03014                               "hRngEvtsNMBCCNQ1",
03015                               4*352,-32,320);
03016     hRngEvtsNMBCCNQ1->GetXaxis()->SetTitle
03017       ("Reconstructed Energy (GeV)");
03018     hRngEvtsNMBCCNQ1->GetXaxis()->CenterTitle();
03019     hRngEvtsNMBCCNQ1->GetYaxis()->SetTitle("");
03020     hRngEvtsNMBCCNQ1->GetYaxis()->CenterTitle();
03021     //hRngEvtsNMBCCNQ1->SetBit(TH1::kCanRebin);
03022 
03023     hRngEvtsNMCCNQ1=new TH1F("hRngEvtsNMCCNQ1",
03024                              "hRngEvtsNMCCNQ1",
03025                              4*352,-32,320);
03026     hRngEvtsNMCCNQ1->GetXaxis()->SetTitle
03027       ("Reconstructed Energy (GeV)");
03028     hRngEvtsNMCCNQ1->GetXaxis()->CenterTitle();
03029     hRngEvtsNMCCNQ1->GetYaxis()->SetTitle("");
03030     hRngEvtsNMCCNQ1->GetYaxis()->CenterTitle();
03031     //hRngEvtsNMCCNQ1->SetBit(TH1::kCanRebin);
03032 
03033     hRngEvtsNotNMBCCNQ1=new TH1F("hRngEvtsNotNMBCCNQ1",
03034                                  "hRngEvtsNotNMBCCNQ1",
03035                                  4*352,-32,320);
03036     hRngEvtsNotNMBCCNQ1->GetXaxis()->SetTitle
03037       ("Reconstructed Energy (GeV)");
03038     hRngEvtsNotNMBCCNQ1->GetXaxis()->CenterTitle();
03039     hRngEvtsNotNMBCCNQ1->GetYaxis()->SetTitle("");
03040     hRngEvtsNotNMBCCNQ1->GetYaxis()->CenterTitle();
03041     //hRngEvtsNotNMBCCNQ1->SetBit(TH1::kCanRebin);
03042 
03043     hRngEvtsNotNMCCNQ1=new TH1F("hRngEvtsNotNMCCNQ1",
03044                                 "hRngEvtsNotNMCCNQ1",
03045                                 4*352,-32,320);
03046     hRngEvtsNotNMCCNQ1->GetXaxis()->SetTitle
03047       ("Reconstructed Energy (GeV)");
03048     hRngEvtsNotNMCCNQ1->GetXaxis()->CenterTitle();
03049     hRngEvtsNotNMCCNQ1->GetYaxis()->SetTitle("");
03050     hRngEvtsNotNMCCNQ1->GetYaxis()->CenterTitle();
03051     //hRngEvtsNotNMCCNQ1->SetBit(TH1::kCanRebin);
03052 
03053 
03054     hRngEvtsNMBCCNQ3=new TH1F("hRngEvtsNMBCCNQ3",
03055                               "hRngEvtsNMBCCNQ3",
03056                               4*352,-32,320);
03057     hRngEvtsNMBCCNQ3->GetXaxis()->SetTitle
03058       ("Reconstructed Energy (GeV)");
03059     hRngEvtsNMBCCNQ3->GetXaxis()->CenterTitle();
03060     hRngEvtsNMBCCNQ3->GetYaxis()->SetTitle("");
03061     hRngEvtsNMBCCNQ3->GetYaxis()->CenterTitle();
03062     //hRngEvtsNMBCCNQ3->SetBit(TH1::kCanRebin);
03063 
03064     hRngEvtsNMCCNQ3=new TH1F("hRngEvtsNMCCNQ3",
03065                              "hRngEvtsNMCCNQ3",
03066                              4*352,-32,320);
03067     hRngEvtsNMCCNQ3->GetXaxis()->SetTitle
03068       ("Reconstructed Energy (GeV)");
03069     hRngEvtsNMCCNQ3->GetXaxis()->CenterTitle();
03070     hRngEvtsNMCCNQ3->GetYaxis()->SetTitle("");
03071     hRngEvtsNMCCNQ3->GetYaxis()->CenterTitle();
03072     //hRngEvtsNMCCNQ3->SetBit(TH1::kCanRebin);
03073 
03074     hRngEvtsNotNMBCCNQ3=new TH1F("hRngEvtsNotNMBCCNQ3",
03075                                  "hRngEvtsNotNMBCCNQ3",
03076                                  4*352,-32,320);
03077     hRngEvtsNotNMBCCNQ3->GetXaxis()->SetTitle
03078       ("Reconstructed Energy (GeV)");
03079     hRngEvtsNotNMBCCNQ3->GetXaxis()->CenterTitle();
03080     hRngEvtsNotNMBCCNQ3->GetYaxis()->SetTitle("");
03081     hRngEvtsNotNMBCCNQ3->GetYaxis()->CenterTitle();
03082     //hRngEvtsNotNMBCCNQ3->SetBit(TH1::kCanRebin);
03083 
03084     hRngEvtsNotNMCCNQ3=new TH1F("hRngEvtsNotNMCCNQ3",
03085                                 "hRngEvtsNotNMCCNQ3",
03086                                 4*352,-32,320);
03087     hRngEvtsNotNMCCNQ3->GetXaxis()->SetTitle
03088       ("Reconstructed Energy (GeV)");
03089     hRngEvtsNotNMCCNQ3->GetXaxis()->CenterTitle();
03090     hRngEvtsNotNMCCNQ3->GetYaxis()->SetTitle("");
03091     hRngEvtsNotNMCCNQ3->GetYaxis()->CenterTitle();
03092     //hRngEvtsNotNMCCNQ3->SetBit(TH1::kCanRebin);
03093 
03094 
03095 
03096     pRngCurVsEnNMBCCNQ=new TProfile
03097       ("pRngCurVsEnNMBCCNQ","pRngCurVsEnNMBCCNQ",110,-10,100);
03098     pRngCurVsEnNMBCCNQ->GetXaxis()->SetTitle
03099       ("Reconstructed Energy (GeV)");
03100     pRngCurVsEnNMBCCNQ->GetXaxis()->CenterTitle();
03101     pRngCurVsEnNMBCCNQ->GetYaxis()->SetTitle("Curv-Range/Range");
03102     pRngCurVsEnNMBCCNQ->GetYaxis()->CenterTitle();
03103 
03104     pRngCurVsEnNMCCNQ=new TProfile
03105       ("pRngCurVsEnNMCCNQ","pRngCurVsEnNMCCNQ",110,-10,100);
03106     pRngCurVsEnNMCCNQ->GetXaxis()->SetTitle
03107       ("Reconstructed Energy (GeV)");
03108     pRngCurVsEnNMCCNQ->GetXaxis()->CenterTitle();
03109     pRngCurVsEnNMCCNQ->GetYaxis()->SetTitle("Curv-Range/Range");
03110     pRngCurVsEnNMCCNQ->GetYaxis()->CenterTitle();
03111 
03112     pRngCurVsEnNotNMBCCNQ=new TProfile
03113       ("pRngCurVsEnNotNMBCCNQ","pRngCurVsEnNotNMBCCNQ",110,-10,100);
03114     pRngCurVsEnNotNMBCCNQ->GetXaxis()->SetTitle
03115       ("Reconstructed Energy (GeV)");
03116     pRngCurVsEnNotNMBCCNQ->GetXaxis()->CenterTitle();
03117     pRngCurVsEnNotNMBCCNQ->GetYaxis()->SetTitle("Curv-Range/Range");
03118     pRngCurVsEnNotNMBCCNQ->GetYaxis()->CenterTitle();
03119 
03120     pRngCurVsEnNotNMCCNQ=new TProfile
03121       ("pRngCurVsEnNotNMCCNQ","pRngCurVsEnNotNMCCNQ",110,-10,100);
03122     pRngCurVsEnNotNMCCNQ->GetXaxis()->SetTitle
03123       ("Reconstructed Energy (GeV)");
03124     pRngCurVsEnNotNMCCNQ->GetXaxis()->CenterTitle();
03125     pRngCurVsEnNotNMCCNQ->GetYaxis()->SetTitle("Curv-Range/Range");
03126     pRngCurVsEnNotNMCCNQ->GetYaxis()->CenterTitle();
03127 
03128 
03129     pRngCurVsEnNMBCCNQ1=new TProfile
03130       ("pRngCurVsEnNMBCCNQ1","pRngCurVsEnNMBCCNQ1",110,-10,100);
03131     pRngCurVsEnNMBCCNQ1->GetXaxis()->SetTitle
03132       ("Reconstructed Energy (GeV)");
03133     pRngCurVsEnNMBCCNQ1->GetXaxis()->CenterTitle();
03134     pRngCurVsEnNMBCCNQ1->GetYaxis()->SetTitle("Curv-Range/Range");
03135     pRngCurVsEnNMBCCNQ1->GetYaxis()->CenterTitle();
03136 
03137     pRngCurVsEnNMCCNQ1=new TProfile
03138       ("pRngCurVsEnNMCCNQ1","pRngCurVsEnNMCCNQ1",110,-10,100);
03139     pRngCurVsEnNMCCNQ1->GetXaxis()->SetTitle
03140       ("Reconstructed Energy (GeV)");
03141     pRngCurVsEnNMCCNQ1->GetXaxis()->CenterTitle();
03142     pRngCurVsEnNMCCNQ1->GetYaxis()->SetTitle("Curv-Range/Range");
03143     pRngCurVsEnNMCCNQ1->GetYaxis()->CenterTitle();
03144 
03145     pRngCurVsEnNotNMBCCNQ1=new TProfile
03146       ("pRngCurVsEnNotNMBCCNQ1","pRngCurVsEnNotNMBCCNQ1",110,-10,100);
03147     pRngCurVsEnNotNMBCCNQ1->GetXaxis()->SetTitle
03148       ("Reconstructed Energy (GeV)");
03149     pRngCurVsEnNotNMBCCNQ1->GetXaxis()->CenterTitle();
03150     pRngCurVsEnNotNMBCCNQ1->GetYaxis()->SetTitle("Curv-Range/Range");
03151     pRngCurVsEnNotNMBCCNQ1->GetYaxis()->CenterTitle();
03152 
03153     pRngCurVsEnNotNMCCNQ1=new TProfile
03154       ("pRngCurVsEnNotNMCCNQ1","pRngCurVsEnNotNMCCNQ1",110,-10,100);
03155     pRngCurVsEnNotNMCCNQ1->GetXaxis()->SetTitle
03156       ("Reconstructed Energy (GeV)");
03157     pRngCurVsEnNotNMCCNQ1->GetXaxis()->CenterTitle();
03158     pRngCurVsEnNotNMCCNQ1->GetYaxis()->SetTitle("Curv-Range/Range");
03159     pRngCurVsEnNotNMCCNQ1->GetYaxis()->CenterTitle();
03160 
03161 
03162     pRngCurVsEnNMBCCNQ3=new TProfile
03163       ("pRngCurVsEnNMBCCNQ3","pRngCurVsEnNMBCCNQ3",110,-10,100);
03164     pRngCurVsEnNMBCCNQ3->GetXaxis()->SetTitle
03165       ("Reconstructed Energy (GeV)");
03166     pRngCurVsEnNMBCCNQ3->GetXaxis()->CenterTitle();
03167     pRngCurVsEnNMBCCNQ3->GetYaxis()->SetTitle("Curv-Range/Range");
03168     pRngCurVsEnNMBCCNQ3->GetYaxis()->CenterTitle();
03169 
03170     pRngCurVsEnNMCCNQ3=new TProfile
03171       ("pRngCurVsEnNMCCNQ3","pRngCurVsEnNMCCNQ3",110,-10,100);
03172     pRngCurVsEnNMCCNQ3->GetXaxis()->SetTitle
03173       ("Reconstructed Energy (GeV)");
03174     pRngCurVsEnNMCCNQ3->GetXaxis()->CenterTitle();
03175     pRngCurVsEnNMCCNQ3->GetYaxis()->SetTitle("Curv-Range/Range");
03176     pRngCurVsEnNMCCNQ3->GetYaxis()->CenterTitle();
03177 
03178     pRngCurVsEnNotNMBCCNQ3=new TProfile
03179       ("pRngCurVsEnNotNMBCCNQ3","pRngCurVsEnNotNMBCCNQ3",110,-10,100);
03180     pRngCurVsEnNotNMBCCNQ3->GetXaxis()->SetTitle
03181       ("Reconstructed Energy (GeV)");
03182     pRngCurVsEnNotNMBCCNQ3->GetXaxis()->CenterTitle();
03183     pRngCurVsEnNotNMBCCNQ3->GetYaxis()->SetTitle("Curv-Range/Range");
03184     pRngCurVsEnNotNMBCCNQ3->GetYaxis()->CenterTitle();
03185 
03186     pRngCurVsEnNotNMCCNQ3=new TProfile
03187       ("pRngCurVsEnNotNMCCNQ3","pRngCurVsEnNotNMCCNQ3",110,-10,100);
03188     pRngCurVsEnNotNMCCNQ3->GetXaxis()->SetTitle
03189       ("Reconstructed Energy (GeV)");
03190     pRngCurVsEnNotNMCCNQ3->GetXaxis()->CenterTitle();
03191     pRngCurVsEnNotNMCCNQ3->GetYaxis()->SetTitle("Curv-Range/Range");
03192     pRngCurVsEnNotNMCCNQ3->GetYaxis()->CenterTitle();
03193 
03194   }
03195 
03196   //check if MC
03197   if (nu.simFlag!=SimFlag::kMC) {
03198     MAXMSG("NuPlots",Msg::kDebug,1)
03199       <<"Not MC, so not filling RangeCurv Truth histos..."<<endl;
03200     return;
03201   }
03202   MAXMSG("NuPlots",Msg::kDebug,1)
03203     <<"Is MC, filling RangeCurv Truth histos..."<<endl;
03204   
03205   //if reconstructed charge is positive
03206   if (nu.charge==+1){
03207     if (nu.iaction==1){//CC
03208       if (nu.inu==14){//NuMu
03209         vhRngCurDifNM[bin]->Fill(rangeCurvDiff,nu.rw);
03210         hRngCurNMCCPQ->Fill(rangeCurvDiff,nu.rw);
03211         hRngEvtsNMCCPQ->Fill(nu.trkEnRange,nu.rw);
03212         pRngCurVsEnNMCCPQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03213         if (nu.containmentFlag==1){
03214           vhRngCurDifNM1[bin]->Fill(rangeCurvDiff,nu.rw);
03215           hRngCurNMCCPQ1->Fill(rangeCurvDiff,nu.rw);
03216           hRngEvtsNMCCPQ1->Fill(nu.trkEnRange,nu.rw);
03217           pRngCurVsEnNMCCPQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03218         }
03219         else if (nu.containmentFlag==3){
03220           vhRngCurDifNM3[bin]->Fill(rangeCurvDiff,nu.rw);
03221           hRngCurNMCCPQ3->Fill(rangeCurvDiff,nu.rw);
03222           hRngEvtsNMCCPQ3->Fill(nu.trkEnRange,nu.rw);
03223           pRngCurVsEnNMCCPQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03224         }
03225         //hDpIDNuMuCC->Fill(dpID,nu.rw);
03226       }
03227       else if (nu.inu==-14){
03228         vhRngCurDifNMB[bin]->Fill(rangeCurvDiff,nu.rw);
03229         hRngCurNMBCCPQ->Fill(rangeCurvDiff,nu.rw);
03230         hRngEvtsNMBCCPQ->Fill(nu.trkEnRange,nu.rw);
03231         pRngCurVsEnNMBCCPQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03232         if (nu.containmentFlag==1){
03233           vhRngCurDifNMB1[bin]->Fill(rangeCurvDiff,nu.rw);
03234           hRngCurNMBCCPQ1->Fill(rangeCurvDiff,nu.rw);
03235           hRngEvtsNMBCCPQ1->Fill(nu.trkEnRange,nu.rw);
03236           pRngCurVsEnNMBCCPQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03237         }
03238         else if (nu.containmentFlag==3){
03239           vhRngCurDifNMB3[bin]->Fill(rangeCurvDiff,nu.rw);
03240           hRngCurNMBCCPQ3->Fill(rangeCurvDiff,nu.rw);
03241           hRngEvtsNMBCCPQ3->Fill(nu.trkEnRange,nu.rw);
03242           pRngCurVsEnNMBCCPQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03243         }
03244         //hDpIDNuMuBarCC->Fill(dpID,nu.rw);
03245       }
03246     }
03247     
03248     //fill all-but-numu-cc histos
03249     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
03250       hRngCurNotNMCCPQ->Fill(rangeCurvDiff,nu.rw);
03251       hRngEvtsNotNMCCPQ->Fill(nu.trkEnRange,nu.rw);
03252       pRngCurVsEnNotNMCCPQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03253       if (nu.containmentFlag==1){
03254         hRngCurNotNMCCPQ1->Fill(rangeCurvDiff,nu.rw);
03255         hRngEvtsNotNMCCPQ1->Fill(nu.trkEnRange,nu.rw);
03256         pRngCurVsEnNotNMCCPQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03257       }
03258       else if (nu.containmentFlag==3){
03259         hRngCurNotNMCCPQ3->Fill(rangeCurvDiff,nu.rw);
03260         hRngEvtsNotNMCCPQ3->Fill(nu.trkEnRange,nu.rw);
03261         pRngCurVsEnNotNMCCPQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03262       }
03263       //hDpIDNotNuMuCC->Fill(dpID,nu.rw);
03264     }
03265 
03266     //fill all-but-numubar-cc histos
03267     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
03268       hRngCurNotNMBCCPQ->Fill(rangeCurvDiff,nu.rw);
03269       hRngEvtsNotNMBCCPQ->Fill(nu.trkEnRange,nu.rw);
03270       pRngCurVsEnNotNMBCCPQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03271       if (nu.containmentFlag==1){
03272         hRngCurNotNMBCCPQ1->Fill(rangeCurvDiff,nu.rw);
03273         hRngEvtsNotNMBCCPQ1->Fill(nu.trkEnRange,nu.rw);
03274         pRngCurVsEnNotNMBCCPQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03275       }
03276       else if (nu.containmentFlag==3){
03277         hRngCurNotNMBCCPQ3->Fill(rangeCurvDiff,nu.rw);
03278         hRngEvtsNotNMBCCPQ3->Fill(nu.trkEnRange,nu.rw);
03279         pRngCurVsEnNotNMBCCPQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03280       }
03281       //hDpIDNotNuMuBarCC->Fill(dpID,nu.rw);
03282     }
03283   }
03284   //if reconstructed charge is negative
03285   else if (nu.charge==-1){
03286     if (nu.iaction==1){//CC
03287       if (nu.inu==14){
03288         hRngCurNMCCNQ->Fill(rangeCurvDiff,nu.rw);
03289         hRngEvtsNMCCNQ->Fill(nu.trkEnRange,nu.rw);
03290         pRngCurVsEnNMCCNQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03291         if (nu.containmentFlag==1){
03292           hRngCurNMCCNQ1->Fill(rangeCurvDiff,nu.rw);
03293           hRngEvtsNMCCNQ1->Fill(nu.trkEnRange,nu.rw);
03294           pRngCurVsEnNMCCNQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03295         }
03296         else if (nu.containmentFlag==3){
03297           hRngCurNMCCNQ3->Fill(rangeCurvDiff,nu.rw);
03298           hRngEvtsNMCCNQ3->Fill(nu.trkEnRange,nu.rw);
03299           pRngCurVsEnNMCCNQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03300         }
03301         //hDpIDNuMuCC->Fill(dpID,nu.rw);
03302       }
03303       else if (nu.inu==-14){
03304         hRngCurNMBCCNQ->Fill(rangeCurvDiff,nu.rw);
03305         hRngEvtsNMBCCNQ->Fill(nu.trkEnRange,nu.rw);
03306         pRngCurVsEnNMBCCNQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03307         if (nu.containmentFlag==1){
03308           hRngCurNMBCCNQ1->Fill(rangeCurvDiff,nu.rw);
03309           hRngEvtsNMBCCNQ1->Fill(nu.trkEnRange,nu.rw);
03310           pRngCurVsEnNMBCCNQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03311         }
03312         else if (nu.containmentFlag==3){
03313           hRngCurNMBCCNQ3->Fill(rangeCurvDiff,nu.rw);
03314           hRngEvtsNMBCCNQ3->Fill(nu.trkEnRange,nu.rw);
03315           pRngCurVsEnNMBCCNQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03316         }
03317         //hDpIDNuMuBarCC->Fill(dpID,nu.rw);
03318       }
03319     }
03320     
03321     //fill all-but-numu-cc histos
03322     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
03323       hRngCurNotNMCCNQ->Fill(rangeCurvDiff,nu.rw);
03324       hRngEvtsNotNMCCNQ->Fill(nu.trkEnRange,nu.rw);
03325       pRngCurVsEnNotNMCCNQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03326       if (nu.containmentFlag==1){
03327         hRngCurNotNMCCNQ1->Fill(rangeCurvDiff,nu.rw);
03328         hRngEvtsNotNMCCNQ1->Fill(nu.trkEnRange,nu.rw);
03329         pRngCurVsEnNotNMCCNQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03330       }
03331       else if (nu.containmentFlag==3){
03332         hRngCurNotNMCCNQ3->Fill(rangeCurvDiff,nu.rw);
03333         hRngEvtsNotNMCCNQ3->Fill(nu.trkEnRange,nu.rw);
03334         pRngCurVsEnNotNMCCNQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03335       }
03336       //hDpIDNotNuMuCC->Fill(dpID,nu.rw);
03337     }
03338 
03339     //fill all-but-numubar-cc histos
03340     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
03341       hRngCurNotNMBCCNQ->Fill(rangeCurvDiff,nu.rw);
03342       hRngEvtsNotNMBCCNQ->Fill(nu.trkEnRange,nu.rw);
03343       pRngCurVsEnNotNMBCCNQ->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03344       if (nu.containmentFlag==1){
03345         hRngCurNotNMBCCNQ1->Fill(rangeCurvDiff,nu.rw);
03346         hRngEvtsNotNMBCCNQ1->Fill(nu.trkEnRange,nu.rw);
03347         pRngCurVsEnNotNMBCCNQ1->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03348       }
03349       else if (nu.containmentFlag==3){
03350         hRngCurNotNMBCCNQ3->Fill(rangeCurvDiff,nu.rw);
03351         hRngEvtsNotNMBCCNQ3->Fill(nu.trkEnRange,nu.rw);
03352         pRngCurVsEnNotNMBCCNQ3->Fill(nu.trkEnRange,rangeCurvDiff,nu.rw);
03353       }
03354       //hDpIDNotNuMuBarCC->Fill(dpID,nu.rw);
03355     }
03356   }
03357   else MSG("NuPlots",Msg::kWarning)<<"Ahhh, charge="<<nu.charge<<endl;
03358 }

void NuPlots::FillRecoEnYHistosN const NuEvent nu  )  const
 

Definition at line 15495 of file NuPlots.cxx.

References NuEvent::beamWeight, NuEvent::charge, NuEvent::detectorWeight, NuEvent::energy, NuEvent::energyNoRw, NuEvent::energyRw, NuEvent::generatorWeight, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::rw, NuEvent::rwActual, NuEvent::shwEn, NuEvent::shwEnNoRw, NuEvent::shwEnRw, NuEvent::shwEnWeight, NuEvent::trkEn, NuEvent::trkEnNoRw, NuEvent::trkEnRw, NuEvent::trkEnWeight, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::EnergySpect(), NuAnalysis::LIRejectionTest(), NuDSTAna::MakeFinalPlots(), and NuAnalysis::NMBSummaryTreeAna().

15496 {  
15497   //PQ
15498   static TH1F* hRecoEnPQ=0;
15499   static TH1F* hRecoEnTrkPQ=0;
15500   static TH1F* hRecoEnShwPQ=0;
15501   static TH1F* hRecoEnNotNMBCCPQ=0;
15502   static TH1F* hRecoEnTrkNotNMBCCPQ=0;
15503   static TH1F* hRecoEnShwNotNMBCCPQ=0;
15504   static TH1F* hRecoEnRwPQ=0;
15505   static TH1F* hRecoEnTrkRwPQ=0;
15506   static TH1F* hRecoEnShwRwPQ=0;
15507   static TH1F* hRecoEnNoRwPQ=0;
15508   static TH1F* hRecoEnTrkNoRwPQ=0;
15509   static TH1F* hRecoEnShwNoRwPQ=0;
15510   static TH1F* hRecoEnNoRwEnRwPQ=0;
15511   static TH1F* hRecoEnTrkNoRwEnRwPQ=0;
15512   static TH1F* hRecoEnShwNoRwEnRwPQ=0;
15513 
15514   static TH1F* hRecoEnBeamRwPQ=0;
15515   static TH1F* hRecoEnTrkBeamRwPQ=0;
15516   static TH1F* hRecoEnShwBeamRwPQ=0;
15517   static TH1F* hRecoEnDetRwPQ=0;
15518   static TH1F* hRecoEnTrkDetRwPQ=0;
15519   static TH1F* hRecoEnShwDetRwPQ=0;
15520   static TH1F* hRecoEnGenRwPQ=0;
15521   static TH1F* hRecoEnTrkGenRwPQ=0;
15522   static TH1F* hRecoEnShwGenRwPQ=0;
15523 
15524   static TH1F* hRecoEnAllRwPQ=0;
15525   static TH1F* hRecoEnTrkAllRwPQ=0;
15526   static TH1F* hRecoEnShwAllRwPQ=0;
15527   static TH1F* hRecoEnAllRwEnRwPQ=0;
15528   static TH1F* hRecoEnTrkAllRwEnRwPQ=0;
15529   static TH1F* hRecoEnShwAllRwEnRwPQ=0;
15530 
15531   static TH1F* hRwPQ=0;
15532   static TH1F* hBeamRwPQ=0;
15533   static TH1F* hDetRwPQ=0;
15534   static TH1F* hGenRwPQ=0;
15535   static TH1F* hAllRwPQ=0;
15536   static TH1F* hTrkEnRwPQ=0;
15537   static TH1F* hShwEnRwPQ=0;
15538   static TH1F* hdEPQ=0;
15539   static TH1F* hdEFractPQ=0;
15540   static TH1F* hRecoYPQ=0;
15541   static TH1F* hRecoYNotNMBCCPQ=0;
15542 
15543   //NQ
15544   static TH1F* hRecoEnNQ=0;
15545   static TH1F* hRecoEnTrkNQ=0;
15546   static TH1F* hRecoEnShwNQ=0;
15547   static TH1F* hRecoEnRwNQ=0;
15548   static TH1F* hRecoEnTrkRwNQ=0;
15549   static TH1F* hRecoEnShwRwNQ=0;
15550   static TH1F* hRecoEnNoRwNQ=0;
15551   static TH1F* hRecoEnTrkNoRwNQ=0;
15552   static TH1F* hRecoEnShwNoRwNQ=0;
15553   static TH1F* hRecoEnNoRwEnRwNQ=0;
15554   static TH1F* hRecoEnTrkNoRwEnRwNQ=0;
15555   static TH1F* hRecoEnShwNoRwEnRwNQ=0;
15556 
15557   static TH1F* hRecoEnBeamRwNQ=0;
15558   static TH1F* hRecoEnTrkBeamRwNQ=0;
15559   static TH1F* hRecoEnShwBeamRwNQ=0;
15560   static TH1F* hRecoEnDetRwNQ=0;
15561   static TH1F* hRecoEnTrkDetRwNQ=0;
15562   static TH1F* hRecoEnShwDetRwNQ=0;
15563   static TH1F* hRecoEnGenRwNQ=0;
15564   static TH1F* hRecoEnTrkGenRwNQ=0;
15565   static TH1F* hRecoEnShwGenRwNQ=0;
15566 
15567   static TH1F* hRecoEnAllRwNQ=0;
15568   static TH1F* hRecoEnTrkAllRwNQ=0;
15569   static TH1F* hRecoEnShwAllRwNQ=0;
15570   static TH1F* hRecoEnAllRwEnRwNQ=0;
15571   static TH1F* hRecoEnTrkAllRwEnRwNQ=0;
15572   static TH1F* hRecoEnShwAllRwEnRwNQ=0;
15573 
15574   static TH1F* hRwNQ=0;
15575   static TH1F* hBeamRwNQ=0;
15576   static TH1F* hDetRwNQ=0;
15577   static TH1F* hGenRwNQ=0;
15578   static TH1F* hAllRwNQ=0;
15579   static TH1F* hTrkEnRwNQ=0;
15580   static TH1F* hShwEnRwNQ=0;
15581   static TH1F* hdENQ=0;
15582   static TH1F* hdEFractNQ=0;
15583   static TH1F* hRecoYNQ=0;
15584 
15585   if (!hRecoEnNQ){
15586     MAXMSG("NuPlots",Msg::kDebug,1)
15587       <<"Creating RecoEnYHistosN plots..."<<endl;
15588 
15589     //PQ
15590     hRecoEnPQ=new TH1F("hRecoEnPQ","hRecoEnPQ",
15591                        4*352,-32,320);
15592     hRecoEnPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15593     hRecoEnPQ->GetXaxis()->CenterTitle();
15594     hRecoEnPQ->GetYaxis()->SetTitle("");
15595     hRecoEnPQ->GetYaxis()->CenterTitle();
15596     hRecoEnPQ->SetFillColor(0);
15597     hRecoEnPQ->SetLineColor(1);
15598     //hRecoEnPQ->SetBit(TH1::kCanRebin);
15599 
15600     hRecoEnNotNMBCCPQ=new TH1F("hRecoEnNotNMBCCPQ","hRecoEnNotNMBCCPQ",
15601                        4*352,-32,320);
15602     hRecoEnNotNMBCCPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15603     hRecoEnNotNMBCCPQ->GetXaxis()->CenterTitle();
15604     hRecoEnNotNMBCCPQ->GetYaxis()->SetTitle("");
15605     hRecoEnNotNMBCCPQ->GetYaxis()->CenterTitle();
15606     hRecoEnNotNMBCCPQ->SetFillColor(0);
15607     hRecoEnNotNMBCCPQ->SetLineColor(1);
15608     //hRecoEnNotNMBCCPQ->SetBit(TH1::kCanRebin);
15609 
15610     hRecoEnTrkPQ=new TH1F("hRecoEnTrkPQ","hRecoEnTrkPQ",
15611                           4*352,-32,320);
15612     hRecoEnTrkPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15613     hRecoEnTrkPQ->GetXaxis()->CenterTitle();
15614     hRecoEnTrkPQ->GetYaxis()->SetTitle("");
15615     hRecoEnTrkPQ->GetYaxis()->CenterTitle();
15616     hRecoEnTrkPQ->SetFillColor(0);
15617     hRecoEnTrkPQ->SetLineColor(1);
15618     //hRecoEnTrkPQ->SetBit(TH1::kCanRebin);
15619 
15620     hRecoEnTrkNotNMBCCPQ=new TH1F("hRecoEnTrkNotNMBCCPQ","hRecoEnTrkNotNMBCCPQ",
15621                           4*352,-32,320);
15622     hRecoEnTrkNotNMBCCPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15623     hRecoEnTrkNotNMBCCPQ->GetXaxis()->CenterTitle();
15624     hRecoEnTrkNotNMBCCPQ->GetYaxis()->SetTitle("");
15625     hRecoEnTrkNotNMBCCPQ->GetYaxis()->CenterTitle();
15626     hRecoEnTrkNotNMBCCPQ->SetFillColor(0);
15627     hRecoEnTrkNotNMBCCPQ->SetLineColor(1);
15628     //hRecoEnTrkNotNMBCCPQ->SetBit(TH1::kCanRebin);
15629 
15630     hRecoEnShwPQ=new TH1F("hRecoEnShwPQ","hRecoEnShwPQ",
15631                           4*352,-32,320);
15632     hRecoEnShwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15633     hRecoEnShwPQ->GetXaxis()->CenterTitle();
15634     hRecoEnShwPQ->GetYaxis()->SetTitle("");
15635     hRecoEnShwPQ->GetYaxis()->CenterTitle();
15636     hRecoEnShwPQ->SetFillColor(0);
15637     hRecoEnShwPQ->SetLineColor(1);
15638     //hRecoEnShwPQ->SetBit(TH1::kCanRebin);
15639 
15640     hRecoEnShwNotNMBCCPQ=new TH1F("hRecoEnShwNotNMBCCPQ","hRecoEnShwNotNMBCCPQ",
15641                           4*352,-32,320);
15642     hRecoEnShwNotNMBCCPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15643     hRecoEnShwNotNMBCCPQ->GetXaxis()->CenterTitle();
15644     hRecoEnShwNotNMBCCPQ->GetYaxis()->SetTitle("");
15645     hRecoEnShwNotNMBCCPQ->GetYaxis()->CenterTitle();
15646     hRecoEnShwNotNMBCCPQ->SetFillColor(0);
15647     hRecoEnShwNotNMBCCPQ->SetLineColor(1);
15648     //hRecoEnShwNotNMBCCPQ->SetBit(TH1::kCanRebin);
15649 
15650     hRecoEnRwPQ=new TH1F("hRecoEnRwPQ","hRecoEnRwPQ",
15651                          4*352,-32,320);
15652     hRecoEnRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15653     hRecoEnRwPQ->GetXaxis()->CenterTitle();
15654     hRecoEnRwPQ->GetYaxis()->SetTitle("");
15655     hRecoEnRwPQ->GetYaxis()->CenterTitle();
15656     hRecoEnRwPQ->SetFillColor(0);
15657     hRecoEnRwPQ->SetLineColor(1);
15658     //hRecoEnRwPQ->SetBit(TH1::kCanRebin);
15659 
15660     hRecoEnTrkRwPQ=new TH1F("hRecoEnTrkRwPQ","hRecoEnTrkRwPQ",
15661                             4*352,-32,320);
15662     hRecoEnTrkRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15663     hRecoEnTrkRwPQ->GetXaxis()->CenterTitle();
15664     hRecoEnTrkRwPQ->GetYaxis()->SetTitle("");
15665     hRecoEnTrkRwPQ->GetYaxis()->CenterTitle();
15666     hRecoEnTrkRwPQ->SetFillColor(0);
15667     hRecoEnTrkRwPQ->SetLineColor(1);
15668     //hRecoEnTrkRwPQ->SetBit(TH1::kCanRebin);
15669 
15670     hRecoEnShwRwPQ=new TH1F("hRecoEnShwRwPQ","hRecoEnShwRwPQ",
15671                             4*352,-32,320);
15672     hRecoEnShwRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15673     hRecoEnShwRwPQ->GetXaxis()->CenterTitle();
15674     hRecoEnShwRwPQ->GetYaxis()->SetTitle("");
15675     hRecoEnShwRwPQ->GetYaxis()->CenterTitle();
15676     hRecoEnShwRwPQ->SetFillColor(0);
15677     hRecoEnShwRwPQ->SetLineColor(1);
15678     //hRecoEnShwRwPQ->SetBit(TH1::kCanRebin);
15679 
15680     hRecoEnNoRwPQ=new TH1F("hRecoEnNoRwPQ","hRecoEnNoRwPQ",
15681                            4*352,-32,320);
15682     hRecoEnNoRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15683     hRecoEnNoRwPQ->GetXaxis()->CenterTitle();
15684     hRecoEnNoRwPQ->GetYaxis()->SetTitle("");
15685     hRecoEnNoRwPQ->GetYaxis()->CenterTitle();
15686     hRecoEnNoRwPQ->SetFillColor(0);
15687     hRecoEnNoRwPQ->SetLineColor(1);
15688     //hRecoEnNoRwPQ->SetBit(TH1::kCanRebin);
15689 
15690     hRecoEnTrkNoRwPQ=new TH1F("hRecoEnTrkNoRwPQ","hRecoEnTrkNoRwPQ",
15691                               4*352,-32,320);
15692     hRecoEnTrkNoRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15693     hRecoEnTrkNoRwPQ->GetXaxis()->CenterTitle();
15694     hRecoEnTrkNoRwPQ->GetYaxis()->SetTitle("");
15695     hRecoEnTrkNoRwPQ->GetYaxis()->CenterTitle();
15696     hRecoEnTrkNoRwPQ->SetFillColor(0);
15697     hRecoEnTrkNoRwPQ->SetLineColor(1);
15698     //hRecoEnTrkNoRwPQ->SetBit(TH1::kCanRebin);
15699 
15700     hRecoEnShwNoRwPQ=new TH1F("hRecoEnShwNoRwPQ","hRecoEnShwNoRwPQ",
15701                               4*352,-32,320);
15702     hRecoEnShwNoRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15703     hRecoEnShwNoRwPQ->GetXaxis()->CenterTitle();
15704     hRecoEnShwNoRwPQ->GetYaxis()->SetTitle("");
15705     hRecoEnShwNoRwPQ->GetYaxis()->CenterTitle();
15706     hRecoEnShwNoRwPQ->SetFillColor(0);
15707     hRecoEnShwNoRwPQ->SetLineColor(1);
15708     //hRecoEnShwNoRwPQ->SetBit(TH1::kCanRebin);
15709 
15710     hRecoEnNoRwEnRwPQ=new TH1F
15711       ("hRecoEnNoRwEnRwPQ","hRecoEnNoRwEnRwPQ",4*352,-32,320);
15712     hRecoEnNoRwEnRwPQ->GetXaxis()->
15713       SetTitle("Reconstructed Energy (GeV)");
15714     hRecoEnNoRwEnRwPQ->GetXaxis()->CenterTitle();
15715     hRecoEnNoRwEnRwPQ->GetYaxis()->SetTitle("");
15716     hRecoEnNoRwEnRwPQ->GetYaxis()->CenterTitle();
15717     hRecoEnNoRwEnRwPQ->SetFillColor(0);
15718     hRecoEnNoRwEnRwPQ->SetLineColor(1);
15719     //hRecoEnNoRwEnRwPQ->SetBit(TH1::kCanRebin);
15720 
15721     hRecoEnTrkNoRwEnRwPQ=new TH1F
15722       ("hRecoEnTrkNoRwEnRwPQ","hRecoEnTrkNoRwEnRwPQ",4*352,-32,320);
15723     hRecoEnTrkNoRwEnRwPQ->GetXaxis()->
15724       SetTitle("Reconstructed Energy (GeV)");
15725     hRecoEnTrkNoRwEnRwPQ->GetXaxis()->CenterTitle();
15726     hRecoEnTrkNoRwEnRwPQ->GetYaxis()->SetTitle("");
15727     hRecoEnTrkNoRwEnRwPQ->GetYaxis()->CenterTitle();
15728     hRecoEnTrkNoRwEnRwPQ->SetFillColor(0);
15729     hRecoEnTrkNoRwEnRwPQ->SetLineColor(1);
15730     //hRecoEnTrkNoRwEnRwPQ->SetBit(TH1::kCanRebin);
15731 
15732     hRecoEnShwNoRwEnRwPQ=new TH1F
15733       ("hRecoEnShwNoRwEnRwPQ","hRecoEnShwNoRwEnRwPQ",4*352,-32,320);
15734     hRecoEnShwNoRwEnRwPQ->GetXaxis()->
15735       SetTitle("Reconstructed Energy (GeV)");
15736     hRecoEnShwNoRwEnRwPQ->GetXaxis()->CenterTitle();
15737     hRecoEnShwNoRwEnRwPQ->GetYaxis()->SetTitle("");
15738     hRecoEnShwNoRwEnRwPQ->GetYaxis()->CenterTitle();
15739     hRecoEnShwNoRwEnRwPQ->SetFillColor(0);
15740     hRecoEnShwNoRwEnRwPQ->SetLineColor(1);
15741     //hRecoEnShwNoRwEnRwPQ->SetBit(TH1::kCanRebin);
15742     
15743 
15744     hRecoEnBeamRwPQ=new TH1F("hRecoEnBeamRwPQ","hRecoEnBeamRwPQ",
15745                              4*352,-32,320);
15746     hRecoEnBeamRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15747     hRecoEnBeamRwPQ->GetXaxis()->CenterTitle();
15748     hRecoEnBeamRwPQ->GetYaxis()->SetTitle("");
15749     hRecoEnBeamRwPQ->GetYaxis()->CenterTitle();
15750     hRecoEnBeamRwPQ->SetFillColor(0);
15751     hRecoEnBeamRwPQ->SetLineColor(1);
15752     //hRecoEnBeamRwPQ->SetBit(TH1::kCanRebin);
15753 
15754     hRecoEnTrkBeamRwPQ=new TH1F("hRecoEnTrkBeamRwPQ","hRecoEnTrkBeamRwPQ",
15755                                 4*352,-32,320);
15756     hRecoEnTrkBeamRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15757     hRecoEnTrkBeamRwPQ->GetXaxis()->CenterTitle();
15758     hRecoEnTrkBeamRwPQ->GetYaxis()->SetTitle("");
15759     hRecoEnTrkBeamRwPQ->GetYaxis()->CenterTitle();
15760     hRecoEnTrkBeamRwPQ->SetFillColor(0);
15761     hRecoEnTrkBeamRwPQ->SetLineColor(1);
15762     //hRecoEnTrkBeamRwPQ->SetBit(TH1::kCanRebin);
15763 
15764     hRecoEnShwBeamRwPQ=new TH1F("hRecoEnShwBeamRwPQ","hRecoEnShwBeamRwPQ",
15765                                 4*352,-32,320);
15766     hRecoEnShwBeamRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15767     hRecoEnShwBeamRwPQ->GetXaxis()->CenterTitle();
15768     hRecoEnShwBeamRwPQ->GetYaxis()->SetTitle("");
15769     hRecoEnShwBeamRwPQ->GetYaxis()->CenterTitle();
15770     hRecoEnShwBeamRwPQ->SetFillColor(0);
15771     hRecoEnShwBeamRwPQ->SetLineColor(1);
15772     //hRecoEnShwBeamRwPQ->SetBit(TH1::kCanRebin);
15773 
15774 
15775     hRecoEnDetRwPQ=new TH1F("hRecoEnDetRwPQ","hRecoEnDetRwPQ",
15776                             4*352,-32,320);
15777     hRecoEnDetRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15778     hRecoEnDetRwPQ->GetXaxis()->CenterTitle();
15779     hRecoEnDetRwPQ->GetYaxis()->SetTitle("");
15780     hRecoEnDetRwPQ->GetYaxis()->CenterTitle();
15781     hRecoEnDetRwPQ->SetFillColor(0);
15782     hRecoEnDetRwPQ->SetLineColor(1);
15783     //hRecoEnDetRwPQ->SetBit(TH1::kCanRebin);
15784 
15785     hRecoEnTrkDetRwPQ=new TH1F("hRecoEnTrkDetRwPQ","hRecoEnTrkDetRwPQ",
15786                                4*352,-32,320);
15787     hRecoEnTrkDetRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15788     hRecoEnTrkDetRwPQ->GetXaxis()->CenterTitle();
15789     hRecoEnTrkDetRwPQ->GetYaxis()->SetTitle("");
15790     hRecoEnTrkDetRwPQ->GetYaxis()->CenterTitle();
15791     hRecoEnTrkDetRwPQ->SetFillColor(0);
15792     hRecoEnTrkDetRwPQ->SetLineColor(1);
15793     //hRecoEnTrkDetRwPQ->SetBit(TH1::kCanRebin);
15794 
15795     hRecoEnShwDetRwPQ=new TH1F("hRecoEnShwDetRwPQ","hRecoEnShwDetRwPQ",
15796                                4*352,-32,320);
15797     hRecoEnShwDetRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15798     hRecoEnShwDetRwPQ->GetXaxis()->CenterTitle();
15799     hRecoEnShwDetRwPQ->GetYaxis()->SetTitle("");
15800     hRecoEnShwDetRwPQ->GetYaxis()->CenterTitle();
15801     hRecoEnShwDetRwPQ->SetFillColor(0);
15802     hRecoEnShwDetRwPQ->SetLineColor(1);
15803     //hRecoEnShwDetRwPQ->SetBit(TH1::kCanRebin);
15804 
15805 
15806     hRecoEnGenRwPQ=new TH1F("hRecoEnGenRwPQ","hRecoEnGenRwPQ",
15807                             4*352,-32,320);
15808     hRecoEnGenRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15809     hRecoEnGenRwPQ->GetXaxis()->CenterTitle();
15810     hRecoEnGenRwPQ->GetYaxis()->SetTitle("");
15811     hRecoEnGenRwPQ->GetYaxis()->CenterTitle();
15812     hRecoEnGenRwPQ->SetFillColor(0);
15813     hRecoEnGenRwPQ->SetLineColor(1);
15814     //hRecoEnGenRwPQ->SetBit(TH1::kCanRebin);
15815 
15816     hRecoEnTrkGenRwPQ=new TH1F("hRecoEnTrkGenRwPQ","hRecoEnTrkGenRwPQ",
15817                                4*352,-32,320);
15818     hRecoEnTrkGenRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15819     hRecoEnTrkGenRwPQ->GetXaxis()->CenterTitle();
15820     hRecoEnTrkGenRwPQ->GetYaxis()->SetTitle("");
15821     hRecoEnTrkGenRwPQ->GetYaxis()->CenterTitle();
15822     hRecoEnTrkGenRwPQ->SetFillColor(0);
15823     hRecoEnTrkGenRwPQ->SetLineColor(1);
15824     //hRecoEnTrkGenRwPQ->SetBit(TH1::kCanRebin);
15825 
15826     hRecoEnShwGenRwPQ=new TH1F("hRecoEnShwGenRwPQ","hRecoEnShwGenRwPQ",
15827                                4*352,-32,320);
15828     hRecoEnShwGenRwPQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
15829     hRecoEnShwGenRwPQ->GetXaxis()->CenterTitle();
15830     hRecoEnShwGenRwPQ->GetYaxis()->SetTitle("");
15831     hRecoEnShwGenRwPQ->GetYaxis()->CenterTitle();
15832     hRecoEnShwGenRwPQ->SetFillColor(0);
15833     hRecoEnShwGenRwPQ->SetLineColor(1);
15834     //hRecoEnShwGenRwPQ->SetBit(TH1::kCanRebin);
15835 
15836 
15837     hRecoEnAllRwPQ=new TH1F("hRecoEnAllRwPQ","hRecoEnAllRwPQ",
15838                             4*352,-32,320);
15839     hRecoEnAllRwPQ->GetXaxis()->
15840       SetTitle("Reconstructed Energy (GeV)");
15841     hRecoEnAllRwPQ->GetXaxis()->CenterTitle();
15842     hRecoEnAllRwPQ->GetYaxis()->SetTitle("");
15843     hRecoEnAllRwPQ->GetYaxis()->CenterTitle();
15844     hRecoEnAllRwPQ->SetFillColor(0);
15845     hRecoEnAllRwPQ->SetLineColor(1);
15846     //hRecoEnAllRwPQ->SetBit(TH1::kCanRebin);
15847 
15848     hRecoEnTrkAllRwPQ=new TH1F("hRecoEnTrkAllRwPQ","hRecoEnTrkAllRwPQ",
15849                                4*352,-32,320);
15850     hRecoEnTrkAllRwPQ->GetXaxis()->
15851       SetTitle("Reconstructed Energy (GeV)");
15852     hRecoEnTrkAllRwPQ->GetXaxis()->CenterTitle();
15853     hRecoEnTrkAllRwPQ->GetYaxis()->SetTitle("");
15854     hRecoEnTrkAllRwPQ->GetYaxis()->CenterTitle();
15855     hRecoEnTrkAllRwPQ->SetFillColor(0);
15856     hRecoEnTrkAllRwPQ->SetLineColor(1);
15857     //hRecoEnTrkAllRwPQ->SetBit(TH1::kCanRebin);
15858 
15859     hRecoEnShwAllRwPQ=new TH1F("hRecoEnShwAllRwPQ","hRecoEnShwAllRwPQ",
15860                                4*352,-32,320);
15861     hRecoEnShwAllRwPQ->GetXaxis()->
15862       SetTitle("Reconstructed Energy (GeV)");
15863     hRecoEnShwAllRwPQ->GetXaxis()->CenterTitle();
15864     hRecoEnShwAllRwPQ->GetYaxis()->SetTitle("");
15865     hRecoEnShwAllRwPQ->GetYaxis()->CenterTitle();
15866     hRecoEnShwAllRwPQ->SetFillColor(0);
15867     hRecoEnShwAllRwPQ->SetLineColor(1);
15868     //hRecoEnShwAllRwPQ->SetBit(TH1::kCanRebin);
15869 
15870     hRecoEnAllRwEnRwPQ=new TH1F
15871       ("hRecoEnAllRwEnRwPQ","hRecoEnAllRwEnRwPQ",4*352,-32,320);
15872     hRecoEnAllRwEnRwPQ->GetXaxis()->
15873       SetTitle("Reconstructed Energy (GeV)");
15874     hRecoEnAllRwEnRwPQ->GetXaxis()->CenterTitle();
15875     hRecoEnAllRwEnRwPQ->GetYaxis()->SetTitle("");
15876     hRecoEnAllRwEnRwPQ->GetYaxis()->CenterTitle();
15877     hRecoEnAllRwEnRwPQ->SetFillColor(0);
15878     hRecoEnAllRwEnRwPQ->SetLineColor(1);
15879     //hRecoEnAllRwEnRwPQ->SetBit(TH1::kCanRebin);
15880 
15881     hRecoEnTrkAllRwEnRwPQ=new TH1F
15882       ("hRecoEnTrkAllRwEnRwPQ","hRecoEnTrkAllRwEnRwPQ",4*352,-32,320);
15883     hRecoEnTrkAllRwEnRwPQ->GetXaxis()->
15884       SetTitle("Reconstructed Energy (GeV)");
15885     hRecoEnTrkAllRwEnRwPQ->GetXaxis()->CenterTitle();
15886     hRecoEnTrkAllRwEnRwPQ->GetYaxis()->SetTitle("");
15887     hRecoEnTrkAllRwEnRwPQ->GetYaxis()->CenterTitle();
15888     hRecoEnTrkAllRwEnRwPQ->SetFillColor(0);
15889     hRecoEnTrkAllRwEnRwPQ->SetLineColor(1);
15890     //hRecoEnTrkAllRwEnRwPQ->SetBit(TH1::kCanRebin);
15891 
15892     hRecoEnShwAllRwEnRwPQ=new TH1F
15893       ("hRecoEnShwAllRwEnRwPQ","hRecoEnShwAllRwEnRwPQ",4*352,-32,320);
15894     hRecoEnShwAllRwEnRwPQ->GetXaxis()->
15895       SetTitle("Reconstructed Energy (GeV)");
15896     hRecoEnShwAllRwEnRwPQ->GetXaxis()->CenterTitle();
15897     hRecoEnShwAllRwEnRwPQ->GetYaxis()->SetTitle("");
15898     hRecoEnShwAllRwEnRwPQ->GetYaxis()->CenterTitle();
15899     hRecoEnShwAllRwEnRwPQ->SetFillColor(0);
15900     hRecoEnShwAllRwEnRwPQ->SetLineColor(1);
15901     //hRecoEnShwAllRwEnRwPQ->SetBit(TH1::kCanRebin);
15902 
15903 
15904 
15905     hRwPQ=new TH1F("hRwPQ","hRwPQ",10000,-10,10);
15906     hRwPQ->SetTitle("Reweight value used");
15907     hRwPQ->GetXaxis()->SetTitle("Reweight value used");
15908     hRwPQ->GetXaxis()->CenterTitle();
15909     hRwPQ->GetYaxis()->SetTitle("");
15910     hRwPQ->GetYaxis()->CenterTitle();
15911     hRwPQ->SetFillColor(0);
15912     hRwPQ->SetLineColor(1);
15913     //hRwPQ->SetBit(TH1::kCanRebin);
15914     
15915     hBeamRwPQ=new TH1F("hBeamRwPQ","hBeamRwPQ",10000,-10,10);
15916     hBeamRwPQ->SetTitle("Beam Reweight Value");
15917     hBeamRwPQ->GetXaxis()->SetTitle("Beam Reweight Value");
15918     hBeamRwPQ->GetXaxis()->CenterTitle();
15919     hBeamRwPQ->GetYaxis()->SetTitle("");
15920     hBeamRwPQ->GetYaxis()->CenterTitle();
15921     hBeamRwPQ->SetFillColor(0);
15922     hBeamRwPQ->SetLineColor(1);
15923     //hBeamRwPQ->SetBit(TH1::kCanRebin);
15924 
15925     hDetRwPQ=new TH1F("hDetRwPQ","hDetRwPQ",10000,-10,10);
15926     hDetRwPQ->SetTitle("Detector Reweight Value");
15927     hDetRwPQ->GetXaxis()->SetTitle("Detector Reweight Value");
15928     hDetRwPQ->GetXaxis()->CenterTitle();
15929     hDetRwPQ->GetYaxis()->SetTitle("");
15930     hDetRwPQ->GetYaxis()->CenterTitle();
15931     hDetRwPQ->SetFillColor(0);
15932     hDetRwPQ->SetLineColor(1);
15933     //hDetRwPQ->SetBit(TH1::kCanRebin);
15934 
15935     hGenRwPQ=new TH1F("hGenRwPQ","hGenRwPQ",10000,-10,10);
15936     hGenRwPQ->SetTitle("Generator Reweight Value");
15937     hGenRwPQ->GetXaxis()->SetTitle("Generator Reweight Value");
15938     hGenRwPQ->GetXaxis()->CenterTitle();
15939     hGenRwPQ->GetYaxis()->SetTitle("");
15940     hGenRwPQ->GetYaxis()->CenterTitle();
15941     hGenRwPQ->SetFillColor(0);
15942     hGenRwPQ->SetLineColor(1);
15943     //hGenRwPQ->SetBit(TH1::kCanRebin);
15944 
15945     hAllRwPQ=new TH1F("hAllRwPQ","hAllRwPQ",10000,-10,10);
15946     hAllRwPQ->SetTitle("Beam*Det*Gen Reweight Value");
15947     hAllRwPQ->GetXaxis()->SetTitle("Beam*Det*Gen Reweight Value");
15948     hAllRwPQ->GetXaxis()->CenterTitle();
15949     hAllRwPQ->GetYaxis()->SetTitle("");
15950     hAllRwPQ->GetYaxis()->CenterTitle();
15951     hAllRwPQ->SetFillColor(0);
15952     hAllRwPQ->SetLineColor(1);
15953     //hAllRwPQ->SetBit(TH1::kCanRebin);
15954 
15955     hTrkEnRwPQ=new TH1F("hTrkEnRwPQ","hTrkEnRwPQ",10000,-10,10);
15956     hTrkEnRwPQ->SetTitle("Trk Energy Reweight Value");
15957     hTrkEnRwPQ->GetXaxis()->SetTitle("Trk Energy Reweight Value");
15958     hTrkEnRwPQ->GetXaxis()->CenterTitle();
15959     hTrkEnRwPQ->GetYaxis()->SetTitle("");
15960     hTrkEnRwPQ->GetYaxis()->CenterTitle();
15961     hTrkEnRwPQ->SetFillColor(0);
15962     hTrkEnRwPQ->SetLineColor(1);
15963     //hTrkEnRwPQ->SetBit(TH1::kCanRebin);
15964 
15965     hShwEnRwPQ=new TH1F("hShwEnRwPQ","hShwEnRwPQ",10000,-10,10);
15966     hShwEnRwPQ->SetTitle("Shw Energy Reweight Value");
15967     hShwEnRwPQ->GetXaxis()->SetTitle("Shw Energy Reweight Value");
15968     hShwEnRwPQ->GetXaxis()->CenterTitle();
15969     hShwEnRwPQ->GetYaxis()->SetTitle("");
15970     hShwEnRwPQ->GetYaxis()->CenterTitle();
15971     hShwEnRwPQ->SetFillColor(0);
15972     hShwEnRwPQ->SetLineColor(1);
15973     //hShwEnRwPQ->SetBit(TH1::kCanRebin);
15974 
15975     hdEPQ=new TH1F("hdEPQ","hdEPQ",10000,-50,50);
15976     hdEPQ->GetXaxis()->SetTitle("Diff. in Reco Energy (GeV)");
15977     hdEPQ->GetXaxis()->CenterTitle();
15978     hdEPQ->GetYaxis()->SetTitle("");
15979     hdEPQ->GetYaxis()->CenterTitle();
15980     hdEPQ->SetFillColor(0);
15981     hdEPQ->SetLineColor(1);
15982     //hdEPQ->SetBit(TH1::kCanRebin);
15983 
15984     hdEFractPQ=new TH1F("hdEFractPQ","hdEFractPQ",10000,-4,4);
15985     hdEFractPQ->GetXaxis()->SetTitle("Fract. Diff. in Reco Energy");
15986     hdEFractPQ->GetXaxis()->CenterTitle();
15987     hdEFractPQ->GetYaxis()->SetTitle("");
15988     hdEFractPQ->GetYaxis()->CenterTitle();
15989     hdEFractPQ->SetFillColor(0);
15990     hdEFractPQ->SetLineColor(1);
15991     //hdEFractPQ->SetBit(TH1::kCanRebin);
15992 
15993     hRecoYPQ=new TH1F("hRecoYPQ","hRecoYPQ",
15994                       1400,-0.2,1.2);
15995     hRecoYPQ->GetXaxis()->SetTitle("Reconstructed y");
15996     hRecoYPQ->GetXaxis()->CenterTitle();
15997     hRecoYPQ->GetYaxis()->SetTitle("");
15998     hRecoYPQ->GetYaxis()->CenterTitle();
15999     hRecoYPQ->SetFillColor(0);
16000     hRecoYPQ->SetLineColor(1);
16001     //hRecoYPQ->SetBit(TH1::kCanRebin);
16002 
16003     hRecoYNotNMBCCPQ=new TH1F("hRecoYNotNMBCCPQ","hRecoYNotNMBCCPQ",
16004                       1400,-0.2,1.2);
16005     hRecoYNotNMBCCPQ->GetXaxis()->SetTitle("Reconstructed y");
16006     hRecoYNotNMBCCPQ->GetXaxis()->CenterTitle();
16007     hRecoYNotNMBCCPQ->GetYaxis()->SetTitle("");
16008     hRecoYNotNMBCCPQ->GetYaxis()->CenterTitle();
16009     hRecoYNotNMBCCPQ->SetFillColor(0);
16010     hRecoYNotNMBCCPQ->SetLineColor(1);
16011     //hRecoYNotNMBCCPQ->SetBit(TH1::kCanRebin);
16012 
16014     //NQ
16016     hRecoEnNQ=new TH1F("hRecoEnNQ","hRecoEnNQ",
16017                        4*352,-32,320);
16018     hRecoEnNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16019     hRecoEnNQ->GetXaxis()->CenterTitle();
16020     hRecoEnNQ->GetYaxis()->SetTitle("");
16021     hRecoEnNQ->GetYaxis()->CenterTitle();
16022     hRecoEnNQ->SetFillColor(0);
16023     hRecoEnNQ->SetLineColor(1);
16024     //hRecoEnNQ->SetBit(TH1::kCanRebin);
16025 
16026     hRecoEnTrkNQ=new TH1F("hRecoEnTrkNQ","hRecoEnTrkNQ",
16027                           4*352,-32,320);
16028     hRecoEnTrkNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16029     hRecoEnTrkNQ->GetXaxis()->CenterTitle();
16030     hRecoEnTrkNQ->GetYaxis()->SetTitle("");
16031     hRecoEnTrkNQ->GetYaxis()->CenterTitle();
16032     hRecoEnTrkNQ->SetFillColor(0);
16033     hRecoEnTrkNQ->SetLineColor(1);
16034     //hRecoEnTrkNQ->SetBit(TH1::kCanRebin);
16035 
16036     hRecoEnShwNQ=new TH1F("hRecoEnShwNQ","hRecoEnShwNQ",
16037                           4*352,-32,320);
16038     hRecoEnShwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16039     hRecoEnShwNQ->GetXaxis()->CenterTitle();
16040     hRecoEnShwNQ->GetYaxis()->SetTitle("");
16041     hRecoEnShwNQ->GetYaxis()->CenterTitle();
16042     hRecoEnShwNQ->SetFillColor(0);
16043     hRecoEnShwNQ->SetLineColor(1);
16044     //hRecoEnShwNQ->SetBit(TH1::kCanRebin);
16045 
16046     hRecoEnRwNQ=new TH1F("hRecoEnRwNQ","hRecoEnRwNQ",
16047                          4*352,-32,320);
16048     hRecoEnRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16049     hRecoEnRwNQ->GetXaxis()->CenterTitle();
16050     hRecoEnRwNQ->GetYaxis()->SetTitle("");
16051     hRecoEnRwNQ->GetYaxis()->CenterTitle();
16052     hRecoEnRwNQ->SetFillColor(0);
16053     hRecoEnRwNQ->SetLineColor(1);
16054     //hRecoEnRwNQ->SetBit(TH1::kCanRebin);
16055 
16056     hRecoEnTrkRwNQ=new TH1F("hRecoEnTrkRwNQ","hRecoEnTrkRwNQ",
16057                             4*352,-32,320);
16058     hRecoEnTrkRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16059     hRecoEnTrkRwNQ->GetXaxis()->CenterTitle();
16060     hRecoEnTrkRwNQ->GetYaxis()->SetTitle("");
16061     hRecoEnTrkRwNQ->GetYaxis()->CenterTitle();
16062     hRecoEnTrkRwNQ->SetFillColor(0);
16063     hRecoEnTrkRwNQ->SetLineColor(1);
16064     //hRecoEnTrkRwNQ->SetBit(TH1::kCanRebin);
16065 
16066     hRecoEnShwRwNQ=new TH1F("hRecoEnShwRwNQ","hRecoEnShwRwNQ",
16067                             4*352,-32,320);
16068     hRecoEnShwRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16069     hRecoEnShwRwNQ->GetXaxis()->CenterTitle();
16070     hRecoEnShwRwNQ->GetYaxis()->SetTitle("");
16071     hRecoEnShwRwNQ->GetYaxis()->CenterTitle();
16072     hRecoEnShwRwNQ->SetFillColor(0);
16073     hRecoEnShwRwNQ->SetLineColor(1);
16074     //hRecoEnShwRwNQ->SetBit(TH1::kCanRebin);
16075 
16076     hRecoEnNoRwNQ=new TH1F("hRecoEnNoRwNQ","hRecoEnNoRwNQ",
16077                            4*352,-32,320);
16078     hRecoEnNoRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16079     hRecoEnNoRwNQ->GetXaxis()->CenterTitle();
16080     hRecoEnNoRwNQ->GetYaxis()->SetTitle("");
16081     hRecoEnNoRwNQ->GetYaxis()->CenterTitle();
16082     hRecoEnNoRwNQ->SetFillColor(0);
16083     hRecoEnNoRwNQ->SetLineColor(1);
16084     //hRecoEnNoRwNQ->SetBit(TH1::kCanRebin);
16085 
16086     hRecoEnTrkNoRwNQ=new TH1F("hRecoEnTrkNoRwNQ","hRecoEnTrkNoRwNQ",
16087                               4*352,-32,320);
16088     hRecoEnTrkNoRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16089     hRecoEnTrkNoRwNQ->GetXaxis()->CenterTitle();
16090     hRecoEnTrkNoRwNQ->GetYaxis()->SetTitle("");
16091     hRecoEnTrkNoRwNQ->GetYaxis()->CenterTitle();
16092     hRecoEnTrkNoRwNQ->SetFillColor(0);
16093     hRecoEnTrkNoRwNQ->SetLineColor(1);
16094     //hRecoEnTrkNoRwNQ->SetBit(TH1::kCanRebin);
16095 
16096     hRecoEnShwNoRwNQ=new TH1F("hRecoEnShwNoRwNQ","hRecoEnShwNoRwNQ",
16097                               4*352,-32,320);
16098     hRecoEnShwNoRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16099     hRecoEnShwNoRwNQ->GetXaxis()->CenterTitle();
16100     hRecoEnShwNoRwNQ->GetYaxis()->SetTitle("");
16101     hRecoEnShwNoRwNQ->GetYaxis()->CenterTitle();
16102     hRecoEnShwNoRwNQ->SetFillColor(0);
16103     hRecoEnShwNoRwNQ->SetLineColor(1);
16104     //hRecoEnShwNoRwNQ->SetBit(TH1::kCanRebin);
16105 
16106     hRecoEnNoRwEnRwNQ=new TH1F
16107       ("hRecoEnNoRwEnRwNQ","hRecoEnNoRwEnRwNQ",4*352,-32,320);
16108     hRecoEnNoRwEnRwNQ->GetXaxis()->
16109       SetTitle("Reconstructed Energy (GeV)");
16110     hRecoEnNoRwEnRwNQ->GetXaxis()->CenterTitle();
16111     hRecoEnNoRwEnRwNQ->GetYaxis()->SetTitle("");
16112     hRecoEnNoRwEnRwNQ->GetYaxis()->CenterTitle();
16113     hRecoEnNoRwEnRwNQ->SetFillColor(0);
16114     hRecoEnNoRwEnRwNQ->SetLineColor(1);
16115     //hRecoEnNoRwEnRwNQ->SetBit(TH1::kCanRebin);
16116 
16117     hRecoEnTrkNoRwEnRwNQ=new TH1F
16118       ("hRecoEnTrkNoRwEnRwNQ","hRecoEnTrkNoRwEnRwNQ",4*352,-32,320);
16119     hRecoEnTrkNoRwEnRwNQ->GetXaxis()->
16120       SetTitle("Reconstructed Energy (GeV)");
16121     hRecoEnTrkNoRwEnRwNQ->GetXaxis()->CenterTitle();
16122     hRecoEnTrkNoRwEnRwNQ->GetYaxis()->SetTitle("");
16123     hRecoEnTrkNoRwEnRwNQ->GetYaxis()->CenterTitle();
16124     hRecoEnTrkNoRwEnRwNQ->SetFillColor(0);
16125     hRecoEnTrkNoRwEnRwNQ->SetLineColor(1);
16126     //hRecoEnTrkNoRwEnRwNQ->SetBit(TH1::kCanRebin);
16127 
16128     hRecoEnShwNoRwEnRwNQ=new TH1F
16129       ("hRecoEnShwNoRwEnRwNQ","hRecoEnShwNoRwEnRwNQ",4*352,-32,320);
16130     hRecoEnShwNoRwEnRwNQ->GetXaxis()->
16131       SetTitle("Reconstructed Energy (GeV)");
16132     hRecoEnShwNoRwEnRwNQ->GetXaxis()->CenterTitle();
16133     hRecoEnShwNoRwEnRwNQ->GetYaxis()->SetTitle("");
16134     hRecoEnShwNoRwEnRwNQ->GetYaxis()->CenterTitle();
16135     hRecoEnShwNoRwEnRwNQ->SetFillColor(0);
16136     hRecoEnShwNoRwEnRwNQ->SetLineColor(1);
16137     //hRecoEnShwNoRwEnRwNQ->SetBit(TH1::kCanRebin);
16138     
16139 
16140     hRecoEnBeamRwNQ=new TH1F("hRecoEnBeamRwNQ","hRecoEnBeamRwNQ",
16141                              4*352,-32,320);
16142     hRecoEnBeamRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16143     hRecoEnBeamRwNQ->GetXaxis()->CenterTitle();
16144     hRecoEnBeamRwNQ->GetYaxis()->SetTitle("");
16145     hRecoEnBeamRwNQ->GetYaxis()->CenterTitle();
16146     hRecoEnBeamRwNQ->SetFillColor(0);
16147     hRecoEnBeamRwNQ->SetLineColor(1);
16148     //hRecoEnBeamRwNQ->SetBit(TH1::kCanRebin);
16149 
16150     hRecoEnTrkBeamRwNQ=new TH1F("hRecoEnTrkBeamRwNQ","hRecoEnTrkBeamRwNQ",
16151                                 4*352,-32,320);
16152     hRecoEnTrkBeamRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16153     hRecoEnTrkBeamRwNQ->GetXaxis()->CenterTitle();
16154     hRecoEnTrkBeamRwNQ->GetYaxis()->SetTitle("");
16155     hRecoEnTrkBeamRwNQ->GetYaxis()->CenterTitle();
16156     hRecoEnTrkBeamRwNQ->SetFillColor(0);
16157     hRecoEnTrkBeamRwNQ->SetLineColor(1);
16158     //hRecoEnTrkBeamRwNQ->SetBit(TH1::kCanRebin);
16159 
16160     hRecoEnShwBeamRwNQ=new TH1F("hRecoEnShwBeamRwNQ","hRecoEnShwBeamRwNQ",
16161                                 4*352,-32,320);
16162     hRecoEnShwBeamRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16163     hRecoEnShwBeamRwNQ->GetXaxis()->CenterTitle();
16164     hRecoEnShwBeamRwNQ->GetYaxis()->SetTitle("");
16165     hRecoEnShwBeamRwNQ->GetYaxis()->CenterTitle();
16166     hRecoEnShwBeamRwNQ->SetFillColor(0);
16167     hRecoEnShwBeamRwNQ->SetLineColor(1);
16168     //hRecoEnShwBeamRwNQ->SetBit(TH1::kCanRebin);
16169 
16170 
16171     hRecoEnDetRwNQ=new TH1F("hRecoEnDetRwNQ","hRecoEnDetRwNQ",
16172                             4*352,-32,320);
16173     hRecoEnDetRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16174     hRecoEnDetRwNQ->GetXaxis()->CenterTitle();
16175     hRecoEnDetRwNQ->GetYaxis()->SetTitle("");
16176     hRecoEnDetRwNQ->GetYaxis()->CenterTitle();
16177     hRecoEnDetRwNQ->SetFillColor(0);
16178     hRecoEnDetRwNQ->SetLineColor(1);
16179     //hRecoEnDetRwNQ->SetBit(TH1::kCanRebin);
16180 
16181     hRecoEnTrkDetRwNQ=new TH1F("hRecoEnTrkDetRwNQ","hRecoEnTrkDetRwNQ",
16182                                4*352,-32,320);
16183     hRecoEnTrkDetRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16184     hRecoEnTrkDetRwNQ->GetXaxis()->CenterTitle();
16185     hRecoEnTrkDetRwNQ->GetYaxis()->SetTitle("");
16186     hRecoEnTrkDetRwNQ->GetYaxis()->CenterTitle();
16187     hRecoEnTrkDetRwNQ->SetFillColor(0);
16188     hRecoEnTrkDetRwNQ->SetLineColor(1);
16189     //hRecoEnTrkDetRwNQ->SetBit(TH1::kCanRebin);
16190 
16191     hRecoEnShwDetRwNQ=new TH1F("hRecoEnShwDetRwNQ","hRecoEnShwDetRwNQ",
16192                                4*352,-32,320);
16193     hRecoEnShwDetRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16194     hRecoEnShwDetRwNQ->GetXaxis()->CenterTitle();
16195     hRecoEnShwDetRwNQ->GetYaxis()->SetTitle("");
16196     hRecoEnShwDetRwNQ->GetYaxis()->CenterTitle();
16197     hRecoEnShwDetRwNQ->SetFillColor(0);
16198     hRecoEnShwDetRwNQ->SetLineColor(1);
16199     //hRecoEnShwDetRwNQ->SetBit(TH1::kCanRebin);
16200 
16201 
16202     hRecoEnGenRwNQ=new TH1F("hRecoEnGenRwNQ","hRecoEnGenRwNQ",
16203                             4*352,-32,320);
16204     hRecoEnGenRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16205     hRecoEnGenRwNQ->GetXaxis()->CenterTitle();
16206     hRecoEnGenRwNQ->GetYaxis()->SetTitle("");
16207     hRecoEnGenRwNQ->GetYaxis()->CenterTitle();
16208     hRecoEnGenRwNQ->SetFillColor(0);
16209     hRecoEnGenRwNQ->SetLineColor(1);
16210     //hRecoEnGenRwNQ->SetBit(TH1::kCanRebin);
16211 
16212     hRecoEnTrkGenRwNQ=new TH1F("hRecoEnTrkGenRwNQ","hRecoEnTrkGenRwNQ",
16213                                4*352,-32,320);
16214     hRecoEnTrkGenRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16215     hRecoEnTrkGenRwNQ->GetXaxis()->CenterTitle();
16216     hRecoEnTrkGenRwNQ->GetYaxis()->SetTitle("");
16217     hRecoEnTrkGenRwNQ->GetYaxis()->CenterTitle();
16218     hRecoEnTrkGenRwNQ->SetFillColor(0);
16219     hRecoEnTrkGenRwNQ->SetLineColor(1);
16220     //hRecoEnTrkGenRwNQ->SetBit(TH1::kCanRebin);
16221 
16222     hRecoEnShwGenRwNQ=new TH1F("hRecoEnShwGenRwNQ","hRecoEnShwGenRwNQ",
16223                                4*352,-32,320);
16224     hRecoEnShwGenRwNQ->GetXaxis()->SetTitle("Reconstructed Energy (GeV)");
16225     hRecoEnShwGenRwNQ->GetXaxis()->CenterTitle();
16226     hRecoEnShwGenRwNQ->GetYaxis()->SetTitle("");
16227     hRecoEnShwGenRwNQ->GetYaxis()->CenterTitle();
16228     hRecoEnShwGenRwNQ->SetFillColor(0);
16229     hRecoEnShwGenRwNQ->SetLineColor(1);
16230     //hRecoEnShwGenRwNQ->SetBit(TH1::kCanRebin);
16231 
16232 
16233     hRecoEnAllRwNQ=new TH1F("hRecoEnAllRwNQ","hRecoEnAllRwNQ",
16234                             4*352,-32,320);
16235     hRecoEnAllRwNQ->GetXaxis()->
16236       SetTitle("Reconstructed Energy (GeV)");
16237     hRecoEnAllRwNQ->GetXaxis()->CenterTitle();
16238     hRecoEnAllRwNQ->GetYaxis()->SetTitle("");
16239     hRecoEnAllRwNQ->GetYaxis()->CenterTitle();
16240     hRecoEnAllRwNQ->SetFillColor(0);
16241     hRecoEnAllRwNQ->SetLineColor(1);
16242     //hRecoEnAllRwNQ->SetBit(TH1::kCanRebin);
16243 
16244     hRecoEnTrkAllRwNQ=new TH1F("hRecoEnTrkAllRwNQ","hRecoEnTrkAllRwNQ",
16245                                4*352,-32,320);
16246     hRecoEnTrkAllRwNQ->GetXaxis()->
16247       SetTitle("Reconstructed Energy (GeV)");
16248     hRecoEnTrkAllRwNQ->GetXaxis()->CenterTitle();
16249     hRecoEnTrkAllRwNQ->GetYaxis()->SetTitle("");
16250     hRecoEnTrkAllRwNQ->GetYaxis()->CenterTitle();
16251     hRecoEnTrkAllRwNQ->SetFillColor(0);
16252     hRecoEnTrkAllRwNQ->SetLineColor(1);
16253     //hRecoEnTrkAllRwNQ->SetBit(TH1::kCanRebin);
16254 
16255     hRecoEnShwAllRwNQ=new TH1F("hRecoEnShwAllRwNQ","hRecoEnShwAllRwNQ",
16256                                4*352,-32,320);
16257     hRecoEnShwAllRwNQ->GetXaxis()->
16258       SetTitle("Reconstructed Energy (GeV)");
16259     hRecoEnShwAllRwNQ->GetXaxis()->CenterTitle();
16260     hRecoEnShwAllRwNQ->GetYaxis()->SetTitle("");
16261     hRecoEnShwAllRwNQ->GetYaxis()->CenterTitle();
16262     hRecoEnShwAllRwNQ->SetFillColor(0);
16263     hRecoEnShwAllRwNQ->SetLineColor(1);
16264     //hRecoEnShwAllRwNQ->SetBit(TH1::kCanRebin);
16265 
16266     hRecoEnAllRwEnRwNQ=new TH1F
16267       ("hRecoEnAllRwEnRwNQ","hRecoEnAllRwEnRwNQ",4*352,-32,320);
16268     hRecoEnAllRwEnRwNQ->GetXaxis()->
16269       SetTitle("Reconstructed Energy (GeV)");
16270     hRecoEnAllRwEnRwNQ->GetXaxis()->CenterTitle();
16271     hRecoEnAllRwEnRwNQ->GetYaxis()->SetTitle("");
16272     hRecoEnAllRwEnRwNQ->GetYaxis()->CenterTitle();
16273     hRecoEnAllRwEnRwNQ->SetFillColor(0);
16274     hRecoEnAllRwEnRwNQ->SetLineColor(1);
16275     //hRecoEnAllRwEnRwNQ->SetBit(TH1::kCanRebin);
16276 
16277     hRecoEnTrkAllRwEnRwNQ=new TH1F
16278       ("hRecoEnTrkAllRwEnRwNQ","hRecoEnTrkAllRwEnRwNQ",4*352,-32,320);
16279     hRecoEnTrkAllRwEnRwNQ->GetXaxis()->
16280       SetTitle("Reconstructed Energy (GeV)");
16281     hRecoEnTrkAllRwEnRwNQ->GetXaxis()->CenterTitle();
16282     hRecoEnTrkAllRwEnRwNQ->GetYaxis()->SetTitle("");
16283     hRecoEnTrkAllRwEnRwNQ->GetYaxis()->CenterTitle();
16284     hRecoEnTrkAllRwEnRwNQ->SetFillColor(0);
16285     hRecoEnTrkAllRwEnRwNQ->SetLineColor(1);
16286     //hRecoEnTrkAllRwEnRwNQ->SetBit(TH1::kCanRebin);
16287 
16288     hRecoEnShwAllRwEnRwNQ=new TH1F
16289       ("hRecoEnShwAllRwEnRwNQ","hRecoEnShwAllRwEnRwNQ",4*352,-32,320);
16290     hRecoEnShwAllRwEnRwNQ->GetXaxis()->
16291       SetTitle("Reconstructed Energy (GeV)");
16292     hRecoEnShwAllRwEnRwNQ->GetXaxis()->CenterTitle();
16293     hRecoEnShwAllRwEnRwNQ->GetYaxis()->SetTitle("");
16294     hRecoEnShwAllRwEnRwNQ->GetYaxis()->CenterTitle();
16295     hRecoEnShwAllRwEnRwNQ->SetFillColor(0);
16296     hRecoEnShwAllRwEnRwNQ->SetLineColor(1);
16297     //hRecoEnShwAllRwEnRwNQ->SetBit(TH1::kCanRebin);
16298 
16299 
16300     hRwNQ=new TH1F("hRwNQ","hRwNQ",10000,-10,10);
16301     hRwNQ->SetTitle("Reweight value used");
16302     hRwNQ->GetXaxis()->SetTitle("Reweight value used");
16303     hRwNQ->GetXaxis()->CenterTitle();
16304     hRwNQ->GetYaxis()->SetTitle("");
16305     hRwNQ->GetYaxis()->CenterTitle();
16306     hRwNQ->SetFillColor(0);
16307     hRwNQ->SetLineColor(1);
16308     //hRwNQ->SetBit(TH1::kCanRebin);
16309     
16310     hBeamRwNQ=new TH1F("hBeamRwNQ","hBeamRwNQ",10000,-10,10);
16311     hBeamRwNQ->SetTitle("Beam Reweight Value");
16312     hBeamRwNQ->GetXaxis()->SetTitle("Beam Reweight Value");
16313     hBeamRwNQ->GetXaxis()->CenterTitle();
16314     hBeamRwNQ->GetYaxis()->SetTitle("");
16315     hBeamRwNQ->GetYaxis()->CenterTitle();
16316     hBeamRwNQ->SetFillColor(0);
16317     hBeamRwNQ->SetLineColor(1);
16318     //hBeamRwNQ->SetBit(TH1::kCanRebin);
16319 
16320     hDetRwNQ=new TH1F("hDetRwNQ","hDetRwNQ",10000,-10,10);
16321     hDetRwNQ->SetTitle("Detector Reweight Value");
16322     hDetRwNQ->GetXaxis()->SetTitle("Detector Reweight Value");
16323     hDetRwNQ->GetXaxis()->CenterTitle();
16324     hDetRwNQ->GetYaxis()->SetTitle("");
16325     hDetRwNQ->GetYaxis()->CenterTitle();
16326     hDetRwNQ->SetFillColor(0);
16327     hDetRwNQ->SetLineColor(1);
16328     //hDetRwNQ->SetBit(TH1::kCanRebin);
16329 
16330     hGenRwNQ=new TH1F("hGenRwNQ","hGenRwNQ",10000,-10,10);
16331     hGenRwNQ->SetTitle("Generator Reweight Value");
16332     hGenRwNQ->GetXaxis()->SetTitle("Generator Reweight Value");
16333     hGenRwNQ->GetXaxis()->CenterTitle();
16334     hGenRwNQ->GetYaxis()->SetTitle("");
16335     hGenRwNQ->GetYaxis()->CenterTitle();
16336     hGenRwNQ->SetFillColor(0);
16337     hGenRwNQ->SetLineColor(1);
16338     //hGenRwNQ->SetBit(TH1::kCanRebin);
16339 
16340     hAllRwNQ=new TH1F("hAllRwNQ","hAllRwNQ",10000,-10,10);
16341     hAllRwNQ->SetTitle("Beam*Det*Gen Reweight Value");
16342     hAllRwNQ->GetXaxis()->SetTitle("Beam*Det*Gen Reweight Value");
16343     hAllRwNQ->GetXaxis()->CenterTitle();
16344     hAllRwNQ->GetYaxis()->SetTitle("");
16345     hAllRwNQ->GetYaxis()->CenterTitle();
16346     hAllRwNQ->SetFillColor(0);
16347     hAllRwNQ->SetLineColor(1);
16348     //hAllRwNQ->SetBit(TH1::kCanRebin);
16349 
16350     hTrkEnRwNQ=new TH1F("hTrkEnRwNQ","hTrkEnRwNQ",10000,-10,10);
16351     hTrkEnRwNQ->SetTitle("Trk Energy Reweight Value");
16352     hTrkEnRwNQ->GetXaxis()->SetTitle("Trk Energy Reweight Value");
16353     hTrkEnRwNQ->GetXaxis()->CenterTitle();
16354     hTrkEnRwNQ->GetYaxis()->SetTitle("");
16355     hTrkEnRwNQ->GetYaxis()->CenterTitle();
16356     hTrkEnRwNQ->SetFillColor(0);
16357     hTrkEnRwNQ->SetLineColor(1);
16358     //hTrkEnRwNQ->SetBit(TH1::kCanRebin);
16359 
16360     hShwEnRwNQ=new TH1F("hShwEnRwNQ","hShwEnRwNQ",10000,-10,10);
16361     hShwEnRwNQ->SetTitle("Shw Energy Reweight Value");
16362     hShwEnRwNQ->GetXaxis()->SetTitle("Shw Energy Reweight Value");
16363     hShwEnRwNQ->GetXaxis()->CenterTitle();
16364     hShwEnRwNQ->GetYaxis()->SetTitle("");
16365     hShwEnRwNQ->GetYaxis()->CenterTitle();
16366     hShwEnRwNQ->SetFillColor(0);
16367     hShwEnRwNQ->SetLineColor(1);
16368     //hShwEnRwNQ->SetBit(TH1::kCanRebin);
16369 
16370     hdENQ=new TH1F("hdENQ","hdENQ",10000,-50,50);
16371     hdENQ->GetXaxis()->SetTitle("Diff. in Reco Energy (GeV)");
16372     hdENQ->GetXaxis()->CenterTitle();
16373     hdENQ->GetYaxis()->SetTitle("");
16374     hdENQ->GetYaxis()->CenterTitle();
16375     hdENQ->SetFillColor(0);
16376     hdENQ->SetLineColor(1);
16377     //hdENQ->SetBit(TH1::kCanRebin);
16378 
16379     hdEFractNQ=new TH1F("hdEFractNQ","hdEFractNQ",10000,-4,4);
16380     hdEFractNQ->GetXaxis()->SetTitle("Fract. Diff. in Reco Energy");
16381     hdEFractNQ->GetXaxis()->CenterTitle();
16382     hdEFractNQ->GetYaxis()->SetTitle("");
16383     hdEFractNQ->GetYaxis()->CenterTitle();
16384     hdEFractNQ->SetFillColor(0);
16385     hdEFractNQ->SetLineColor(1);
16386     //hdEFractNQ->SetBit(TH1::kCanRebin);
16387 
16388     hRecoYNQ=new TH1F("hRecoYNQ","hRecoYNQ",
16389                       1400,-0.2,1.2);
16390     hRecoYNQ->GetXaxis()->SetTitle("Reconstructed y");
16391     hRecoYNQ->GetXaxis()->CenterTitle();
16392     hRecoYNQ->GetYaxis()->SetTitle("");
16393     hRecoYNQ->GetYaxis()->CenterTitle();
16394     hRecoYNQ->SetFillColor(0);
16395     hRecoYNQ->SetLineColor(1);
16396     //hRecoYNQ->SetBit(TH1::kCanRebin);
16397   }
16398   
16399   Float_t fractDiff=-999;
16400   if (nu.energyRw+nu.energyNoRw!=0){
16401     fractDiff=2.*(nu.energyRw-nu.energyNoRw)/
16402       (nu.energyRw+nu.energyNoRw);
16403   }
16404   
16405   //Two ways the reweighting is implemented:
16406   //1.) beam/det/generator weights
16407   //2.) the neutrino energy gets shifted by SKZP
16408 
16409   Float_t allRw=nu.beamWeight*nu.detectorWeight*nu.generatorWeight;
16410 
16411   //PQ
16412   if (nu.charge==+1){
16413     hRecoEnPQ->Fill(nu.energy,nu.rw);//the default weighting
16414     hRecoEnTrkPQ->Fill(nu.trkEn,nu.rw);
16415     hRecoEnShwPQ->Fill(nu.shwEn,nu.rw);
16416 
16417     if (!(nu.inu==-14 && nu.iaction==1)) {
16418       hRecoEnNotNMBCCPQ->Fill(nu.energy,nu.rw);//the default weighting
16419       hRecoEnTrkNotNMBCCPQ->Fill(nu.trkEn,nu.rw);
16420       hRecoEnShwNotNMBCCPQ->Fill(nu.shwEn,nu.rw);
16421     }
16422     hRecoEnRwPQ->Fill(nu.energyRw,nu.rwActual);//full SKZP
16423     hRecoEnTrkRwPQ->Fill(nu.trkEnRw,nu.rwActual);
16424     hRecoEnShwRwPQ->Fill(nu.shwEnRw,nu.rwActual);
16425     hRecoEnNoRwPQ->Fill(nu.energyNoRw);//raw MC (no energy shifts or weights)
16426     hRecoEnTrkNoRwPQ->Fill(nu.trkEnNoRw);
16427     hRecoEnShwNoRwPQ->Fill(nu.shwEnNoRw);
16428     hRecoEnNoRwEnRwPQ->Fill(nu.energyRw);//raw MC (weight=1) but new en
16429     hRecoEnTrkNoRwEnRwPQ->Fill(nu.trkEnRw);
16430     hRecoEnShwNoRwEnRwPQ->Fill(nu.shwEnRw);
16431 
16432     hRecoEnBeamRwPQ->Fill(nu.energyNoRw,nu.beamWeight);
16433     hRecoEnTrkBeamRwPQ->Fill(nu.trkEnNoRw,nu.beamWeight);
16434     hRecoEnShwBeamRwPQ->Fill(nu.shwEnNoRw,nu.beamWeight);
16435     hRecoEnDetRwPQ->Fill(nu.energyNoRw,nu.detectorWeight);
16436     hRecoEnTrkDetRwPQ->Fill(nu.trkEnNoRw,nu.detectorWeight);
16437     hRecoEnShwDetRwPQ->Fill(nu.shwEnNoRw,nu.detectorWeight);
16438     hRecoEnGenRwPQ->Fill(nu.energyNoRw,nu.generatorWeight);
16439     hRecoEnTrkGenRwPQ->Fill(nu.trkEnNoRw,nu.generatorWeight);
16440     hRecoEnShwGenRwPQ->Fill(nu.shwEnNoRw,nu.generatorWeight);
16441 
16442     //full weights but no en shifts
16443     hRecoEnAllRwPQ->Fill(nu.energyNoRw,allRw);
16444     hRecoEnTrkAllRwPQ->Fill(nu.trkEnNoRw,allRw);
16445     hRecoEnShwAllRwPQ->Fill(nu.shwEnNoRw,allRw);
16446 
16447     //full weights and en shifts: SKZP (rw and shifts) and generator weights
16448     hRecoEnAllRwEnRwPQ->Fill(nu.energyRw,allRw);
16449     hRecoEnTrkAllRwEnRwPQ->Fill(nu.trkEnRw,allRw);
16450     hRecoEnShwAllRwEnRwPQ->Fill(nu.shwEnRw,allRw);
16451 
16452     hRwPQ->Fill(nu.rwActual);
16453     hBeamRwPQ->Fill(nu.beamWeight);
16454     hDetRwPQ->Fill(nu.detectorWeight);
16455     hGenRwPQ->Fill(nu.generatorWeight);
16456     hAllRwPQ->Fill(nu.beamWeight*nu.detectorWeight*nu.generatorWeight);
16457     hTrkEnRwPQ->Fill(nu.trkEnWeight);
16458     hShwEnRwPQ->Fill(nu.shwEnWeight);
16459     hdEPQ->Fill(nu.energyRw-nu.energyNoRw);
16460     hdEFractPQ->Fill(fractDiff);
16461     hRecoYPQ->Fill(nu.y,nu.rw);
16462     if (!(nu.inu==-14 && nu.iaction==1)) {
16463       hRecoYNotNMBCCPQ->Fill(nu.y,nu.rw);
16464     }
16465   }
16466   //NQ
16467   else if (nu.charge==-1){
16468     hRecoEnNQ->Fill(nu.energy,nu.rw);
16469     hRecoEnTrkNQ->Fill(nu.trkEn,nu.rw);
16470     hRecoEnShwNQ->Fill(nu.shwEn,nu.rw);
16471     hRecoEnRwNQ->Fill(nu.energyRw,nu.rwActual);
16472     hRecoEnTrkRwNQ->Fill(nu.trkEnRw,nu.rwActual);
16473     hRecoEnShwRwNQ->Fill(nu.shwEnRw,nu.rwActual);
16474     hRecoEnNoRwNQ->Fill(nu.energyNoRw);
16475     hRecoEnTrkNoRwNQ->Fill(nu.trkEnNoRw);
16476     hRecoEnShwNoRwNQ->Fill(nu.shwEnNoRw);
16477     hRecoEnNoRwEnRwNQ->Fill(nu.energyRw);//the raw MC weight but new en
16478     hRecoEnTrkNoRwEnRwNQ->Fill(nu.trkEnRw);
16479     hRecoEnShwNoRwEnRwNQ->Fill(nu.shwEnRw);
16480 
16481     hRecoEnBeamRwNQ->Fill(nu.energyNoRw,nu.beamWeight);
16482     hRecoEnTrkBeamRwNQ->Fill(nu.trkEnNoRw,nu.beamWeight);
16483     hRecoEnShwBeamRwNQ->Fill(nu.shwEnNoRw,nu.beamWeight);
16484     hRecoEnDetRwNQ->Fill(nu.energyNoRw,nu.detectorWeight);
16485     hRecoEnTrkDetRwNQ->Fill(nu.trkEnNoRw,nu.detectorWeight);
16486     hRecoEnShwDetRwNQ->Fill(nu.shwEnNoRw,nu.detectorWeight);
16487     hRecoEnGenRwNQ->Fill(nu.energyNoRw,nu.generatorWeight);
16488     hRecoEnTrkGenRwNQ->Fill(nu.trkEnNoRw,nu.generatorWeight);
16489     hRecoEnShwGenRwNQ->Fill(nu.shwEnNoRw,nu.generatorWeight);
16490 
16491     hRecoEnAllRwNQ->Fill(nu.energyNoRw,allRw);
16492     hRecoEnTrkAllRwNQ->Fill(nu.trkEnNoRw,allRw);
16493     hRecoEnShwAllRwNQ->Fill(nu.shwEnNoRw,allRw);
16494     hRecoEnAllRwEnRwNQ->Fill(nu.energyRw,allRw);
16495     hRecoEnTrkAllRwEnRwNQ->Fill(nu.trkEnRw,allRw);
16496     hRecoEnShwAllRwEnRwNQ->Fill(nu.shwEnRw,allRw);
16497 
16498     hRwNQ->Fill(nu.rwActual);
16499     hBeamRwNQ->Fill(nu.beamWeight);
16500     hDetRwNQ->Fill(nu.detectorWeight);
16501     hGenRwNQ->Fill(nu.generatorWeight);
16502     hAllRwNQ->Fill(allRw);
16503     hTrkEnRwNQ->Fill(nu.trkEnWeight);
16504     hShwEnRwNQ->Fill(nu.shwEnWeight);
16505     hdENQ->Fill(nu.energyRw-nu.energyNoRw);
16506     hdEFractNQ->Fill(fractDiff);
16507     hRecoYNQ->Fill(nu.y,nu.rw);//rw added 03/June/07
16508   }
16509   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
16510 }

void NuPlots::FillRelativeAngleHistos const NuEvent nu  )  const
 

Definition at line 7519 of file NuPlots.cxx.

References abs(), NuEvent::charge, NuEvent::containmentFlag, NuEvent::iaction, NuEvent::inu, MSG, NuEvent::relativeAngle, NuEvent::rw, NuEvent::sigqp_qp, NuEvent::trkLength, NuEvent::xTrkEnd, and NuEvent::yTrkEnd.

Referenced by NuAnalysis::ChargeSignCut(), and NuDSTAna::MakeFinalPlots().

07520 {
07521 
07522   static TH1F* hRelAngNQ=0;
07523   static TH1F* hRelAngNoRwNQ=0;
07524   static TH1F* hRelAngNQ1=0;
07525   static TH1F* hRelAngNQ2=0;
07526   static TH1F* hRelAngNQ3=0;
07527   static TH1F* hRelAngNQ4=0;
07528   static TH1F* hRelAngPQ=0;
07529   static TH1F* hRelAngPQDiffR=0;
07530   static TH1F* hRelAngNoRwPQ=0;
07531   static TH1F* hRelAngPQ1=0;
07532   static TH1F* hRelAngPQ2=0;
07533   static TH1F* hRelAngPQ3=0;
07534   static TH1F* hRelAngPQ4=0;
07535   static TH1F* hRelAngPQXcut1=0;
07536   static TH1F* hRelAngPQXcut2=0;
07537 
07538   static TH1F* hTrkLengthPQ=0;
07539   static TH1F* hTrkLengthNoRwPQ=0;
07540   static TH1F* hTrkLengthNQ=0;
07541   static TH1F* hTrkLengthNoRwNQ=0;
07542   static TH1F* hTrkQPSPQ=0;
07543   static TH1F* hTrkQPSNoRwPQ=0;
07544   static TH1F* hTrkQPSNotNMBCCPQ=0;
07545   static TH1F* hTrkQPSNQ=0;
07546   static TH1F* hTrkQPSNoRwNQ=0;
07547 
07548   static TH1F* hRelAngNotNMBCCPQ=0;
07549   static TH1F* hRelAngNotNMBCCPQDiffR=0;
07550   static TH1F* hRelAngNotNMBCCPQ1=0;
07551   static TH1F* hRelAngNotNMBCCPQ2=0;
07552   static TH1F* hRelAngNotNMBCCPQ3=0;
07553   static TH1F* hRelAngNotNMBCCPQ4=0;
07554 
07556 
07557   if(!hRelAngNQ){
07558 
07559     hTrkLengthNoRwNQ=new TH1F("hTrkLengthNoRwNQ","hTrkLengthNoRwNQ",
07560                        500, -10., 490.);
07561     hTrkLengthNoRwNQ->GetXaxis()->SetTitle("Track length (m) for #pi (mu{+})");
07562     hTrkLengthNoRwNQ->GetXaxis()->CenterTitle();
07563     hTrkLengthNoRwNQ->GetYaxis()->SetTitle("");
07564     hTrkLengthNoRwNQ->GetYaxis()->CenterTitle();
07565     //hTrkLengthNoRwNQ->SetBit(TH1::kCanRebin);
07566 
07567     hTrkLengthNQ=new TH1F("hTrkLengthNQ","hTrkLengthNQ",
07568                        500, -10., 490.);
07569     hTrkLengthNQ->GetXaxis()->SetTitle("Track length (m) for #pi (mu{+})");
07570     hTrkLengthNQ->GetXaxis()->CenterTitle();
07571     hTrkLengthNQ->GetYaxis()->SetTitle("");
07572     hTrkLengthNQ->GetYaxis()->CenterTitle();
07573     //hTrkLengthNQ->SetBit(TH1::kCanRebin);
07574 
07575     hTrkQPSNoRwNQ=new TH1F("hTrkQPSNoRwNQ","hTrkQPSNoRwNQ",
07576                         2*160,0.,160.);
07577     hTrkQPSNoRwNQ->GetXaxis()->SetTitle("QP/#sigma QP for #pi (mu{+})");
07578     hTrkQPSNoRwNQ->GetXaxis()->CenterTitle();
07579     hTrkQPSNoRwNQ->GetYaxis()->SetTitle("");
07580     hTrkQPSNoRwNQ->GetYaxis()->CenterTitle();
07581     //hTrkQPSNoRwNQ->SetBit(TH1::kCanRebin);
07582 
07583     hTrkQPSNQ=new TH1F("hTrkQPSNQ","hTrkQPSNQ",
07584                         2*160,0.,160.);
07585     hTrkQPSNQ->GetXaxis()->SetTitle("QP/#sigma QP for #pi (mu{+})");
07586     hTrkQPSNQ->GetXaxis()->CenterTitle();
07587     hTrkQPSNQ->GetYaxis()->SetTitle("");
07588     hTrkQPSNQ->GetYaxis()->CenterTitle();
07589     //hTrkQPSNQ->SetBit(TH1::kCanRebin);
07590 
07591     hRelAngNQ=new TH1F("hRelAngNQ","hRelAngNQ",
07592                         4*160, 0.,3.2);
07593     hRelAngNQ->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{-})");
07594     hRelAngNQ->GetXaxis()->CenterTitle();
07595     hRelAngNQ->GetYaxis()->SetTitle("");
07596     hRelAngNQ->GetYaxis()->CenterTitle();
07597     //hRelAngNQ->SetBit(TH1::kCanRebin);
07598 
07599     hRelAngNoRwNQ=new TH1F("hRelAngNoRwNQ","hRelAngNoRwNQ",
07600                         4*160, 0.,3.2);
07601     hRelAngNoRwNQ->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{-})");
07602     hRelAngNoRwNQ->GetXaxis()->CenterTitle();
07603     hRelAngNoRwNQ->GetYaxis()->SetTitle("");
07604     hRelAngNoRwNQ->GetYaxis()->CenterTitle();
07605     //hRelAngNoRwNQ->SetBit(TH1::kCanRebin);
07606 
07607     hRelAngNQ1=new TH1F("hRelAngNQ1","hRelAngNQ1",
07608                         4*160, 0.,3.2);
07609     hRelAngNQ1->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{-})");
07610     hRelAngNQ1->GetXaxis()->CenterTitle(); 
07611     hRelAngNQ1->GetYaxis()->SetTitle("");
07612     hRelAngNQ1->GetYaxis()->CenterTitle();
07613     //hRelAngNQ1->SetBit(TH1::kCanRebin);
07614 
07615     hRelAngNQ2=new TH1F("hRelAngNQ2","hRelAngNQ2",
07616                         4*160, 0.,3.2);
07617     hRelAngNQ2->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{-})");
07618     hRelAngNQ2->GetXaxis()->CenterTitle();
07619     hRelAngNQ2->GetYaxis()->SetTitle("");
07620     hRelAngNQ2->GetYaxis()->CenterTitle();
07621     //hRelAngNQ2->SetBit(TH1::kCanRebin);
07622 
07623     hRelAngNQ3=new TH1F("hRelAngNQ3","hRelAngNQ3",
07624                        4*160, 0.,3.2);
07625     hRelAngNQ3->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{-})");
07626     hRelAngNQ3->GetXaxis()->CenterTitle();
07627     hRelAngNQ3->GetYaxis()->SetTitle("");
07628     hRelAngNQ3->GetYaxis()->CenterTitle();
07629     //hRelAngNQ3->SetBit(TH1::kCanRebin);
07630 
07631     hRelAngNQ4=new TH1F("hRelAngNQ4","hRelAngNQ4",
07632                         4*160, 0.,3.2);
07633     hRelAngNQ4->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{-})");
07634     hRelAngNQ4->GetXaxis()->CenterTitle();
07635     hRelAngNQ4->GetYaxis()->SetTitle("");
07636     hRelAngNQ4->GetYaxis()->CenterTitle();
07637     //hRelAngNQ4->SetBit(TH1::kCanRebin);
07638   }
07639 
07641   if(!hRelAngPQ){
07642 
07643     hTrkLengthNoRwPQ=new TH1F("hTrkLengthNoRwPQ","hTrkLengthNoRwPQ",
07644                        500, -10., 490.);
07645     hTrkLengthNoRwPQ->GetXaxis()->SetTitle("Track length (m) for (mu{+})");
07646     hTrkLengthNoRwPQ->GetXaxis()->CenterTitle();
07647     hTrkLengthNoRwPQ->GetYaxis()->SetTitle("");
07648     hTrkLengthNoRwPQ->GetYaxis()->CenterTitle();
07649     //hTrkLengthNoRwPQ->SetBit(TH1::kCanRebin);
07650 
07651     hTrkLengthPQ=new TH1F("hTrkLengthPQ","hTrkLengthPQ",
07652                        500, -10., 490.);
07653     hTrkLengthPQ->GetXaxis()->SetTitle("Track length (m) for (mu{+})");
07654     hTrkLengthPQ->GetXaxis()->CenterTitle();
07655     hTrkLengthPQ->GetYaxis()->SetTitle("");
07656     hTrkLengthPQ->GetYaxis()->CenterTitle();
07657     //hTrkLengthPQ->SetBit(TH1::kCanRebin);
07658 
07659 
07660     hTrkQPSPQ=new TH1F("hTrkQPSPQ","hTrkQPSPQ",
07661                        2*160,0.,160.);
07662     hTrkQPSPQ->GetXaxis()->SetTitle("QP/#sigma QP for (mu{+})");
07663     hTrkQPSPQ->GetXaxis()->CenterTitle();
07664     hTrkQPSPQ->GetYaxis()->SetTitle("");
07665     hTrkQPSPQ->GetYaxis()->CenterTitle();
07666     //hTrkQPSPQ->SetBit(TH1::kCanRebin);
07667 
07668     hTrkQPSNoRwPQ=new TH1F("hTrkQPSNoRwPQ","hTrkQPSNoRwPQ",
07669                         2*160,0.,160.);
07670     hTrkQPSNoRwPQ->GetXaxis()->SetTitle("QP/#sigma QP for (mu{+})");
07671     hTrkQPSNoRwPQ->GetXaxis()->CenterTitle();
07672     hTrkQPSNoRwPQ->GetYaxis()->SetTitle("");
07673     hTrkQPSNoRwPQ->GetYaxis()->CenterTitle();
07674     //hTrkQPSNoRwPQ->SetBit(TH1::kCanRebin);
07675 
07676     hTrkQPSNotNMBCCPQ=new TH1F("hTrkQPSNotNMBCCPQ","hTrkQPSNotNMBCCPQ",
07677                         2*160,0.,160.);
07678     hTrkQPSNotNMBCCPQ->GetXaxis()->SetTitle("QP/#sigma QP for (mu{+})");
07679     hTrkQPSNotNMBCCPQ->GetXaxis()->CenterTitle();
07680     hTrkQPSNotNMBCCPQ->GetYaxis()->SetTitle("");
07681     hTrkQPSNotNMBCCPQ->GetYaxis()->CenterTitle();
07682     //hTrkQPSNotNMBCCPQ->SetBit(TH1::kCanRebin);
07683 
07684     hRelAngPQ=new TH1F("hRelAngPQ","hRelAngPQ",
07685                         4*160, 0.,3.2);
07686     hRelAngPQ->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{+})");
07687     hRelAngPQ->GetXaxis()->CenterTitle();
07688     hRelAngPQ->GetYaxis()->SetTitle("");
07689     hRelAngPQ->GetYaxis()->CenterTitle();
07690     //hRelAngPQ->SetBit(TH1::kCanRebin);
07691 
07692     hRelAngPQXcut1=new TH1F("hRelAngPQXcut1","hRelAngPQXcut1",
07693                        4*160, 0.,3.2);
07694     hRelAngPQXcut1->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{+})");
07695     hRelAngPQXcut1->GetXaxis()->CenterTitle();
07696     hRelAngPQXcut1->GetYaxis()->SetTitle("");
07697     hRelAngPQXcut1->GetYaxis()->CenterTitle();
07698     //hRelAngPQXcut1->SetBit(TH1::kCanRebin);
07699 
07700     hRelAngPQXcut2=new TH1F("hRelAngPQXcut2","hRelAngPQXcut2",
07701                        4*160, 0.,3.2);
07702     hRelAngPQXcut2->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{+})");
07703     hRelAngPQXcut2->GetXaxis()->CenterTitle();
07704     hRelAngPQXcut2->GetYaxis()->SetTitle("");
07705     hRelAngPQXcut2->GetYaxis()->CenterTitle();
07706     //hRelAngPQXcut2->SetBit(TH1::kCanRebin);
07707 
07708     hRelAngPQDiffR=new TH1F("hRelAngPQDiffR","hRelAngPQDiffR",
07709                        2*628, 0.,6.28);
07710     hRelAngPQDiffR->GetXaxis()->SetTitle("Relative Angle, (mu{+})");
07711     hRelAngPQDiffR->GetXaxis()->CenterTitle();
07712     hRelAngPQDiffR->GetYaxis()->SetTitle("");
07713     hRelAngPQDiffR->GetYaxis()->CenterTitle();
07714     //hRelAngPQDiffR->SetBit(TH1::kCanRebin);
07715 
07716     hRelAngNoRwPQ=new TH1F("hRelAngNoRwPQ","hRelAngNoRwPQ",
07717                         4*160, 0.,3.2);
07718     hRelAngNoRwPQ->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{-})");
07719     hRelAngNoRwPQ->GetXaxis()->CenterTitle();
07720     hRelAngNoRwPQ->GetYaxis()->SetTitle("");
07721     hRelAngNoRwPQ->GetYaxis()->CenterTitle();
07722     //hRelAngNoRwPQ->SetBit(TH1::kCanRebin);
07723 
07724     hRelAngNotNMBCCPQ=new TH1F("hRelAngNotNMBCCPQ","hRelAngNotNMBCCPQ",
07725                            4*160, 0.,3.2);
07726     hRelAngNotNMBCCPQ->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{-})");
07727     hRelAngNotNMBCCPQ->GetXaxis()->CenterTitle();
07728     hRelAngNotNMBCCPQ->GetYaxis()->SetTitle("");
07729     hRelAngNotNMBCCPQ->GetYaxis()->CenterTitle();
07730     //hRelAngNotNMBCCPQ->SetBit(TH1::kCanRebin);
07731 
07732     hRelAngNotNMBCCPQDiffR=new TH1F("hRelAngNotNMBCCPQDiffR","hRelAngNotNMBCCPQDiffR",
07733                            2*628, 0.,6.28);
07734     hRelAngNotNMBCCPQDiffR->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{-})");
07735     hRelAngNotNMBCCPQDiffR->GetXaxis()->CenterTitle();
07736     hRelAngNotNMBCCPQDiffR->GetYaxis()->SetTitle("");
07737     hRelAngNotNMBCCPQDiffR->GetYaxis()->CenterTitle();
07738     //hRelAngNotNMBCCPQDiffR->SetBit(TH1::kCanRebin);
07739 
07740     hRelAngPQ1=new TH1F("hRelAngPQ1","hRelAngPQ1",
07741                        4*160, 0.,3.2);
07742     hRelAngPQ1->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{+})");
07743     hRelAngPQ1->GetXaxis()->CenterTitle();
07744     hRelAngPQ1->GetYaxis()->SetTitle("");
07745     hRelAngPQ1->GetYaxis()->CenterTitle();
07746     //hRelAngPQ1->SetBit(TH1::kCanRebin);
07747 
07748     hRelAngNotNMBCCPQ1=new TH1F("hRelAngNotNMBCCPQ1","hRelAngNotNMBCCPQ1",
07749                         4*160, 0.,3.2);
07750     hRelAngNotNMBCCPQ1->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{+})");
07751     hRelAngNotNMBCCPQ1->GetXaxis()->CenterTitle();
07752     hRelAngNotNMBCCPQ1->GetYaxis()->SetTitle("");
07753     hRelAngNotNMBCCPQ1->GetYaxis()->CenterTitle();
07754     //hRelAngNotNMBCCPQ1->SetBit(TH1::kCanRebin);
07755 
07756 
07757     hRelAngPQ2=new TH1F("hRelAngPQ2","hRelAngPQ2",
07758                         4*160, 0.,3.2);
07759     hRelAngPQ2->GetXaxis()->SetTitle("abs(Relative Angle -#pi) (mu{+})");
07760     hRelAngPQ2->GetXaxis()->CenterTitle();
07761     hRelAngPQ2->GetYaxis()->SetTitle("");
07762     hRelAngPQ2->GetYaxis()->CenterTitle();
07763     //hRelAngPQ2->SetBit(TH1::kCanRebin);
07764 
07765     hRelAngNotNMBCCPQ2=new TH1F("hRelAngNotNMBCCPQ2","hRelAngNotNMBCCPQ2",
07766                         4*160, 0.,3.2);
07767     hRelAngNotNMBCCPQ2->GetXaxis()->SetTitle("abs(Relative Angle -#pi) (mu{+})");
07768     hRelAngNotNMBCCPQ2->GetXaxis()->CenterTitle();
07769     hRelAngNotNMBCCPQ2->GetYaxis()->SetTitle("");
07770     hRelAngNotNMBCCPQ2->GetYaxis()->CenterTitle();
07771     //hRelAngNotNMBCCPQ2->SetBit(TH1::kCanRebin);
07772 
07773     hRelAngPQ3=new TH1F("hRelAngPQ3","hRelAngPQ3",
07774                        4*160, 0.,3.2);
07775     hRelAngPQ3->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{+})");
07776     hRelAngPQ3->GetXaxis()->CenterTitle();
07777     hRelAngPQ3->GetYaxis()->SetTitle("");
07778     hRelAngPQ3->GetYaxis()->CenterTitle();
07779     //hRelAngPQ3->SetBit(TH1::kCanRebin);
07780 
07781     hRelAngNotNMBCCPQ3=new TH1F("hRelAngNotNMBCCPQ3","hRelAngNotNMBCCPQ3",
07782                         4*160, 0.,3.2);
07783     hRelAngNotNMBCCPQ3->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{+})");
07784     hRelAngNotNMBCCPQ3->GetXaxis()->CenterTitle();
07785     hRelAngNotNMBCCPQ3->GetYaxis()->SetTitle("");
07786     hRelAngNotNMBCCPQ3->GetYaxis()->CenterTitle();
07787     //hRelAngPQ3->SetBit(TH1::kCanRebin);
07788 
07789     hRelAngPQ4=new TH1F("hRelAngPQ4","hRelAngPQ4",
07790                         4*160, 0.,3.2);
07791     hRelAngPQ4->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{+})");
07792     hRelAngPQ4->GetXaxis()->CenterTitle();
07793     hRelAngPQ4->GetYaxis()->SetTitle("");
07794     hRelAngPQ4->GetYaxis()->CenterTitle();
07795     //hRelAngPQ4->SetBit(TH1::kCanRebin);
07796 
07797     hRelAngNotNMBCCPQ4=new TH1F("hRelAngNotNMBCCPQ4","hRelAngNotNMBCCPQ4",
07798                         4*160, 0.,3.2);
07799     hRelAngNotNMBCCPQ4->GetXaxis()->SetTitle("abs(Relative Angle - #pi) (mu{+})");
07800     hRelAngNotNMBCCPQ4->GetXaxis()->CenterTitle();
07801     hRelAngNotNMBCCPQ4->GetYaxis()->SetTitle("");
07802     hRelAngNotNMBCCPQ4->GetYaxis()->CenterTitle();
07803     //hRelAngPQ4->SetBit(TH1::kCanRebin);
07804   }
07805 
07806   //PQ
07807   if (nu.charge==+1){
07808     //fill temporarily here a few variables to check
07809     hTrkLengthPQ->Fill(nu.trkLength,nu.rw);
07810     hTrkLengthNoRwPQ->Fill(nu.trkLength);
07811     hTrkQPSPQ->Fill(1./nu.sigqp_qp,nu.rw);
07812     hTrkQPSNoRwPQ->Fill(1./nu.sigqp_qp);
07813     if (!(nu.inu==-14 && nu.iaction==1)) {
07814       hTrkQPSNotNMBCCPQ->Fill(1./nu.sigqp_qp,nu.rw);
07815     }
07816     //
07817     //fill with relative angle values for positives
07818      hRelAngPQ->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07819      hRelAngPQDiffR->Fill(nu.relativeAngle,nu.rw);
07820      hRelAngNoRwPQ->Fill(abs(nu.relativeAngle-TMath::Pi()));
07821 
07822      if (nu.xTrkEnd < 2.7 && (-0.82 < nu.yTrkEnd && nu.yTrkEnd < 0.82)) { 
07823        hRelAngPQXcut1->Fill(abs(nu.relativeAngle-TMath::Pi()));
07824      }
07825      if (nu.xTrkEnd >= 2.7 && (-0.82 < nu.yTrkEnd && nu.yTrkEnd < 0.82)){
07826        hRelAngPQXcut2->Fill(abs(nu.relativeAngle-TMath::Pi()));
07827      }
07828 
07829      if (!(nu.inu==-14 && nu.iaction==1)) {
07830        hRelAngNotNMBCCPQ->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07831        hRelAngNotNMBCCPQDiffR->Fill(nu.relativeAngle,nu.rw);
07832      }
07833     if (nu.containmentFlag==1){
07834      hRelAngPQ1->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07835      if (!(nu.inu==-14 && nu.iaction==1)) {
07836        hRelAngNotNMBCCPQ1->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07837      }
07838     }
07839     else if (nu.containmentFlag==2){
07840      hRelAngPQ2->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07841      if (!(nu.inu==-14 && nu.iaction==1)) {
07842        hRelAngNotNMBCCPQ2->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07843      }
07844     }
07845     else if (nu.containmentFlag==3){
07846      hRelAngPQ3->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07847      if (!(nu.inu==-14 && nu.iaction==1)) {
07848        hRelAngNotNMBCCPQ3->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07849      }
07850     }
07851     else if (nu.containmentFlag==4){
07852      hRelAngPQ4->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07853      if (!(nu.inu==-14 && nu.iaction==1)) {
07854        hRelAngNotNMBCCPQ4->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07855      }
07856     }
07857     else MSG("NuPlots",Msg::kWarning)<<"Ahhh... Bad containment"<<endl;
07858   }
07859   //NQ
07860   if (nu.charge==-1){
07861     hTrkLengthNQ->Fill(nu.trkLength,nu.rw);
07862     hTrkLengthNoRwNQ->Fill(nu.trkLength);
07863     hTrkQPSNQ->Fill(1./nu.sigqp_qp,nu.rw);
07864     hTrkQPSNoRwNQ->Fill(1./nu.sigqp_qp);
07865 
07866     //fill with relative angle values for negatives
07867      hRelAngNQ->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07868      hRelAngNoRwNQ->Fill(abs(nu.relativeAngle-TMath::Pi()));
07869     if (nu.containmentFlag==1){
07870      hRelAngNQ1->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07871     }
07872     else if (nu.containmentFlag==2){
07873      hRelAngNQ2->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07874     }
07875     else if (nu.containmentFlag==3){
07876      hRelAngNQ3->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07877     }
07878     else if (nu.containmentFlag==4){
07879      hRelAngNQ4->Fill(abs(nu.relativeAngle-TMath::Pi()),nu.rw);
07880     }
07881     else MSG("NuPlots",Msg::kWarning)<<"Ahhh... Bad containment"<<endl;
07882   }
07883 
07884 }

void NuPlots::FillSelPlots const NuEvent nu,
const TString  cutname,
const TString  tag
const
 

Definition at line 734 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::dpID, NuEvent::iaction, NuEvent::inu, max, MAXMSG, min, MSG, NuEvent::prob, NuEvent::relativeAngle, NuEvent::roID, NuEvent::rw, NuEvent::sigqp_qp, NuEvent::simFlag, NuEvent::smoothMajC, and NuEvent::trkLength.

Referenced by NuDSTAna::QPStudy(), and NuDSTAna::SelectorTable().

00735 {
00736   //PQ
00737   static vector<TString> cuts;
00738   static vector<TH1D*>  plots_pq;
00739   static vector<TH1D*>  plots_nq;
00740   static vector<TH1D*>  plots_sig;
00741   static vector<TH1D*>  plots_nc;
00742   static vector<TH1D*>  plots_ws;
00743   static vector<TH1D*>  plots_nqsig;
00744   static vector<TH1D*>  plots_nqnc;
00745   static vector<TH1D*>  plots_nqws;
00746   
00747   unsigned int ci = 0;
00748   for ( ; ci < cuts.size(); ci++) {
00749     if (cuts[ci] == cutname+tag) break;
00750   }
00751   
00752   // Have not seen this cut before
00753   if (ci == cuts.size()) {
00754     double min, max;
00755     int bins;
00756     cuts.push_back(cutname+tag);
00757     
00758     TString name  = "h" + cutname + tag;
00759     
00760     if (cutname == "DpID") {
00761       min = -1;
00762       max = 1.5;
00763     }
00764     else if (cutname == "RoID") {
00765       min = 0;
00766       max = 1;
00767     }
00768     else if (cutname == "SigmaQP_QP") {
00769       min = -60;
00770       max = 60;
00771     }
00772     else if (cutname == "RelativeAngle") {
00773       min = 0;
00774       max = 3.2;
00775     }
00776     else if (cutname == "FitProb") {
00777       min = -40;
00778       max = 0;
00779     }
00780     else if (cutname == "TrackLength") {
00781       min = 0;
00782       max = 500;
00783     }
00784     else if (cutname == "MajorityCurv") {
00785       min = -10;
00786       max = 10;
00787     }
00788     else {
00789       MAXMSG("NuPlots",Msg::kInfo,10) << "Not making selection plots for cut " << cutname << endl;
00790       return;
00791     }
00792     MSG("NuPlots",Msg::kInfo) << "Creating " << tag << " selection plots for " << cutname << endl;
00793     
00794     
00795     if (max - min < 10)       bins = (int)((max - min)*100);
00796     else if (max - min < 100) bins = (int)((max - min)*10);
00797     else                      bins = (int)(max - min);
00798     
00799     TString post;
00800     
00801     post = "PQ";
00802     plots_pq.push_back(new TH1D(name+post, name+post+";"+cutname, bins, min, max));
00803     post = "NQ";
00804     plots_nq.push_back(new TH1D(name+post, name+post+";"+cutname, bins, min, max));
00805     if (nu.simFlag == SimFlag::kMC) {
00806       post = "Sig";
00807       plots_sig.push_back(new TH1D(name+post, name+post+";"+cutname, bins, min, max));
00808       post = "NC";
00809       plots_nc.push_back(new TH1D(name+post, name+post+";"+cutname, bins, min, max));
00810       post = "WS";
00811       plots_ws.push_back(new TH1D(name+post, name+post+";"+cutname, bins, min, max));
00812       post = "NQSig";
00813       plots_nqsig.push_back(new TH1D(name+post, name+post+";"+cutname, bins, min, max));
00814       post = "NQNC";
00815       plots_nqnc.push_back(new TH1D(name+post, name+post+";"+cutname, bins, min, max));
00816       post = "NQWS";
00817       plots_nqws.push_back(new TH1D(name+post, name+post+";"+cutname, bins, min, max));      
00818     }
00819   }
00820 
00821   double var;
00822   if (cutname == "DpID")               var = nu.dpID; 
00823   else if (cutname == "RoID")          var = nu.roID;
00824   else if (cutname == "SigmaQP_QP")    var = 1./nu.sigqp_qp;
00825   else if (cutname == "RelativeAngle") var = TMath::Abs(nu.relativeAngle - TMath::Pi());
00826   else if (cutname == "FitProb")       {
00827     if (nu.prob > 0)                   var = TMath::Log10(nu.prob);
00828     else                               var = -100;
00829   }
00830   else if (cutname == "TrackLength")   var = nu.trkLength;
00831   else if (cutname == "MajorityCurv")  var = nu.smoothMajC;
00832   else {
00833     MAXMSG("NuPlots",Msg::kInfo,10) << "Not making selection plots for cut " << cutname << endl;
00834     return;
00835   }  
00836   
00837   if (nu.charge==+1) {
00838     plots_pq[ci]->Fill(var, nu.rw);
00839     if (nu.simFlag == SimFlag::kMC) {    
00840       if (nu.iaction != 1)    plots_nc[ci]->Fill(var, nu.rw);
00841       else if (nu.inu != -14) plots_ws[ci]->Fill(var, nu.rw);
00842       else                    plots_sig[ci]->Fill(var, nu.rw);
00843     }
00844   }
00845   else {
00846     plots_nq[ci]->Fill(var, nu.rw);
00847     if (nu.simFlag == SimFlag::kMC) {
00848       if (nu.iaction != 1)   plots_nqnc[ci]->Fill(var, nu.rw);
00849       else if (nu.inu != 14) plots_nqws[ci]->Fill(var, nu.rw);
00850       else                   plots_nqsig[ci]->Fill(var, nu.rw);      
00851     }
00852   }
00853   
00854 }

void NuPlots::FillShwHistos const NtpStRecord ntp,
const NtpSREvent evt,
const NuEvent nu
const
 

Definition at line 6646 of file NuPlots.cxx.

References NuEvent::charge, NtpTHShower::completeall, NuReco::GetBestShower(), NuReco::GetBestTrack(), NuReco::GetShowerEnergyCor(), NuReco::GetShowerWithIndexX(), NuReco::GetTrackWithIndexX(), NtpSREvent::index, NtpSRShower::index, NuLibrary::Instance(), NtpSRShowerPulseHeight::linCCgev, MAXMSG, MSG, NtpSREvent::nshower, NtpSREvent::ntrack, NtpTHShower::purity, NuLibrary::reco, NuEvent::rw, NtpSREvent::shw, NtpStRecord::shw, NtpSRShower::shwph, NuEvent::simFlag, NtpStRecord::thshw, NtpSRTrack::vtx, NtpSRShower::vtx, NtpSRVertex::x, NtpSRVertex::y, and NtpSRVertex::z.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::EnergySpect(), and NuAnalysis::LIRejectionTest().

06649 {
06650   //PQ
06651   static TH1F* hShwNumPQ=0;
06652   static TH1F* hShwTrkNumPQ=0;
06653   static TH1F* hShwPrimPQ=0;
06654   static TH1F* hShwEn0PQ=0;
06655   static TH1F* hShwEn1PQ=0;
06656   static TH1F* hShwCmpt0PQ=0;
06657   static TH1F* hShwCmpt1PQ=0;
06658   static TH1F* hShwPrty0PQ=0;
06659   static TH1F* hShwPrty1PQ=0;
06660   
06661   static TH1F* hShwTrkVtxZDist0PQ=0;
06662   static TH1F* hShwTrkVtxZDist1PQ=0;
06663   static TH1F* hShwTrkVtxSDist0PQ=0;
06664   static TH1F* hShwTrkVtxSDist1PQ=0;
06665   static TH1F* hShwTrkVtxRDist0PQ=0;
06666   static TH1F* hShwTrkVtxRDist1PQ=0;
06667   static TH1F* hShwTrkSDist0PQ=0;
06668   static TH1F* hShwTrkSDist1PQ=0;
06669 
06670   static TProfile* pShwCmptTrkVtxZDist0PQ=0;
06671   static TProfile* pShwCmptTrkVtxZDist1PQ=0;
06672   static TProfile* pShwCmptTrkVtxSDist0PQ=0;
06673   static TProfile* pShwCmptTrkVtxSDist1PQ=0;
06674   static TProfile* pShwCmptTrkVtxRDist0PQ=0;
06675   static TProfile* pShwCmptTrkVtxRDist1PQ=0;
06676   static TProfile* pShwCmptEnergy0PQ=0;
06677   static TProfile* pShwCmptEnergy1PQ=0;
06678   static TProfile2D* pShwTrkVtxXYCmpt0PQ=0;
06679   static TProfile2D* pShwTrkVtxXYCmpt1PQ=0;
06680 
06681   static TH2F* hShwTrkVtxXYDist0PQ=0;
06682   static TH2F* hShwTrkVtxXYDist1PQ=0;
06683   static TH2F* hShwVtxXY0PQ=0;
06684   static TH2F* hShwVtxXY1PQ=0;
06685   static TH1F* hShwVtxZ0PQ=0;
06686   static TH1F* hShwVtxZ1PQ=0;
06687   
06688 
06689 
06690   //NQ
06691   static TH1F* hShwNumNQ=0;
06692   static TH1F* hShwTrkNumNQ=0;
06693   static TH1F* hShwPrimNQ=0;
06694   static TH1F* hShwEn0NQ=0;
06695   static TH1F* hShwEn1NQ=0;
06696   static TH1F* hShwCmpt0NQ=0;
06697   static TH1F* hShwCmpt1NQ=0;
06698   static TH1F* hShwPrty0NQ=0;
06699   static TH1F* hShwPrty1NQ=0;
06700   
06701   static TH1F* hShwTrkVtxZDist0NQ=0;
06702   static TH1F* hShwTrkVtxZDist1NQ=0;
06703   static TH1F* hShwTrkVtxSDist0NQ=0;
06704   static TH1F* hShwTrkVtxSDist1NQ=0;
06705   static TH1F* hShwTrkVtxRDist0NQ=0;
06706   static TH1F* hShwTrkVtxRDist1NQ=0;
06707   static TH1F* hShwTrkSDist0NQ=0;
06708   static TH1F* hShwTrkSDist1NQ=0;
06709 
06710   static TProfile* pShwCmptTrkVtxZDist0NQ=0;
06711   static TProfile* pShwCmptTrkVtxZDist1NQ=0;
06712   static TProfile* pShwCmptTrkVtxSDist0NQ=0;
06713   static TProfile* pShwCmptTrkVtxSDist1NQ=0;
06714   static TProfile* pShwCmptTrkVtxRDist0NQ=0;
06715   static TProfile* pShwCmptTrkVtxRDist1NQ=0;
06716   static TProfile* pShwCmptEnergy0NQ=0;
06717   static TProfile* pShwCmptEnergy1NQ=0;
06718   static TProfile2D* pShwTrkVtxXYCmpt0NQ=0;
06719   static TProfile2D* pShwTrkVtxXYCmpt1NQ=0;
06720 
06721   static TH2F* hShwTrkVtxXYDist0NQ=0;
06722   static TH2F* hShwTrkVtxXYDist1NQ=0;
06723   static TH2F* hShwVtxXY0NQ=0;
06724   static TH2F* hShwVtxXY1NQ=0;
06725   static TH1F* hShwVtxZ0NQ=0;
06726   static TH1F* hShwVtxZ1NQ=0;
06727 
06728   
06729   if(!hShwNumPQ){
06730     
06731     //PQ
06732     hShwNumPQ=new TH1F("hShwNumPQ","hShwNumPQ",
06733                        20,-2,18);
06734     hShwNumPQ->GetXaxis()->SetTitle("#shws");
06735     hShwNumPQ->GetXaxis()->CenterTitle();
06736     hShwNumPQ->GetYaxis()->SetTitle("");
06737     hShwNumPQ->GetYaxis()->CenterTitle();
06738     //hShwNumPQ->SetBit(TH1::kCanRebin);
06739 
06740     hShwTrkNumPQ=new TH1F("hShwTrkNumPQ","hShwTrkNumPQ",
06741                           102,-2,100);
06742     hShwTrkNumPQ->GetXaxis()->SetTitle("#shws + #trks x 10");
06743     hShwTrkNumPQ->GetXaxis()->CenterTitle();
06744     hShwTrkNumPQ->GetYaxis()->SetTitle("");
06745     hShwTrkNumPQ->GetYaxis()->CenterTitle();
06746     //hShwTrkNumPQ->SetBit(TH1::kCanRebin);
06747 
06748     hShwPrimPQ=new TH1F("hShwPrimPQ","hShwPrimPQ",
06749                         20,-2,18);
06750     hShwPrimPQ->GetXaxis()->SetTitle("Primary shower or not");
06751     hShwPrimPQ->GetXaxis()->CenterTitle();
06752     hShwPrimPQ->GetYaxis()->SetTitle("");
06753     hShwPrimPQ->GetYaxis()->CenterTitle();
06754     //hShwPrimPQ->SetBit(TH1::kCanRebin);
06755 
06756 
06757     hShwEn0PQ=new TH1F("hShwEn0PQ","hShwEn0PQ",
06758                        510,-1,50);
06759     hShwEn0PQ->GetXaxis()->SetTitle("Energy (GeV)");
06760     hShwEn0PQ->GetXaxis()->CenterTitle();
06761     hShwEn0PQ->GetYaxis()->SetTitle("");
06762     hShwEn0PQ->GetYaxis()->CenterTitle();
06763     //hShwEn0PQ->SetBit(TH1::kCanRebin);
06764 
06765     hShwEn1PQ=new TH1F("hShwEn1PQ","hShwEn1PQ",
06766                        510,-1,50);
06767     hShwEn1PQ->GetXaxis()->SetTitle("Energy (GeV)");
06768     hShwEn1PQ->GetXaxis()->CenterTitle();
06769     hShwEn1PQ->GetYaxis()->SetTitle("");
06770     hShwEn1PQ->GetYaxis()->CenterTitle();
06771     //hShwEn1PQ->SetBit(TH1::kCanRebin);
06772 
06773 
06774     hShwCmpt0PQ=new TH1F("hShwCmpt0PQ","hShwCmpt0PQ",
06775                          400,-2,2);
06776     hShwCmpt0PQ->GetXaxis()->SetTitle("Completeness");
06777     hShwCmpt0PQ->GetXaxis()->CenterTitle();
06778     hShwCmpt0PQ->GetYaxis()->SetTitle("");
06779     hShwCmpt0PQ->GetYaxis()->CenterTitle();
06780     //hShwCmpt0PQ->SetBit(TH1::kCanRebin);
06781     
06782     hShwCmpt1PQ=new TH1F("hShwCmpt1PQ","hShwCmpt1PQ",
06783                          400,-2,2);
06784     hShwCmpt1PQ->GetXaxis()->SetTitle("Completeness");
06785     hShwCmpt1PQ->GetXaxis()->CenterTitle();
06786     hShwCmpt1PQ->GetYaxis()->SetTitle("");
06787     hShwCmpt1PQ->GetYaxis()->CenterTitle();
06788     //hShwCmpt1PQ->SetBit(TH1::kCanRebin);
06789 
06790 
06791     hShwPrty0PQ=new TH1F("hShwPrty0PQ","hShwPrty0PQ",
06792                          400,-2,2);
06793     hShwPrty0PQ->GetXaxis()->SetTitle("Purity");
06794     hShwPrty0PQ->GetXaxis()->CenterTitle();
06795     hShwPrty0PQ->GetYaxis()->SetTitle("");
06796     hShwPrty0PQ->GetYaxis()->CenterTitle();
06797     //hShwPrty0PQ->SetBit(TH1::kCanRebin);
06798     
06799     hShwPrty1PQ=new TH1F("hShwPrty1PQ","hShwPrty1PQ",
06800                          400,-2,2);
06801     hShwPrty1PQ->GetXaxis()->SetTitle("Purity");
06802     hShwPrty1PQ->GetXaxis()->CenterTitle();
06803     hShwPrty1PQ->GetYaxis()->SetTitle("");
06804     hShwPrty1PQ->GetYaxis()->CenterTitle();
06805     //hShwPrty1PQ->SetBit(TH1::kCanRebin);
06806 
06807 
06808     hShwTrkVtxZDist0PQ=new TH1F
06809       ("hShwTrkVtxZDist0PQ","hShwTrkVtxZDist0PQ",4000,-20,20);
06810     hShwTrkVtxZDist0PQ->GetXaxis()->SetTitle("Shw-Trk Vtx Dist in Z (m)");
06811     hShwTrkVtxZDist0PQ->GetXaxis()->CenterTitle();
06812     hShwTrkVtxZDist0PQ->GetYaxis()->SetTitle("");
06813     hShwTrkVtxZDist0PQ->GetYaxis()->CenterTitle();
06814     //hShwTrkVtxZDist0PQ->SetBit(TH1::kCanRebin);
06815     
06816     hShwTrkVtxZDist1PQ=new TH1F
06817       ("hShwTrkVtxZDist1PQ","hShwTrkVtxZDist1PQ",4000,-20,20);
06818     hShwTrkVtxZDist1PQ->GetXaxis()->SetTitle("Shw-Trk Vtx Dist in Z (m)");
06819     hShwTrkVtxZDist1PQ->GetXaxis()->CenterTitle();
06820     hShwTrkVtxZDist1PQ->GetYaxis()->SetTitle("");
06821     hShwTrkVtxZDist1PQ->GetYaxis()->CenterTitle();
06822     //hShwTrkVtxZDist1PQ->SetBit(TH1::kCanRebin);
06823     
06824 
06825     hShwTrkVtxSDist0PQ=new TH1F
06826       ("hShwTrkVtxSDist0PQ","hShwTrkVtxSDist0PQ",4000,-20,20);
06827     hShwTrkVtxSDist0PQ->GetXaxis()->SetTitle("Shw-Trk Vtx Dist (m)");
06828     hShwTrkVtxSDist0PQ->GetXaxis()->CenterTitle();
06829     hShwTrkVtxSDist0PQ->GetYaxis()->SetTitle("");
06830     hShwTrkVtxSDist0PQ->GetYaxis()->CenterTitle();
06831     //hShwTrkVtxSDist0PQ->SetBit(TH1::kCanRebin);
06832 
06833     hShwTrkVtxSDist1PQ=new TH1F
06834       ("hShwTrkVtxSDist1PQ","hShwTrkVtxSDist1PQ",4000,-20,20);
06835     hShwTrkVtxSDist1PQ->GetXaxis()->SetTitle("Shw-Trk Vtx Dist (m)");
06836     hShwTrkVtxSDist1PQ->GetXaxis()->CenterTitle();
06837     hShwTrkVtxSDist1PQ->GetYaxis()->SetTitle("");
06838     hShwTrkVtxSDist1PQ->GetYaxis()->CenterTitle();
06839     //hShwTrkVtxSDist1PQ->SetBit(TH1::kCanRebin);
06840 
06841 
06842     hShwTrkVtxRDist0PQ=new TH1F
06843       ("hShwTrkVtxRDist0PQ","hShwTrkVtxRDist0PQ",1000,-5,5);
06844     hShwTrkVtxRDist0PQ->GetXaxis()->SetTitle("Shw-Trk Vtx R Dist (m)");
06845     hShwTrkVtxRDist0PQ->GetXaxis()->CenterTitle();
06846     hShwTrkVtxRDist0PQ->GetYaxis()->SetTitle("");
06847     hShwTrkVtxRDist0PQ->GetYaxis()->CenterTitle();
06848     //hShwTrkVtxRDist0PQ->SetBit(TH1::kCanRebin);
06849     
06850     hShwTrkVtxRDist1PQ=new TH1F
06851       ("hShwTrkVtxRDist1PQ","hShwTrkVtxRDist1PQ",1000,-5,5);
06852     hShwTrkVtxRDist1PQ->GetXaxis()->SetTitle("Shw-Trk Vtx R Dist (m)");
06853     hShwTrkVtxRDist1PQ->GetXaxis()->CenterTitle();
06854     hShwTrkVtxRDist1PQ->GetYaxis()->SetTitle("");
06855     hShwTrkVtxRDist1PQ->GetYaxis()->CenterTitle();
06856     //hShwTrkVtxRDist1PQ->SetBit(TH1::kCanRebin);
06857 
06858 
06859     hShwTrkSDist0PQ=new TH1F
06860       ("hShwTrkSDist0PQ","hShwTrkSDist0PQ",4000,-20,20);
06861     hShwTrkSDist0PQ->GetXaxis()->SetTitle("Shw-Trk Dist (m)");
06862     hShwTrkSDist0PQ->GetXaxis()->CenterTitle();
06863     hShwTrkSDist0PQ->GetYaxis()->SetTitle("");
06864     hShwTrkSDist0PQ->GetYaxis()->CenterTitle();
06865     //hShwTrkSDist0PQ->SetBit(TH1::kCanRebin);
06866 
06867     hShwTrkSDist1PQ=new TH1F
06868       ("hShwTrkSDist1PQ","hShwTrkSDist1PQ",4000,-20,20);
06869     hShwTrkSDist1PQ->GetXaxis()->SetTitle("Shw-Trk Dist (m)");
06870     hShwTrkSDist1PQ->GetXaxis()->CenterTitle();
06871     hShwTrkSDist1PQ->GetYaxis()->SetTitle("");
06872     hShwTrkSDist1PQ->GetYaxis()->CenterTitle();
06873     //hShwTrkSDist1PQ->SetBit(TH1::kCanRebin);
06874 
06875 
06876 
06877     pShwCmptTrkVtxZDist0PQ=new TProfile
06878       ("pShwCmptTrkVtxZDist0PQ","pShwCmptTrkVtxZDist0PQ",400,-20,20);
06879     pShwCmptTrkVtxZDist0PQ->GetXaxis()->SetTitle("Shw-Trk Dist in Z (m)");
06880     pShwCmptTrkVtxZDist0PQ->GetXaxis()->CenterTitle();
06881     pShwCmptTrkVtxZDist0PQ->GetYaxis()->SetTitle("Completeness");
06882     pShwCmptTrkVtxZDist0PQ->GetYaxis()->CenterTitle();
06883     
06884     pShwCmptTrkVtxZDist1PQ=new TProfile
06885       ("pShwCmptTrkVtxZDist1PQ","pShwCmptTrkVtxZDist1PQ",400,-20,20);
06886     pShwCmptTrkVtxZDist1PQ->GetXaxis()->SetTitle("Shw-Trk Dist in Z (m)");
06887     pShwCmptTrkVtxZDist1PQ->GetXaxis()->CenterTitle();
06888     pShwCmptTrkVtxZDist1PQ->GetYaxis()->SetTitle("Completeness");
06889     pShwCmptTrkVtxZDist1PQ->GetYaxis()->CenterTitle();
06890 
06891     
06892     pShwCmptTrkVtxSDist0PQ=new TProfile
06893       ("pShwCmptTrkVtxSDist0PQ","pShwCmptTrkVtxSDist0PQ",400,-20,20);
06894     pShwCmptTrkVtxSDist0PQ->GetXaxis()->SetTitle("Shw-Trk Dist (m)");
06895     pShwCmptTrkVtxSDist0PQ->GetXaxis()->CenterTitle();
06896     pShwCmptTrkVtxSDist0PQ->GetYaxis()->SetTitle("Completeness");
06897     pShwCmptTrkVtxSDist0PQ->GetYaxis()->CenterTitle();
06898     
06899     pShwCmptTrkVtxSDist1PQ=new TProfile
06900       ("pShwCmptTrkVtxSDist1PQ","pShwCmptTrkVtxSDist1PQ",400,-20,20);
06901     pShwCmptTrkVtxSDist1PQ->GetXaxis()->SetTitle("Shw-Trk Dist (m)");
06902     pShwCmptTrkVtxSDist1PQ->GetXaxis()->CenterTitle();
06903     pShwCmptTrkVtxSDist1PQ->GetYaxis()->SetTitle("Completeness");
06904     pShwCmptTrkVtxSDist1PQ->GetYaxis()->CenterTitle();
06905 
06906 
06907     pShwCmptTrkVtxRDist0PQ=new TProfile
06908       ("pShwCmptTrkVtxRDist0PQ","pShwCmptTrkVtxRDist0PQ",100,-5,5);
06909     pShwCmptTrkVtxRDist0PQ->GetXaxis()->SetTitle("Shw-Trk R Dist (m)");
06910     pShwCmptTrkVtxRDist0PQ->GetXaxis()->CenterTitle();
06911     pShwCmptTrkVtxRDist0PQ->GetYaxis()->SetTitle("Completeness");
06912     pShwCmptTrkVtxRDist0PQ->GetYaxis()->CenterTitle();
06913     
06914     pShwCmptTrkVtxRDist1PQ=new TProfile
06915       ("pShwCmptTrkVtxRDist1PQ","pShwCmptTrkVtxRDist1PQ",100,-5,5);
06916     pShwCmptTrkVtxRDist1PQ->GetXaxis()->SetTitle("Shw-Trk R Dist (m)");
06917     pShwCmptTrkVtxRDist1PQ->GetXaxis()->CenterTitle();
06918     pShwCmptTrkVtxRDist1PQ->GetYaxis()->SetTitle("Completeness");
06919     pShwCmptTrkVtxRDist1PQ->GetYaxis()->CenterTitle();
06920 
06921     
06922     pShwCmptEnergy0PQ=new TProfile
06923       ("pShwCmptEnergy0PQ","pShwCmptEnergy0PQ",510,-1,50);
06924     pShwCmptEnergy0PQ->GetXaxis()->SetTitle("Energy (GeV)");
06925     pShwCmptEnergy0PQ->GetXaxis()->CenterTitle();
06926     pShwCmptEnergy0PQ->GetYaxis()->SetTitle("Completeness");
06927     pShwCmptEnergy0PQ->GetYaxis()->CenterTitle();
06928     
06929     pShwCmptEnergy1PQ=new TProfile
06930       ("pShwCmptEnergy1PQ","pShwCmptEnergy1PQ",510,-1,50);
06931     pShwCmptEnergy1PQ->GetXaxis()->SetTitle("Energy (GeV)");
06932     pShwCmptEnergy1PQ->GetXaxis()->CenterTitle();
06933     pShwCmptEnergy1PQ->GetYaxis()->SetTitle("Completeness");
06934     pShwCmptEnergy1PQ->GetYaxis()->CenterTitle();
06935 
06936 
06937     pShwTrkVtxXYCmpt0PQ=new TProfile2D
06938       ("pShwTrkVtxXYCmpt0PQ","pShwTrkVtxXYCmpt0PQ",30,-3,3,30,-3,3);
06939     pShwTrkVtxXYCmpt0PQ->GetXaxis()->SetTitle("X (m)");
06940     pShwTrkVtxXYCmpt0PQ->GetXaxis()->CenterTitle();
06941     pShwTrkVtxXYCmpt0PQ->GetYaxis()->SetTitle("Y (m)");
06942     pShwTrkVtxXYCmpt0PQ->GetYaxis()->CenterTitle();
06943     //pShwTrkVtxXYCmpt0PQ->SetBit(TH1::kCanRebin);
06944 
06945     pShwTrkVtxXYCmpt1PQ=new TProfile2D
06946       ("pShwTrkVtxXYCmpt1PQ","pShwTrkVtxXYCmpt1PQ",30,-3,3,30,-3,3);
06947     pShwTrkVtxXYCmpt1PQ->GetXaxis()->SetTitle("X (m)");
06948     pShwTrkVtxXYCmpt1PQ->GetXaxis()->CenterTitle();
06949     pShwTrkVtxXYCmpt1PQ->GetYaxis()->SetTitle("Y (m)");
06950     pShwTrkVtxXYCmpt1PQ->GetYaxis()->CenterTitle();
06951     //pShwTrkVtxXYCmpt1PQ->SetBit(TH1::kCanRebin);
06952 
06953 
06954 
06955     hShwTrkVtxXYDist0PQ=new TH2F
06956       ("hShwTrkVtxXYDist0PQ","hShwTrkVtxXYDist0PQ",300,-3,3,300,-3,3);
06957     hShwTrkVtxXYDist0PQ->GetXaxis()->SetTitle("X (m)");
06958     hShwTrkVtxXYDist0PQ->GetXaxis()->CenterTitle();
06959     hShwTrkVtxXYDist0PQ->GetYaxis()->SetTitle("Y (m)");
06960     hShwTrkVtxXYDist0PQ->GetYaxis()->CenterTitle();
06961     //hShwTrkVtxXYDist0PQ->SetBit(TH1::kCanRebin);
06962 
06963     hShwTrkVtxXYDist1PQ=new TH2F
06964       ("hShwTrkVtxXYDist1PQ","hShwTrkVtxXYDist1PQ",300,-3,3,300,-3,3);
06965     hShwTrkVtxXYDist1PQ->GetXaxis()->SetTitle("X (m)");
06966     hShwTrkVtxXYDist1PQ->GetXaxis()->CenterTitle();
06967     hShwTrkVtxXYDist1PQ->GetYaxis()->SetTitle("Y (m)");
06968     hShwTrkVtxXYDist1PQ->GetYaxis()->CenterTitle();
06969     //hShwTrkVtxXYDist1PQ->SetBit(TH1::kCanRebin);
06970 
06971 
06972     hShwVtxXY0PQ=new TH2F
06973       ("hShwVtxXY0PQ","hShwVtxXY0PQ",400,-4,4,400,-4,4);
06974     hShwVtxXY0PQ->GetXaxis()->SetTitle("X (m)");
06975     hShwVtxXY0PQ->GetXaxis()->CenterTitle();
06976     hShwVtxXY0PQ->GetYaxis()->SetTitle("Y (m)");
06977     hShwVtxXY0PQ->GetYaxis()->CenterTitle();
06978     //hShwVtxXY0PQ->SetBit(TH1::kCanRebin);
06979 
06980     hShwVtxXY1PQ=new TH2F
06981       ("hShwVtxXY1PQ","hShwVtxXY1PQ",400,-4,4,400,-4,4);
06982     hShwVtxXY1PQ->GetXaxis()->SetTitle("X (m)");
06983     hShwVtxXY1PQ->GetXaxis()->CenterTitle();
06984     hShwVtxXY1PQ->GetYaxis()->SetTitle("Y (m)");
06985     hShwVtxXY1PQ->GetYaxis()->CenterTitle();
06986     //hShwVtxXY1PQ->SetBit(TH1::kCanRebin);
06987 
06988     hShwVtxZ0PQ=new TH1F("hShwVtxZ0PQ","hShwVtxZ0PQ",2000,-0.5,18);
06989     hShwVtxZ0PQ->GetXaxis()->SetTitle("Z (m)");
06990     hShwVtxZ0PQ->GetXaxis()->CenterTitle();
06991     hShwVtxZ0PQ->GetYaxis()->SetTitle("");
06992     hShwVtxZ0PQ->GetYaxis()->CenterTitle();
06993     //hShwVtxZ0PQ->SetBit(TH1::kCanRebin);
06994 
06995     hShwVtxZ1PQ=new TH1F("hShwVtxZ1PQ","hShwVtxZ1PQ",2000,-0.5,18);
06996     hShwVtxZ1PQ->GetXaxis()->SetTitle("Z (m)");
06997     hShwVtxZ1PQ->GetXaxis()->CenterTitle();
06998     hShwVtxZ1PQ->GetYaxis()->SetTitle("");
06999     hShwVtxZ1PQ->GetYaxis()->CenterTitle();
07000     //hShwVtxZ1PQ->SetBit(TH1::kCanRebin);
07001 
07002 
07003 
07004     //NQ
07005     hShwNumNQ=new TH1F("hShwNumNQ","hShwNumNQ",
07006                        20,-2,18);
07007     hShwNumNQ->GetXaxis()->SetTitle("#shws");
07008     hShwNumNQ->GetXaxis()->CenterTitle();
07009     hShwNumNQ->GetYaxis()->SetTitle("");
07010     hShwNumNQ->GetYaxis()->CenterTitle();
07011     //hShwNumNQ->SetBit(TH1::kCanRebin);
07012 
07013     hShwTrkNumNQ=new TH1F("hShwTrkNumNQ","hShwTrkNumNQ",
07014                           102,-2,100);
07015     hShwTrkNumNQ->GetXaxis()->SetTitle("#shws + #trks x 10");
07016     hShwTrkNumNQ->GetXaxis()->CenterTitle();
07017     hShwTrkNumNQ->GetYaxis()->SetTitle("");
07018     hShwTrkNumNQ->GetYaxis()->CenterTitle();
07019     //hShwTrkNumNQ->SetBit(TH1::kCanRebin);
07020 
07021     hShwPrimNQ=new TH1F("hShwPrimNQ","hShwPrimNQ",
07022                         20,-2,18);
07023     hShwPrimNQ->GetXaxis()->SetTitle("Primary shower or not");
07024     hShwPrimNQ->GetXaxis()->CenterTitle();
07025     hShwPrimNQ->GetYaxis()->SetTitle("");
07026     hShwPrimNQ->GetYaxis()->CenterTitle();
07027     //hShwPrimNQ->SetBit(TH1::kCanRebin);
07028 
07029 
07030     hShwEn0NQ=new TH1F("hShwEn0NQ","hShwEn0NQ",
07031                        510,-1,50);
07032     hShwEn0NQ->GetXaxis()->SetTitle("Energy (GeV)");
07033     hShwEn0NQ->GetXaxis()->CenterTitle();
07034     hShwEn0NQ->GetYaxis()->SetTitle("");
07035     hShwEn0NQ->GetYaxis()->CenterTitle();
07036     //hShwEn0NQ->SetBit(TH1::kCanRebin);
07037 
07038     hShwEn1NQ=new TH1F("hShwEn1NQ","hShwEn1NQ",
07039                        510,-1,50);
07040     hShwEn1NQ->GetXaxis()->SetTitle("Energy (GeV)");
07041     hShwEn1NQ->GetXaxis()->CenterTitle();
07042     hShwEn1NQ->GetYaxis()->SetTitle("");
07043     hShwEn1NQ->GetYaxis()->CenterTitle();
07044     //hShwEn1NQ->SetBit(TH1::kCanRebin);
07045 
07046 
07047     hShwCmpt0NQ=new TH1F("hShwCmpt0NQ","hShwCmpt0NQ",
07048                          400,-2,2);
07049     hShwCmpt0NQ->GetXaxis()->SetTitle("Completeness");
07050     hShwCmpt0NQ->GetXaxis()->CenterTitle();
07051     hShwCmpt0NQ->GetYaxis()->SetTitle("");
07052     hShwCmpt0NQ->GetYaxis()->CenterTitle();
07053     //hShwCmpt0NQ->SetBit(TH1::kCanRebin);
07054     
07055     hShwCmpt1NQ=new TH1F("hShwCmpt1NQ","hShwCmpt1NQ",
07056                          400,-2,2);
07057     hShwCmpt1NQ->GetXaxis()->SetTitle("Completeness");
07058     hShwCmpt1NQ->GetXaxis()->CenterTitle();
07059     hShwCmpt1NQ->GetYaxis()->SetTitle("");
07060     hShwCmpt1NQ->GetYaxis()->CenterTitle();
07061     //hShwCmpt1NQ->SetBit(TH1::kCanRebin);
07062 
07063 
07064     hShwPrty0NQ=new TH1F("hShwPrty0NQ","hShwPrty0NQ",
07065                          400,-2,2);
07066     hShwPrty0NQ->GetXaxis()->SetTitle("Purity");
07067     hShwPrty0NQ->GetXaxis()->CenterTitle();
07068     hShwPrty0NQ->GetYaxis()->SetTitle("");
07069     hShwPrty0NQ->GetYaxis()->CenterTitle();
07070     //hShwPrty0NQ->SetBit(TH1::kCanRebin);
07071     
07072     hShwPrty1NQ=new TH1F("hShwPrty1NQ","hShwPrty1NQ",
07073                          400,-2,2);
07074     hShwPrty1NQ->GetXaxis()->SetTitle("Purity");
07075     hShwPrty1NQ->GetXaxis()->CenterTitle();
07076     hShwPrty1NQ->GetYaxis()->SetTitle("");
07077     hShwPrty1NQ->GetYaxis()->CenterTitle();
07078     //hShwPrty1NQ->SetBit(TH1::kCanRebin);
07079 
07080 
07081     hShwTrkVtxZDist0NQ=new TH1F
07082       ("hShwTrkVtxZDist0NQ","hShwTrkVtxZDist0NQ",4000,-20,20);
07083     hShwTrkVtxZDist0NQ->GetXaxis()->SetTitle("Shw-Trk Vtx Dist in Z (m)");
07084     hShwTrkVtxZDist0NQ->GetXaxis()->CenterTitle();
07085     hShwTrkVtxZDist0NQ->GetYaxis()->SetTitle("");
07086     hShwTrkVtxZDist0NQ->GetYaxis()->CenterTitle();
07087     //hShwTrkVtxZDist0NQ->SetBit(TH1::kCanRebin);
07088     
07089     hShwTrkVtxZDist1NQ=new TH1F
07090       ("hShwTrkVtxZDist1NQ","hShwTrkVtxZDist1NQ",4000,-20,20);
07091     hShwTrkVtxZDist1NQ->GetXaxis()->SetTitle("Shw-Trk Vtx Dist in Z (m)");
07092     hShwTrkVtxZDist1NQ->GetXaxis()->CenterTitle();
07093     hShwTrkVtxZDist1NQ->GetYaxis()->SetTitle("");
07094     hShwTrkVtxZDist1NQ->GetYaxis()->CenterTitle();
07095     //hShwTrkVtxZDist1NQ->SetBit(TH1::kCanRebin);
07096     
07097 
07098     hShwTrkVtxSDist0NQ=new TH1F
07099       ("hShwTrkVtxSDist0NQ","hShwTrkVtxSDist0NQ",4000,-20,20);
07100     hShwTrkVtxSDist0NQ->GetXaxis()->SetTitle("Shw-Trk Vtx Dist (m)");
07101     hShwTrkVtxSDist0NQ->GetXaxis()->CenterTitle();
07102     hShwTrkVtxSDist0NQ->GetYaxis()->SetTitle("");
07103     hShwTrkVtxSDist0NQ->GetYaxis()->CenterTitle();
07104     //hShwTrkVtxSDist0NQ->SetBit(TH1::kCanRebin);
07105 
07106     hShwTrkVtxSDist1NQ=new TH1F
07107       ("hShwTrkVtxSDist1NQ","hShwTrkVtxSDist1NQ",4000,-20,20);
07108     hShwTrkVtxSDist1NQ->GetXaxis()->SetTitle("Shw-Trk Vtx Dist (m)");
07109     hShwTrkVtxSDist1NQ->GetXaxis()->CenterTitle();
07110     hShwTrkVtxSDist1NQ->GetYaxis()->SetTitle("");
07111     hShwTrkVtxSDist1NQ->GetYaxis()->CenterTitle();
07112     //hShwTrkVtxSDist1NQ->SetBit(TH1::kCanRebin);
07113 
07114 
07115     hShwTrkVtxRDist0NQ=new TH1F
07116       ("hShwTrkVtxRDist0NQ","hShwTrkVtxRDist0NQ",1000,-5,5);
07117     hShwTrkVtxRDist0NQ->GetXaxis()->SetTitle("Shw-Trk Vtx R Dist (m)");
07118     hShwTrkVtxRDist0NQ->GetXaxis()->CenterTitle();
07119     hShwTrkVtxRDist0NQ->GetYaxis()->SetTitle("");
07120     hShwTrkVtxRDist0NQ->GetYaxis()->CenterTitle();
07121     //hShwTrkVtxRDist0NQ->SetBit(TH1::kCanRebin);
07122     
07123     hShwTrkVtxRDist1NQ=new TH1F
07124       ("hShwTrkVtxRDist1NQ","hShwTrkVtxRDist1NQ",1000,-5,5);
07125     hShwTrkVtxRDist1NQ->GetXaxis()->SetTitle("Shw-Trk Vtx R Dist (m)");
07126     hShwTrkVtxRDist1NQ->GetXaxis()->CenterTitle();
07127     hShwTrkVtxRDist1NQ->GetYaxis()->SetTitle("");
07128     hShwTrkVtxRDist1NQ->GetYaxis()->CenterTitle();
07129     //hShwTrkVtxRDist1NQ->SetBit(TH1::kCanRebin);
07130 
07131 
07132     hShwTrkSDist0NQ=new TH1F
07133       ("hShwTrkSDist0NQ","hShwTrkSDist0NQ",4000,-20,20);
07134     hShwTrkSDist0NQ->GetXaxis()->SetTitle("Shw-Trk Dist (m)");
07135     hShwTrkSDist0NQ->GetXaxis()->CenterTitle();
07136     hShwTrkSDist0NQ->GetYaxis()->SetTitle("");
07137     hShwTrkSDist0NQ->GetYaxis()->CenterTitle();
07138     //hShwTrkSDist0NQ->SetBit(TH1::kCanRebin);
07139 
07140     hShwTrkSDist1NQ=new TH1F
07141       ("hShwTrkSDist1NQ","hShwTrkSDist1NQ",4000,-20,20);
07142     hShwTrkSDist1NQ->GetXaxis()->SetTitle("Shw-Trk Dist (m)");
07143     hShwTrkSDist1NQ->GetXaxis()->CenterTitle();
07144     hShwTrkSDist1NQ->GetYaxis()->SetTitle("");
07145     hShwTrkSDist1NQ->GetYaxis()->CenterTitle();
07146     //hShwTrkSDist1NQ->SetBit(TH1::kCanRebin);
07147 
07148 
07149 
07150     pShwCmptTrkVtxZDist0NQ=new TProfile
07151       ("pShwCmptTrkVtxZDist0NQ","pShwCmptTrkVtxZDist0NQ",400,-20,20);
07152     pShwCmptTrkVtxZDist0NQ->GetXaxis()->SetTitle("Shw-Trk Dist in Z (m)");
07153     pShwCmptTrkVtxZDist0NQ->GetXaxis()->CenterTitle();
07154     pShwCmptTrkVtxZDist0NQ->GetYaxis()->SetTitle("Completeness");
07155     pShwCmptTrkVtxZDist0NQ->GetYaxis()->CenterTitle();
07156     
07157     pShwCmptTrkVtxZDist1NQ=new TProfile
07158       ("pShwCmptTrkVtxZDist1NQ","pShwCmptTrkVtxZDist1NQ",400,-20,20);
07159     pShwCmptTrkVtxZDist1NQ->GetXaxis()->SetTitle("Shw-Trk Dist in Z (m)");
07160     pShwCmptTrkVtxZDist1NQ->GetXaxis()->CenterTitle();
07161     pShwCmptTrkVtxZDist1NQ->GetYaxis()->SetTitle("Completeness");
07162     pShwCmptTrkVtxZDist1NQ->GetYaxis()->CenterTitle();
07163 
07164     
07165     pShwCmptTrkVtxSDist0NQ=new TProfile
07166       ("pShwCmptTrkVtxSDist0NQ","pShwCmptTrkVtxSDist0NQ",400,-20,20);
07167     pShwCmptTrkVtxSDist0NQ->GetXaxis()->SetTitle("Shw-Trk Dist (m)");
07168     pShwCmptTrkVtxSDist0NQ->GetXaxis()->CenterTitle();
07169     pShwCmptTrkVtxSDist0NQ->GetYaxis()->SetTitle("Completeness");
07170     pShwCmptTrkVtxSDist0NQ->GetYaxis()->CenterTitle();
07171     
07172     pShwCmptTrkVtxSDist1NQ=new TProfile
07173       ("pShwCmptTrkVtxSDist1NQ","pShwCmptTrkVtxSDist1NQ",400,-20,20);
07174     pShwCmptTrkVtxSDist1NQ->GetXaxis()->SetTitle("Shw-Trk Dist (m)");
07175     pShwCmptTrkVtxSDist1NQ->GetXaxis()->CenterTitle();
07176     pShwCmptTrkVtxSDist1NQ->GetYaxis()->SetTitle("Completeness");
07177     pShwCmptTrkVtxSDist1NQ->GetYaxis()->CenterTitle();
07178 
07179 
07180     pShwCmptTrkVtxRDist0NQ=new TProfile
07181       ("pShwCmptTrkVtxRDist0NQ","pShwCmptTrkVtxRDist0NQ",100,-5,5);
07182     pShwCmptTrkVtxRDist0NQ->GetXaxis()->SetTitle("Shw-Trk R Dist (m)");
07183     pShwCmptTrkVtxRDist0NQ->GetXaxis()->CenterTitle();
07184     pShwCmptTrkVtxRDist0NQ->GetYaxis()->SetTitle("Completeness");
07185     pShwCmptTrkVtxRDist0NQ->GetYaxis()->CenterTitle();
07186     
07187     pShwCmptTrkVtxRDist1NQ=new TProfile
07188       ("pShwCmptTrkVtxRDist1NQ","pShwCmptTrkVtxRDist1NQ",100,-5,5);
07189     pShwCmptTrkVtxRDist1NQ->GetXaxis()->SetTitle("Shw-Trk R Dist (m)");
07190     pShwCmptTrkVtxRDist1NQ->GetXaxis()->CenterTitle();
07191     pShwCmptTrkVtxRDist1NQ->GetYaxis()->SetTitle("Completeness");
07192     pShwCmptTrkVtxRDist1NQ->GetYaxis()->CenterTitle();
07193 
07194 
07195     pShwCmptEnergy0NQ=new TProfile
07196       ("pShwCmptEnergy0NQ","pShwCmptEnergy0NQ",510,-1,50);
07197     pShwCmptEnergy0NQ->GetXaxis()->SetTitle("Energy (GeV)");
07198     pShwCmptEnergy0NQ->GetXaxis()->CenterTitle();
07199     pShwCmptEnergy0NQ->GetYaxis()->SetTitle("Completeness");
07200     pShwCmptEnergy0NQ->GetYaxis()->CenterTitle();
07201     
07202     pShwCmptEnergy1NQ=new TProfile
07203       ("pShwCmptEnergy1NQ","pShwCmptEnergy1NQ",510,-1,50);
07204     pShwCmptEnergy1NQ->GetXaxis()->SetTitle("Energy (GeV)");
07205     pShwCmptEnergy1NQ->GetXaxis()->CenterTitle();
07206     pShwCmptEnergy1NQ->GetYaxis()->SetTitle("Completeness");
07207     pShwCmptEnergy1NQ->GetYaxis()->CenterTitle();
07208 
07209 
07210     pShwTrkVtxXYCmpt0NQ=new TProfile2D
07211       ("pShwTrkVtxXYCmpt0NQ","pShwTrkVtxXYCmpt0NQ",30,-3,3,30,-3,3);
07212     pShwTrkVtxXYCmpt0NQ->GetXaxis()->SetTitle("X (m)");
07213     pShwTrkVtxXYCmpt0NQ->GetXaxis()->CenterTitle();
07214     pShwTrkVtxXYCmpt0NQ->GetYaxis()->SetTitle("Y (m)");
07215     pShwTrkVtxXYCmpt0NQ->GetYaxis()->CenterTitle();
07216     //pShwTrkVtxXYCmpt0NQ->SetBit(TH1::kCanRebin);
07217 
07218     pShwTrkVtxXYCmpt1NQ=new TProfile2D
07219       ("pShwTrkVtxXYCmpt1NQ","pShwTrkVtxXYCmpt1NQ",30,-3,3,30,-3,3);
07220     pShwTrkVtxXYCmpt1NQ->GetXaxis()->SetTitle("X (m)");
07221     pShwTrkVtxXYCmpt1NQ->GetXaxis()->CenterTitle();
07222     pShwTrkVtxXYCmpt1NQ->GetYaxis()->SetTitle("Y (m)");
07223     pShwTrkVtxXYCmpt1NQ->GetYaxis()->CenterTitle();
07224     //pShwTrkVtxXYCmpt1NQ->SetBit(TH1::kCanRebin);
07225 
07226 
07227 
07228     hShwTrkVtxXYDist0NQ=new TH2F
07229       ("hShwTrkVtxXYDist0NQ","hShwTrkVtxXYDist0NQ",300,-3,3,300,-3,3);
07230     hShwTrkVtxXYDist0NQ->GetXaxis()->SetTitle("X (m)");
07231     hShwTrkVtxXYDist0NQ->GetXaxis()->CenterTitle();
07232     hShwTrkVtxXYDist0NQ->GetYaxis()->SetTitle("Y (m)");
07233     hShwTrkVtxXYDist0NQ->GetYaxis()->CenterTitle();
07234     //hShwTrkVtxXYDist0NQ->SetBit(TH1::kCanRebin);
07235 
07236     hShwTrkVtxXYDist1NQ=new TH2F
07237       ("hShwTrkVtxXYDist1NQ","hShwTrkVtxXYDist1NQ",300,-3,3,300,-3,3);
07238     hShwTrkVtxXYDist1NQ->GetXaxis()->SetTitle("X (m)");
07239     hShwTrkVtxXYDist1NQ->GetXaxis()->CenterTitle();
07240     hShwTrkVtxXYDist1NQ->GetYaxis()->SetTitle("Y (m)");
07241     hShwTrkVtxXYDist1NQ->GetYaxis()->CenterTitle();
07242     //hShwTrkVtxXYDist1NQ->SetBit(TH1::kCanRebin);
07243 
07244 
07245     hShwVtxXY0NQ=new TH2F
07246       ("hShwVtxXY0NQ","hShwVtxXY0NQ",400,-4,4,400,-4,4);
07247     hShwVtxXY0NQ->GetXaxis()->SetTitle("X (m)");
07248     hShwVtxXY0NQ->GetXaxis()->CenterTitle();
07249     hShwVtxXY0NQ->GetYaxis()->SetTitle("Y (m)");
07250     hShwVtxXY0NQ->GetYaxis()->CenterTitle();
07251     //hShwVtxXY0NQ->SetBit(TH1::kCanRebin);
07252 
07253     hShwVtxXY1NQ=new TH2F
07254       ("hShwVtxXY1NQ","hShwVtxXY1NQ",400,-4,4,400,-4,4);
07255     hShwVtxXY1NQ->GetXaxis()->SetTitle("X (m)");
07256     hShwVtxXY1NQ->GetXaxis()->CenterTitle();
07257     hShwVtxXY1NQ->GetYaxis()->SetTitle("Y (m)");
07258     hShwVtxXY1NQ->GetYaxis()->CenterTitle();
07259     //hShwVtxXY1NQ->SetBit(TH1::kCanRebin);
07260 
07261     hShwVtxZ0NQ=new TH1F("hShwVtxZ0NQ","hShwVtxZ0NQ",2000,-0.5,18);
07262     hShwVtxZ0NQ->GetXaxis()->SetTitle("Z (m)");
07263     hShwVtxZ0NQ->GetXaxis()->CenterTitle();
07264     hShwVtxZ0NQ->GetYaxis()->SetTitle("");
07265     hShwVtxZ0NQ->GetYaxis()->CenterTitle();
07266     //hShwVtxZ0NQ->SetBit(TH1::kCanRebin);
07267 
07268     hShwVtxZ1NQ=new TH1F("hShwVtxZ1NQ","hShwVtxZ1NQ",2000,-0.5,18);
07269     hShwVtxZ1NQ->GetXaxis()->SetTitle("Z (m)");
07270     hShwVtxZ1NQ->GetXaxis()->CenterTitle();
07271     hShwVtxZ1NQ->GetYaxis()->SetTitle("");
07272     hShwVtxZ1NQ->GetYaxis()->CenterTitle();
07273     //hShwVtxZ1NQ->SetBit(TH1::kCanRebin);
07274 
07275     //reco-true/true as a function of distance
07276     //purity/completeness as a func of dist
07277   }
07278 
07279   //get an instance of the code library
07280   NuLibrary& lib=NuLibrary::Instance();
07281 
07282   Float_t shwEn0=-999;
07283   Float_t shwCmpt0=-999;
07284   Float_t shwPrty0=-999;
07285   Float_t shwTrkVtxZDist0=-999;
07286   Float_t shwTrkVtxSDist0=-999;
07287   Float_t shwTrkVtxRDist0=-999;
07288   Float_t shwTrkSDist0=-999;
07289   Float_t shwTrkVtxXDist0=-999;
07290   Float_t shwTrkVtxYDist0=-999;
07291 
07292   Float_t shwEn1=-999;
07293   Float_t shwCmpt1=-999;
07294   Float_t shwPrty1=-999;
07295   Float_t shwTrkVtxZDist1=-999;
07296   Float_t shwTrkVtxSDist1=-999;
07297   Float_t shwTrkVtxRDist1=-999;
07298   Float_t shwTrkSDist1=-999;
07299   Float_t shwTrkVtxXDist1=-999;
07300   Float_t shwTrkVtxYDist1=-999;
07301 
07302   vector<const NtpSRShower*> vShws1;
07303   
07304 
07305   //get the best shw in the event
07306   Int_t bestShw=lib.reco.GetBestShower(nu);
07307   const NtpSRShower* pshw=lib.reco.GetShowerWithIndexX(ntp,evt,
07308                                                        bestShw-1);
07309   if (pshw){
07310     const NtpSRShower& shw=*pshw; 
07311     
07312     shwEn0=lib.reco.GetShowerEnergyCor(shw.shwph.linCCgev,CandShowerHandle::kCC,nu);
07313     
07314     MAXMSG("NuPlots",Msg::kDebug,30)
07315       <<"Primary shw index="<<shw.index
07316       <<", energy="<<shwEn0<<endl;
07317 
07318     //get the best track in the event
07319     Int_t bestTrack=lib.reco.GetBestTrack(nu);
07320     const NtpSRTrack* ptrk=lib.reco.GetTrackWithIndexX(ntp,evt,
07321                                                        bestTrack-1);
07322     if (!ptrk) MSG("NuPlots",Msg::kWarning)<<"Ahhh, no best trk"<<endl;
07323     const NtpSRTrack& trk=*ptrk; 
07324     
07325     if (nu.simFlag==SimFlag::kMC){
07326       TClonesArray& thshwTca=(*ntp.thshw);
07327       
07328       const NtpTHShower& thshw=
07329         *dynamic_cast<NtpTHShower*>(thshwTca[shw.index]);
07330       
07331       shwPrty0=thshw.purity;
07332       shwCmpt0=thshw.completeall;
07333       
07334       //TClonesArray& thtrkTca=(*ntp.thtrk);
07335       //const NtpTHShower& thtrk=
07336       //*dynamic_cast<NtpTHShower*>(thtrkTca[trk.index]);
07337     }
07338 
07339     shwTrkVtxZDist0=shw.vtx.z-trk.vtx.z;
07340     shwTrkVtxSDist0=sqrt(pow(shw.vtx.x-trk.vtx.x,2)+
07341                          pow(shw.vtx.y-trk.vtx.y,2)+
07342                          pow(shw.vtx.z-trk.vtx.z,2));
07343     shwTrkVtxRDist0=sqrt(pow(shw.vtx.x-trk.vtx.x,2)+
07344                          pow(shw.vtx.y-trk.vtx.y,2));
07345     //shwTrkSDist0
07346     shwTrkVtxXDist0=shw.vtx.x-trk.vtx.x;
07347     shwTrkVtxYDist0=shw.vtx.y-trk.vtx.y;
07348   }
07349 
07350   TClonesArray& shwTca=(*ntp.shw);
07351   //const Int_t numShws=shwTca.GetEntriesFast();
07352   
07353   //loop over showers
07354   for(Int_t ishw=0;ishw<evt.nshower;ishw++){
07355     const NtpSRShower* shw=
07356       dynamic_cast<NtpSRShower*>(shwTca[evt.shw[ishw]]);
07357 
07358     //sanity check
07359     if (shw==0) MSG("NuPlots",Msg::kWarning)<<"Ahhhhh, shw=0"<<endl;
07360 
07361     //skip over primary shower
07362     if (pshw){
07363       if ((*pshw).index==(*shw).index) {
07364         MAXMSG("NuPlots",Msg::kDebug,30)
07365           <<"Skipping shw index="<<(*shw).index
07366           <<", energy="<<shwEn0<<endl;
07367         continue;
07368       }
07369     }
07370 
07371     //store all the non-primary showers
07372     vShws1.push_back(shw);
07373   }
07374 
07375   //fill the primary shower histos first
07376   if (pshw) {
07377     const NtpSRShower& shw=*pshw; 
07378 
07379     if (nu.charge==+1) {
07380       hShwEn0PQ->Fill(shwEn0,nu.rw);
07381       hShwCmpt0PQ->Fill(shwCmpt0,nu.rw);
07382       hShwPrty0PQ->Fill(shwPrty0,nu.rw);
07383       hShwTrkVtxZDist0PQ->Fill(shwTrkVtxZDist0,nu.rw);
07384       hShwTrkVtxSDist0PQ->Fill(shwTrkVtxSDist0,nu.rw);
07385       hShwTrkVtxRDist0PQ->Fill(shwTrkVtxRDist0,nu.rw);
07386       hShwTrkSDist0PQ->Fill(shwTrkSDist0,nu.rw);
07387       pShwCmptTrkVtxZDist0PQ->Fill(shwTrkVtxZDist0,shwCmpt0,nu.rw);
07388       pShwCmptTrkVtxSDist0PQ->Fill(shwTrkVtxSDist0,shwCmpt0,nu.rw);
07389       pShwCmptTrkVtxRDist0PQ->Fill(shwTrkVtxRDist0,shwCmpt0,nu.rw);
07390       pShwCmptEnergy0PQ->Fill(shwEn0,shwCmpt0,nu.rw);
07391       pShwTrkVtxXYCmpt0PQ->Fill(shwTrkVtxXDist0,shwTrkVtxYDist0,
07392                                 shwCmpt0,nu.rw);
07393       hShwTrkVtxXYDist0PQ->Fill(shwTrkVtxXDist0,shwTrkVtxYDist0,nu.rw);
07394       hShwVtxXY0PQ->Fill(shw.vtx.x,shw.vtx.y,nu.rw);
07395       hShwVtxZ0PQ->Fill(shw.vtx.z,nu.rw);
07396     }
07397     else if (nu.charge==-1) {
07398       hShwEn0NQ->Fill(shwEn0,nu.rw);
07399       hShwCmpt0NQ->Fill(shwCmpt0,nu.rw);
07400       hShwPrty0NQ->Fill(shwPrty0,nu.rw);
07401       hShwTrkVtxZDist0NQ->Fill(shwTrkVtxZDist0,nu.rw);
07402       hShwTrkVtxSDist0NQ->Fill(shwTrkVtxSDist0,nu.rw);
07403       hShwTrkVtxRDist0NQ->Fill(shwTrkVtxRDist0,nu.rw);
07404       hShwTrkSDist0NQ->Fill(shwTrkSDist0,nu.rw);
07405       pShwCmptTrkVtxZDist0NQ->Fill(shwTrkVtxZDist0,shwCmpt0,nu.rw);
07406       pShwCmptTrkVtxSDist0NQ->Fill(shwTrkVtxSDist0,shwCmpt0,nu.rw);
07407       pShwCmptTrkVtxRDist0NQ->Fill(shwTrkVtxRDist0,shwCmpt0,nu.rw);
07408       pShwCmptEnergy0NQ->Fill(shwEn0,shwCmpt0,nu.rw);
07409       pShwTrkVtxXYCmpt0NQ->Fill(shwTrkVtxXDist0,shwTrkVtxYDist0,
07410                                 shwCmpt0,nu.rw);
07411       hShwTrkVtxXYDist0NQ->Fill(shwTrkVtxXDist0,shwTrkVtxYDist0,nu.rw);
07412       hShwVtxXY0NQ->Fill(shw.vtx.x,shw.vtx.y,nu.rw);
07413       hShwVtxZ0NQ->Fill(shw.vtx.z,nu.rw);
07414     }
07415   }
07416 
07417   //fill the general histograms
07418   if (nu.charge==+1) {
07419     hShwNumPQ->Fill(evt.nshower,nu.rw);
07420     hShwTrkNumPQ->Fill(evt.nshower+evt.ntrack*10,nu.rw);
07421     hShwPrimPQ->Fill(pshw>0,nu.rw);//1 if primary, 0 if not
07422   }
07423   else if (nu.charge==-1) {
07424     hShwNumNQ->Fill(evt.nshower,nu.rw);
07425     hShwTrkNumNQ->Fill(evt.nshower+evt.ntrack*10,nu.rw);
07426     hShwPrimNQ->Fill(pshw>0,nu.rw);//1 if primary, 0 if not
07427   }
07428   else MSG("NuPlots",Msg::kWarning)<<"Ahh, bad charge"<<endl;
07429 
07430   //loop over all the non-primary showers
07431   typedef vector<const NtpSRShower*>::const_iterator shwIt;
07432   for (shwIt it=vShws1.begin();it!=vShws1.end();++it){
07433     MAXMSG("NuPlots",Msg::kDebug,30)
07434       <<"Looping over non-primary showers, size="
07435       <<vShws1.size()<<", evt.index="<<evt.index
07436       <<", pshw="<<(pshw>0)<<", nshower="<<evt.nshower<<endl;
07437 
07438     //get a reference from pointer to pointer
07439     const NtpSRShower& shw=*(*it); 
07440 
07441     shwEn1=lib.reco.GetShowerEnergyCor(shw.shwph.linCCgev,CandShowerHandle::kCC,nu);
07442 
07443     if (nu.simFlag==SimFlag::kMC){
07444       TClonesArray& thshwTca=(*ntp.thshw);
07445       const NtpTHShower& thshw=
07446         *dynamic_cast<NtpTHShower*>(thshwTca[shw.index]);
07447       
07448       shwPrty1=thshw.purity;
07449       shwCmpt1=thshw.completeall;
07450     }
07451 
07452     Int_t bestTrack=lib.reco.GetBestTrack(nu);
07453     const NtpSRTrack* ptrk=lib.reco.GetTrackWithIndexX
07454       (ntp,evt,bestTrack-1);
07455     if (!ptrk) MSG("NuPlots",Msg::kWarning)<<"Ahhh, no best track"<<endl;
07456     const NtpSRTrack& trk=*ptrk; 
07457     
07458     shwTrkVtxZDist1=shw.vtx.z-trk.vtx.z;
07459     shwTrkVtxSDist1=sqrt(pow(shw.vtx.x-trk.vtx.x,2)+
07460                          pow(shw.vtx.y-trk.vtx.y,2)+
07461                          pow(shw.vtx.z-trk.vtx.z,2));
07462     shwTrkVtxRDist1=sqrt(pow(shw.vtx.x-trk.vtx.x,2)+
07463                          pow(shw.vtx.y-trk.vtx.y,2));
07464     //shwTrkSDist1
07465     shwTrkVtxXDist1=shw.vtx.x-trk.vtx.x;
07466     shwTrkVtxYDist1=shw.vtx.y-trk.vtx.y;
07467 
07468     if (nu.charge==+1) {
07469       hShwEn1PQ->Fill(shwEn1,nu.rw);
07470       hShwCmpt1PQ->Fill(shwCmpt1,nu.rw);
07471       hShwPrty1PQ->Fill(shwPrty1,nu.rw);
07472       hShwTrkVtxZDist1PQ->Fill(shwTrkVtxZDist1,nu.rw);
07473       hShwTrkVtxSDist1PQ->Fill(shwTrkVtxSDist1,nu.rw);
07474       hShwTrkVtxRDist1PQ->Fill(shwTrkVtxRDist1,nu.rw);
07475       hShwTrkSDist1PQ->Fill(shwTrkSDist1,nu.rw);
07476       pShwCmptTrkVtxZDist1PQ->Fill(shwTrkVtxZDist0,shwCmpt1,nu.rw);
07477       pShwCmptTrkVtxSDist1PQ->Fill(shwTrkVtxSDist0,shwCmpt1,nu.rw);
07478       pShwCmptTrkVtxRDist1PQ->Fill(shwTrkVtxRDist1,shwCmpt1,nu.rw);
07479       pShwCmptEnergy1PQ->Fill(shwEn1,shwCmpt1,nu.rw);
07480       pShwTrkVtxXYCmpt1PQ->Fill(shwTrkVtxXDist1,shwTrkVtxYDist1,
07481                                 shwCmpt1,nu.rw);
07482       hShwTrkVtxXYDist1PQ->Fill(shwTrkVtxXDist1,shwTrkVtxYDist1,nu.rw);
07483       hShwVtxXY1PQ->Fill(shw.vtx.x,shw.vtx.y,nu.rw);
07484       hShwVtxZ1PQ->Fill(shw.vtx.z,nu.rw);
07485     }
07486     else if (nu.charge==-1) {
07487       hShwEn1NQ->Fill(shwEn1,nu.rw);
07488       hShwCmpt1NQ->Fill(shwCmpt1,nu.rw);
07489       hShwPrty1NQ->Fill(shwPrty1,nu.rw);
07490       hShwTrkVtxZDist1NQ->Fill(shwTrkVtxZDist1,nu.rw);
07491       hShwTrkVtxSDist1NQ->Fill(shwTrkVtxSDist1,nu.rw);
07492       hShwTrkVtxRDist1NQ->Fill(shwTrkVtxRDist1,nu.rw);
07493       hShwTrkSDist1NQ->Fill(shwTrkSDist1,nu.rw);
07494       pShwCmptTrkVtxZDist1NQ->Fill(shwTrkVtxZDist0,shwCmpt1,nu.rw);
07495       pShwCmptTrkVtxSDist1NQ->Fill(shwTrkVtxSDist0,shwCmpt1,nu.rw);
07496       pShwCmptTrkVtxRDist1NQ->Fill(shwTrkVtxRDist1,shwCmpt1,nu.rw);
07497       pShwCmptEnergy1NQ->Fill(shwEn1,shwCmpt1,nu.rw);
07498       pShwTrkVtxXYCmpt1NQ->Fill(shwTrkVtxXDist1,shwTrkVtxYDist1,
07499                                 shwCmpt1,nu.rw);
07500       hShwTrkVtxXYDist1NQ->Fill(shwTrkVtxXDist1,shwTrkVtxYDist1,nu.rw);
07501       hShwVtxXY1NQ->Fill(shw.vtx.x,shw.vtx.y,nu.rw);
07502       hShwVtxZ1NQ->Fill(shw.vtx.z,nu.rw);
07503     }
07504   }
07505   
07506   if (!vShws1.empty()){
07507     MAXMSG("NuPlots",Msg::kDebug,30)
07508       <<"Found "<<vShws1.size()<<" non-primary showers"
07509       <<", pshw="<<(pshw>0)<<", nshower="<<evt.nshower<<endl;
07510   }
07511   else {
07512     MAXMSG("NuPlots",Msg::kDebug,30)
07513       <<"No non-primary showers, size="<<vShws1.size()
07514       <<", pshw="<<(pshw>0)<<", nshower="<<evt.nshower<<endl;
07515   }
07516 }

void NuPlots::FillSigmaQPPlots const NuEvent nu  )  const
 

Definition at line 23056 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::chi2, NuEvent::chi2PerNdof, NuEvent::energy, NuEvent::iaction, NuEvent::inu, MAXMSG, NuEvent::ndof, NuEvent::prob, NuEvent::qp, NuEvent::rw, NuEvent::shwEn, NuEvent::sigqp, NuEvent::sigqp_qp, NuEvent::simFlag, NuEvent::trkEn, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::EnergySpect(), NuCutImps::NuCutsSelection::MakePostPreSelectionPlots(), and NuAnalysis::NMBSummaryTreeAna().

23057 {  
23058   //super seeded by the PassPreSel plots above
23059   static TH1F* hNuMuBarqpGoodQ=0;
23060   static TH1F* hNuMuqpGoodQ=0;
23061   static TH1F* hNuMuBarqpBadQ=0;
23062   static TH1F* hNuMuqpBadQ=0;
23063   static TH1F* hNuMuBarqpBlob=0;
23064   static TH1F* hNuMuqpBlob=0;
23065 
23066   static TH1F* hNuMuBarSigqpGoodQ=0;
23067   static TH1F* hNuMuSigqpGoodQ=0;
23068   static TH1F* hNuMuBarSigqpBadQ=0;
23069   static TH1F* hNuMuSigqpBadQ=0;
23070   static TH1F* hNuMuBarSigqpBlob=0;
23071   static TH1F* hNuMuSigqpBlob=0;
23072 
23073   static TH1F* hNuMuBarSigqp_qpGoodQ=0;
23074   static TH1F* hNuMuSigqp_qpGoodQ=0;
23075   static TH1F* hNuMuBarSigqp_qpBadQ=0;
23076   static TH1F* hNuMuSigqp_qpBadQ=0;
23077   static TH1F* hNuMuBarSigqp_qpBlob=0;
23078   static TH1F* hNuMuSigqp_qpBlob=0;
23079 
23080   static TH1F* hNuMuBarChi2GoodQ=0;
23081   static TH1F* hNuMuChi2GoodQ=0;
23082   static TH1F* hNuMuBarChi2BadQ=0;
23083   static TH1F* hNuMuChi2BadQ=0;
23084   static TH1F* hNuMuBarChi2Blob=0;
23085   static TH1F* hNuMuChi2Blob=0;
23086 
23087   static TH1F* hNuMuBarProbGoodQ=0;
23088   static TH1F* hNuMuProbGoodQ=0;
23089   static TH1F* hNuMuBarProbBadQ=0;
23090   static TH1F* hNuMuProbBadQ=0;
23091   static TH1F* hNuMuBarProbBlob=0;
23092   static TH1F* hNuMuProbBlob=0;
23093   
23094 
23095   static TH1F* hNuMuBarRecoEnGoodQ=0;
23096   static TH1F* hNuMuRecoEnGoodQ=0;
23097   static TH1F* hNuMuBarRecoEnBadQ=0;
23098   static TH1F* hNuMuRecoEnBadQ=0;
23099   static TH1F* hNuMuBarRecoEnBlob=0;
23100   static TH1F* hNuMuRecoEnBlob=0;
23101   
23102   static TH1F* hNuMuBarRecoEnTrkGoodQ=0;
23103   static TH1F* hNuMuRecoEnTrkGoodQ=0;
23104   static TH1F* hNuMuBarRecoEnTrkBadQ=0;
23105   static TH1F* hNuMuRecoEnTrkBadQ=0;
23106   static TH1F* hNuMuBarRecoEnTrkBlob=0;
23107   static TH1F* hNuMuRecoEnTrkBlob=0;
23108   
23109   static TH1F* hNuMuBarRecoEnShwGoodQ=0;
23110   static TH1F* hNuMuRecoEnShwGoodQ=0;
23111   static TH1F* hNuMuBarRecoEnShwBadQ=0;
23112   static TH1F* hNuMuRecoEnShwBadQ=0;
23113   static TH1F* hNuMuBarRecoEnShwBlob=0;
23114   static TH1F* hNuMuRecoEnShwBlob=0;
23115 
23116   static TH1F* hNuMuBarRecoYGoodQ=0;
23117   static TH1F* hNuMuRecoYGoodQ=0;
23118   static TH1F* hNuMuBarRecoYBadQ=0;
23119   static TH1F* hNuMuRecoYBadQ=0;
23120   static TH1F* hNuMuBarRecoYBlob=0;
23121   static TH1F* hNuMuRecoYBlob=0;
23122 
23123 
23124   //fill for all events
23125   //NQ
23126   static TH1F* hqpNQ=0;
23127   static TH1F* hSigqpNQ=0;
23128   static TH1F* hSigqp_qpNQ=0;
23129   static TH1F* hChi2NQ=0;
23130   static TH1F* hProbNQ=0;
23131 
23132   static TH1F* hRecoEnPreSelNQ=0;
23133   static TH1F* hRecoEnTrkPreSelNQ=0;
23134   static TH1F* hRecoEnShwPreSelNQ=0;
23135   static TH1F* hRecoYPreSelNQ=0;
23136 
23137   //PQ
23138   static TH1F* hqpPQ=0;
23139   static TH1F* hSigqpPQ=0;
23140   static TH1F* hSigqp_qpPQ=0;
23141   static TH1F* hChi2PQ=0;
23142   static TH1F* hProbPQ=0;
23143   
23144   static TH1F* hRecoEnPreSelPQ=0;
23145   static TH1F* hRecoEnTrkPreSelPQ=0;
23146   static TH1F* hRecoEnShwPreSelPQ=0;
23147   static TH1F* hRecoYPreSelPQ=0;
23148 
23149 
23150   if (!hNuMuBarSigqp_qpGoodQ){
23151     MAXMSG("NuPlots",Msg::kDebug,1)
23152       <<"Creating SigmaQP/QP plots..."<<endl;
23153     hNuMuBarqpGoodQ=new TH1F("hNuMuBarqpGoodQ",
23154                              "hNuMuBarqpGoodQ",
23155                              200*160,-16,16);
23156     hNuMuBarqpGoodQ->GetXaxis()->SetTitle("Q/P");
23157     hNuMuBarqpGoodQ->GetXaxis()->CenterTitle();
23158     hNuMuBarqpGoodQ->GetYaxis()->SetTitle("");
23159     hNuMuBarqpGoodQ->GetYaxis()->CenterTitle();
23160     hNuMuBarqpGoodQ->SetFillColor(0);
23161     hNuMuBarqpGoodQ->SetLineColor(2);
23162     //hNuMuBarqpGoodQ->SetBit(TH1::kCanRebin);
23163     
23164     hNuMuqpGoodQ=new TH1F("hNuMuqpGoodQ",
23165                           "hNuMuqpGoodQ",
23166                           200*160,-16,16);
23167     hNuMuqpGoodQ->GetXaxis()->SetTitle("Q/P");
23168     hNuMuqpGoodQ->GetXaxis()->CenterTitle();
23169     hNuMuqpGoodQ->GetYaxis()->SetTitle("");
23170     hNuMuqpGoodQ->GetYaxis()->CenterTitle();
23171     hNuMuqpGoodQ->SetFillColor(0);
23172     hNuMuqpGoodQ->SetLineColor(1);
23173     hNuMuqpGoodQ->SetLineWidth(2);
23174     //hNuMuqpGoodQ->SetBit(TH1::kCanRebin);
23175     
23176     hNuMuBarqpBadQ=new TH1F("hNuMuBarqpBadQ",
23177                             "hNuMuBarqpBadQ",
23178                             200*160,-16,16);
23179     hNuMuBarqpBadQ->GetXaxis()->SetTitle("Q/P");
23180     hNuMuBarqpBadQ->GetXaxis()->CenterTitle();
23181     hNuMuBarqpBadQ->GetYaxis()->SetTitle("");
23182     hNuMuBarqpBadQ->GetYaxis()->CenterTitle();
23183     hNuMuBarqpBadQ->SetFillColor(0);
23184     hNuMuBarqpBadQ->SetLineColor(2);
23185     hNuMuBarqpBadQ->SetLineStyle(2);
23186     //hNuMuBarqpBadQ->SetBit(TH1::kCanRebin);
23187     
23188     hNuMuqpBadQ=new TH1F("hNuMuqpBadQ",
23189                          "hNuMuqpBadQ",
23190                          200*160,-16,16);
23191     hNuMuqpBadQ->GetXaxis()->SetTitle("Q/P");
23192     hNuMuqpBadQ->GetXaxis()->CenterTitle();
23193     hNuMuqpBadQ->GetYaxis()->SetTitle("");
23194     hNuMuqpBadQ->GetYaxis()->CenterTitle();
23195     hNuMuqpBadQ->SetFillColor(0);
23196     hNuMuqpBadQ->SetLineColor(1);
23197     hNuMuqpBadQ->SetLineWidth(2);
23198     hNuMuqpBadQ->SetLineStyle(2);
23199     //hNuMuqpBadQ->SetBit(TH1::kCanRebin);
23200 
23201 
23202     hNuMuBarqpBlob=new TH1F("hNuMuBarqpBlob",
23203                             "hNuMuBarqpBlob",
23204                             200*160,-16,16);
23205     hNuMuBarqpBlob->GetXaxis()->SetTitle("Q/P");
23206     hNuMuBarqpBlob->GetXaxis()->CenterTitle();
23207     hNuMuBarqpBlob->GetYaxis()->SetTitle("");
23208     hNuMuBarqpBlob->GetYaxis()->CenterTitle();
23209     hNuMuBarqpBlob->SetFillColor(0);
23210     hNuMuBarqpBlob->SetLineColor(1);
23211     hNuMuBarqpBlob->SetLineWidth(2);
23212     hNuMuBarqpBlob->SetLineStyle(2);
23213     //hNuMuBarqpBlob->SetBit(TH1::kCanRebin);
23214 
23215     hNuMuqpBlob=new TH1F("hNuMuqpBlob",
23216                          "hNuMuqpBlob",
23217                          200*160,-16,16);
23218     hNuMuqpBlob->GetXaxis()->SetTitle("Q/P");
23219     hNuMuqpBlob->GetXaxis()->CenterTitle();
23220     hNuMuqpBlob->GetYaxis()->SetTitle("");
23221     hNuMuqpBlob->GetYaxis()->CenterTitle();
23222     hNuMuqpBlob->SetFillColor(0);
23223     hNuMuqpBlob->SetLineColor(1);
23224     hNuMuqpBlob->SetLineWidth(2);
23225     hNuMuqpBlob->SetLineStyle(2);
23226     //hNuMuqpBlob->SetBit(TH1::kCanRebin);
23227 
23228 
23229 
23230     hNuMuBarSigqpGoodQ=new TH1F("hNuMuBarSigqpGoodQ",
23231                                 "hNuMuBarSigqpGoodQ",
23232                                 200*160,-16,16);
23233     hNuMuBarSigqpGoodQ->GetXaxis()->SetTitle("#sigma(Q/P)");
23234     hNuMuBarSigqpGoodQ->GetXaxis()->CenterTitle();
23235     hNuMuBarSigqpGoodQ->GetYaxis()->SetTitle("");
23236     hNuMuBarSigqpGoodQ->GetYaxis()->CenterTitle();
23237     hNuMuBarSigqpGoodQ->SetFillColor(0);
23238     hNuMuBarSigqpGoodQ->SetLineColor(2);
23239     //hNuMuBarSigqpGoodQ->SetBit(TH1::kCanRebin);
23240     
23241     hNuMuSigqpGoodQ=new TH1F("hNuMuSigqpGoodQ",
23242                              "hNuMuSigqpGoodQ",
23243                              200*160,-16,16);
23244     hNuMuSigqpGoodQ->GetXaxis()->SetTitle("#sigma(Q/P)");
23245     hNuMuSigqpGoodQ->GetXaxis()->CenterTitle();
23246     hNuMuSigqpGoodQ->GetYaxis()->SetTitle("");
23247     hNuMuSigqpGoodQ->GetYaxis()->CenterTitle();
23248     hNuMuSigqpGoodQ->SetFillColor(0);
23249     hNuMuSigqpGoodQ->SetLineColor(1);
23250     hNuMuSigqpGoodQ->SetLineWidth(2);
23251     //hNuMuSigqpGoodQ->SetBit(TH1::kCanRebin);
23252     
23253     hNuMuBarSigqpBadQ=new TH1F("hNuMuBarSigqpBadQ",
23254                                "hNuMuBarSigqpBadQ",
23255                                200*160,-16,16);
23256     hNuMuBarSigqpBadQ->GetXaxis()->SetTitle("#sigma(Q/P)");
23257     hNuMuBarSigqpBadQ->GetXaxis()->CenterTitle();
23258     hNuMuBarSigqpBadQ->GetYaxis()->SetTitle("");
23259     hNuMuBarSigqpBadQ->GetYaxis()->CenterTitle();
23260     hNuMuBarSigqpBadQ->SetFillColor(0);
23261     hNuMuBarSigqpBadQ->SetLineColor(2);
23262     hNuMuBarSigqpBadQ->SetLineStyle(2);
23263     //hNuMuBarSigqpBadQ->SetBit(TH1::kCanRebin);
23264     
23265     hNuMuSigqpBadQ=new TH1F("hNuMuSigqpBadQ",
23266                             "hNuMuSigqpBadQ",
23267                             200*160,-16,16);
23268     hNuMuSigqpBadQ->GetXaxis()->SetTitle("#sigma(Q/P)");
23269     hNuMuSigqpBadQ->GetXaxis()->CenterTitle();
23270     hNuMuSigqpBadQ->GetYaxis()->SetTitle("");
23271     hNuMuSigqpBadQ->GetYaxis()->CenterTitle();
23272     hNuMuSigqpBadQ->SetFillColor(0);
23273     hNuMuSigqpBadQ->SetLineColor(1);
23274     hNuMuSigqpBadQ->SetLineWidth(2);
23275     hNuMuSigqpBadQ->SetLineStyle(2);
23276     //hNuMuSigqpBadQ->SetBit(TH1::kCanRebin);
23277 
23278 
23279     hNuMuBarSigqpBlob=new TH1F("hNuMuBarSigqpBlob",
23280                                "hNuMuBarSigqpBlob",
23281                                200*160,-16,16);
23282     hNuMuBarSigqpBlob->GetXaxis()->SetTitle("#sigma(Q/P)");
23283     hNuMuBarSigqpBlob->GetXaxis()->CenterTitle();
23284     hNuMuBarSigqpBlob->GetYaxis()->SetTitle("");
23285     hNuMuBarSigqpBlob->GetYaxis()->CenterTitle();
23286     hNuMuBarSigqpBlob->SetFillColor(0);
23287     hNuMuBarSigqpBlob->SetLineColor(1);
23288     hNuMuBarSigqpBlob->SetLineWidth(2);
23289     hNuMuBarSigqpBlob->SetLineStyle(2);
23290     //hNuMuBarSigqpBlob->SetBit(TH1::kCanRebin);
23291 
23292     hNuMuSigqpBlob=new TH1F("hNuMuSigqpBlob",
23293                             "hNuMuSigqpBlob",
23294                             200*160,-16,16);
23295     hNuMuSigqpBlob->GetXaxis()->SetTitle("#sigma(Q/P)");
23296     hNuMuSigqpBlob->GetXaxis()->CenterTitle();
23297     hNuMuSigqpBlob->GetYaxis()->SetTitle("");
23298     hNuMuSigqpBlob->GetYaxis()->CenterTitle();
23299     hNuMuSigqpBlob->SetFillColor(0);
23300     hNuMuSigqpBlob->SetLineColor(1);
23301     hNuMuSigqpBlob->SetLineWidth(2);
23302     hNuMuSigqpBlob->SetLineStyle(2);
23303     //hNuMuSigqpBlob->SetBit(TH1::kCanRebin);
23304 
23305 
23306 
23307     hNuMuBarSigqp_qpGoodQ=new TH1F("hNuMuBarSigqp_qpGoodQ",
23308                                    "hNuMuBarSigqp_qpGoodQ",
23309                                    800*160,-160,160);
23310     hNuMuBarSigqp_qpGoodQ->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
23311     hNuMuBarSigqp_qpGoodQ->GetXaxis()->CenterTitle();
23312     hNuMuBarSigqp_qpGoodQ->GetYaxis()->SetTitle("");
23313     hNuMuBarSigqp_qpGoodQ->GetYaxis()->CenterTitle();
23314     hNuMuBarSigqp_qpGoodQ->SetFillColor(0);
23315     hNuMuBarSigqp_qpGoodQ->SetLineColor(2);
23316     //hNuMuBarSigqp_qpGoodQ->SetBit(TH1::kCanRebin);
23317     
23318     hNuMuSigqp_qpGoodQ=new TH1F("hNuMuSigqp_qpGoodQ",
23319                                 "hNuMuSigqp_qpGoodQ",
23320                                 800*160,-160,160);
23321     hNuMuSigqp_qpGoodQ->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
23322     hNuMuSigqp_qpGoodQ->GetXaxis()->CenterTitle();
23323     hNuMuSigqp_qpGoodQ->GetYaxis()->SetTitle("");
23324     hNuMuSigqp_qpGoodQ->GetYaxis()->CenterTitle();
23325     hNuMuSigqp_qpGoodQ->SetFillColor(0);
23326     hNuMuSigqp_qpGoodQ->SetLineColor(1);
23327     hNuMuSigqp_qpGoodQ->SetLineWidth(2);
23328     //hNuMuSigqp_qpGoodQ->SetBit(TH1::kCanRebin);
23329     
23330     hNuMuBarSigqp_qpBadQ=new TH1F("hNuMuBarSigqp_qpBadQ",
23331                                   "hNuMuBarSigqp_qpBadQ",
23332                                   800*160,-160,160);
23333     hNuMuBarSigqp_qpBadQ->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
23334     hNuMuBarSigqp_qpBadQ->GetXaxis()->CenterTitle();
23335     hNuMuBarSigqp_qpBadQ->GetYaxis()->SetTitle("");
23336     hNuMuBarSigqp_qpBadQ->GetYaxis()->CenterTitle();
23337     hNuMuBarSigqp_qpBadQ->SetFillColor(0);
23338     hNuMuBarSigqp_qpBadQ->SetLineColor(2);
23339     hNuMuBarSigqp_qpBadQ->SetLineStyle(2);
23340     //hNuMuBarSigqp_qpBadQ->SetBit(TH1::kCanRebin);
23341     
23342     hNuMuSigqp_qpBadQ=new TH1F("hNuMuSigqp_qpBadQ",
23343                                "hNuMuSigqp_qpBadQ",
23344                                800*160,-160,160);
23345     hNuMuSigqp_qpBadQ->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
23346     hNuMuSigqp_qpBadQ->GetXaxis()->CenterTitle();
23347     hNuMuSigqp_qpBadQ->GetYaxis()->SetTitle("");
23348     hNuMuSigqp_qpBadQ->GetYaxis()->CenterTitle();
23349     hNuMuSigqp_qpBadQ->SetFillColor(0);
23350     hNuMuSigqp_qpBadQ->SetLineColor(1);
23351     hNuMuSigqp_qpBadQ->SetLineWidth(2);
23352     hNuMuSigqp_qpBadQ->SetLineStyle(2);
23353     //hNuMuSigqp_qpBadQ->SetBit(TH1::kCanRebin);
23354 
23355 
23356     hNuMuBarSigqp_qpBlob=new TH1F("hNuMuBarSigqp_qpBlob",
23357                                   "hNuMuBarSigqp_qpBlob",
23358                                   800*160,-160,160);
23359     hNuMuBarSigqp_qpBlob->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
23360     hNuMuBarSigqp_qpBlob->GetXaxis()->CenterTitle();
23361     hNuMuBarSigqp_qpBlob->GetYaxis()->SetTitle("");
23362     hNuMuBarSigqp_qpBlob->GetYaxis()->CenterTitle();
23363     hNuMuBarSigqp_qpBlob->SetFillColor(0);
23364     hNuMuBarSigqp_qpBlob->SetLineColor(1);
23365     hNuMuBarSigqp_qpBlob->SetLineWidth(2);
23366     hNuMuBarSigqp_qpBlob->SetLineStyle(2);
23367     //hNuMuBarSigqp_qpBlob->SetBit(TH1::kCanRebin);
23368 
23369     hNuMuSigqp_qpBlob=new TH1F("hNuMuSigqp_qpBlob",
23370                                "hNuMuSigqp_qpBlob",
23371                                800*160,-160,160);
23372     hNuMuSigqp_qpBlob->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
23373     hNuMuSigqp_qpBlob->GetXaxis()->CenterTitle();
23374     hNuMuSigqp_qpBlob->GetYaxis()->SetTitle("");
23375     hNuMuSigqp_qpBlob->GetYaxis()->CenterTitle();
23376     hNuMuSigqp_qpBlob->SetFillColor(0);
23377     hNuMuSigqp_qpBlob->SetLineColor(1);
23378     hNuMuSigqp_qpBlob->SetLineWidth(2);
23379     hNuMuSigqp_qpBlob->SetLineStyle(2);
23380     //hNuMuSigqp_qpBlob->SetBit(TH1::kCanRebin);
23381 
23382 
23383 
23384 
23385 
23386 
23387 
23388 
23389     hNuMuBarChi2GoodQ=new TH1F("hNuMuBarChi2GoodQ",
23390                                "hNuMuBarChi2GoodQ",
23391                                10*176,-16,160);
23392     hNuMuBarChi2GoodQ->GetXaxis()->SetTitle("#chi^{2}/ndof");
23393     hNuMuBarChi2GoodQ->GetXaxis()->CenterTitle();
23394     hNuMuBarChi2GoodQ->GetYaxis()->SetTitle("");
23395     hNuMuBarChi2GoodQ->GetYaxis()->CenterTitle();
23396     hNuMuBarChi2GoodQ->SetFillColor(0);
23397     hNuMuBarChi2GoodQ->SetLineColor(2);
23398     //hNuMuBarChi2GoodQ->SetBit(TH1::kCanRebin);
23399     
23400     hNuMuChi2GoodQ=new TH1F("hNuMuChi2GoodQ","hNuMuChi2GoodQ",
23401                             10*176,-16,160);
23402     hNuMuChi2GoodQ->GetXaxis()->SetTitle("#chi^{2}/ndof");
23403     hNuMuChi2GoodQ->GetXaxis()->CenterTitle();
23404     hNuMuChi2GoodQ->GetYaxis()->SetTitle("");
23405     hNuMuChi2GoodQ->GetYaxis()->CenterTitle();
23406     hNuMuChi2GoodQ->SetFillColor(0);
23407     hNuMuChi2GoodQ->SetLineColor(1);
23408     hNuMuChi2GoodQ->SetLineWidth(2);
23409     //hNuMuChi2GoodQ->SetBit(TH1::kCanRebin);
23410     
23411     hNuMuBarChi2BadQ=new TH1F("hNuMuBarChi2BadQ",
23412                               "hNuMuBarChi2BadQ",
23413                               10*176,-16,160);
23414     hNuMuBarChi2BadQ->GetXaxis()->SetTitle("#chi^{2}/ndof");
23415     hNuMuBarChi2BadQ->GetXaxis()->CenterTitle();
23416     hNuMuBarChi2BadQ->GetYaxis()->SetTitle("");
23417     hNuMuBarChi2BadQ->GetYaxis()->CenterTitle();
23418     hNuMuBarChi2BadQ->SetFillColor(0);
23419     hNuMuBarChi2BadQ->SetLineColor(2);
23420     hNuMuBarChi2BadQ->SetLineStyle(2);
23421     //hNuMuBarChi2BadQ->SetBit(TH1::kCanRebin);
23422     
23423     hNuMuChi2BadQ=new TH1F("hNuMuChi2BadQ","hNuMuChi2BadQ",
23424                            10*176,-16,160);
23425     hNuMuChi2BadQ->GetXaxis()->SetTitle("#chi^{2}/ndof");
23426     hNuMuChi2BadQ->GetXaxis()->CenterTitle();
23427     hNuMuChi2BadQ->GetYaxis()->SetTitle("");
23428     hNuMuChi2BadQ->GetYaxis()->CenterTitle();
23429     hNuMuChi2BadQ->SetFillColor(0);
23430     hNuMuChi2BadQ->SetLineColor(1);
23431     hNuMuChi2BadQ->SetLineWidth(2);
23432     hNuMuChi2BadQ->SetLineStyle(2);
23433     //hNuMuChi2BadQ->SetBit(TH1::kCanRebin);
23434     
23435     hNuMuBarChi2Blob=new TH1F("hNuMuBarChi2Blob",
23436                               "hNuMuBarChi2Blob",
23437                               10*176,-16,160);
23438     hNuMuBarChi2Blob->GetXaxis()->SetTitle("#chi^{2}/ndof");
23439     hNuMuBarChi2Blob->GetXaxis()->CenterTitle();
23440     hNuMuBarChi2Blob->GetYaxis()->SetTitle("");
23441     hNuMuBarChi2Blob->GetYaxis()->CenterTitle();
23442     hNuMuBarChi2Blob->SetFillColor(0);
23443     hNuMuBarChi2Blob->SetLineColor(1);
23444     hNuMuBarChi2Blob->SetLineWidth(2);
23445     hNuMuBarChi2Blob->SetLineStyle(2);
23446     //hNuMuBarChi2Blob->SetBit(TH1::kCanRebin);
23447 
23448     hNuMuChi2Blob=new TH1F("hNuMuChi2Blob",
23449                            "hNuMuChi2Blob",
23450                            10*176,-16,160);
23451     hNuMuChi2Blob->GetXaxis()->SetTitle("#chi^{2}/ndof");
23452     hNuMuChi2Blob->GetXaxis()->CenterTitle();
23453     hNuMuChi2Blob->GetYaxis()->SetTitle("");
23454     hNuMuChi2Blob->GetYaxis()->CenterTitle();
23455     hNuMuChi2Blob->SetFillColor(0);
23456     hNuMuChi2Blob->SetLineColor(1);
23457     hNuMuChi2Blob->SetLineWidth(2);
23458     hNuMuChi2Blob->SetLineStyle(2);
23459     //hNuMuChi2Blob->SetBit(TH1::kCanRebin);
23460 
23461 
23462 
23463     hNuMuBarProbGoodQ=new TH1F("hNuMuBarProbGoodQ",
23464                                "hNuMuBarProbGoodQ",
23465                                14000,-0.2,1.2);
23466     hNuMuBarProbGoodQ->GetXaxis()->SetTitle("Fit Probability");
23467     hNuMuBarProbGoodQ->GetXaxis()->CenterTitle();
23468     hNuMuBarProbGoodQ->GetYaxis()->SetTitle("");
23469     hNuMuBarProbGoodQ->GetYaxis()->CenterTitle();
23470     hNuMuBarProbGoodQ->SetFillColor(0);
23471     hNuMuBarProbGoodQ->SetLineColor(2);
23472     //hNuMuBarProbGoodQ->SetBit(TH1::kCanRebin);
23473     
23474     hNuMuProbGoodQ=new TH1F("hNuMuProbGoodQ","hNuMuProbGoodQ",
23475                             14000,-0.2,1.2);
23476     hNuMuProbGoodQ->GetXaxis()->SetTitle("Fit Probability");
23477     hNuMuProbGoodQ->GetXaxis()->CenterTitle();
23478     hNuMuProbGoodQ->GetYaxis()->SetTitle("");
23479     hNuMuProbGoodQ->GetYaxis()->CenterTitle();
23480     hNuMuProbGoodQ->SetFillColor(0);
23481     hNuMuProbGoodQ->SetLineColor(1);
23482     hNuMuProbGoodQ->SetLineWidth(2);
23483     //hNuMuProbGoodQ->SetBit(TH1::kCanRebin);
23484     
23485     hNuMuBarProbBadQ=new TH1F("hNuMuBarProbBadQ",
23486                               "hNuMuBarProbBadQ",
23487                               14000,-0.2,1.2);
23488     hNuMuBarProbBadQ->GetXaxis()->SetTitle("Fit Probability");
23489     hNuMuBarProbBadQ->GetXaxis()->CenterTitle();
23490     hNuMuBarProbBadQ->GetYaxis()->SetTitle("");
23491     hNuMuBarProbBadQ->GetYaxis()->CenterTitle();
23492     hNuMuBarProbBadQ->SetFillColor(0);
23493     hNuMuBarProbBadQ->SetLineColor(2);
23494     hNuMuBarProbBadQ->SetLineStyle(2);
23495     //hNuMuBarProbBadQ->SetBit(TH1::kCanRebin);
23496     
23497     hNuMuProbBadQ=new TH1F("hNuMuProbBadQ","hNuMuProbBadQ",
23498                            14000,-0.2,1.2);
23499     hNuMuProbBadQ->GetXaxis()->SetTitle("Fit Probability");
23500     hNuMuProbBadQ->GetXaxis()->CenterTitle();
23501     hNuMuProbBadQ->GetYaxis()->SetTitle("");
23502     hNuMuProbBadQ->GetYaxis()->CenterTitle();
23503     hNuMuProbBadQ->SetFillColor(0);
23504     hNuMuProbBadQ->SetLineColor(1);
23505     hNuMuProbBadQ->SetLineWidth(2);
23506     hNuMuProbBadQ->SetLineStyle(2);
23507     //hNuMuProbBadQ->SetBit(TH1::kCanRebin);
23508     
23509     hNuMuBarProbBlob=new TH1F("hNuMuBarProbBlob",
23510                               "hNuMuBarProbBlob",
23511                               14000,-0.2,1.2);
23512     hNuMuBarProbBlob->GetXaxis()->SetTitle("Fit Probability");
23513     hNuMuBarProbBlob->GetXaxis()->CenterTitle();
23514     hNuMuBarProbBlob->GetYaxis()->SetTitle("");
23515     hNuMuBarProbBlob->GetYaxis()->CenterTitle();
23516     hNuMuBarProbBlob->SetFillColor(0);
23517     hNuMuBarProbBlob->SetLineColor(1);
23518     hNuMuBarProbBlob->SetLineWidth(2);
23519     hNuMuBarProbBlob->SetLineStyle(2);
23520     //hNuMuBarProbBlob->SetBit(TH1::kCanRebin);
23521 
23522     hNuMuProbBlob=new TH1F("hNuMuProbBlob",
23523                            "hNuMuProbBlob",
23524                            14000,-0.2,1.2);
23525     hNuMuProbBlob->GetXaxis()->SetTitle("Fit Probability");
23526     hNuMuProbBlob->GetXaxis()->CenterTitle();
23527     hNuMuProbBlob->GetYaxis()->SetTitle("");
23528     hNuMuProbBlob->GetYaxis()->CenterTitle();
23529     hNuMuProbBlob->SetFillColor(0);
23530     hNuMuProbBlob->SetLineColor(1);
23531     hNuMuProbBlob->SetLineWidth(2);
23532     hNuMuProbBlob->SetLineStyle(2);
23533     //hNuMuProbBlob->SetBit(TH1::kCanRebin);
23534 
23535 
23536     hNuMuBarRecoEnGoodQ=new TH1F("hNuMuBarRecoEnGoodQ",
23537                                  "hNuMuBarRecoEnGoodQ",
23538                                  4*352,-32,320);
23539     hNuMuBarRecoEnGoodQ->GetXaxis()->
23540       SetTitle("Reconstructed Energy (GeV)");
23541     hNuMuBarRecoEnGoodQ->GetXaxis()->CenterTitle();
23542     hNuMuBarRecoEnGoodQ->GetYaxis()->SetTitle("");
23543     hNuMuBarRecoEnGoodQ->GetYaxis()->CenterTitle();
23544     hNuMuBarRecoEnGoodQ->SetFillColor(0);
23545     hNuMuBarRecoEnGoodQ->SetLineColor(2);
23546     //hNuMuBarRecoEnGoodQ->SetBit(TH1::kCanRebin);
23547     
23548     hNuMuRecoEnGoodQ=new TH1F("hNuMuRecoEnGoodQ",
23549                               "hNuMuRecoEnGoodQ",
23550                               4*352,-32,320);
23551     hNuMuRecoEnGoodQ->GetXaxis()->
23552       SetTitle("Reconstructed Energy (GeV)");
23553     hNuMuRecoEnGoodQ->GetXaxis()->CenterTitle();
23554     hNuMuRecoEnGoodQ->GetYaxis()->SetTitle("");
23555     hNuMuRecoEnGoodQ->GetYaxis()->CenterTitle();
23556     hNuMuRecoEnGoodQ->SetFillColor(0);
23557     hNuMuRecoEnGoodQ->SetLineColor(1);
23558     hNuMuRecoEnGoodQ->SetLineWidth(2);
23559     //hNuMuRecoEnGoodQ->SetBit(TH1::kCanRebin);
23560     
23561     hNuMuBarRecoEnBadQ=new TH1F("hNuMuBarRecoEnBadQ",
23562                                 "hNuMuBarRecoEnBadQ",
23563                                 4*352,-32,320);
23564     hNuMuBarRecoEnBadQ->GetXaxis()->
23565       SetTitle("Reconstructed Energy (GeV)");
23566     hNuMuBarRecoEnBadQ->GetXaxis()->CenterTitle();
23567     hNuMuBarRecoEnBadQ->GetYaxis()->SetTitle("");
23568     hNuMuBarRecoEnBadQ->GetYaxis()->CenterTitle();
23569     hNuMuBarRecoEnBadQ->SetFillColor(0);
23570     hNuMuBarRecoEnBadQ->SetLineColor(2);
23571     hNuMuBarRecoEnBadQ->SetLineStyle(2);
23572     //hNuMuBarRecoEnBadQ->SetBit(TH1::kCanRebin);
23573     
23574     hNuMuRecoEnBadQ=new TH1F("hNuMuRecoEnBadQ",
23575                              "hNuMuRecoEnBadQ",
23576                              4*352,-32,320);
23577     hNuMuRecoEnBadQ->GetXaxis()->
23578       SetTitle("Reconstructed Energy (GeV)");
23579     hNuMuRecoEnBadQ->GetXaxis()->CenterTitle();
23580     hNuMuRecoEnBadQ->GetYaxis()->SetTitle("");
23581     hNuMuRecoEnBadQ->GetYaxis()->CenterTitle();
23582     hNuMuRecoEnBadQ->SetFillColor(0);
23583     hNuMuRecoEnBadQ->SetLineColor(1);
23584     hNuMuRecoEnBadQ->SetLineWidth(2);
23585     hNuMuRecoEnBadQ->SetLineStyle(2);
23586     //hNuMuRecoEnBadQ->SetBit(TH1::kCanRebin);
23587     
23588     hNuMuBarRecoEnBlob=new TH1F("hNuMuBarRecoEnBlob",
23589                                 "hNuMuBarRecoEnBlob",
23590                                 4*352,-32,320);
23591     hNuMuBarRecoEnBlob->GetXaxis()->
23592       SetTitle("Reconstructed Energy (GeV)");
23593     hNuMuBarRecoEnBlob->GetXaxis()->CenterTitle();
23594     hNuMuBarRecoEnBlob->GetYaxis()->SetTitle("");
23595     hNuMuBarRecoEnBlob->GetYaxis()->CenterTitle();
23596     hNuMuBarRecoEnBlob->SetFillColor(0);
23597     hNuMuBarRecoEnBlob->SetLineColor(1);
23598     hNuMuBarRecoEnBlob->SetLineWidth(2);
23599     hNuMuBarRecoEnBlob->SetLineStyle(2);
23600     //hNuMuBarRecoEnBlob->SetBit(TH1::kCanRebin);
23601 
23602     hNuMuRecoEnBlob=new TH1F("hNuMuRecoEnBlob",
23603                              "hNuMuRecoEnBlob",
23604                              4*352,-32,320);
23605     hNuMuRecoEnBlob->GetXaxis()->
23606       SetTitle("Reconstructed Energy (GeV)");
23607     hNuMuRecoEnBlob->GetXaxis()->CenterTitle();
23608     hNuMuRecoEnBlob->GetYaxis()->SetTitle("");
23609     hNuMuRecoEnBlob->GetYaxis()->CenterTitle();
23610     hNuMuRecoEnBlob->SetFillColor(0);
23611     hNuMuRecoEnBlob->SetLineColor(1);
23612     hNuMuRecoEnBlob->SetLineWidth(2);
23613     hNuMuRecoEnBlob->SetLineStyle(2);
23614     //hNuMuRecoEnBlob->SetBit(TH1::kCanRebin);
23615 
23616 
23617     hNuMuBarRecoEnTrkGoodQ=new TH1F("hNuMuBarRecoEnTrkGoodQ",
23618                                     "hNuMuBarRecoEnTrkGoodQ",
23619                                     4*352,-32,320);
23620     hNuMuBarRecoEnTrkGoodQ->GetXaxis()->
23621       SetTitle("Reconstructed Energy (GeV)");
23622     hNuMuBarRecoEnTrkGoodQ->GetXaxis()->CenterTitle();
23623     hNuMuBarRecoEnTrkGoodQ->GetYaxis()->SetTitle("");
23624     hNuMuBarRecoEnTrkGoodQ->GetYaxis()->CenterTitle();
23625     hNuMuBarRecoEnTrkGoodQ->SetFillColor(0);
23626     hNuMuBarRecoEnTrkGoodQ->SetLineColor(2);
23627     //hNuMuBarRecoEnTrkGoodQ->SetBit(TH1::kCanRebin);
23628     
23629     hNuMuRecoEnTrkGoodQ=new TH1F("hNuMuRecoEnTrkGoodQ",
23630                                  "hNuMuRecoEnTrkGoodQ",
23631                                  4*352,-32,320);
23632     hNuMuRecoEnTrkGoodQ->GetXaxis()->
23633       SetTitle("Reconstructed Energy (GeV)");
23634     hNuMuRecoEnTrkGoodQ->GetXaxis()->CenterTitle();
23635     hNuMuRecoEnTrkGoodQ->GetYaxis()->SetTitle("");
23636     hNuMuRecoEnTrkGoodQ->GetYaxis()->CenterTitle();
23637     hNuMuRecoEnTrkGoodQ->SetFillColor(0);
23638     hNuMuRecoEnTrkGoodQ->SetLineColor(1);
23639     hNuMuRecoEnTrkGoodQ->SetLineWidth(2);
23640     //hNuMuRecoEnTrkGoodQ->SetBit(TH1::kCanRebin);
23641     
23642     hNuMuBarRecoEnTrkBadQ=new TH1F("hNuMuBarRecoEnTrkBadQ",
23643                                    "hNuMuBarRecoEnTrkBadQ",
23644                                    4*352,-32,320);
23645     hNuMuBarRecoEnTrkBadQ->GetXaxis()->
23646       SetTitle("Reconstructed Energy (GeV)");
23647     hNuMuBarRecoEnTrkBadQ->GetXaxis()->CenterTitle();
23648     hNuMuBarRecoEnTrkBadQ->GetYaxis()->SetTitle("");
23649     hNuMuBarRecoEnTrkBadQ->GetYaxis()->CenterTitle();
23650     hNuMuBarRecoEnTrkBadQ->SetFillColor(0);
23651     hNuMuBarRecoEnTrkBadQ->SetLineColor(2);
23652     hNuMuBarRecoEnTrkBadQ->SetLineStyle(2);
23653     //hNuMuBarRecoEnTrkBadQ->SetBit(TH1::kCanRebin);
23654     
23655     hNuMuRecoEnTrkBadQ=new TH1F("hNuMuRecoEnTrkBadQ",
23656                                 "hNuMuRecoEnTrkBadQ",
23657                                 4*352,-32,320);
23658     hNuMuRecoEnTrkBadQ->GetXaxis()->
23659       SetTitle("Reconstructed Energy (GeV)");
23660     hNuMuRecoEnTrkBadQ->GetXaxis()->CenterTitle();
23661     hNuMuRecoEnTrkBadQ->GetYaxis()->SetTitle("");
23662     hNuMuRecoEnTrkBadQ->GetYaxis()->CenterTitle();
23663     hNuMuRecoEnTrkBadQ->SetFillColor(0);
23664     hNuMuRecoEnTrkBadQ->SetLineColor(1);
23665     hNuMuRecoEnTrkBadQ->SetLineWidth(2);
23666     hNuMuRecoEnTrkBadQ->SetLineStyle(2);
23667     //hNuMuRecoEnTrkBadQ->SetBit(TH1::kCanRebin);
23668     
23669     hNuMuBarRecoEnTrkBlob=new TH1F("hNuMuBarRecoEnTrkBlob",
23670                                    "hNuMuBarRecoEnTrkBlob",
23671                                    4*352,-32,320);
23672     hNuMuBarRecoEnTrkBlob->GetXaxis()->
23673       SetTitle("Reconstructed Energy (GeV)");
23674     hNuMuBarRecoEnTrkBlob->GetXaxis()->CenterTitle();
23675     hNuMuBarRecoEnTrkBlob->GetYaxis()->SetTitle("");
23676     hNuMuBarRecoEnTrkBlob->GetYaxis()->CenterTitle();
23677     hNuMuBarRecoEnTrkBlob->SetFillColor(0);
23678     hNuMuBarRecoEnTrkBlob->SetLineColor(1);
23679     hNuMuBarRecoEnTrkBlob->SetLineWidth(2);
23680     hNuMuBarRecoEnTrkBlob->SetLineStyle(2);
23681     //hNuMuBarRecoEnTrkBlob->SetBit(TH1::kCanRebin);
23682 
23683     hNuMuRecoEnTrkBlob=new TH1F("hNuMuRecoEnTrkBlob",
23684                                 "hNuMuRecoEnTrkBlob",
23685                                 4*352,-32,320);
23686     hNuMuRecoEnTrkBlob->GetXaxis()->
23687       SetTitle("Reconstructed Energy (GeV)");
23688     hNuMuRecoEnTrkBlob->GetXaxis()->CenterTitle();
23689     hNuMuRecoEnTrkBlob->GetYaxis()->SetTitle("");
23690     hNuMuRecoEnTrkBlob->GetYaxis()->CenterTitle();
23691     hNuMuRecoEnTrkBlob->SetFillColor(0);
23692     hNuMuRecoEnTrkBlob->SetLineColor(1);
23693     hNuMuRecoEnTrkBlob->SetLineWidth(2);
23694     hNuMuRecoEnTrkBlob->SetLineStyle(2);
23695     //hNuMuRecoEnTrkBlob->SetBit(TH1::kCanRebin);
23696 
23697 
23698 
23699     hNuMuBarRecoEnShwGoodQ=new TH1F("hNuMuBarRecoEnShwGoodQ",
23700                                     "hNuMuBarRecoEnShwGoodQ",
23701                                     4*352,-32,320);
23702     hNuMuBarRecoEnShwGoodQ->GetXaxis()->
23703       SetTitle("Reconstructed Energy (GeV)");
23704     hNuMuBarRecoEnShwGoodQ->GetXaxis()->CenterTitle();
23705     hNuMuBarRecoEnShwGoodQ->GetYaxis()->SetTitle("");
23706     hNuMuBarRecoEnShwGoodQ->GetYaxis()->CenterTitle();
23707     hNuMuBarRecoEnShwGoodQ->SetFillColor(0);
23708     hNuMuBarRecoEnShwGoodQ->SetLineColor(2);
23709     //hNuMuBarRecoEnShwGoodQ->SetBit(TH1::kCanRebin);
23710     
23711     hNuMuRecoEnShwGoodQ=new TH1F("hNuMuRecoEnShwGoodQ",
23712                                  "hNuMuRecoEnShwGoodQ",
23713                                  4*352,-32,320);
23714     hNuMuRecoEnShwGoodQ->GetXaxis()->
23715       SetTitle("Reconstructed Energy (GeV)");
23716     hNuMuRecoEnShwGoodQ->GetXaxis()->CenterTitle();
23717     hNuMuRecoEnShwGoodQ->GetYaxis()->SetTitle("");
23718     hNuMuRecoEnShwGoodQ->GetYaxis()->CenterTitle();
23719     hNuMuRecoEnShwGoodQ->SetFillColor(0);
23720     hNuMuRecoEnShwGoodQ->SetLineColor(1);
23721     hNuMuRecoEnShwGoodQ->SetLineWidth(2);
23722     //hNuMuRecoEnShwGoodQ->SetBit(TH1::kCanRebin);
23723     
23724     hNuMuBarRecoEnShwBadQ=new TH1F("hNuMuBarRecoEnShwBadQ",
23725                                    "hNuMuBarRecoEnShwBadQ",
23726                                    4*352,-32,320);
23727     hNuMuBarRecoEnShwBadQ->GetXaxis()->
23728       SetTitle("Reconstructed Energy (GeV)");
23729     hNuMuBarRecoEnShwBadQ->GetXaxis()->CenterTitle();
23730     hNuMuBarRecoEnShwBadQ->GetYaxis()->SetTitle("");
23731     hNuMuBarRecoEnShwBadQ->GetYaxis()->CenterTitle();
23732     hNuMuBarRecoEnShwBadQ->SetFillColor(0);
23733     hNuMuBarRecoEnShwBadQ->SetLineColor(2);
23734     hNuMuBarRecoEnShwBadQ->SetLineStyle(2);
23735     //hNuMuBarRecoEnShwBadQ->SetBit(TH1::kCanRebin);
23736     
23737     hNuMuRecoEnShwBadQ=new TH1F("hNuMuRecoEnShwBadQ",
23738                                 "hNuMuRecoEnShwBadQ",
23739                                 4*352,-32,320);
23740     hNuMuRecoEnShwBadQ->GetXaxis()->
23741       SetTitle("Reconstructed Energy (GeV)");
23742     hNuMuRecoEnShwBadQ->GetXaxis()->CenterTitle();
23743     hNuMuRecoEnShwBadQ->GetYaxis()->SetTitle("");
23744     hNuMuRecoEnShwBadQ->GetYaxis()->CenterTitle();
23745     hNuMuRecoEnShwBadQ->SetFillColor(0);
23746     hNuMuRecoEnShwBadQ->SetLineColor(1);
23747     hNuMuRecoEnShwBadQ->SetLineWidth(2);
23748     hNuMuRecoEnShwBadQ->SetLineStyle(2);
23749     //hNuMuRecoEnShwBadQ->SetBit(TH1::kCanRebin);
23750     
23751     hNuMuBarRecoEnShwBlob=new TH1F("hNuMuBarRecoEnShwBlob",
23752                                    "hNuMuBarRecoEnShwBlob",
23753                                    4*352,-32,320);
23754     hNuMuBarRecoEnShwBlob->GetXaxis()->
23755       SetTitle("Reconstructed Energy (GeV)");
23756     hNuMuBarRecoEnShwBlob->GetXaxis()->CenterTitle();
23757     hNuMuBarRecoEnShwBlob->GetYaxis()->SetTitle("");
23758     hNuMuBarRecoEnShwBlob->GetYaxis()->CenterTitle();
23759     hNuMuBarRecoEnShwBlob->SetFillColor(0);
23760     hNuMuBarRecoEnShwBlob->SetLineColor(1);
23761     hNuMuBarRecoEnShwBlob->SetLineWidth(2);
23762     hNuMuBarRecoEnShwBlob->SetLineStyle(2);
23763     //hNuMuBarRecoEnShwBlob->SetBit(TH1::kCanRebin);
23764 
23765     hNuMuRecoEnShwBlob=new TH1F("hNuMuRecoEnShwBlob",
23766                                 "hNuMuRecoEnShwBlob",
23767                                 4*352,-32,320);
23768     hNuMuRecoEnShwBlob->GetXaxis()->
23769       SetTitle("Reconstructed Energy (GeV)");
23770     hNuMuRecoEnShwBlob->GetXaxis()->CenterTitle();
23771     hNuMuRecoEnShwBlob->GetYaxis()->SetTitle("");
23772     hNuMuRecoEnShwBlob->GetYaxis()->CenterTitle();
23773     hNuMuRecoEnShwBlob->SetFillColor(0);
23774     hNuMuRecoEnShwBlob->SetLineColor(1);
23775     hNuMuRecoEnShwBlob->SetLineWidth(2);
23776     hNuMuRecoEnShwBlob->SetLineStyle(2);
23777     //hNuMuRecoEnShwBlob->SetBit(TH1::kCanRebin);
23778 
23779 
23780 
23781     hNuMuBarRecoYGoodQ=new TH1F("hNuMuBarRecoYGoodQ",
23782                                 "hNuMuBarRecoYGoodQ",
23783                                 1400,-0.2,1.2);
23784     hNuMuBarRecoYGoodQ->GetXaxis()->SetTitle("Reconstructed y");
23785     hNuMuBarRecoYGoodQ->GetXaxis()->CenterTitle();
23786     hNuMuBarRecoYGoodQ->GetYaxis()->SetTitle("");
23787     hNuMuBarRecoYGoodQ->GetYaxis()->CenterTitle();
23788     hNuMuBarRecoYGoodQ->SetFillColor(0);
23789     hNuMuBarRecoYGoodQ->SetLineColor(2);
23790     //hNuMuBarRecoYGoodQ->SetBit(TH1::kCanRebin);
23791     
23792     hNuMuRecoYGoodQ=new TH1F("hNuMuRecoYGoodQ","hNuMuRecoYGoodQ",
23793                              1400,-0.2,1.2);
23794     hNuMuRecoYGoodQ->GetXaxis()->SetTitle("Reconstructed y");
23795     hNuMuRecoYGoodQ->GetXaxis()->CenterTitle();
23796     hNuMuRecoYGoodQ->GetYaxis()->SetTitle("");
23797     hNuMuRecoYGoodQ->GetYaxis()->CenterTitle();
23798     hNuMuRecoYGoodQ->SetFillColor(0);
23799     hNuMuRecoYGoodQ->SetLineColor(1);
23800     hNuMuRecoYGoodQ->SetLineWidth(2);
23801     //hNuMuRecoYGoodQ->SetBit(TH1::kCanRebin);
23802     
23803     hNuMuBarRecoYBadQ=new TH1F("hNuMuBarRecoYBadQ",
23804                                "hNuMuBarRecoYBadQ",
23805                                1400,-0.2,1.2);
23806     hNuMuBarRecoYBadQ->GetXaxis()->SetTitle("Reconstructed y");
23807     hNuMuBarRecoYBadQ->GetXaxis()->CenterTitle();
23808     hNuMuBarRecoYBadQ->GetYaxis()->SetTitle("");
23809     hNuMuBarRecoYBadQ->GetYaxis()->CenterTitle();
23810     hNuMuBarRecoYBadQ->SetFillColor(0);
23811     hNuMuBarRecoYBadQ->SetLineColor(2);
23812     hNuMuBarRecoYBadQ->SetLineStyle(2);
23813     //hNuMuBarRecoYBadQ->SetBit(TH1::kCanRebin);
23814     
23815     hNuMuRecoYBadQ=new TH1F("hNuMuRecoYBadQ","hNuMuRecoYBadQ",
23816                             1400,-0.2,1.2);
23817     hNuMuRecoYBadQ->GetXaxis()->SetTitle("Reconstructed y");
23818     hNuMuRecoYBadQ->GetXaxis()->CenterTitle();
23819     hNuMuRecoYBadQ->GetYaxis()->SetTitle("");
23820     hNuMuRecoYBadQ->GetYaxis()->CenterTitle();
23821     hNuMuRecoYBadQ->SetFillColor(0);
23822     hNuMuRecoYBadQ->SetLineColor(1);
23823     hNuMuRecoYBadQ->SetLineWidth(2);
23824     hNuMuRecoYBadQ->SetLineStyle(2);
23825     //hNuMuRecoYBadQ->SetBit(TH1::kCanRebin);
23826     
23827     hNuMuBarRecoYBlob=new TH1F("hNuMuBarRecoYBlob",
23828                                "hNuMuBarRecoYBlob",
23829                                1400,-0.2,1.2);
23830     hNuMuBarRecoYBlob->GetXaxis()->SetTitle("Reconstructed y");
23831     hNuMuBarRecoYBlob->GetXaxis()->CenterTitle();
23832     hNuMuBarRecoYBlob->GetYaxis()->SetTitle("");
23833     hNuMuBarRecoYBlob->GetYaxis()->CenterTitle();
23834     hNuMuBarRecoYBlob->SetFillColor(0);
23835     hNuMuBarRecoYBlob->SetLineColor(1);
23836     hNuMuBarRecoYBlob->SetLineWidth(2);
23837     hNuMuBarRecoYBlob->SetLineStyle(2);
23838     //hNuMuBarRecoYBlob->SetBit(TH1::kCanRebin);
23839 
23840     hNuMuRecoYBlob=new TH1F("hNuMuRecoYBlob",
23841                             "hNuMuRecoYBlob",
23842                             1400,-0.2,1.2);
23843     hNuMuRecoYBlob->GetXaxis()->SetTitle("Reconstructed y");
23844     hNuMuRecoYBlob->GetXaxis()->CenterTitle();
23845     hNuMuRecoYBlob->GetYaxis()->SetTitle("");
23846     hNuMuRecoYBlob->GetYaxis()->CenterTitle();
23847     hNuMuRecoYBlob->SetFillColor(0);
23848     hNuMuRecoYBlob->SetLineColor(1);
23849     hNuMuRecoYBlob->SetLineWidth(2);
23850     hNuMuRecoYBlob->SetLineStyle(2);
23851     //hNuMuRecoYBlob->SetBit(TH1::kCanRebin);
23852 
23853 
23854 
23855 
23856 
23857 
23858 
23859 
23860 
23861 
23862 
23863 
23864 
23865 
23866 
23867 
23868 
23869     //was 200*160,-160,160
23870     hqpNQ=new TH1F("hqpNQ","hqpNQ",200*160,-16,16);
23871     hqpNQ->GetXaxis()->SetTitle("Q/P");
23872     hqpNQ->GetXaxis()->CenterTitle();
23873     hqpNQ->GetYaxis()->SetTitle("");
23874     hqpNQ->GetYaxis()->CenterTitle();
23875     hqpNQ->SetFillColor(0);
23876     hqpNQ->SetLineColor(1);
23877     hqpNQ->SetLineWidth(2);
23878     hqpNQ->SetLineStyle(2);
23879     //hqpNQ->SetBit(TH1::kCanRebin);
23880 
23881     hSigqpNQ=new TH1F("hSigqpNQ","hSigqpNQ",200*160,-16,16);
23882     hSigqpNQ->GetXaxis()->SetTitle("#sigma(Q/P)");
23883     hSigqpNQ->GetXaxis()->CenterTitle();
23884     hSigqpNQ->GetYaxis()->SetTitle("");
23885     hSigqpNQ->GetYaxis()->CenterTitle();
23886     hSigqpNQ->SetFillColor(0);
23887     hSigqpNQ->SetLineColor(1);
23888     hSigqpNQ->SetLineWidth(2);
23889     hSigqpNQ->SetLineStyle(2);
23890     //hSigqpNQ->SetBit(TH1::kCanRebin);
23891 
23892     hSigqp_qpNQ=new TH1F("hSigqp_qpNQ","hSigqp_qpNQ",800*160,-160,160);
23893     hSigqp_qpNQ->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
23894     hSigqp_qpNQ->GetXaxis()->CenterTitle();
23895     hSigqp_qpNQ->GetYaxis()->SetTitle("");
23896     hSigqp_qpNQ->GetYaxis()->CenterTitle();
23897     hSigqp_qpNQ->SetFillColor(0);
23898     hSigqp_qpNQ->SetLineColor(1);
23899     hSigqp_qpNQ->SetLineWidth(2);
23900     hSigqp_qpNQ->SetLineStyle(2);
23901     //hSigqp_qpNQ->SetBit(TH1::kCanRebin);
23902 
23903     hChi2NQ=new TH1F("hChi2NQ","hChi2NQ",10*176,-16,160);
23904     hChi2NQ->GetXaxis()->SetTitle("#chi^{2}/ndof");
23905     hChi2NQ->GetXaxis()->CenterTitle();
23906     hChi2NQ->GetYaxis()->SetTitle("");
23907     hChi2NQ->GetYaxis()->CenterTitle();
23908     hChi2NQ->SetFillColor(0);
23909     hChi2NQ->SetLineColor(1);
23910     hChi2NQ->SetLineWidth(2);
23911     hChi2NQ->SetLineStyle(2);
23912     //hChi2NQ->SetBit(TH1::kCanRebin);
23913 
23914     hProbNQ=new TH1F("hProbNQ","hProbNQ",14000,-0.2,1.2);
23915     hProbNQ->GetXaxis()->SetTitle("Fit Probability");
23916     hProbNQ->GetXaxis()->CenterTitle();
23917     hProbNQ->GetYaxis()->SetTitle("");
23918     hProbNQ->GetYaxis()->CenterTitle();
23919     hProbNQ->SetFillColor(0);
23920     hProbNQ->SetLineColor(1);
23921     hProbNQ->SetLineWidth(2);
23922     hProbNQ->SetLineStyle(2);
23923     //hProbNQ->SetBit(TH1::kCanRebin);
23924 
23925     
23926     hRecoEnPreSelNQ=new TH1F("hRecoEnPreSelNQ",
23927                              "hRecoEnPreSelNQ",
23928                              4*352,-32,320);
23929     hRecoEnPreSelNQ->GetXaxis()->
23930       SetTitle("Reconstructed Energy (GeV)");
23931     hRecoEnPreSelNQ->GetXaxis()->CenterTitle();
23932     hRecoEnPreSelNQ->GetYaxis()->SetTitle("");
23933     hRecoEnPreSelNQ->GetYaxis()->CenterTitle();
23934     hRecoEnPreSelNQ->SetFillColor(0);
23935     hRecoEnPreSelNQ->SetLineColor(1);
23936     //hRecoEnPreSelNQ->SetBit(TH1::kCanRebin);
23937 
23938     hRecoEnTrkPreSelNQ=new TH1F("hRecoEnTrkPreSelNQ",
23939                                 "hRecoEnTrkPreSelNQ",
23940                                 4*352,-32,320);
23941     hRecoEnTrkPreSelNQ->GetXaxis()->
23942       SetTitle("Reconstructed Energy (GeV)");
23943     hRecoEnTrkPreSelNQ->GetXaxis()->CenterTitle();
23944     hRecoEnTrkPreSelNQ->GetYaxis()->SetTitle("");
23945     hRecoEnTrkPreSelNQ->GetYaxis()->CenterTitle();
23946     hRecoEnTrkPreSelNQ->SetFillColor(0);
23947     hRecoEnTrkPreSelNQ->SetLineColor(1);
23948     //hRecoEnTrkPreSelNQ->SetBit(TH1::kCanRebin);
23949 
23950     hRecoEnShwPreSelNQ=new TH1F("hRecoEnShwPreSelNQ",
23951                                 "hRecoEnShwPreSelNQ",
23952                                 4*352,-32,320);
23953     hRecoEnShwPreSelNQ->GetXaxis()->
23954       SetTitle("Reconstructed Energy (GeV)");
23955     hRecoEnShwPreSelNQ->GetXaxis()->CenterTitle();
23956     hRecoEnShwPreSelNQ->GetYaxis()->SetTitle("");
23957     hRecoEnShwPreSelNQ->GetYaxis()->CenterTitle();
23958     hRecoEnShwPreSelNQ->SetFillColor(0);
23959     hRecoEnShwPreSelNQ->SetLineColor(1);
23960     //hRecoEnShwPreSelNQ->SetBit(TH1::kCanRebin);
23961 
23962     hRecoYPreSelNQ=new TH1F("hRecoYPreSelNQ",
23963                             "hRecoYPreSelNQ",
23964                             1400,-0.2,1.2);
23965     hRecoYPreSelNQ->GetXaxis()->
23966       SetTitle("Reconstructed y");
23967     hRecoYPreSelNQ->GetXaxis()->CenterTitle();
23968     hRecoYPreSelNQ->GetYaxis()->SetTitle("");
23969     hRecoYPreSelNQ->GetYaxis()->CenterTitle();
23970     hRecoYPreSelNQ->SetFillColor(0);
23971     hRecoYPreSelNQ->SetLineColor(1);
23972     //hRecoYPreSelNQ->SetBit(TH1::kCanRebin);
23973   
23974   
23975 
23976     hqpPQ=new TH1F("hqpPQ","hqpPQ",200*160,-16,16);
23977     hqpPQ->GetXaxis()->SetTitle("Q/P");
23978     hqpPQ->GetXaxis()->CenterTitle();
23979     hqpPQ->GetYaxis()->SetTitle("");
23980     hqpPQ->GetYaxis()->CenterTitle();
23981     hqpPQ->SetFillColor(0);
23982     hqpPQ->SetLineColor(1);
23983     hqpPQ->SetLineWidth(2);
23984     hqpPQ->SetLineStyle(2);
23985     //hqpPQ->SetBit(TH1::kCanRebin);
23986 
23987     hSigqpPQ=new TH1F("hSigqpPQ","hSigqpPQ",200*160,-16,16);
23988     hSigqpPQ->GetXaxis()->SetTitle("#sigma(Q/P)");
23989     hSigqpPQ->GetXaxis()->CenterTitle();
23990     hSigqpPQ->GetYaxis()->SetTitle("");
23991     hSigqpPQ->GetYaxis()->CenterTitle();
23992     hSigqpPQ->SetFillColor(0);
23993     hSigqpPQ->SetLineColor(1);
23994     hSigqpPQ->SetLineWidth(2);
23995     hSigqpPQ->SetLineStyle(2);
23996     //hSigqpPQ->SetBit(TH1::kCanRebin);
23997 
23998     hSigqp_qpPQ=new TH1F("hSigqp_qpPQ","hSigqp_qpPQ",800*160,-160,160);
23999     hSigqp_qpPQ->GetXaxis()->SetTitle("#sigma(Q/P)/(Q/P)");
24000     hSigqp_qpPQ->GetXaxis()->CenterTitle();
24001     hSigqp_qpPQ->GetYaxis()->SetTitle("");
24002     hSigqp_qpPQ->GetYaxis()->CenterTitle();
24003     hSigqp_qpPQ->SetFillColor(0);
24004     hSigqp_qpPQ->SetLineColor(1);
24005     hSigqp_qpPQ->SetLineWidth(2);
24006     hSigqp_qpPQ->SetLineStyle(2);
24007     //hSigqp_qpPQ->SetBit(TH1::kCanRebin);
24008 
24009     hChi2PQ=new TH1F("hChi2PQ","hChi2PQ",10*176,-16,160);
24010     hChi2PQ->GetXaxis()->SetTitle("#chi^{2}/ndof");
24011     hChi2PQ->GetXaxis()->CenterTitle();
24012     hChi2PQ->GetYaxis()->SetTitle("");
24013     hChi2PQ->GetYaxis()->CenterTitle();
24014     hChi2PQ->SetFillColor(0);
24015     hChi2PQ->SetLineColor(1);
24016     hChi2PQ->SetLineWidth(2);
24017     hChi2PQ->SetLineStyle(2);
24018     //hChi2PQ->SetBit(TH1::kCanRebin);
24019 
24020     //10*160,-1.6,1.6);
24021     //4*(32+320+32),-0.1,1.1);
24022     hProbPQ=new TH1F("hProbPQ","hProbPQ",14000,-0.2,1.2);
24023     hProbPQ->GetXaxis()->SetTitle("Fit Probability");
24024     hProbPQ->GetXaxis()->CenterTitle();
24025     hProbPQ->GetYaxis()->SetTitle("");
24026     hProbPQ->GetYaxis()->CenterTitle();
24027     hProbPQ->SetFillColor(0);
24028     hProbPQ->SetLineColor(1);
24029     hProbPQ->SetLineWidth(2);
24030     hProbPQ->SetLineStyle(2);
24031     //hProbPQ->SetBit(TH1::kCanRebin);
24032 
24033 
24034     hRecoEnPreSelPQ=new TH1F("hRecoEnPreSelPQ",
24035                              "hRecoEnPreSelPQ",
24036                              4*352,-32,320);
24037     hRecoEnPreSelPQ->GetXaxis()->
24038       SetTitle("Reconstructed Energy (GeV)");
24039     hRecoEnPreSelPQ->GetXaxis()->CenterTitle();
24040     hRecoEnPreSelPQ->GetYaxis()->SetTitle("");
24041     hRecoEnPreSelPQ->GetYaxis()->CenterTitle();
24042     hRecoEnPreSelPQ->SetFillColor(0);
24043     hRecoEnPreSelPQ->SetLineColor(1);
24044     //hRecoEnPreSelPQ->SetBit(TH1::kCanRebin);
24045 
24046     hRecoEnTrkPreSelPQ=new TH1F("hRecoEnTrkPreSelPQ",
24047                                 "hRecoEnTrkPreSelPQ",
24048                                 4*352,-32,320);
24049     hRecoEnTrkPreSelPQ->GetXaxis()->
24050       SetTitle("Reconstructed Energy (GeV)");
24051     hRecoEnTrkPreSelPQ->GetXaxis()->CenterTitle();
24052     hRecoEnTrkPreSelPQ->GetYaxis()->SetTitle("");
24053     hRecoEnTrkPreSelPQ->GetYaxis()->CenterTitle();
24054     hRecoEnTrkPreSelPQ->SetFillColor(0);
24055     hRecoEnTrkPreSelPQ->SetLineColor(1);
24056     //hRecoEnTrkPreSelPQ->SetBit(TH1::kCanRebin);
24057 
24058     hRecoEnShwPreSelPQ=new TH1F("hRecoEnShwPreSelPQ",
24059                                 "hRecoEnShwPreSelPQ",
24060                                 4*352,-32,320);
24061     hRecoEnShwPreSelPQ->GetXaxis()->
24062       SetTitle("Reconstructed Energy (GeV)");
24063     hRecoEnShwPreSelPQ->GetXaxis()->CenterTitle();
24064     hRecoEnShwPreSelPQ->GetYaxis()->SetTitle("");
24065     hRecoEnShwPreSelPQ->GetYaxis()->CenterTitle();
24066     hRecoEnShwPreSelPQ->SetFillColor(0);
24067     hRecoEnShwPreSelPQ->SetLineColor(1);
24068     //hRecoEnShwPreSelPQ->SetBit(TH1::kCanRebin);
24069 
24070     hRecoYPreSelPQ=new TH1F("hRecoYPreSelPQ",
24071                             "hRecoYPreSelPQ",
24072                             1400,-0.2,1.2);
24073     hRecoYPreSelPQ->GetXaxis()->
24074       SetTitle("Reconstructed y");
24075     hRecoYPreSelPQ->GetXaxis()->CenterTitle();
24076     hRecoYPreSelPQ->GetYaxis()->SetTitle("");
24077     hRecoYPreSelPQ->GetYaxis()->CenterTitle();
24078     hRecoYPreSelPQ->SetFillColor(0);
24079     hRecoYPreSelPQ->SetLineColor(1);
24080     //hRecoYPreSelPQ->SetBit(TH1::kCanRebin);
24081   }
24082 
24083   //check if MC
24084   if (nu.simFlag==SimFlag::kMC){
24085     MAXMSG("NuPlots",Msg::kDebug,1)
24086       <<"Is MC, filling sigQP/QP histos..."<<endl;
24087 
24088     if (nu.inu==14 && nu.iaction==1) {//CC neutrinos
24089       if (nu.charge==+1) {//neutrinos should be negative
24090         if (nu.sigqp_qp>0.3){
24091           MAXMSG("NuPlots",Msg::kDebug,200)
24092             <<"  QP: sigqp_qp="<<nu.sigqp_qp<<", chi2="<<nu.chi2
24093             <<", ndof="<<nu.ndof
24094             <<", chi2/ndof="<<nu.chi2PerNdof
24095             <<", prob="<<nu.prob<<endl;
24096         }
24097         else if (nu.prob<0.05){
24098           MAXMSG("NuPlots",Msg::kDebug,200)
24099             <<"PROB: sigqp_qp="<<nu.sigqp_qp<<", chi2="<<nu.chi2
24100             <<", ndof="<<nu.ndof
24101             <<", chi2/ndof="<<nu.chi2PerNdof
24102             <<", prob="<<nu.prob<<endl;
24103         }
24104         hNuMuqpBadQ->Fill(nu.qp,nu.rw);
24105         hNuMuSigqpBadQ->Fill(nu.sigqp,nu.rw);
24106         hNuMuSigqp_qpBadQ->Fill(nu.sigqp_qp,nu.rw);
24107         hNuMuChi2BadQ->Fill(nu.chi2PerNdof,nu.rw);
24108         hNuMuProbBadQ->Fill(nu.prob,nu.rw);
24109 
24110         hNuMuRecoEnBadQ->Fill(nu.energy,nu.rw);
24111         hNuMuRecoEnTrkBadQ->Fill(nu.trkEn,nu.rw);
24112         hNuMuRecoEnShwBadQ->Fill(nu.shwEn,nu.rw);
24113         hNuMuRecoYBadQ->Fill(nu.y,nu.rw);
24114       }
24115       else{
24116         hNuMuqpGoodQ->Fill(nu.qp,nu.rw);
24117         hNuMuSigqpGoodQ->Fill(nu.sigqp,nu.rw);
24118         hNuMuSigqp_qpGoodQ->Fill(nu.sigqp_qp,nu.rw);
24119         hNuMuChi2GoodQ->Fill(nu.chi2PerNdof,nu.rw);
24120         hNuMuProbGoodQ->Fill(nu.prob,nu.rw);
24121 
24122         hNuMuRecoEnGoodQ->Fill(nu.energy,nu.rw);
24123         hNuMuRecoEnTrkGoodQ->Fill(nu.trkEn,nu.rw);
24124         hNuMuRecoEnShwGoodQ->Fill(nu.shwEn,nu.rw);
24125         hNuMuRecoYGoodQ->Fill(nu.y,nu.rw);
24126       }
24127     }
24128     else if (nu.inu==-14 && nu.iaction==1) {//CC anti-neutrinos
24129       if (nu.charge==-1) {//anti-neutrinos should be positive
24130         hNuMuBarqpBadQ->Fill(nu.qp,nu.rw);
24131         hNuMuBarSigqpBadQ->Fill(nu.sigqp,nu.rw);
24132         hNuMuBarSigqp_qpBadQ->Fill(nu.sigqp_qp,nu.rw);
24133         hNuMuBarChi2BadQ->Fill(nu.chi2PerNdof,nu.rw);
24134         hNuMuBarProbBadQ->Fill(nu.prob,nu.rw);
24135 
24136         hNuMuBarRecoEnBadQ->Fill(nu.energy,nu.rw);
24137         hNuMuBarRecoEnTrkBadQ->Fill(nu.trkEn,nu.rw);
24138         hNuMuBarRecoEnShwBadQ->Fill(nu.shwEn,nu.rw);
24139         hNuMuBarRecoYBadQ->Fill(nu.y,nu.rw);
24140       }
24141       else{
24142         hNuMuBarqpGoodQ->Fill(nu.qp,nu.rw);
24143         hNuMuBarSigqpGoodQ->Fill(nu.sigqp,nu.rw);
24144         hNuMuBarSigqp_qpGoodQ->Fill(nu.sigqp_qp,nu.rw);
24145         hNuMuBarChi2GoodQ->Fill(nu.chi2PerNdof,nu.rw);
24146         hNuMuBarProbGoodQ->Fill(nu.prob,nu.rw);
24147 
24148         hNuMuBarRecoEnGoodQ->Fill(nu.energy,nu.rw);
24149         hNuMuBarRecoEnTrkGoodQ->Fill(nu.trkEn,nu.rw);
24150         hNuMuBarRecoEnShwGoodQ->Fill(nu.shwEn,nu.rw);
24151         hNuMuBarRecoYGoodQ->Fill(nu.y,nu.rw);
24152       }
24153     }
24154     else {//catch the NCs plus any nues
24155       if (nu.charge<0) {
24156         hNuMuqpBlob->Fill(nu.qp,nu.rw);
24157         hNuMuSigqpBlob->Fill(nu.sigqp,nu.rw);
24158         hNuMuSigqp_qpBlob->Fill(nu.sigqp_qp,nu.rw);
24159         hNuMuChi2Blob->Fill(nu.chi2PerNdof,nu.rw);
24160         hNuMuProbBlob->Fill(nu.prob,nu.rw);
24161 
24162         hNuMuRecoEnBlob->Fill(nu.energy,nu.rw);
24163         hNuMuRecoEnTrkBlob->Fill(nu.trkEn,nu.rw);
24164         hNuMuRecoEnShwBlob->Fill(nu.shwEn,nu.rw);
24165         hNuMuRecoYBlob->Fill(nu.y,nu.rw);
24166       }
24167       else if (nu.charge>0) {
24168         hNuMuBarqpBlob->Fill(nu.qp,nu.rw);
24169         hNuMuBarSigqpBlob->Fill(nu.sigqp,nu.rw);
24170         hNuMuBarSigqp_qpBlob->Fill(nu.sigqp_qp,nu.rw);
24171         hNuMuBarChi2Blob->Fill(nu.chi2PerNdof,nu.rw);
24172         hNuMuBarProbBlob->Fill(nu.prob,nu.rw);
24173 
24174         hNuMuBarRecoEnBlob->Fill(nu.energy,nu.rw);
24175         hNuMuBarRecoEnTrkBlob->Fill(nu.trkEn,nu.rw);
24176         hNuMuBarRecoEnShwBlob->Fill(nu.shwEn,nu.rw);
24177         hNuMuBarRecoYBlob->Fill(nu.y,nu.rw);
24178       }
24179     }
24180   }
24181   else {
24182     MAXMSG("NuPlots",Msg::kDebug,1)
24183       <<"No THTrack, filling sigQP/QP histos..."<<endl;
24184   }
24185 
24186   //fill the ALL histos
24187   if (nu.charge<0) {
24188     hqpNQ->Fill(nu.qp,nu.rw);
24189     hSigqpNQ->Fill(nu.sigqp,nu.rw);
24190     hSigqp_qpNQ->Fill(nu.sigqp_qp,nu.rw);
24191     hChi2NQ->Fill(nu.chi2PerNdof,nu.rw);
24192     hProbNQ->Fill(nu.prob,nu.rw);
24193     hRecoEnPreSelNQ->Fill(nu.energy,nu.rw);
24194     hRecoEnTrkPreSelNQ->Fill(nu.trkEn,nu.rw);
24195     hRecoEnShwPreSelNQ->Fill(nu.shwEn,nu.rw);
24196     hRecoYPreSelNQ->Fill(nu.y,nu.rw);
24197   }
24198   else if (nu.charge>0) {
24199     hqpPQ->Fill(nu.qp,nu.rw);
24200     hSigqpPQ->Fill(nu.sigqp,nu.rw);
24201     hSigqp_qpPQ->Fill(nu.sigqp_qp,nu.rw);
24202     hChi2PQ->Fill(nu.chi2PerNdof,nu.rw);
24203     hProbPQ->Fill(nu.prob,nu.rw);
24204     hRecoEnPreSelPQ->Fill(nu.energy,nu.rw);
24205     hRecoEnTrkPreSelPQ->Fill(nu.trkEn,nu.rw);
24206     hRecoEnShwPreSelPQ->Fill(nu.shwEn,nu.rw);
24207     hRecoYPreSelPQ->Fill(nu.y,nu.rw);
24208   }
24209 }

void NuPlots::FillSpectra const NuEvent nu,
const TString  name
const
 

Definition at line 858 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::energy, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuUtilities::RecoBins(), NuEvent::rw, NuEvent::simFlag, and NuEvent::trkEn.

Referenced by NuDSTAna::QPStudy(), and NuDSTAna::SelectorTable().

00859 {
00860   //PQ
00861   static vector<TString> names;
00862   static vector<TH1D*>  spectra_pq;
00863   static vector<TH1D*>  spectra_nq;  
00864   static vector<TH1D*>  spectra_sig;
00865   static vector<TH1D*>  spectra_nc;
00866   static vector<TH1D*>  spectra_ws;
00867   static vector<TH1D*>  spectra_nqsig;
00868   static vector<TH1D*>  spectra_nqnc;
00869   static vector<TH1D*>  spectra_nqws;
00870   static vector<TH1D*>  trkspectra_pq;
00871   static vector<TH1D*>  trkspectra_nq;  
00872   static vector<TH1D*>  trkspectra_sig;
00873   static vector<TH1D*>  trkspectra_nc;
00874   static vector<TH1D*>  trkspectra_ws;
00875   static vector<TH1D*>  trkspectra_nqsig;
00876   static vector<TH1D*>  trkspectra_nqnc;
00877   static vector<TH1D*>  trkspectra_nqws;
00878   
00879   static vector<Double_t> vReco;
00880   static int numRecoBins;
00881   
00882   if (vReco.size() == 0) {
00883     const NuUtilities cuts;
00884     NuBinningScheme::NuBinningScheme_t binningScheme =
00885     static_cast<NuBinningScheme::NuBinningScheme_t>(4);
00886     vReco = cuts.RecoBins(binningScheme);
00887     numRecoBins = vReco.size() - 1;
00888   }
00889   
00890   unsigned int ci = 0;
00891   for ( ; ci < names.size(); ci++) {
00892     if (names[ci] == name) break;
00893   }
00894   
00895   // Have not seen this cut before
00896   if (ci == names.size()) {
00897     names.push_back(name);
00898     
00899     TString sname = "hRecoE" + name;
00900     TString tname = "hTrkE" + name;
00901 
00902     TString post;
00903     post = "PQ";
00904     spectra_pq.push_back(new TH1D(sname+post, sname+post+";Reco. Energy (GeV)", numRecoBins, &(vReco[0])));
00905     trkspectra_pq.push_back(new TH1D(tname+post, tname+post+";Track Energy (GeV)", numRecoBins, &(vReco[0])));
00906     post = "NQ";
00907     spectra_nq.push_back(new TH1D(sname+post, sname+post+";Reco. Energy (GeV)", numRecoBins, &(vReco[0])));
00908     trkspectra_nq.push_back(new TH1D(tname+post, tname+post+";Track Energy (GeV)", numRecoBins, &(vReco[0])));
00909 
00910     if (nu.simFlag == SimFlag::kMC) {
00911       post = "Sig";
00912       spectra_sig.push_back(new TH1D(sname+post, sname+post+";Reco. Energy (GeV)", numRecoBins, &(vReco[0])));
00913       trkspectra_sig.push_back(new TH1D(tname+post, tname+post+";Track Energy (GeV)", numRecoBins, &(vReco[0])));
00914       post = "NC";
00915       spectra_nc.push_back(new TH1D(sname+post, sname+post+";Reco. Energy (GeV)", numRecoBins, &(vReco[0])));
00916       trkspectra_nc.push_back(new TH1D(tname+post, tname+post+";Track Energy (GeV)", numRecoBins, &(vReco[0])));
00917       post = "WS";
00918       spectra_ws.push_back(new TH1D(sname+post, sname+post+";Reco. Energy (GeV)", numRecoBins, &(vReco[0])));
00919       trkspectra_ws.push_back(new TH1D(tname+post, tname+post+";Track Energy (GeV)", numRecoBins, &(vReco[0])));
00920       post = "NQSig";
00921       spectra_nqsig.push_back(new TH1D(sname+post, sname+post+";Reco. Energy (GeV)", numRecoBins, &(vReco[0])));
00922       trkspectra_nqsig.push_back(new TH1D(tname+post, tname+post+";Track Energy (GeV)", numRecoBins, &(vReco[0])));
00923       post = "NQNC";
00924       spectra_nqnc.push_back(new TH1D(sname+post, sname+post+";Reco. Energy (GeV)", numRecoBins, &(vReco[0])));
00925       trkspectra_nqnc.push_back(new TH1D(tname+post, tname+post+";Track Energy (GeV)", numRecoBins, &(vReco[0])));
00926       post = "NQWS";
00927       spectra_nqws.push_back(new TH1D(sname+post, sname+post+";Reco. Energy (GeV)", numRecoBins, &(vReco[0])));      
00928       trkspectra_nqws.push_back(new TH1D(tname+post, tname+post+";Track Energy (GeV)", numRecoBins, &(vReco[0])));
00929     }    
00930     MSG("NuPlots",Msg::kInfo) << "Creating " << name << " spectra plots" << endl;
00931   }
00932   
00933   if (nu.charge==+1) {
00934     MAXMSG("NuPlots",Msg::kInfo,50) << "Filling PQ Spectra" << endl;
00935     spectra_pq[ci]->Fill(nu.energy, nu.rw);
00936     trkspectra_pq[ci]->Fill(nu.trkEn, nu.rw);
00937     if (nu.simFlag == SimFlag::kMC) {    
00938       if (nu.iaction != 1) {
00939         spectra_nc[ci]->Fill(nu.energy, nu.rw);
00940         trkspectra_nc[ci]->Fill(nu.trkEn, nu.rw);
00941       }
00942       else if (nu.inu != -14) {
00943         spectra_ws[ci]->Fill(nu.energy, nu.rw);
00944         trkspectra_ws[ci]->Fill(nu.trkEn, nu.rw);
00945       }
00946       else {
00947         spectra_sig[ci]->Fill(nu.energy, nu.rw);
00948         trkspectra_sig[ci]->Fill(nu.trkEn, nu.rw);
00949       }
00950     }
00951   }
00952   else {
00953     MAXMSG("NuPlots",Msg::kInfo,50) << "Filling NQ Spectra" << endl;
00954     spectra_nq[ci]->Fill(nu.energy, nu.rw);
00955     trkspectra_nq[ci]->Fill(nu.trkEn, nu.rw);
00956     if (nu.simFlag == SimFlag::kMC) {
00957       if (nu.iaction != 1) {
00958         spectra_nqnc[ci]->Fill(nu.energy, nu.rw);
00959         trkspectra_nqnc[ci]->Fill(nu.trkEn, nu.rw);
00960       }
00961       else if (nu.inu != 14) {
00962         spectra_nqws[ci]->Fill(nu.energy, nu.rw);
00963         trkspectra_nqws[ci]->Fill(nu.trkEn, nu.rw);
00964       }
00965       else {
00966         spectra_nqsig[ci]->Fill(nu.energy, nu.rw);      
00967         trkspectra_nqsig[ci]->Fill(nu.trkEn, nu.rw);
00968       }
00969     }
00970   }
00971 }

void NuPlots::FillStpfitqpPlots const NtpStRecord ntp,
const NtpSRTrack trk,
const NuEvent nu
const
 

Definition at line 24213 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NtpSRTrack::nstrip, NuEvent::qpFraction, NuEvent::rw, and NtpSRTrack::stpfitqp.

Referenced by NuAnalysis::ChargeSeparationOneSnarl().

24216 {    
24217   //PQ
24218   static TH1F* hStpfitqpPQ=0;
24219   static TH1F* hQPFractionPQ=0;
24220   static TH1F* hNMBQPFractionPQ=0;
24221   static TH1F* hNMQPFractionPQ=0;
24222   static TH1F* hAllShwQPFractionPQ=0;
24223 
24224   //NQ
24225   static TH1F* hStpfitqpNQ=0;
24226   static TH1F* hQPFractionNQ=0;
24227   static TH1F* hNMBQPFractionNQ=0;
24228   static TH1F* hNMQPFractionNQ=0;
24229   static TH1F* hAllShwQPFractionNQ=0;
24230 
24231   if (!hStpfitqpPQ){
24232     MAXMSG("NuPlots",Msg::kDebug,1)
24233       <<"Creating FillStpfitqp plots..."<<endl;
24234 
24235     //PQ
24236     hStpfitqpPQ=new TH1F("hStpfitqpPQ","hStpfitqpPQ",
24237                          1000,-5,5);
24238     hStpfitqpPQ->GetXaxis()->SetTitle("stpfitqpPQ");
24239     hStpfitqpPQ->GetXaxis()->CenterTitle();
24240     hStpfitqpPQ->GetYaxis()->SetTitle("");
24241     hStpfitqpPQ->GetYaxis()->CenterTitle();
24242     hStpfitqpPQ->SetFillColor(0);
24243     hStpfitqpPQ->SetLineColor(2);
24244     //hStpfitqpPQ->SetBit(TH1::kCanRebin);
24245 
24246     hQPFractionPQ=new TH1F("hQPFractionPQ","hQPFractionPQ",
24247                            2000,-2,2);
24248     hQPFractionPQ->GetXaxis()->SetTitle("N_{+qp}/N_{trk}");
24249     hQPFractionPQ->GetXaxis()->CenterTitle();
24250     hQPFractionPQ->GetYaxis()->SetTitle("");
24251     hQPFractionPQ->GetYaxis()->CenterTitle();
24252     hQPFractionPQ->SetFillColor(0);
24253     hQPFractionPQ->SetLineColor(2);
24254     //hQPFractionPQ->SetBit(TH1::kCanRebin);
24255 
24256     hNMBQPFractionPQ=new TH1F("hNMBQPFractionPQ","hNMBQPFractionPQ",
24257                               2000,-2,2);
24258     hNMBQPFractionPQ->GetXaxis()->SetTitle("N_{+qp}/N_{trk}");
24259     hNMBQPFractionPQ->GetXaxis()->CenterTitle();
24260     hNMBQPFractionPQ->GetYaxis()->SetTitle("");
24261     hNMBQPFractionPQ->GetYaxis()->CenterTitle();
24262     hNMBQPFractionPQ->SetFillColor(0);
24263     hNMBQPFractionPQ->SetLineColor(2);
24264     //hNMBQPFractionPQ->SetBit(TH1::kCanRebin);
24265 
24266     hNMQPFractionPQ=new TH1F("hNMQPFractionPQ","hNMQPFractionPQ",
24267                              2000,-2,2);
24268     hNMQPFractionPQ->GetXaxis()->SetTitle("N_{+qp}/N_{trk}");
24269     hNMQPFractionPQ->GetXaxis()->CenterTitle();
24270     hNMQPFractionPQ->GetYaxis()->SetTitle("");
24271     hNMQPFractionPQ->GetYaxis()->CenterTitle();
24272     hNMQPFractionPQ->SetFillColor(0);
24273     hNMQPFractionPQ->SetLineColor(2);
24274     //hNMQPFractionPQ->SetBit(TH1::kCanRebin);
24275 
24276     hAllShwQPFractionPQ=new TH1F("hAllShwQPFractionPQ",
24277                                  "hAllShwQPFractionPQ",
24278                                  2000,-2,2);
24279     hAllShwQPFractionPQ->GetXaxis()->SetTitle("N_{+qp}/N_{trk}");
24280     hAllShwQPFractionPQ->GetXaxis()->CenterTitle();
24281     hAllShwQPFractionPQ->GetYaxis()->SetTitle("");
24282     hAllShwQPFractionPQ->GetYaxis()->CenterTitle();
24283     hAllShwQPFractionPQ->SetFillColor(0);
24284     hAllShwQPFractionPQ->SetLineColor(2);
24285     //hAllShwQPFractionPQ->SetBit(TH1::kCanRebin);
24286     
24287     /*
24288       hShwTrkVtxXYDist0PQ=new TH2F
24289       ("hShwTrkVtxXYDist0PQ","hShwTrkVtxXYDist0PQ",300,-3,3,300,-3,3);
24290       hShwTrkVtxXYDist0PQ->GetXaxis()->SetTitle("X (m)");
24291       hShwTrkVtxXYDist0PQ->GetXaxis()->CenterTitle();
24292       hShwTrkVtxXYDist0PQ->GetYaxis()->SetTitle("Y (m)");
24293       hShwTrkVtxXYDist0PQ->GetYaxis()->CenterTitle();
24294       //hShwTrkVtxXYDist0PQ->SetBit(TH1::kCanRebin);
24295       */  
24296 
24297 
24298     //NQ
24299     hStpfitqpNQ=new TH1F("hStpfitqpNQ","hStpfitqpNQ",
24300                          1000,-5,5);
24301     hStpfitqpNQ->GetXaxis()->SetTitle("stpfitqpNQ");
24302     hStpfitqpNQ->GetXaxis()->CenterTitle();
24303     hStpfitqpNQ->GetYaxis()->SetTitle("");
24304     hStpfitqpNQ->GetYaxis()->CenterTitle();
24305     hStpfitqpNQ->SetFillColor(0);
24306     hStpfitqpNQ->SetLineColor(2);
24307     //hStpfitqpNQ->SetBit(TH1::kCanRebin);
24308 
24309     hQPFractionNQ=new TH1F("hQPFractionNQ","hQPFractionNQ",
24310                            2000,-2,2);
24311     hQPFractionNQ->GetXaxis()->SetTitle("N_{+qp}/N_{trk}");
24312     hQPFractionNQ->GetXaxis()->CenterTitle();
24313     hQPFractionNQ->GetYaxis()->SetTitle("");
24314     hQPFractionNQ->GetYaxis()->CenterTitle();
24315     hQPFractionNQ->SetFillColor(0);
24316     hQPFractionNQ->SetLineColor(2);
24317     //hQPFractionNQ->SetBit(TH1::kCanRebin);
24318 
24319     hNMBQPFractionNQ=new TH1F("hNMBQPFractionNQ","hNMBQPFractionNQ",
24320                               2000,-2,2);
24321     hNMBQPFractionNQ->GetXaxis()->SetTitle("N_{+qp}/N_{trk}");
24322     hNMBQPFractionNQ->GetXaxis()->CenterTitle();
24323     hNMBQPFractionNQ->GetYaxis()->SetTitle("");
24324     hNMBQPFractionNQ->GetYaxis()->CenterTitle();
24325     hNMBQPFractionNQ->SetFillColor(0);
24326     hNMBQPFractionNQ->SetLineColor(2);
24327     //hNMBQPFractionNQ->SetBit(TH1::kCanRebin);
24328 
24329     hNMQPFractionNQ=new TH1F("hNMQPFractionNQ","hNMQPFractionNQ",
24330                              2000,-2,2);
24331     hNMQPFractionNQ->GetXaxis()->SetTitle("N_{+qp}/N_{trk}");
24332     hNMQPFractionNQ->GetXaxis()->CenterTitle();
24333     hNMQPFractionNQ->GetYaxis()->SetTitle("");
24334     hNMQPFractionNQ->GetYaxis()->CenterTitle();
24335     hNMQPFractionNQ->SetFillColor(0);
24336     hNMQPFractionNQ->SetLineColor(2);
24337     //hNMQPFractionNQ->SetBit(TH1::kCanRebin);
24338 
24339     hAllShwQPFractionNQ=new TH1F("hAllShwQPFractionNQ",
24340                                  "hAllShwQPFractionNQ",
24341                                  2000,-2,2);
24342     hAllShwQPFractionNQ->GetXaxis()->SetTitle("N_{+qp}/N_{trk}");
24343     hAllShwQPFractionNQ->GetXaxis()->CenterTitle();
24344     hAllShwQPFractionNQ->GetYaxis()->SetTitle("");
24345     hAllShwQPFractionNQ->GetYaxis()->CenterTitle();
24346     hAllShwQPFractionNQ->SetFillColor(0);
24347     hAllShwQPFractionNQ->SetLineColor(2);
24348     //hAllShwQPFractionNQ->SetBit(TH1::kCanRebin);
24349   }
24350 
24351   for (Int_t i=0;i<trk.nstrip;i++){
24352     //Float_t x=trk.stpx[i];
24353     Float_t stpfitqp=trk.stpfitqp[i];
24354 
24355     if (nu.charge==+1) {
24356       hStpfitqpPQ->Fill(stpfitqp,nu.rw);
24357       MAXMSG("NuPlots",Msg::kDebug,1000)
24358         <<"PQ: stpfitqp="<<stpfitqp<<endl;
24359     }
24360     else if (nu.charge==-1){
24361       hStpfitqpNQ->Fill(stpfitqp,nu.rw);
24362       MAXMSG("NuPlots",Msg::kDebug,500)
24363         <<"NQ: stpfitqp="<<stpfitqp<<endl;
24364     }
24365     else MSG("NuPlots",Msg::kWarning)<<"Ahhhhh, bad charge"<<endl;
24366   }
24367 
24368   //now fill the qpFraction histos
24369   if (nu.charge==+1) {
24370     hQPFractionPQ->Fill(nu.qpFraction,nu.rw);
24371   }
24372   else if (nu.charge==-1){
24373     hQPFractionNQ->Fill(nu.qpFraction,nu.rw);
24374   }
24375   else MSG("NuPlots",Msg::kWarning)<<"Ahhhhh, bad charge"<<endl;
24376 
24377 
24378   //now fill the truth plots
24379   //also do the correlation with track fit probability
24380 
24381   if (nu.iaction==1){//CC
24382     if (nu.inu==14){//NuMu
24383       if (nu.charge==+1) {
24384         hNMQPFractionPQ->Fill(nu.qpFraction,nu.rw);
24385       }
24386       else if (nu.charge==-1){
24387         hNMQPFractionNQ->Fill(nu.qpFraction,nu.rw);
24388       }
24389     }
24390     else if (nu.inu==-14){//NuMuBar
24391       if (nu.charge==+1) {
24392         hNMBQPFractionPQ->Fill(nu.qpFraction,nu.rw);
24393       }
24394       else if (nu.charge==-1){
24395         hNMBQPFractionNQ->Fill(nu.qpFraction,nu.rw);
24396       }
24397     }
24398   }
24399 
24400   
24401   //all but NuMu/NuMuBar CC
24402   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
24403     if (nu.charge==+1) {
24404       hAllShwQPFractionPQ->Fill(nu.qpFraction,nu.rw);
24405     }
24406     else if (nu.charge==-1){
24407       hAllShwQPFractionNQ->Fill(nu.qpFraction,nu.rw);
24408     }    
24409   }
24410 }

void NuPlots::FillTrackResponseHistos const NtpStRecord ntp,
const NtpSRTrack trk,
const NuEvent nu
const
 

Definition at line 11617 of file NuPlots.cxx.

References NtpSRTrack::end, MAXMSG, MSG, NtpSRPlane::n, NtpSRTrack::nstrip, NtpSRSlice::nstrip, NtpSRTrack::ph, NtpSRStrip::ph0, NtpSRStrip::ph1, NtpSRTrack::plane, NtpSRVertex::plane, NtpSRStrip::plane, NtpSRStrip::planeview, NtpSRPulseHeight::raw, NuEvent::rw, NuEvent::shwEn, NtpSRPulseHeight::sigcor, NtpSRStripPulseHeight::sigmap, NuEvent::slc, NtpStRecord::slc, NtpSRTrack::stp, NtpSRSlice::stp, NtpStRecord::stp, NtpSRTrack::stpph0sigmap, NtpSRTrack::stpph1sigmap, NtpSRTrack::stpx, NtpSRTrack::stpy, NtpSRTrack::vtx, and NtpSRStrip::z.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::ChargeSignCut(), and NuAnalysis::EnergySpect().

11620 {
11621   static TH1F* hTrkAdc=0;
11622   static TH1F* hTrkSigCor=0;
11623   static TH1F* hTrkSigMap=0;
11624   static TH1F* hTrkSigMapNtp=0;
11625 
11626   static TH1F* hTrkAdc05GeV=0;
11627   static TH1F* hTrkSigCor05GeV=0;
11628   static TH1F* hTrkSigMap05GeV=0;
11629 
11630   static TH1F* hTrkAdc40=0;
11631   static TH1F* hTrkSigCor40=0;
11632   static TH1F* hTrkSigMap40=0;
11633 
11634   static TH1F* hTrkAdcl120=0;
11635   static TH1F* hTrkSigCorl120=0;
11636   static TH1F* hTrkSigMapl120=0;
11637   
11638   static TH1F* hTrkAdcg120=0;
11639   static TH1F* hTrkSigCorg120=0;
11640   static TH1F* hTrkSigMapg120=0;
11641 
11642   static TH1F* hTrkAllAdcl120=0;
11643   static TH1F* hTrkAllSigCorl120=0;
11644   static TH1F* hTrkAllSigMapl120=0;
11645   static TH1F* hTrkAllAdcg120=0;
11646   static TH1F* hTrkAllSigCorg120=0;
11647   static TH1F* hTrkAllSigMapg120=0;
11648 
11649   static TH1F* hSlcAllAdcl120=0;
11650   static TH1F* hSlcAllSigCorl120=0;
11651   static TH1F* hSlcAllSigMapl120=0;
11652   static TH1F* hSlcAllAdcg120=0;
11653   static TH1F* hSlcAllSigCorg120=0;
11654   static TH1F* hSlcAllSigMapg120=0;
11655 
11656   static TProfile* pTrkAdc=0;
11657   static TProfile* pTrkSigCor=0;
11658   static TProfile* pTrkSigMap=0;
11659   static TProfile* pSlcAdc=0;
11660   static TProfile* pSlcSigCor=0;
11661   static TProfile* pSlcSigMap=0;
11662 
11663   static TProfile* pTrkPlAdc=0;
11664   static TProfile* pTrkPlSigCor=0;
11665   static TProfile* pTrkPlSigMap=0;
11666   static TProfile* pSlcPlAdc=0;
11667   static TProfile* pSlcPlSigCor=0;
11668   static TProfile* pSlcPlSigMap=0;
11669 
11670   static TProfile* pTrkPlNoZerosAdc=0;
11671   static TProfile* pTrkPlNoZerosSigCor=0;
11672   static TProfile* pTrkPlNoZerosSigMap=0;
11673   static TProfile* pSlcPlNoZerosAdc=0;
11674   static TProfile* pSlcPlNoZerosSigCor=0;
11675   static TProfile* pSlcPlNoZerosSigMap=0;
11676 
11677   static TProfile* pTrkAdc40=0;
11678   static TProfile* pTrkSigCor40=0;
11679   static TProfile* pTrkSigMap40=0;
11680   static TProfile* pSlcAdc40=0;
11681   static TProfile* pSlcSigCor40=0;
11682   static TProfile* pSlcSigMap40=0;
11683 
11684   static TProfile* pTrkPlAdc40=0;
11685   static TProfile* pTrkPlSigCor40=0;
11686   static TProfile* pTrkNoCoilPlSigCor40=0;//check slope is gone
11687   static TProfile* pTrkPlSigMap40=0;
11688   static TProfile* pSlcPlAdc40=0;
11689   static TProfile* pSlcPlSigCor40=0;
11690   static TProfile* pSlcPlSigMap40=0;
11691 
11692   static TProfile* pTrkPlNoZerosAdc40=0;
11693   static TProfile* pTrkPlNoZerosSigCor40=0;
11694   static TProfile* pTrkPlNoZerosSigMap40=0;
11695   static TProfile* pSlcPlNoZerosAdc40=0;
11696   static TProfile* pSlcPlNoZerosSigCor40=0;
11697   static TProfile* pSlcPlNoZerosSigMap40=0;
11698 
11699   static TProfile* pTrkPlStrips40=0;
11700   static TProfile* pTrkNoCoilPlStrips40=0;
11701   static TProfile* pTrkPlNoZerosStrips40=0;
11702   static TProfile* pSlcPlStrips40=0;
11703   static TProfile* pSlcNoCoilPlStrips40=0;
11704   static TProfile* pSlcPlNoZerosStrips40=0;
11705 
11706   static TProfile* pTrkEff=0;
11707   static TProfile* pTrkNoCoilEff=0;
11708   static TProfile* pSlcEff=0;
11709   static TProfile* pTrkEff40=0;
11710   static TProfile* pTrkNoCoilEff40=0;
11711   static TProfile* pSlcEff40=0;
11712 
11713   static TH1F* hZTrkStps=0;
11714   static TH1F* hZSlcStps=0;
11715   static TH1F* hZTrkStps40=0;
11716   static TH1F* hZSlcStps40=0;
11717 
11718   static TH2F* hYvsXTrkSigMapl120=0;
11719   static TH2F* hYvsXTrkSigMapg120=0;
11720   static TH2F* hYvsXTrkSigMap40l120=0;
11721   static TH2F* hYvsXTrkSigMap40g120=0;
11722 
11723   static TProfile2D* pYvsXTrkSigMapl120=0;
11724   static TProfile2D* pYvsXTrkSigMapg120=0;
11725   static TProfile2D* pYvsXTrkSigMap40l120=0;
11726   static TProfile2D* pYvsXTrkSigMap40g120=0;
11727 
11728   static TProfile2D* pYvsXTrkSigMapU40l120=0;
11729   static TProfile2D* pYvsXTrkSigMapU40g120=0;
11730   static TProfile2D* pYvsXTrkSigMapV40l120=0;
11731   static TProfile2D* pYvsXTrkSigMapV40g120=0;
11732 
11733   static TProfile2D* pYvsXTrkSigCorU40l120=0;
11734   static TProfile2D* pYvsXTrkSigCorU40g120=0;
11735   static TProfile2D* pYvsXTrkSigCorV40l120=0;
11736   static TProfile2D* pYvsXTrkSigCorV40g120=0;
11737 
11738   static TProfile2D* pYvsXTrkAdcU40l120=0;
11739   static TProfile2D* pYvsXTrkAdcU40g120=0;
11740   static TProfile2D* pYvsXTrkAdcV40l120=0;
11741   static TProfile2D* pYvsXTrkAdcV40g120=0;
11742 
11743 
11744   if (!hTrkAdc){
11745     MSG("NuPlots",Msg::kDebug)
11746       <<"Creating TrackResponseHistos..."<<endl;
11747     
11748     hTrkAdc=new TH1F("hTrkAdc","hTrkAdc",
11749                      500,0,2000);
11750     hTrkAdc->GetXaxis()->SetTitle("Track PH per plane");
11751     hTrkAdc->GetXaxis()->CenterTitle();
11752     hTrkAdc->GetYaxis()->SetTitle("");
11753     hTrkAdc->GetYaxis()->CenterTitle();
11754     hTrkAdc->SetFillColor(0);
11755     hTrkAdc->SetLineColor(1);
11756     //hTrkAdc->SetBit(TH1::kCanRebin);
11757 
11758     hTrkSigCor=new TH1F("hTrkSigCor","hTrkSigCor",
11759                         500,0,2000);
11760     hTrkSigCor->GetXaxis()->SetTitle("Track PH per plane");
11761     hTrkSigCor->GetXaxis()->CenterTitle();
11762     hTrkSigCor->GetYaxis()->SetTitle("");
11763     hTrkSigCor->GetYaxis()->CenterTitle();
11764     hTrkSigCor->SetFillColor(0);
11765     hTrkSigCor->SetLineColor(1);
11766     //hTrkSigCor->SetBit(TH1::kCanRebin);
11767 
11768     hTrkSigMap=new TH1F("hTrkSigMap","hTrkSigMap",
11769                         500,0,2000);
11770     hTrkSigMap->GetXaxis()->SetTitle("Track PH per plane");
11771     hTrkSigMap->GetXaxis()->CenterTitle();
11772     hTrkSigMap->GetYaxis()->SetTitle("");
11773     hTrkSigMap->GetYaxis()->CenterTitle();
11774     hTrkSigMap->SetFillColor(0);
11775     hTrkSigMap->SetLineColor(1);
11776     //hTrkSigMap->SetBit(TH1::kCanRebin);
11777 
11778     hTrkSigMapNtp=new TH1F("hTrkSigMapNtp","hTrkSigMapNtp",
11779                            500,0,2000);
11780     hTrkSigMapNtp->GetXaxis()->SetTitle("Track PH per plane");
11781     hTrkSigMapNtp->GetXaxis()->CenterTitle();
11782     hTrkSigMapNtp->GetYaxis()->SetTitle("");
11783     hTrkSigMapNtp->GetYaxis()->CenterTitle();
11784     hTrkSigMapNtp->SetFillColor(0);
11785     hTrkSigMapNtp->SetLineColor(1);
11786     //hTrkSigMapNtp->SetBit(TH1::kCanRebin);
11787 
11788 
11789 
11790     hTrkAdc05GeV=new TH1F("hTrkAdc05GeV","hTrkAdc05GeV",
11791                           500,0,2000);
11792     hTrkAdc05GeV->GetXaxis()->SetTitle("Track PH per plane");
11793     hTrkAdc05GeV->GetXaxis()->CenterTitle();
11794     hTrkAdc05GeV->GetYaxis()->SetTitle("");
11795     hTrkAdc05GeV->GetYaxis()->CenterTitle();
11796     hTrkAdc05GeV->SetFillColor(0);
11797     hTrkAdc05GeV->SetLineColor(1);
11798     //hTrkAdc05GeV->SetBit(TH1::kCanRebin);
11799 
11800     hTrkSigCor05GeV=new TH1F("hTrkSigCor05GeV","hTrkSigCor05GeV",
11801                              500,0,2000);
11802     hTrkSigCor05GeV->GetXaxis()->SetTitle("Track PH per plane");
11803     hTrkSigCor05GeV->GetXaxis()->CenterTitle();
11804     hTrkSigCor05GeV->GetYaxis()->SetTitle("");
11805     hTrkSigCor05GeV->GetYaxis()->CenterTitle();
11806     hTrkSigCor05GeV->SetFillColor(0);
11807     hTrkSigCor05GeV->SetLineColor(1);
11808     //hTrkSigCor05GeV->SetBit(TH1::kCanRebin);
11809 
11810     hTrkSigMap05GeV=new TH1F("hTrkSigMap05GeV","hTrkSigMap05GeV",
11811                              500,0,2000);
11812     hTrkSigMap05GeV->GetXaxis()->SetTitle("Track PH per plane");
11813     hTrkSigMap05GeV->GetXaxis()->CenterTitle();
11814     hTrkSigMap05GeV->GetYaxis()->SetTitle("");
11815     hTrkSigMap05GeV->GetYaxis()->CenterTitle();
11816     hTrkSigMap05GeV->SetFillColor(0);
11817     hTrkSigMap05GeV->SetLineColor(1);
11818     //hTrkSigMap05GeV->SetBit(TH1::kCanRebin);
11819 
11820 
11821 
11822     hTrkAdc40=new TH1F("hTrkAdc40","hTrkAdc40",
11823                        500,0,2000);
11824     hTrkAdc40->GetXaxis()->SetTitle("Track PH per plane");
11825     hTrkAdc40->GetXaxis()->CenterTitle();
11826     hTrkAdc40->GetYaxis()->SetTitle("");
11827     hTrkAdc40->GetYaxis()->CenterTitle();
11828     hTrkAdc40->SetFillColor(0);
11829     hTrkAdc40->SetLineColor(1);
11830     //hTrkAdc40->SetBit(TH1::kCanRebin);
11831 
11832     hTrkSigCor40=new TH1F("hTrkSigCor40","hTrkSigCor40",
11833                           500,0,2000);
11834     hTrkSigCor40->GetXaxis()->SetTitle("Track PH per plane");
11835     hTrkSigCor40->GetXaxis()->CenterTitle();
11836     hTrkSigCor40->GetYaxis()->SetTitle("");
11837     hTrkSigCor40->GetYaxis()->CenterTitle();
11838     hTrkSigCor40->SetFillColor(0);
11839     hTrkSigCor40->SetLineColor(1);
11840     //hTrkSigCor40->SetBit(TH1::kCanRebin);
11841 
11842     hTrkSigMap40=new TH1F("hTrkSigMap40","hTrkSigMap40",
11843                           500,0,2000);
11844     hTrkSigMap40->GetXaxis()->SetTitle("Track PH per plane");
11845     hTrkSigMap40->GetXaxis()->CenterTitle();
11846     hTrkSigMap40->GetYaxis()->SetTitle("");
11847     hTrkSigMap40->GetYaxis()->CenterTitle();
11848     hTrkSigMap40->SetFillColor(0);
11849     hTrkSigMap40->SetLineColor(1);
11850     //hTrkSigMap40->SetBit(TH1::kCanRebin);
11851 
11852 
11853 
11854     hTrkAdcl120=new TH1F("hTrkAdcl120","hTrkAdcl120",
11855                          500,0,2000);
11856     hTrkAdcl120->GetXaxis()->SetTitle("Track PH per plane");
11857     hTrkAdcl120->GetXaxis()->CenterTitle();
11858     hTrkAdcl120->GetYaxis()->SetTitle("");
11859     hTrkAdcl120->GetYaxis()->CenterTitle();
11860     hTrkAdcl120->SetFillColor(0);
11861     hTrkAdcl120->SetLineColor(1);
11862     //hTrkAdcl120->SetBit(TH1::kCanRebin);
11863 
11864     hTrkSigCorl120=new TH1F("hTrkSigCorl120","hTrkSigCorl120",
11865                             500,0,2000);
11866     hTrkSigCorl120->GetXaxis()->SetTitle("Track PH per plane");
11867     hTrkSigCorl120->GetXaxis()->CenterTitle();
11868     hTrkSigCorl120->GetYaxis()->SetTitle("");
11869     hTrkSigCorl120->GetYaxis()->CenterTitle();
11870     hTrkSigCorl120->SetFillColor(0);
11871     hTrkSigCorl120->SetLineColor(1);
11872     //hTrkSigCorl120->SetBit(TH1::kCanRebin);
11873 
11874     hTrkSigMapl120=new TH1F("hTrkSigMapl120","hTrkSigMapl120",
11875                             500,0,2000);
11876     hTrkSigMapl120->GetXaxis()->SetTitle("Track PH per plane");
11877     hTrkSigMapl120->GetXaxis()->CenterTitle();
11878     hTrkSigMapl120->GetYaxis()->SetTitle("");
11879     hTrkSigMapl120->GetYaxis()->CenterTitle();
11880     hTrkSigMapl120->SetFillColor(0);
11881     hTrkSigMapl120->SetLineColor(1);
11882     //hTrkSigMapl120->SetBit(TH1::kCanRebin);
11883 
11884 
11885 
11886     hTrkAdcg120=new TH1F("hTrkAdcg120","hTrkAdcg120",
11887                          500,0,2000);
11888     hTrkAdcg120->GetXaxis()->SetTitle("Track PH per plane");
11889     hTrkAdcg120->GetXaxis()->CenterTitle();
11890     hTrkAdcg120->GetYaxis()->SetTitle("");
11891     hTrkAdcg120->GetYaxis()->CenterTitle();
11892     //hTrkAdcg120->SetBit(TH1::kCanRebin);
11893 
11894     hTrkSigCorg120=new TH1F("hTrkSigCorg120","hTrkSigCorg120",
11895                             500,0,2000);
11896     hTrkSigCorg120->GetXaxis()->SetTitle("Track PH per plane");
11897     hTrkSigCorg120->GetXaxis()->CenterTitle();
11898     hTrkSigCorg120->GetYaxis()->SetTitle("");
11899     hTrkSigCorg120->GetYaxis()->CenterTitle();
11900     //hTrkSigCorg120->SetBit(TH1::kCanRebin);
11901 
11902     hTrkSigMapg120=new TH1F("hTrkSigMapg120","hTrkSigMapg120",
11903                             500,0,2000);
11904     hTrkSigMapg120->GetXaxis()->SetTitle("Track PH per plane");
11905     hTrkSigMapg120->GetXaxis()->CenterTitle();
11906     hTrkSigMapg120->GetYaxis()->SetTitle("");
11907     hTrkSigMapg120->GetYaxis()->CenterTitle();
11908     //hTrkSigMapg120->SetBit(TH1::kCanRebin);
11909 
11910 
11911 
11912     hTrkAllAdcl120=new TH1F("hTrkAllAdcl120","hTrkAllAdcl120",
11913                             2000,0,8000);
11914     hTrkAllAdcl120->SetTitle("Strips in Track (ADC)");
11915     hTrkAllAdcl120->GetXaxis()->SetTitle("ADC");
11916     hTrkAllAdcl120->GetXaxis()->CenterTitle();
11917     hTrkAllAdcl120->GetYaxis()->SetTitle("");
11918     hTrkAllAdcl120->GetYaxis()->CenterTitle();
11919     //hTrkAllAdcl120->SetBit(TH1::kCanRebin);
11920 
11921     hTrkAllSigCorl120=new TH1F("hTrkAllSigCorl120","hTrkAllSigCorl120",
11922                                2000,0,8000);
11923     hTrkAllSigCorl120->SetTitle("Strips in Track (SigCor)");
11924     hTrkAllSigCorl120->GetXaxis()->SetTitle("SigCor");
11925     hTrkAllSigCorl120->GetXaxis()->CenterTitle();
11926     hTrkAllSigCorl120->GetYaxis()->SetTitle("");
11927     hTrkAllSigCorl120->GetYaxis()->CenterTitle();
11928     //hTrkAllSigCorl120->SetBit(TH1::kCanRebin);
11929 
11930     hTrkAllSigMapl120=new TH1F("hTrkAllSigMapl120","hTrkAllSigMapl120",
11931                                2000,0,8000);
11932     hTrkAllSigMapl120->SetTitle("Strips in Track (SigMap)");
11933     hTrkAllSigMapl120->GetXaxis()->SetTitle("SigMap");
11934     hTrkAllSigMapl120->GetXaxis()->CenterTitle();
11935     hTrkAllSigMapl120->GetYaxis()->SetTitle("");
11936     hTrkAllSigMapl120->GetYaxis()->CenterTitle();
11937     //hTrkAllSigMapl120->SetBit(TH1::kCanRebin);
11938 
11939 
11940     hTrkAllAdcg120=new TH1F("hTrkAllAdcg120","hTrkAllAdcg120",
11941                             2000,0,8000);
11942     hTrkAllAdcg120->SetTitle("Strips in Track (ADC)");
11943     hTrkAllAdcg120->GetXaxis()->SetTitle("ADC");
11944     hTrkAllAdcg120->GetXaxis()->CenterTitle();
11945     hTrkAllAdcg120->GetYaxis()->SetTitle("");
11946     hTrkAllAdcg120->GetYaxis()->CenterTitle();
11947     //hTrkAllAdcg120->SetBit(TH1::kCanRebin);
11948 
11949     hTrkAllSigCorg120=new TH1F("hTrkAllSigCorg120","hTrkAllSigCorg120",
11950                                2000,0,8000);
11951     hTrkAllSigCorg120->SetTitle("Strips in Track (SigCor)");
11952     hTrkAllSigCorg120->GetXaxis()->SetTitle("SigCor");
11953     hTrkAllSigCorg120->GetXaxis()->CenterTitle();
11954     hTrkAllSigCorg120->GetYaxis()->SetTitle("");
11955     hTrkAllSigCorg120->GetYaxis()->CenterTitle();
11956     //hTrkAllSigCorg120->SetBit(TH1::kCanRebin);
11957 
11958     hTrkAllSigMapg120=new TH1F("hTrkAllSigMapg120","hTrkAllSigMapg120",
11959                                2000,0,8000);
11960     hTrkAllSigMapg120->SetTitle("Strips in Track (SigMap)");
11961     hTrkAllSigMapg120->GetXaxis()->SetTitle("SigMap");
11962     hTrkAllSigMapg120->GetXaxis()->CenterTitle();
11963     hTrkAllSigMapg120->GetYaxis()->SetTitle("");
11964     hTrkAllSigMapg120->GetYaxis()->CenterTitle();
11965     //hTrkAllSigMapg120->SetBit(TH1::kCanRebin);
11966 
11967 
11968 
11969     hSlcAllAdcl120=new TH1F("hSlcAllAdcl120","hSlcAllAdcl120",
11970                             2000,0,8000);
11971     hSlcAllAdcl120->SetTitle("Strips in Slice (ADC)");
11972     hSlcAllAdcl120->GetXaxis()->SetTitle("ADC");
11973     hSlcAllAdcl120->GetXaxis()->CenterTitle();
11974     hSlcAllAdcl120->GetYaxis()->SetTitle("");
11975     hSlcAllAdcl120->GetYaxis()->CenterTitle();
11976     //hSlcAllAdcl120->SetBit(TH1::kCanRebin);
11977 
11978     hSlcAllSigCorl120=new TH1F("hSlcAllSigCorl120","hSlcAllSigCorl120",
11979                                2000,0,8000);
11980     hSlcAllSigCorl120->SetTitle("Strips in Slice (SigCor)");
11981     hSlcAllSigCorl120->GetXaxis()->SetTitle("SigCor");
11982     hSlcAllSigCorl120->GetXaxis()->CenterTitle();
11983     hSlcAllSigCorl120->GetYaxis()->SetTitle("");
11984     hSlcAllSigCorl120->GetYaxis()->CenterTitle();
11985     //hSlcAllSigCorl120->SetBit(TH1::kCanRebin);
11986 
11987     hSlcAllSigMapl120=new TH1F("hSlcAllSigMapl120","hSlcAllSigMapl120",
11988                                2000,0,8000);
11989     hSlcAllSigMapl120->SetTitle("Strips in Slice (SigMap)");
11990     hSlcAllSigMapl120->GetXaxis()->SetTitle("SigMap");
11991     hSlcAllSigMapl120->GetXaxis()->CenterTitle();
11992     hSlcAllSigMapl120->GetYaxis()->SetTitle("");
11993     hSlcAllSigMapl120->GetYaxis()->CenterTitle();
11994     //hSlcAllSigMapl120->SetBit(TH1::kCanRebin);
11995 
11996 
11997     hSlcAllAdcg120=new TH1F("hSlcAllAdcg120","hSlcAllAdcg120",
11998                             2000,0,8000);
11999     hSlcAllAdcg120->SetTitle("Strips in Slice (ADC)");
12000     hSlcAllAdcg120->GetXaxis()->SetTitle("ADC");
12001     hSlcAllAdcg120->GetXaxis()->CenterTitle();
12002     hSlcAllAdcg120->GetYaxis()->SetTitle("");
12003     hSlcAllAdcg120->GetYaxis()->CenterTitle();
12004     //hSlcAllAdcg120->SetBit(TH1::kCanRebin);
12005 
12006     hSlcAllSigCorg120=new TH1F("hSlcAllSigCorg120","hSlcAllSigCorg120",
12007                                2000,0,8000);
12008     hSlcAllSigCorg120->SetTitle("Strips in Slice (SigCor)");
12009     hSlcAllSigCorg120->GetXaxis()->SetTitle("SigCor");
12010     hSlcAllSigCorg120->GetXaxis()->CenterTitle();
12011     hSlcAllSigCorg120->GetYaxis()->SetTitle("");
12012     hSlcAllSigCorg120->GetYaxis()->CenterTitle();
12013     //hSlcAllSigCorg120->SetBit(TH1::kCanRebin);
12014 
12015     hSlcAllSigMapg120=new TH1F("hSlcAllSigMapg120","hSlcAllSigMapg120",
12016                                2000,0,8000);
12017     hSlcAllSigMapg120->SetTitle("Strips in Slice (SigMap)");
12018     hSlcAllSigMapg120->GetXaxis()->SetTitle("SigMap");
12019     hSlcAllSigMapg120->GetXaxis()->CenterTitle();
12020     hSlcAllSigMapg120->GetYaxis()->SetTitle("");
12021     hSlcAllSigMapg120->GetYaxis()->CenterTitle();
12022     //hSlcAllSigMapg120->SetBit(TH1::kCanRebin);
12023 
12024 
12025 
12026     
12027     pTrkAdc=new TProfile("pTrkAdc","pTrkAdc",500,-10,490);
12028     pTrkAdc->SetTitle("Adc vs Plane");
12029     pTrkAdc->GetXaxis()->SetTitle("Plane");
12030     pTrkAdc->GetXaxis()->CenterTitle();
12031     pTrkAdc->GetYaxis()->SetTitle("Adc");
12032     pTrkAdc->GetYaxis()->CenterTitle();
12033 
12034     pTrkSigCor=new TProfile("pTrkSigCor","pTrkSigCor",500,-10,490);
12035     pTrkSigCor->SetTitle("SigCor vs Plane");
12036     pTrkSigCor->GetXaxis()->SetTitle("Plane");
12037     pTrkSigCor->GetXaxis()->CenterTitle();
12038     pTrkSigCor->GetYaxis()->SetTitle("SigCor");
12039     pTrkSigCor->GetYaxis()->CenterTitle();
12040 
12041     pTrkSigMap=new TProfile("pTrkSigMap","pTrkSigMap",500,-10,490);
12042     pTrkSigMap->SetTitle("SigMap vs Plane");
12043     pTrkSigMap->GetXaxis()->SetTitle("Plane");
12044     pTrkSigMap->GetXaxis()->CenterTitle();
12045     pTrkSigMap->GetYaxis()->SetTitle("SigMap");
12046     pTrkSigMap->GetYaxis()->CenterTitle();
12047 
12048     pSlcAdc=new TProfile("pSlcAdc","pSlcAdc",500,-10,490);
12049     pSlcAdc->SetTitle("Adc vs Plane");
12050     pSlcAdc->GetXaxis()->SetTitle("Plane");
12051     pSlcAdc->GetXaxis()->CenterTitle();
12052     pSlcAdc->GetYaxis()->SetTitle("Adc");
12053     pSlcAdc->GetYaxis()->CenterTitle();
12054 
12055     pSlcSigCor=new TProfile("pSlcSigCor","pSlcSigCor",500,-10,490);
12056     pSlcSigCor->SetTitle("SigCor vs Plane");
12057     pSlcSigCor->GetXaxis()->SetTitle("Plane");
12058     pSlcSigCor->GetXaxis()->CenterTitle();
12059     pSlcSigCor->GetYaxis()->SetTitle("SigCor");
12060     pSlcSigCor->GetYaxis()->CenterTitle();
12061 
12062     pSlcSigMap=new TProfile("pSlcSigMap","pSlcSigMap",500,-10,490);
12063     pSlcSigMap->SetTitle("SigMap vs Plane");
12064     pSlcSigMap->GetXaxis()->SetTitle("Plane");
12065     pSlcSigMap->GetXaxis()->CenterTitle();
12066     pSlcSigMap->GetYaxis()->SetTitle("SigMap");
12067     pSlcSigMap->GetYaxis()->CenterTitle();
12068 
12069 
12070     pTrkPlAdc=new TProfile("pTrkPlAdc","pTrkPlAdc",500,-10,490);
12071     pTrkPlAdc->SetTitle("Adc vs Plane");
12072     pTrkPlAdc->GetXaxis()->SetTitle("Plane");
12073     pTrkPlAdc->GetXaxis()->CenterTitle();
12074     pTrkPlAdc->GetYaxis()->SetTitle("Adc");
12075     pTrkPlAdc->GetYaxis()->CenterTitle();
12076 
12077     pTrkPlSigCor=new TProfile("pTrkPlSigCor","pTrkPlSigCor",500,-10,490);
12078     pTrkPlSigCor->SetTitle("SigCor vs Plane");
12079     pTrkPlSigCor->GetXaxis()->SetTitle("Plane");
12080     pTrkPlSigCor->GetXaxis()->CenterTitle();
12081     pTrkPlSigCor->GetYaxis()->SetTitle("SigCor");
12082     pTrkPlSigCor->GetYaxis()->CenterTitle();
12083 
12084     pTrkPlSigMap=new TProfile("pTrkPlSigMap","pTrkPlSigMap",500,-10,490);
12085     pTrkPlSigMap->SetTitle("SigMap vs Plane");
12086     pTrkPlSigMap->GetXaxis()->SetTitle("Plane");
12087     pTrkPlSigMap->GetXaxis()->CenterTitle();
12088     pTrkPlSigMap->GetYaxis()->SetTitle("SigMap");
12089     pTrkPlSigMap->GetYaxis()->CenterTitle();
12090 
12091     pSlcPlAdc=new TProfile("pSlcPlAdc","pSlcPlAdc",500,-10,490);
12092     pSlcPlAdc->SetTitle("Adc vs Plane");
12093     pSlcPlAdc->GetXaxis()->SetTitle("Plane");
12094     pSlcPlAdc->GetXaxis()->CenterTitle();
12095     pSlcPlAdc->GetYaxis()->SetTitle("Adc");
12096     pSlcPlAdc->GetYaxis()->CenterTitle();
12097 
12098     pSlcPlSigCor=new TProfile("pSlcPlSigCor","pSlcPlSigCor",500,-10,490);
12099     pSlcPlSigCor->SetTitle("SigCor vs Plane");
12100     pSlcPlSigCor->GetXaxis()->SetTitle("Plane");
12101     pSlcPlSigCor->GetXaxis()->CenterTitle();
12102     pSlcPlSigCor->GetYaxis()->SetTitle("SigCor");
12103     pSlcPlSigCor->GetYaxis()->CenterTitle();
12104 
12105     pSlcPlSigMap=new TProfile("pSlcPlSigMap","pSlcPlSigMap",500,-10,490);
12106     pSlcPlSigMap->SetTitle("SigMap vs Plane");
12107     pSlcPlSigMap->GetXaxis()->SetTitle("Plane");
12108     pSlcPlSigMap->GetXaxis()->CenterTitle();
12109     pSlcPlSigMap->GetYaxis()->SetTitle("SigMap");
12110     pSlcPlSigMap->GetYaxis()->CenterTitle();
12111 
12112 
12113     pTrkPlNoZerosAdc=new TProfile("pTrkPlNoZerosAdc","pTrkPlNoZerosAdc",500,-10,490);
12114     pTrkPlNoZerosAdc->SetTitle("Adc vs Planet");
12115     pTrkPlNoZerosAdc->GetXaxis()->SetTitle("Plane");
12116     pTrkPlNoZerosAdc->GetXaxis()->CenterTitle();
12117     pTrkPlNoZerosAdc->GetYaxis()->SetTitle("Adc");
12118     pTrkPlNoZerosAdc->GetYaxis()->CenterTitle();
12119 
12120     pTrkPlNoZerosSigCor=new TProfile("pTrkPlNoZerosSigCor","pTrkPlNoZerosSigCor",500,-10,490);
12121     pTrkPlNoZerosSigCor->SetTitle("SigCor vs Plane");
12122     pTrkPlNoZerosSigCor->GetXaxis()->SetTitle("Plane");
12123     pTrkPlNoZerosSigCor->GetXaxis()->CenterTitle();
12124     pTrkPlNoZerosSigCor->GetYaxis()->SetTitle("SigCor");
12125     pTrkPlNoZerosSigCor->GetYaxis()->CenterTitle();
12126 
12127     pTrkPlNoZerosSigMap=new TProfile("pTrkPlNoZerosSigMap","pTrkPlNoZerosSigMap",500,-10,490);
12128     pTrkPlNoZerosSigMap->SetTitle("SigMap vs Plane");
12129     pTrkPlNoZerosSigMap->GetXaxis()->SetTitle("Plane");
12130     pTrkPlNoZerosSigMap->GetXaxis()->CenterTitle();
12131     pTrkPlNoZerosSigMap->GetYaxis()->SetTitle("SigMap");
12132     pTrkPlNoZerosSigMap->GetYaxis()->CenterTitle();
12133 
12134     pSlcPlNoZerosAdc=new TProfile("pSlcPlNoZerosAdc","pSlcPlNoZerosAdc",500,-10,490);
12135     pSlcPlNoZerosAdc->SetTitle("Adc vs Plane");
12136     pSlcPlNoZerosAdc->GetXaxis()->SetTitle("Plane");
12137     pSlcPlNoZerosAdc->GetXaxis()->CenterTitle();
12138     pSlcPlNoZerosAdc->GetYaxis()->SetTitle("Adc");
12139     pSlcPlNoZerosAdc->GetYaxis()->CenterTitle();
12140 
12141     pSlcPlNoZerosSigCor=new TProfile("pSlcPlNoZerosSigCor","pSlcPlNoZerosSigCor",500,-10,490);
12142     pSlcPlNoZerosSigCor->SetTitle("SigCor vs Plane");
12143     pSlcPlNoZerosSigCor->GetXaxis()->SetTitle("Plane");
12144     pSlcPlNoZerosSigCor->GetXaxis()->CenterTitle();
12145     pSlcPlNoZerosSigCor->GetYaxis()->SetTitle("SigCor");
12146     pSlcPlNoZerosSigCor->GetYaxis()->CenterTitle();
12147 
12148     pSlcPlNoZerosSigMap=new TProfile("pSlcPlNoZerosSigMap","pSlcPlNoZerosSigMap",500,-10,490);
12149     pSlcPlNoZerosSigMap->SetTitle("SigMap vs Plane");
12150     pSlcPlNoZerosSigMap->GetXaxis()->SetTitle("Plane");
12151     pSlcPlNoZerosSigMap->GetXaxis()->CenterTitle();
12152     pSlcPlNoZerosSigMap->GetYaxis()->SetTitle("SigMap");
12153     pSlcPlNoZerosSigMap->GetYaxis()->CenterTitle();
12154 
12155 
12156 
12157 
12158     pTrkAdc40=new TProfile("pTrkAdc40","pTrkAdc40",500,-10,490);
12159     pTrkAdc40->SetTitle("Adc vs Plane (Shw Dist>40)");
12160     pTrkAdc40->GetXaxis()->SetTitle("Plane");
12161     pTrkAdc40->GetXaxis()->CenterTitle();
12162     pTrkAdc40->GetYaxis()->SetTitle("Adc");
12163     pTrkAdc40->GetYaxis()->CenterTitle();
12164 
12165     pTrkSigCor40=new TProfile("pTrkSigCor40","pTrkSigCor40",500,-10,490);
12166     pTrkSigCor40->SetTitle("SigCor vs Plane (Shw Dist>40)");
12167     pTrkSigCor40->GetXaxis()->SetTitle("Plane");
12168     pTrkSigCor40->GetXaxis()->CenterTitle();
12169     pTrkSigCor40->GetYaxis()->SetTitle("SigCor");
12170     pTrkSigCor40->GetYaxis()->CenterTitle();
12171 
12172     pTrkSigMap40=new TProfile("pTrkSigMap40","pTrkSigMap40",500,-10,490);
12173     pTrkSigMap40->SetTitle("SigMap vs Plane (Shw Dist>40)");
12174     pTrkSigMap40->GetXaxis()->SetTitle("Plane");
12175     pTrkSigMap40->GetXaxis()->CenterTitle();
12176     pTrkSigMap40->GetYaxis()->SetTitle("SigMap");
12177     pTrkSigMap40->GetYaxis()->CenterTitle();
12178 
12179     pSlcAdc40=new TProfile("pSlcAdc40","pSlcAdc40",500,-10,490);
12180     pSlcAdc40->SetTitle("Adc vs Plane (Shw Dist>40)");
12181     pSlcAdc40->GetXaxis()->SetTitle("Plane");
12182     pSlcAdc40->GetXaxis()->CenterTitle();
12183     pSlcAdc40->GetYaxis()->SetTitle("Adc");
12184     pSlcAdc40->GetYaxis()->CenterTitle();
12185 
12186     pSlcSigCor40=new TProfile("pSlcSigCor40","pSlcSigCor40",500,-10,490);
12187     pSlcSigCor40->SetTitle("SigCor vs Plane (Shw Dist>40)");
12188     pSlcSigCor40->GetXaxis()->SetTitle("Plane");
12189     pSlcSigCor40->GetXaxis()->CenterTitle();
12190     pSlcSigCor40->GetYaxis()->SetTitle("SigCor");
12191     pSlcSigCor40->GetYaxis()->CenterTitle();
12192 
12193     pSlcSigMap40=new TProfile("pSlcSigMap40","pSlcSigMap40",500,-10,490);
12194     pSlcSigMap40->SetTitle("SigMap vs Plane (Shw Dist>40)");
12195     pSlcSigMap40->GetXaxis()->SetTitle("Plane");
12196     pSlcSigMap40->GetXaxis()->CenterTitle();
12197     pSlcSigMap40->GetYaxis()->SetTitle("SigMap");
12198     pSlcSigMap40->GetYaxis()->CenterTitle();
12199 
12200 
12201 
12202     pTrkPlAdc40=new TProfile("pTrkPlAdc40","pTrkPlAdc40",500,-10,490);
12203     pTrkPlAdc40->SetTitle("Adc vs Plane (Shw Dist>40)");
12204     pTrkPlAdc40->GetXaxis()->SetTitle("Plane");
12205     pTrkPlAdc40->GetXaxis()->CenterTitle();
12206     pTrkPlAdc40->GetYaxis()->SetTitle("Adc");
12207     pTrkPlAdc40->GetYaxis()->CenterTitle();
12208 
12209     pTrkPlSigCor40=new TProfile("pTrkPlSigCor40","pTrkPlSigCor40",500,-10,490);
12210     pTrkPlSigCor40->SetTitle("SigCor vs Plane (Shw Dist>40)");
12211     pTrkPlSigCor40->GetXaxis()->SetTitle("Plane");
12212     pTrkPlSigCor40->GetXaxis()->CenterTitle();
12213     pTrkPlSigCor40->GetYaxis()->SetTitle("SigCor");
12214     pTrkPlSigCor40->GetYaxis()->CenterTitle();
12215 
12216     pTrkNoCoilPlSigCor40=new TProfile("pTrkNoCoilPlSigCor40","pTrkNoCoilPlSigCor40",500,-10,490);
12217     pTrkNoCoilPlSigCor40->SetTitle("SigCor vs Plane (Shw Dist>40)");
12218     pTrkNoCoilPlSigCor40->GetXaxis()->SetTitle("Plane");
12219     pTrkNoCoilPlSigCor40->GetXaxis()->CenterTitle();
12220     pTrkNoCoilPlSigCor40->GetYaxis()->SetTitle("SigCor");
12221     pTrkNoCoilPlSigCor40->GetYaxis()->CenterTitle();
12222 
12223     pTrkPlSigMap40=new TProfile("pTrkPlSigMap40","pTrkPlSigMap40",500,-10,490);
12224     pTrkPlSigMap40->SetTitle("SigMap vs Plane (Shw Dist>40)");
12225     pTrkPlSigMap40->GetXaxis()->SetTitle("Plane");
12226     pTrkPlSigMap40->GetXaxis()->CenterTitle();
12227     pTrkPlSigMap40->GetYaxis()->SetTitle("SigMap");
12228     pTrkPlSigMap40->GetYaxis()->CenterTitle();
12229 
12230     pSlcPlAdc40=new TProfile("pSlcPlAdc40","pSlcPlAdc40",500,-10,490);
12231     pSlcPlAdc40->SetTitle("Adc vs Plane (Shw Dist>40)");
12232     pSlcPlAdc40->GetXaxis()->SetTitle("Plane");
12233     pSlcPlAdc40->GetXaxis()->CenterTitle();
12234     pSlcPlAdc40->GetYaxis()->SetTitle("Adc");
12235     pSlcPlAdc40->GetYaxis()->CenterTitle();
12236 
12237     pSlcPlSigCor40=new TProfile("pSlcPlSigCor40","pSlcPlSigCor40",500,-10,490);
12238     pSlcPlSigCor40->SetTitle("SigCor vs Plane (Shw Dist>40)");
12239     pSlcPlSigCor40->GetXaxis()->SetTitle("Plane");
12240     pSlcPlSigCor40->GetXaxis()->CenterTitle();
12241     pSlcPlSigCor40->GetYaxis()->SetTitle("SigCor");
12242     pSlcPlSigCor40->GetYaxis()->CenterTitle();
12243 
12244     pSlcPlSigMap40=new TProfile("pSlcPlSigMap40","pSlcPlSigMap40",500,-10,490);
12245     pSlcPlSigMap40->SetTitle("SigMap vs Plane (Shw Dist>40)");
12246     pSlcPlSigMap40->GetXaxis()->SetTitle("Plane");
12247     pSlcPlSigMap40->GetXaxis()->CenterTitle();
12248     pSlcPlSigMap40->GetYaxis()->SetTitle("SigMap");
12249     pSlcPlSigMap40->GetYaxis()->CenterTitle();
12250 
12251 
12252 
12253     pTrkPlNoZerosAdc40=new TProfile("pTrkPlNoZerosAdc40","pTrkPlNoZerosAdc40",500,-10,490);
12254     pTrkPlNoZerosAdc40->SetTitle("Adc vs Plane (Shw Dist>40)");
12255     pTrkPlNoZerosAdc40->GetXaxis()->SetTitle("Plane");
12256     pTrkPlNoZerosAdc40->GetXaxis()->CenterTitle();
12257     pTrkPlNoZerosAdc40->GetYaxis()->SetTitle("Adc");
12258     pTrkPlNoZerosAdc40->GetYaxis()->CenterTitle();
12259 
12260     pTrkPlNoZerosSigCor40=new TProfile("pTrkPlNoZerosSigCor40","pTrkPlNoZerosSigCor40",500,-10,490);
12261     pTrkPlNoZerosSigCor40->SetTitle("SigCor vs Plane (Shw Dist>40)");
12262     pTrkPlNoZerosSigCor40->GetXaxis()->SetTitle("Plane");
12263     pTrkPlNoZerosSigCor40->GetXaxis()->CenterTitle();
12264     pTrkPlNoZerosSigCor40->GetYaxis()->SetTitle("SigCor");
12265     pTrkPlNoZerosSigCor40->GetYaxis()->CenterTitle();
12266 
12267     pTrkPlNoZerosSigMap40=new TProfile("pTrkPlNoZerosSigMap40","pTrkPlNoZerosSigMap40",500,-10,490);
12268     pTrkPlNoZerosSigMap40->SetTitle("SigMap vs Plane (Shw Dist>40)");
12269     pTrkPlNoZerosSigMap40->GetXaxis()->SetTitle("Plane");
12270     pTrkPlNoZerosSigMap40->GetXaxis()->CenterTitle();
12271     pTrkPlNoZerosSigMap40->GetYaxis()->SetTitle("SigMap");
12272     pTrkPlNoZerosSigMap40->GetYaxis()->CenterTitle();
12273 
12274     pSlcPlNoZerosAdc40=new TProfile("pSlcPlNoZerosAdc40","pSlcPlNoZerosAdc40",500,-10,490);
12275     pSlcPlNoZerosAdc40->SetTitle("Adc vs Plane (Shw Dist>40)");
12276     pSlcPlNoZerosAdc40->GetXaxis()->SetTitle("Plane");
12277     pSlcPlNoZerosAdc40->GetXaxis()->CenterTitle();
12278     pSlcPlNoZerosAdc40->GetYaxis()->SetTitle("Adc");
12279     pSlcPlNoZerosAdc40->GetYaxis()->CenterTitle();
12280 
12281     pSlcPlNoZerosSigCor40=new TProfile("pSlcPlNoZerosSigCor40","pSlcPlNoZerosSigCor40",500,-10,490);
12282     pSlcPlNoZerosSigCor40->SetTitle("SigCor vs Plane (Shw Dist>40)");
12283     pSlcPlNoZerosSigCor40->GetXaxis()->SetTitle("Plane");
12284     pSlcPlNoZerosSigCor40->GetXaxis()->CenterTitle();
12285     pSlcPlNoZerosSigCor40->GetYaxis()->SetTitle("SigCor");
12286     pSlcPlNoZerosSigCor40->GetYaxis()->CenterTitle();
12287 
12288     pSlcPlNoZerosSigMap40=new TProfile("pSlcPlNoZerosSigMap40","pSlcPlNoZerosSigMap40",500,-10,490);
12289     pSlcPlNoZerosSigMap40->SetTitle("SigMap vs Plane (Shw Dist>40)");
12290     pSlcPlNoZerosSigMap40->GetXaxis()->SetTitle("Plane");
12291     pSlcPlNoZerosSigMap40->GetXaxis()->CenterTitle();
12292     pSlcPlNoZerosSigMap40->GetYaxis()->SetTitle("SigMap");
12293     pSlcPlNoZerosSigMap40->GetYaxis()->CenterTitle();
12294 
12295 
12296 
12297     pTrkPlStrips40=new TProfile
12298       ("pTrkPlStrips40","pTrkPlStrips40",500,-10,490);
12299     pTrkPlStrips40->SetTitle("Trk Strips Hit vs Plane");
12300     pTrkPlStrips40->GetXaxis()->SetTitle("Plane");
12301     pTrkPlStrips40->GetXaxis()->CenterTitle();
12302     pTrkPlStrips40->GetYaxis()->SetTitle("Strips Hit");
12303     pTrkPlStrips40->GetYaxis()->CenterTitle();
12304 
12305     pTrkNoCoilPlStrips40=new TProfile
12306       ("pTrkNoCoilPlStrips40","pTrkNoCoilPlStrips40",500,-10,490);
12307     pTrkNoCoilPlStrips40->SetTitle("Trk Strips Hit vs Plane (No Coil)");
12308     pTrkNoCoilPlStrips40->GetXaxis()->SetTitle("Plane");
12309     pTrkNoCoilPlStrips40->GetXaxis()->CenterTitle();
12310     pTrkNoCoilPlStrips40->GetYaxis()->SetTitle("Strips Hit");
12311     pTrkNoCoilPlStrips40->GetYaxis()->CenterTitle();
12312 
12313     pTrkPlNoZerosStrips40=new TProfile
12314       ("pTrkPlNoZerosStrips40","pTrkPlNoZerosStrips40",500,-10,490);
12315     pTrkPlNoZerosStrips40->SetTitle("Trk Strips Hit vs Plane (No Zeros)");
12316     pTrkPlNoZerosStrips40->GetXaxis()->SetTitle("Plane");
12317     pTrkPlNoZerosStrips40->GetXaxis()->CenterTitle();
12318     pTrkPlNoZerosStrips40->GetYaxis()->SetTitle("Strips Hit");
12319     pTrkPlNoZerosStrips40->GetYaxis()->CenterTitle();
12320 
12321     pSlcPlStrips40=new TProfile
12322       ("pSlcPlStrips40","pSlcPlStrips40",500,-10,490);
12323     pSlcPlStrips40->SetTitle("Slc Strips Hit vs Plane");
12324     pSlcPlStrips40->GetXaxis()->SetTitle("Plane");
12325     pSlcPlStrips40->GetXaxis()->CenterTitle();
12326     pSlcPlStrips40->GetYaxis()->SetTitle("Strips Hit");
12327     pSlcPlStrips40->GetYaxis()->CenterTitle();
12328 
12329     pSlcNoCoilPlStrips40=new TProfile
12330       ("pSlcNoCoilPlStrips40","pSlcNoCoilPlStrips40",500,-10,490);
12331     pSlcNoCoilPlStrips40->SetTitle("Slc Strips Hit vs Plane (No Coil)");
12332     pSlcNoCoilPlStrips40->GetXaxis()->SetTitle("Plane");
12333     pSlcNoCoilPlStrips40->GetXaxis()->CenterTitle();
12334     pSlcNoCoilPlStrips40->GetYaxis()->SetTitle("Strips Hit");
12335     pSlcNoCoilPlStrips40->GetYaxis()->CenterTitle();
12336 
12337     pSlcPlNoZerosStrips40=new TProfile
12338       ("pSlcPlNoZerosStrips40","pSlcPlNoZerosStrips40",500,-10,490);
12339     pSlcPlNoZerosStrips40->SetTitle("Slc Strips Hit vs Plane (No Zeros)");
12340     pSlcPlNoZerosStrips40->GetXaxis()->SetTitle("Plane");
12341     pSlcPlNoZerosStrips40->GetXaxis()->CenterTitle();
12342     pSlcPlNoZerosStrips40->GetYaxis()->SetTitle("Strips Hit");
12343     pSlcPlNoZerosStrips40->GetYaxis()->CenterTitle();
12344 
12345 
12346 
12347     pTrkEff=new TProfile("pTrkEff","pTrkEff",500,-10,490);
12348     pTrkEff->SetTitle("Efficiency vs Plane (Trk Hits)");
12349     pTrkEff->GetXaxis()->SetTitle("Plane");
12350     pTrkEff->GetXaxis()->CenterTitle();
12351     pTrkEff->GetYaxis()->SetTitle("Efficiency");
12352     pTrkEff->GetYaxis()->CenterTitle();
12353 
12354     pTrkNoCoilEff=new TProfile("pTrkNoCoilEff","pTrkNoCoilEff",500,-10,490);
12355     pTrkNoCoilEff->SetTitle("Efficiency vs Plane (Trk Hits)");
12356     pTrkNoCoilEff->GetXaxis()->SetTitle("Plane");
12357     pTrkNoCoilEff->GetXaxis()->CenterTitle();
12358     pTrkNoCoilEff->GetYaxis()->SetTitle("Efficiency");
12359     pTrkNoCoilEff->GetYaxis()->CenterTitle();
12360 
12361     pSlcEff=new TProfile("pSlcEff","pSlcEff",500,-10,490);
12362     pSlcEff->SetTitle("Efficiency vs Plane (Slc Hits)");
12363     pSlcEff->GetXaxis()->SetTitle("Plane");
12364     pSlcEff->GetXaxis()->CenterTitle();
12365     pSlcEff->GetYaxis()->SetTitle("Efficiency");
12366     pSlcEff->GetYaxis()->CenterTitle();
12367 
12368     pTrkEff40=new TProfile("pTrkEff40","pTrkEff40",500,-10,490);
12369     pTrkEff40->SetTitle("Efficiency vs Plane (Trk Hits)");
12370     pTrkEff40->GetXaxis()->SetTitle("Plane");
12371     pTrkEff40->GetXaxis()->CenterTitle();
12372     pTrkEff40->GetYaxis()->SetTitle("Efficiency");
12373     pTrkEff40->GetYaxis()->CenterTitle();
12374 
12375     pTrkNoCoilEff40=new TProfile("pTrkNoCoilEff40","pTrkNoCoilEff40",500,-10,490);
12376     pTrkNoCoilEff40->SetTitle("Efficiency vs Plane (Trk Hits)");
12377     pTrkNoCoilEff40->GetXaxis()->SetTitle("Plane");
12378     pTrkNoCoilEff40->GetXaxis()->CenterTitle();
12379     pTrkNoCoilEff40->GetYaxis()->SetTitle("Efficiency");
12380     pTrkNoCoilEff40->GetYaxis()->CenterTitle();
12381 
12382     pSlcEff40=new TProfile("pSlcEff40","pSlcEff40",500,-10,490);
12383     pSlcEff40->SetTitle("Efficiency vs Plane (Slc Hits)");
12384     pSlcEff40->GetXaxis()->SetTitle("Plane");
12385     pSlcEff40->GetXaxis()->CenterTitle();
12386     pSlcEff40->GetYaxis()->SetTitle("Efficiency");
12387     pSlcEff40->GetYaxis()->CenterTitle();
12388 
12389 
12390 
12391     hZTrkStps=new TH1F("hZTrkStps","hZTrkStps",4000,-1,39);
12392     hZTrkStps->SetTitle("Trk Strips Z Position");
12393     hZTrkStps->GetXaxis()->SetTitle("Trk Strips Z Position (m)");
12394     hZTrkStps->GetXaxis()->CenterTitle();
12395     hZTrkStps->GetYaxis()->SetTitle("");
12396     hZTrkStps->GetYaxis()->CenterTitle();
12397     hZTrkStps->SetLineWidth(2);
12398     //hZTrkStps->SetBit(TH1::kCanRebin);
12399     
12400     hZSlcStps=new TH1F("hZSlcStps","hZSlcStps",4000,-1,39);
12401     hZSlcStps->SetTitle("Slc Strips Z Position");
12402     hZSlcStps->GetXaxis()->SetTitle("Slc Strips Z Position (m)");
12403     hZSlcStps->GetXaxis()->CenterTitle();
12404     hZSlcStps->GetYaxis()->SetTitle("");
12405     hZSlcStps->GetYaxis()->CenterTitle();
12406     hZSlcStps->SetLineWidth(2);
12407     //hZSlcStps->SetBit(TH1::kCanRebin);
12408 
12409 
12410     hZTrkStps40=new TH1F("hZTrkStps40","hZTrkStps40",4000,-1,39);
12411     hZTrkStps40->SetTitle("Trk Strips Z Position");
12412     hZTrkStps40->GetXaxis()->SetTitle("Trk Strips Z Position (m)");
12413     hZTrkStps40->GetXaxis()->CenterTitle();
12414     hZTrkStps40->GetYaxis()->SetTitle("");
12415     hZTrkStps40->GetYaxis()->CenterTitle();
12416     hZTrkStps40->SetLineWidth(2);
12417     //hZTrkStps40->SetBit(TH1::kCanRebin);
12418     
12419     hZSlcStps40=new TH1F("hZSlcStps40","hZSlcStps40",4000,-1,39);
12420     hZSlcStps40->SetTitle("Slc Strips Z Position");
12421     hZSlcStps40->GetXaxis()->SetTitle("Slc Strips Z Position (m)");
12422     hZSlcStps40->GetXaxis()->CenterTitle();
12423     hZSlcStps40->GetYaxis()->SetTitle("");
12424     hZSlcStps40->GetYaxis()->CenterTitle();
12425     hZSlcStps40->SetLineWidth(2);
12426     //hZSlcStps40->SetBit(TH1::kCanRebin);
12427     
12428 
12429 
12430     Int_t nYvsX60=60;
12431     hYvsXTrkSigMapl120=new TH2F
12432       ("hYvsXTrkSigMapl120","hYvsXTrkSigMapl120",
12433        nYvsX60,-4.3,4.3,nYvsX60,-4.3,4.3);
12434     hYvsXTrkSigMapl120->SetTitle("Track Hit Density (calorimeter)");
12435     hYvsXTrkSigMapl120->GetXaxis()->SetTitle("X (m)");
12436     hYvsXTrkSigMapl120->GetXaxis()->CenterTitle();
12437     hYvsXTrkSigMapl120->GetYaxis()->SetTitle("Y (m)");
12438     hYvsXTrkSigMapl120->GetYaxis()->CenterTitle();
12439 
12440     hYvsXTrkSigMapg120=new TH2F
12441       ("hYvsXTrkSigMapg120","hYvsXTrkSigMapg120",
12442        nYvsX60,-4.3,4.3,nYvsX60,-4.3,4.3);
12443     hYvsXTrkSigMapg120->SetTitle("Track Hit Density (spectrometer)");
12444     hYvsXTrkSigMapg120->GetXaxis()->SetTitle("X (m)");
12445     hYvsXTrkSigMapg120->GetXaxis()->CenterTitle();
12446     hYvsXTrkSigMapg120->GetYaxis()->SetTitle("Y (m)");
12447     hYvsXTrkSigMapg120->GetYaxis()->CenterTitle();
12448 
12449 
12450     hYvsXTrkSigMap40l120=new TH2F
12451       ("hYvsXTrkSigMap40l120","hYvsXTrkSigMap40l120",
12452        nYvsX60,-4.3,4.3,nYvsX60,-4.3,4.3);
12453     hYvsXTrkSigMap40l120->SetTitle("Track Hit Density (calorimeter)");
12454     hYvsXTrkSigMap40l120->GetXaxis()->SetTitle("X (m)");
12455     hYvsXTrkSigMap40l120->GetXaxis()->CenterTitle();
12456     hYvsXTrkSigMap40l120->GetYaxis()->SetTitle("Y (m)");
12457     hYvsXTrkSigMap40l120->GetYaxis()->CenterTitle();
12458 
12459     hYvsXTrkSigMap40g120=new TH2F
12460       ("hYvsXTrkSigMap40g120","hYvsXTrkSigMap40g120",
12461        nYvsX60,-4.3,4.3,nYvsX60,-4.3,4.3);
12462     hYvsXTrkSigMap40g120->SetTitle("Track Hit Density (spectrometer)");
12463     hYvsXTrkSigMap40g120->GetXaxis()->SetTitle("X (m)");
12464     hYvsXTrkSigMap40g120->GetXaxis()->CenterTitle();
12465     hYvsXTrkSigMap40g120->GetYaxis()->SetTitle("Y (m)");
12466     hYvsXTrkSigMap40g120->GetYaxis()->CenterTitle();
12467 
12468 
12469 
12470     pYvsXTrkSigMapl120=new TProfile2D
12471       ("pYvsXTrkSigMapl120","pYvsXTrkSigMapl120",
12472        30,-4,4,30,-4,4);
12473     pYvsXTrkSigMapl120->SetTitle("Track Response (calorimeter)");
12474     pYvsXTrkSigMapl120->GetXaxis()->SetTitle("X (m)");
12475     pYvsXTrkSigMapl120->GetXaxis()->CenterTitle();
12476     pYvsXTrkSigMapl120->GetYaxis()->SetTitle("Y (m)");
12477     pYvsXTrkSigMapl120->GetYaxis()->CenterTitle();
12478     
12479     pYvsXTrkSigMapg120=new TProfile2D
12480       ("pYvsXTrkSigMapg120","pYvsXTrkSigMapg120",
12481        30,-4,4,30,-4,4);
12482     pYvsXTrkSigMapg120->SetTitle("Track Response (spectrometer)");
12483     pYvsXTrkSigMapg120->GetXaxis()->SetTitle("X (m)");
12484     pYvsXTrkSigMapg120->GetXaxis()->CenterTitle();
12485     pYvsXTrkSigMapg120->GetYaxis()->SetTitle("Y (m)");
12486     pYvsXTrkSigMapg120->GetYaxis()->CenterTitle();
12487 
12488 
12489     pYvsXTrkSigMap40l120=new TProfile2D
12490       ("pYvsXTrkSigMap40l120","pYvsXTrkSigMap40l120",
12491        30,-4,4,30,-4,4);
12492     pYvsXTrkSigMap40l120->SetTitle("Track Response (calorimeter)");
12493     pYvsXTrkSigMap40l120->GetXaxis()->SetTitle("X (m)");
12494     pYvsXTrkSigMap40l120->GetXaxis()->CenterTitle();
12495     pYvsXTrkSigMap40l120->GetYaxis()->SetTitle("Y (m)");
12496     pYvsXTrkSigMap40l120->GetYaxis()->CenterTitle();
12497     
12498     pYvsXTrkSigMap40g120=new TProfile2D
12499       ("pYvsXTrkSigMap40g120","pYvsXTrkSigMap40g120",
12500        30,-4,4,30,-4,4);
12501     pYvsXTrkSigMap40g120->SetTitle("Track Response (spectrometer)");
12502     pYvsXTrkSigMap40g120->GetXaxis()->SetTitle("X (m)");
12503     pYvsXTrkSigMap40g120->GetXaxis()->CenterTitle();
12504     pYvsXTrkSigMap40g120->GetYaxis()->SetTitle("Y (m)");
12505     pYvsXTrkSigMap40g120->GetYaxis()->CenterTitle();
12506     
12507 
12508     pYvsXTrkSigMapU40l120=new TProfile2D
12509       ("pYvsXTrkSigMapU40l120","pYvsXTrkSigMapU40l120",
12510        30,-4,4,30,-4,4);
12511     pYvsXTrkSigMapU40l120->SetTitle
12512       ("Track Response (U Planes, calor.)");
12513     pYvsXTrkSigMapU40l120->GetXaxis()->SetTitle("X (m)");
12514     pYvsXTrkSigMapU40l120->GetXaxis()->CenterTitle();
12515     pYvsXTrkSigMapU40l120->GetYaxis()->SetTitle("Y (m)");
12516     pYvsXTrkSigMapU40l120->GetYaxis()->CenterTitle();
12517     
12518     pYvsXTrkSigMapU40g120=new TProfile2D
12519       ("pYvsXTrkSigMapU40g120","pYvsXTrkSigMapU40g120",
12520        30,-4,4,30,-4,4);
12521     pYvsXTrkSigMapU40g120->SetTitle
12522       ("Track Response (U Planes, spect.)");
12523     pYvsXTrkSigMapU40g120->GetXaxis()->SetTitle("X (m)");
12524     pYvsXTrkSigMapU40g120->GetXaxis()->CenterTitle();
12525     pYvsXTrkSigMapU40g120->GetYaxis()->SetTitle("Y (m)");
12526     pYvsXTrkSigMapU40g120->GetYaxis()->CenterTitle();
12527     
12528     pYvsXTrkSigMapV40l120=new TProfile2D
12529       ("pYvsXTrkSigMapV40l120","pYvsXTrkSigMapV40l120",
12530        30,-4,4,30,-4,4);
12531     pYvsXTrkSigMapV40l120->SetTitle
12532       ("Track Response (V Planes, calor.)");
12533     pYvsXTrkSigMapV40l120->GetXaxis()->SetTitle("X (m)");
12534     pYvsXTrkSigMapV40l120->GetXaxis()->CenterTitle();
12535     pYvsXTrkSigMapV40l120->GetYaxis()->SetTitle("Y (m)");
12536     pYvsXTrkSigMapV40l120->GetYaxis()->CenterTitle();
12537     
12538     pYvsXTrkSigMapV40g120=new TProfile2D
12539       ("pYvsXTrkSigMapV40g120","pYvsXTrkSigMapV40g120",
12540        30,-4,4,30,-4,4);
12541     pYvsXTrkSigMapV40g120->SetTitle
12542       ("Track Response (V Planes, spect.)");
12543     pYvsXTrkSigMapV40g120->GetXaxis()->SetTitle("X (m)");
12544     pYvsXTrkSigMapV40g120->GetXaxis()->CenterTitle();
12545     pYvsXTrkSigMapV40g120->GetYaxis()->SetTitle("Y (m)");
12546     pYvsXTrkSigMapV40g120->GetYaxis()->CenterTitle();
12547 
12548 
12549     pYvsXTrkSigCorU40l120=new TProfile2D
12550       ("pYvsXTrkSigCorU40l120","pYvsXTrkSigCorU40l120",
12551        30,-4,4,30,-4,4);
12552     pYvsXTrkSigCorU40l120->SetTitle
12553       ("Track Response (U Planes, calor.)");
12554     pYvsXTrkSigCorU40l120->GetXaxis()->SetTitle("X (m)");
12555     pYvsXTrkSigCorU40l120->GetXaxis()->CenterTitle();
12556     pYvsXTrkSigCorU40l120->GetYaxis()->SetTitle("Y (m)");
12557     pYvsXTrkSigCorU40l120->GetYaxis()->CenterTitle();
12558     
12559     pYvsXTrkSigCorU40g120=new TProfile2D
12560       ("pYvsXTrkSigCorU40g120","pYvsXTrkSigCorU40g120",
12561        30,-4,4,30,-4,4);
12562     pYvsXTrkSigCorU40g120->SetTitle
12563       ("Track Response (U Planes, spect.)");
12564     pYvsXTrkSigCorU40g120->GetXaxis()->SetTitle("X (m)");
12565     pYvsXTrkSigCorU40g120->GetXaxis()->CenterTitle();
12566     pYvsXTrkSigCorU40g120->GetYaxis()->SetTitle("Y (m)");
12567     pYvsXTrkSigCorU40g120->GetYaxis()->CenterTitle();
12568     
12569     pYvsXTrkSigCorV40l120=new TProfile2D
12570       ("pYvsXTrkSigCorV40l120","pYvsXTrkSigCorV40l120",
12571        30,-4,4,30,-4,4);
12572     pYvsXTrkSigCorV40l120->SetTitle
12573       ("Track Response (V Planes, calor.)");
12574     pYvsXTrkSigCorV40l120->GetXaxis()->SetTitle("X (m)");
12575     pYvsXTrkSigCorV40l120->GetXaxis()->CenterTitle();
12576     pYvsXTrkSigCorV40l120->GetYaxis()->SetTitle("Y (m)");
12577     pYvsXTrkSigCorV40l120->GetYaxis()->CenterTitle();
12578     
12579     pYvsXTrkSigCorV40g120=new TProfile2D
12580       ("pYvsXTrkSigCorV40g120","pYvsXTrkSigCorV40g120",
12581        30,-4,4,30,-4,4);
12582     pYvsXTrkSigCorV40g120->SetTitle
12583       ("Track Response (V Planes, spect.)");
12584     pYvsXTrkSigCorV40g120->GetXaxis()->SetTitle("X (m)");
12585     pYvsXTrkSigCorV40g120->GetXaxis()->CenterTitle();
12586     pYvsXTrkSigCorV40g120->GetYaxis()->SetTitle("Y (m)");
12587     pYvsXTrkSigCorV40g120->GetYaxis()->CenterTitle();
12588 
12589 
12590     pYvsXTrkAdcU40l120=new TProfile2D
12591       ("pYvsXTrkAdcU40l120","pYvsXTrkAdcU40l120",
12592        30,-4,4,30,-4,4);
12593     pYvsXTrkAdcU40l120->SetTitle
12594       ("Track Response (U Planes, calor.)");
12595     pYvsXTrkAdcU40l120->GetXaxis()->SetTitle("X (m)");
12596     pYvsXTrkAdcU40l120->GetXaxis()->CenterTitle();
12597     pYvsXTrkAdcU40l120->GetYaxis()->SetTitle("Y (m)");
12598     pYvsXTrkAdcU40l120->GetYaxis()->CenterTitle();
12599     
12600     pYvsXTrkAdcU40g120=new TProfile2D
12601       ("pYvsXTrkAdcU40g120","pYvsXTrkAdcU40g120",
12602        30,-4,4,30,-4,4);
12603     pYvsXTrkAdcU40g120->SetTitle
12604       ("Track Response (U Planes, spect.)");
12605     pYvsXTrkAdcU40g120->GetXaxis()->SetTitle("X (m)");
12606     pYvsXTrkAdcU40g120->GetXaxis()->CenterTitle();
12607     pYvsXTrkAdcU40g120->GetYaxis()->SetTitle("Y (m)");
12608     pYvsXTrkAdcU40g120->GetYaxis()->CenterTitle();
12609     
12610     pYvsXTrkAdcV40l120=new TProfile2D
12611       ("pYvsXTrkAdcV40l120","pYvsXTrkAdcV40l120",
12612        30,-4,4,30,-4,4);
12613     pYvsXTrkAdcV40l120->SetTitle
12614       ("Track Response (V Planes, calor.)");
12615     pYvsXTrkAdcV40l120->GetXaxis()->SetTitle("X (m)");
12616     pYvsXTrkAdcV40l120->GetXaxis()->CenterTitle();
12617     pYvsXTrkAdcV40l120->GetYaxis()->SetTitle("Y (m)");
12618     pYvsXTrkAdcV40l120->GetYaxis()->CenterTitle();
12619     
12620     pYvsXTrkAdcV40g120=new TProfile2D
12621       ("pYvsXTrkAdcV40g120","pYvsXTrkAdcV40g120",
12622        30,-4,4,30,-4,4);
12623     pYvsXTrkAdcV40g120->SetTitle
12624       ("Track Response (V Planes, spect.)");
12625     pYvsXTrkAdcV40g120->GetXaxis()->SetTitle("X (m)");
12626     pYvsXTrkAdcV40g120->GetXaxis()->CenterTitle();
12627     pYvsXTrkAdcV40g120->GetYaxis()->SetTitle("Y (m)");
12628     pYvsXTrkAdcV40g120->GetYaxis()->CenterTitle();
12629     
12630   }
12631 
12632   //declare vectors to store the per plane responses
12633   vector<Float_t> vSlcPlAdc(500,0);
12634   vector<Float_t> vSlcPlSigCor(500,0);
12635   vector<Float_t> vSlcPlStrips(500,0);
12636 
12637   //get TClonesArrays
12638   TClonesArray& slcTca=(*ntp.slc);
12639   TClonesArray& stpTca=(*ntp.stp);
12640   //const Int_t numSlcs=slcTca.GetEntries();
12641   const NtpSRSlice* pslc=
12642     dynamic_cast<NtpSRSlice*>(slcTca[nu.slc]);
12643   const NtpSRSlice& slc=(*pslc);
12644   
12646   //loop over strips in slc
12648   for (Int_t i=0;i<slc.nstrip;++i) {
12649     const NtpSRStrip* pstp=
12650       dynamic_cast<NtpSRStrip*>(stpTca[slc.stp[i]]);
12651     const NtpSRStrip& stp=(*pstp);
12652 
12653     //cut out strips that aren't within the track
12654     if (stp.plane<trk.vtx.plane || stp.plane>trk.end.plane) continue;
12655     
12656     //sum the east and west stripends just once here
12657     Float_t sumAdc=stp.ph0.raw+stp.ph1.raw;
12658     Float_t sumSigCor=stp.ph0.sigcor+stp.ph1.sigcor;
12659 
12660     MAXMSG("NuPlots",Msg::kDebug,200)
12661       <<"Slc Track: pl="<<trk.vtx.plane<<":"<<trk.end.plane
12662       <<", pl="<<stp.plane
12663       <<", sigcor0="<<stp.ph0.sigcor
12664       <<", sigcor1="<<stp.ph1.sigcor<<endl;
12665 
12666     //sum up the energy in the plane
12667     vSlcPlAdc[stp.plane]+=sumAdc;
12668     vSlcPlSigCor[stp.plane]+=sumSigCor;
12669     vSlcPlStrips[stp.plane]++;//sum strips
12670 
12671     //fill the profiles
12672     pSlcAdc->Fill(stp.plane,sumAdc,nu.rw);
12673     pSlcSigCor->Fill(stp.plane,sumSigCor,nu.rw);
12674     hZSlcStps->Fill(stp.z,nu.rw);
12675 
12676     //assume forward going
12677     if (stp.plane>=trk.vtx.plane+40) {
12678       pSlcAdc40->Fill(stp.plane,sumAdc,nu.rw);
12679       pSlcSigCor40->Fill(stp.plane,sumSigCor,nu.rw);
12680       hZSlcStps40->Fill(stp.z,nu.rw);
12681 
12682       //fill the histos for ALL strips
12683       if (stp.plane<=120) {
12684         hSlcAllAdcl120->Fill(sumAdc,nu.rw);
12685         hSlcAllSigCorl120->Fill(sumSigCor,nu.rw);
12686       }
12687       else {
12688         hSlcAllAdcg120->Fill(sumAdc,nu.rw);
12689         hSlcAllSigCorg120->Fill(sumSigCor,nu.rw);
12690       }
12691     }
12692   }
12693 
12695   //now loop over the per plane vectors
12696   for (Int_t pl=trk.vtx.plane;pl<=trk.end.plane;pl++) {
12697 
12698     MAXMSG("NuPlots",Msg::kDebug,500)
12699       <<"Track: pl="<<trk.vtx.plane<<":"<<trk.end.plane
12700       <<", pl="<<pl
12701       <<", sigcor="<<vSlcPlSigCor[pl]<<endl;
12702 
12703     if (pl>121 && (pl-1)%5!=0) {
12704       MAXMSG("NuPlots",Msg::kDebug,50)
12705         <<"Skipping slc plane because no scintillator for pl="
12706         <<pl<<endl;
12707       continue;
12708     }
12709 
12710     //fill the profiles
12711     pSlcPlAdc->Fill(pl,vSlcPlAdc[pl],nu.rw);
12712     pSlcPlSigCor->Fill(pl,vSlcPlSigCor[pl],nu.rw);
12713 
12714     //check if greater than plane 40
12715     if (pl>=trk.vtx.plane+40) {
12716       pSlcPlAdc40->Fill(pl,vSlcPlAdc[pl],nu.rw);
12717       pSlcPlSigCor40->Fill(pl,vSlcPlSigCor[pl],nu.rw);
12718       pSlcPlStrips40->Fill(pl,vSlcPlStrips[pl],nu.rw);
12719     }
12720 
12721     //fill only with hits and ignore zeros
12722     if (vSlcPlAdc[pl]>0) {
12723       //fill the profiles
12724       pSlcPlNoZerosAdc->Fill(pl,vSlcPlAdc[pl],nu.rw);
12725       pSlcPlNoZerosSigCor->Fill(pl,vSlcPlSigCor[pl],nu.rw);
12726       
12727       //check if greater than plane 40
12728       if (pl>=trk.vtx.plane+40) {
12729         pSlcPlNoZerosAdc40->Fill(pl,vSlcPlAdc[pl],nu.rw);
12730         pSlcPlNoZerosSigCor40->Fill(pl,vSlcPlSigCor[pl],nu.rw);
12731         pSlcPlNoZerosStrips40->Fill(pl,vSlcPlStrips[pl],nu.rw);
12732       }
12733     }
12734 
12735     //fill efficiency plots
12736     if (vSlcPlAdc[pl]>0) {
12737       pSlcEff->Fill(pl,1,nu.rw);
12738       
12739       //check if greater than plane 40
12740       if (pl>=trk.vtx.plane+40) {
12741         pSlcEff40->Fill(pl,1,nu.rw);
12742       }
12743     }
12744     else {
12745       pSlcEff->Fill(pl,0,nu.rw);
12746       
12747       //check if greater than plane 40
12748       if (pl>=trk.vtx.plane+40) {
12749         pSlcEff40->Fill(pl,0,nu.rw);
12750       }
12751     }
12752   }
12753 
12754   Float_t totalAdc=0;
12755   Float_t totalSigCor=0;
12756   Float_t totalSigMap=0;
12757   Int_t counter=0;
12758 
12759   Float_t totalAdc40=0;
12760   Float_t totalSigCor40=0;
12761   Float_t totalSigMap40=0;
12762   Int_t firstPl40=999;
12763   Int_t lastPl40=-1;
12764   Int_t counter40=0;
12765 
12766   Float_t totalAdcl120=0;
12767   Float_t totalSigCorl120=0;
12768   Float_t totalSigMapl120=0;
12769   Int_t firstPll120=999;
12770   Int_t lastPll120=-1;
12771   Int_t counterl120=0;
12772 
12773   Float_t totalAdcg120=0;
12774   Float_t totalSigCorg120=0;
12775   Float_t totalSigMapg120=0;
12776   Int_t firstPlg120=999;
12777   Int_t lastPlg120=-1;
12778   Int_t counterg120=0;
12779 
12780   //declare vectors to store the per plane responses
12781   vector<Float_t> vTrkPlAdc(500,0);
12782   vector<Float_t> vTrkPlSigCor(500,0);
12783   vector<Float_t> vTrkPlSigMap(500,0);
12784   vector<Int_t> vTrkCoilHit(500,0);
12785   vector<Float_t> vTrkPlStrips(500,0);
12786 
12788   //loop over the tracked strips
12790   for (Int_t i=0;i<trk.nstrip;i++){
12791     
12792     const NtpSRStrip* pstp=
12793       dynamic_cast<NtpSRStrip*>(stpTca[trk.stp[i]]);
12794     const NtpSRStrip& stp=(*pstp);
12795 
12796     //deal with the -999999 initialisation
12797     Float_t sigmap0=trk.stpph0sigmap[i];
12798     if (sigmap0<0) sigmap0=0;
12799     Float_t sigmap1=trk.stpph1sigmap[i];
12800     if (sigmap1<0) sigmap1=0;
12801 
12802     //sum the east and west stripends just once here
12803     Float_t sumAdc=stp.ph0.raw+stp.ph1.raw;
12804     Float_t sumSigCor=stp.ph0.sigcor+stp.ph1.sigcor;
12805     Float_t sumSigMap=sigmap0+sigmap1;
12806 
12807     //add up the total response in track
12808     totalAdc+=sumAdc;
12809     totalSigCor+=sumSigCor;
12810     totalSigMap+=sumSigMap;
12811     counter++;
12812 
12813     //store whether coil was hit
12814     if (trk.stpx[i]>0.5*(Munits::m)) vTrkCoilHit[stp.plane]=0;
12815     else vTrkCoilHit[stp.plane]=1;
12816 
12817     //sum up the energy in the plane
12818     vTrkPlAdc[stp.plane]+=sumAdc;
12819     vTrkPlSigCor[stp.plane]+=sumSigCor;
12820     vTrkPlSigMap[stp.plane]+=sumSigMap;
12821     vTrkPlStrips[stp.plane]++;//sum strips
12822 
12823     //fill the profiles
12824     pTrkAdc->Fill(stp.plane,sumAdc,nu.rw);
12825     pTrkSigCor->Fill(stp.plane,sumSigCor,nu.rw);
12826     pTrkSigMap->Fill(stp.plane,sumSigMap,nu.rw);
12827 
12828     hZTrkStps->Fill(stp.z,nu.rw);
12829 
12830     MAXMSG("NuPlots",Msg::kDebug,500)
12831       <<"sigmap0="<<trk.stpph0sigmap[i]
12832       <<", sigmap1="<<trk.stpph1sigmap[i]
12833       <<", sigcor0="<<stp.ph0.sigcor
12834       <<", sigcor1="<<stp.ph1.sigcor<<endl;
12835 
12836     //assume forward going
12837     if (stp.plane>=trk.vtx.plane+40) {
12838       totalAdc40+=sumAdc;
12839       totalSigCor40+=sumSigCor;
12840       totalSigMap40+=sumSigMap;
12841       if (stp.plane<firstPl40) firstPl40=stp.plane;
12842       lastPl40=stp.plane;
12843       counter40++;
12844 
12845       pTrkAdc40->Fill(stp.plane,sumAdc,nu.rw);
12846       pTrkSigCor40->Fill(stp.plane,sumSigCor,nu.rw);
12847       pTrkSigMap40->Fill(stp.plane,sumSigMap,nu.rw);
12848 
12849       hZTrkStps40->Fill(stp.z,nu.rw);
12850 
12851       //only look at strips in the calorimeter
12852       if (stp.plane<=120) {
12853         hYvsXTrkSigMap40l120->Fill(trk.stpx[i],trk.stpy[i],nu.rw);
12854         pYvsXTrkSigMap40l120->Fill(trk.stpx[i],trk.stpy[i],
12855                                    sumSigMap,nu.rw);
12856 
12857         //fill the u and v views separately
12858         if (stp.planeview==PlaneView::kU) {
12859           pYvsXTrkSigMapU40l120->Fill(trk.stpx[i],trk.stpy[i],
12860                                       sumSigMap,nu.rw);
12861           pYvsXTrkSigCorU40l120->Fill(trk.stpx[i],trk.stpy[i],
12862                                       sumSigCor,nu.rw);
12863           pYvsXTrkAdcU40l120->Fill(trk.stpx[i],trk.stpy[i],
12864                                    sumAdc,nu.rw);
12865         }
12866         else if (stp.planeview==PlaneView::kV){
12867           pYvsXTrkSigMapV40l120->Fill(trk.stpx[i],trk.stpy[i],
12868                                       sumSigMap,nu.rw);
12869           pYvsXTrkSigCorV40l120->Fill(trk.stpx[i],trk.stpy[i],
12870                                       sumSigCor,nu.rw);
12871           pYvsXTrkAdcV40l120->Fill(trk.stpx[i],trk.stpy[i],
12872                                    sumAdc,nu.rw);
12873         }
12874         else cout<<"Ahhhhh"<<endl;
12875 
12876         hTrkAllAdcl120->Fill(sumAdc,nu.rw);
12877         hTrkAllSigCorl120->Fill(sumSigCor,nu.rw);
12878         hTrkAllSigMapl120->Fill(sumSigMap,nu.rw);
12879       }
12880       else {
12881         hYvsXTrkSigMap40g120->Fill(trk.stpx[i],trk.stpy[i],nu.rw);
12882         pYvsXTrkSigMap40g120->Fill(trk.stpx[i],trk.stpy[i],
12883                                    sumSigMap,nu.rw);
12884 
12885         //fill the u and v views separately
12886         if (stp.planeview==PlaneView::kU) {
12887           pYvsXTrkSigMapU40g120->Fill(trk.stpx[i],trk.stpy[i],
12888                                       sumSigMap,nu.rw);
12889           pYvsXTrkSigCorU40g120->Fill(trk.stpx[i],trk.stpy[i],
12890                                       sumSigCor,nu.rw);
12891           pYvsXTrkAdcU40g120->Fill(trk.stpx[i],trk.stpy[i],
12892                                    sumAdc,nu.rw);
12893         }
12894         else if (stp.planeview==PlaneView::kV){
12895           pYvsXTrkSigMapV40g120->Fill(trk.stpx[i],trk.stpy[i],
12896                                       sumSigMap,nu.rw);
12897           pYvsXTrkSigCorV40g120->Fill(trk.stpx[i],trk.stpy[i],
12898                                       sumSigCor,nu.rw);
12899           pYvsXTrkAdcV40g120->Fill(trk.stpx[i],trk.stpy[i],
12900                                    sumAdc,nu.rw);
12901         }
12902         else cout<<"Ahhhhh"<<endl;
12903 
12904         hTrkAllAdcg120->Fill(sumAdc,nu.rw);
12905         hTrkAllSigCorg120->Fill(sumSigCor,nu.rw);
12906         hTrkAllSigMapg120->Fill(sumSigMap,nu.rw);
12907       }
12908     }
12909 
12910     //only look at strips in the calorimeter
12911     if (stp.plane<=120) {
12912       totalAdcl120+=sumAdc;
12913       totalSigCorl120+=sumSigCor;
12914       totalSigMapl120+=sumSigMap;
12915       if (stp.plane<firstPll120) firstPll120=stp.plane;
12916       lastPll120=stp.plane;
12917       counterl120++;
12918 
12919       hYvsXTrkSigMapl120->Fill(trk.stpx[i],trk.stpy[i],nu.rw);
12920       pYvsXTrkSigMapl120->Fill(trk.stpx[i],trk.stpy[i],sumSigMap,nu.rw);
12921     }
12922     else {
12923       totalAdcg120+=sumAdc;
12924       totalSigCorg120+=sumSigCor;
12925       totalSigMapg120+=sumSigMap;
12926       if (stp.plane<firstPlg120) firstPlg120=stp.plane;
12927       lastPlg120=stp.plane;
12928       counterg120++;
12929 
12930       hYvsXTrkSigMapg120->Fill(trk.stpx[i],trk.stpy[i],nu.rw);
12931       pYvsXTrkSigMapg120->Fill(trk.stpx[i],trk.stpy[i],sumSigMap,nu.rw);
12932     }
12933   }
12934 
12936   //now loop over the per plane vectors
12937   for (Int_t pl=trk.vtx.plane;pl<=trk.end.plane;pl++) {
12938 
12939     if (pl>121 && (pl-1)%5!=0) {
12940       MAXMSG("NuPlots",Msg::kDebug,50)
12941         <<"Skipping trk plane because no scintillator for pl="
12942         <<pl<<endl;
12943       continue;
12944     }
12945 
12946     MAXMSG("NuPlots",Msg::kDebug,500)
12947       <<"Track: pl="<<trk.vtx.plane<<":"<<trk.end.plane
12948       <<", pl="<<pl
12949       <<", sigcor="<<vTrkPlSigCor[pl]
12950       <<", coilHit="<<vTrkCoilHit[pl]<<endl;
12951     
12952     //fill the profiles
12953     pTrkPlAdc->Fill(pl,vTrkPlAdc[pl],nu.rw);
12954     pTrkPlSigCor->Fill(pl,vTrkPlSigCor[pl],nu.rw);
12955     pTrkPlSigMap->Fill(pl,vTrkPlSigMap[pl],nu.rw);
12956 
12957     //check if greater than plane 40
12958     if (pl>=trk.vtx.plane+40) {
12959       pTrkPlAdc40->Fill(pl,vTrkPlAdc[pl],nu.rw);
12960       pTrkPlSigCor40->Fill(pl,vTrkPlSigCor[pl],nu.rw);
12961       pTrkPlSigMap40->Fill(pl,vTrkPlSigMap[pl],nu.rw);
12962       pTrkPlStrips40->Fill(pl,vTrkPlStrips[pl],nu.rw);
12963 
12964       if (!vTrkCoilHit[pl]) {
12965         pTrkNoCoilPlSigCor40->Fill(pl,vTrkPlSigCor[pl],nu.rw);
12966         pTrkNoCoilPlStrips40->Fill(pl,vTrkPlStrips[pl],nu.rw);
12967       }
12968     }
12969 
12970     //fill only with hits and ignore zeros
12971     if (vTrkPlAdc[pl]>0) {
12972       //fill the profiles
12973       pTrkPlNoZerosAdc->Fill(pl,vTrkPlAdc[pl],nu.rw);
12974       pTrkPlNoZerosSigCor->Fill(pl,vTrkPlSigCor[pl],nu.rw);
12975       pTrkPlNoZerosSigMap->Fill(pl,vTrkPlSigMap[pl],nu.rw);
12976             
12977       //check if greater than plane 40
12978       if (pl>=trk.vtx.plane+40) {
12979         pTrkPlNoZerosAdc40->Fill(pl,vTrkPlAdc[pl],nu.rw);
12980         pTrkPlNoZerosSigCor40->Fill(pl,vTrkPlSigCor[pl],nu.rw);
12981         pTrkPlNoZerosSigMap40->Fill(pl,vTrkPlSigMap[pl],nu.rw);
12982         pTrkPlNoZerosStrips40->Fill(pl,vTrkPlStrips[pl],nu.rw);
12983       }
12984     }
12985 
12986     //fill efficiency plots
12987     if (vTrkPlAdc[pl]>0) {
12988       pTrkEff->Fill(pl,1,nu.rw);
12989       
12990       //check if greater than plane 40
12991       if (pl>=trk.vtx.plane+40) {
12992         pTrkEff40->Fill(pl,1,nu.rw);
12993       }
12994     }
12995     else {
12996       pTrkEff->Fill(pl,0,nu.rw);
12997       
12998       //check if greater than plane 40
12999       if (pl>=trk.vtx.plane+40) {
13000         pTrkEff40->Fill(pl,0,nu.rw);
13001       }
13002     }
13003     
13004     //fill efficiency plots with coil effect removed
13005     if (!vTrkCoilHit[pl]) {
13006       if (vTrkPlAdc[pl]>0) {
13007         pTrkNoCoilEff->Fill(pl,1,nu.rw);
13008         
13009         //check if greater than plane 40
13010         if (pl>=trk.vtx.plane+40) {
13011           pTrkNoCoilEff40->Fill(pl,1,nu.rw);
13012         }
13013       }
13014       else {
13015         pTrkNoCoilEff->Fill(pl,0,nu.rw);
13016         
13017         //check if greater than plane 40
13018         if (pl>=trk.vtx.plane+40) {
13019           pTrkNoCoilEff40->Fill(pl,0,nu.rw);
13020         }
13021       }
13022     }
13023     else {
13024       MAXMSG("NuPlots",Msg::kDebug,100)
13025         <<"Coil Hit: Track: pl="<<trk.vtx.plane<<":"<<trk.end.plane
13026         <<", pl="<<pl
13027         <<", sigcor="<<vTrkPlSigCor[pl]
13028         <<", coilHit="<<vTrkCoilHit[pl]<<endl;
13029     }
13030   }
13031 
13032   //reset to default
13033   if (firstPl40==999) firstPl40=-1;
13034   if (firstPll120==999) firstPll120=-1;
13035   if (firstPlg120==999) firstPlg120=-1;
13036   
13037   //Int_t trkLen=abs(trk.end.plane-trk.vtx.plane)+1;
13038   //Int_t trkLen40=abs(lastPl40-firstPl40)+1;
13039   //Int_t trkLenl120=abs(lastPll120-firstPll120)+1;
13040   //Int_t trkLeng120=abs(lastPlg120-firstPlg120)+1;
13041   Int_t trkLen=counter;
13042   Int_t trkLen40=counter40;
13043   Int_t trkLenl120=counterl120;
13044   Int_t trkLeng120=counterg120;
13045 
13046   Float_t totalAdcPerPl=-1;
13047   Float_t totalSigCorPerPl=-1;
13048   Float_t totalSigMapPerPl=-1;
13049   Float_t totalAdcPerPl40=-1;
13050   Float_t totalSigCorPerPl40=-1;
13051   Float_t totalSigMapPerPl40=-1;
13052   Float_t totalAdcPerPll120=-1;
13053   Float_t totalSigCorPerPll120=-1;
13054   Float_t totalSigMapPerPll120=-1;
13055   Float_t totalAdcPerPlg120=-1;
13056   Float_t totalSigCorPerPlg120=-1;
13057   Float_t totalSigMapPerPlg120=-1;
13058   if (trkLen) {
13059     totalAdcPerPl=totalAdc/trkLen;
13060     totalSigCorPerPl=totalSigCor/trkLen;
13061     totalSigMapPerPl=totalSigMap/trkLen;
13062   }
13063   else MSG("NuPlots",Msg::kWarning)<<"Ahhh, zero trk length"<<endl;
13064 
13065   hTrkAdc->Fill(totalAdcPerPl,nu.rw);
13066   hTrkSigCor->Fill(totalSigCorPerPl,nu.rw);
13067   hTrkSigMap->Fill(totalSigMapPerPl,nu.rw);
13068   hTrkSigMapNtp->Fill(trk.ph.sigmap/trk.plane.n,nu.rw);
13069   
13070   //fill the histos for events with small showers
13071   if (nu.shwEn<0.5*Munits::GeV){
13072     hTrkAdc05GeV->Fill(totalAdcPerPl,nu.rw);
13073     hTrkSigCor05GeV->Fill(trk.ph.sigcor/trk.plane.n,nu.rw);
13074     hTrkSigMap05GeV->Fill(trk.ph.sigmap/trk.plane.n,nu.rw);
13075   }
13076   
13077   //fill plots for track hits well away from shower 
13078   if (trkLen40>10) {
13079     totalAdcPerPl40=totalAdc40/trkLen40;
13080     totalSigCorPerPl40=totalSigCor40/trkLen40;
13081     totalSigMapPerPl40=totalSigMap40/trkLen40;
13082 
13083     //now fill plots
13084     hTrkAdc40->Fill(totalAdcPerPl40,nu.rw);
13085     hTrkSigCor40->Fill(totalSigCorPerPl40,nu.rw);
13086     hTrkSigMap40->Fill(totalSigMapPerPl40,nu.rw);
13087   }
13088 
13089   //fill plots for track hits in the calorimeter section
13090   if (trkLenl120>=10 && nu.shwEn<0.5*Munits::GeV) {
13091     totalAdcPerPll120=totalAdcl120/trkLenl120;
13092     totalSigCorPerPll120=totalSigCorl120/trkLenl120;
13093     totalSigMapPerPll120=totalSigMapl120/trkLenl120;
13094 
13095     //now fill plots
13096     hTrkAdcl120->Fill(totalAdcPerPll120,nu.rw);
13097     hTrkSigCorl120->Fill(totalSigCorPerPll120,nu.rw);
13098     hTrkSigMapl120->Fill(totalSigMapPerPll120,nu.rw);
13099   }
13100 
13101   //fill plots for track hits in the calorimeter section
13102   if (trkLeng120>=25) {//require 5 planes to be there to hit
13103     //trkLeng120/=5;//plot it per *active* plane
13104     trkLeng120=counterg120;
13105     totalAdcPerPlg120=totalAdcg120/trkLeng120;
13106     totalSigCorPerPlg120=totalSigCorg120/trkLeng120;
13107     totalSigMapPerPlg120=totalSigMapg120/trkLeng120;
13108 
13109     //now fill plots
13110     hTrkAdcg120->Fill(totalAdcPerPlg120,nu.rw);
13111     hTrkSigCorg120->Fill(totalSigCorPerPlg120,nu.rw);
13112     hTrkSigMapg120->Fill(totalSigMapPerPlg120,nu.rw);
13113   }
13114 }

void NuPlots::FillTrueAbIDHistos const NuEvent nu  )  const
 

This function makes plots of the PO ID for different true interaction types

Definition at line 5004 of file NuPlots.cxx.

References NuEvent::abID, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::rw, and NuEvent::simFlag.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::MakePostPreSelectionPlots(), and NuAnalysis::NMBSummaryTreeAna().

05005 {
05006   static TH1F* hAbIDNuMuCC=0;
05007   static TH1F* hAbIDNuMuBarCC=0;
05008   static TH1F* hAbIDNuMuNC=0;
05009   static TH1F* hAbIDNuMuBarNC=0;
05010 
05011   static TH1F* hAbIDNueCC=0;
05012   static TH1F* hAbIDNueBarCC=0;
05013   static TH1F* hAbIDNueNC=0;
05014   static TH1F* hAbIDNueBarNC=0;
05015 
05016   static TH1F* hAbIDNuTauCC=0;
05017   static TH1F* hAbIDNuTauBarCC=0;
05018   static TH1F* hAbIDNuTauNC=0;
05019   static TH1F* hAbIDNuTauBarNC=0;
05020   
05021   static TH1F* hAbIDAllNC=0;
05022   static TH1F* hAbIDAllShw=0;
05023 
05024   static TH1F* hAbIDNotNuMuBarCC=0;
05025   static TH1F* hAbIDNotNuMuCC=0;
05026 
05027   if (!hAbIDNuMuCC){
05028     MAXMSG("NuPlots",Msg::kDebug,1)<<"Creating TrueAbID plots..."<<endl;
05029 
05030     hAbIDNuMuCC=new TH1F("hAbIDNuMuCC","hAbIDNuMuCC",
05031                          4*320,-3.2,3.2);
05032     hAbIDNuMuCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05033     hAbIDNuMuCC->GetXaxis()->CenterTitle();
05034     hAbIDNuMuCC->GetYaxis()->SetTitle("");
05035     hAbIDNuMuCC->GetYaxis()->CenterTitle();
05036     hAbIDNuMuCC->SetFillColor(0);
05037     hAbIDNuMuCC->SetLineColor(1);
05038     //hAbIDNuMuCC->SetBit(TH1::kCanRebin);
05039 
05040     hAbIDNuMuBarCC=new TH1F("hAbIDNuMuBarCC","hAbIDNuMuBarCC",
05041                             4*320,-3.2,3.2);
05042     hAbIDNuMuBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05043     hAbIDNuMuBarCC->GetXaxis()->CenterTitle();
05044     hAbIDNuMuBarCC->GetYaxis()->SetTitle("");
05045     hAbIDNuMuBarCC->GetYaxis()->CenterTitle();
05046     hAbIDNuMuBarCC->SetFillColor(0);
05047     hAbIDNuMuBarCC->SetLineColor(1);
05048     //hAbIDNuMuBarCC->SetBit(TH1::kCanRebin);
05049 
05050     hAbIDNuMuNC=new TH1F("hAbIDNuMuNC","hAbIDNuMuNC",
05051                          4*320,-3.2,3.2);
05052     hAbIDNuMuNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05053     hAbIDNuMuNC->GetXaxis()->CenterTitle();
05054     hAbIDNuMuNC->GetYaxis()->SetTitle("");
05055     hAbIDNuMuNC->GetYaxis()->CenterTitle();
05056     hAbIDNuMuNC->SetFillColor(0);
05057     hAbIDNuMuNC->SetLineColor(1);
05058     //hAbIDNuMuNC->SetBit(TH1::kCanRebin);
05059 
05060     hAbIDNuMuBarNC=new TH1F("hAbIDNuMuBarNC","hAbIDNuMuBarNC",
05061                             4*320,-3.2,3.2);
05062     hAbIDNuMuBarNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05063     hAbIDNuMuBarNC->GetXaxis()->CenterTitle();
05064     hAbIDNuMuBarNC->GetYaxis()->SetTitle("");
05065     hAbIDNuMuBarNC->GetYaxis()->CenterTitle();
05066     hAbIDNuMuBarNC->SetFillColor(0);
05067     hAbIDNuMuBarNC->SetLineColor(1);
05068     //hAbIDNuMuBarNC->SetBit(TH1::kCanRebin);
05069 
05070 
05071     //nue
05072     hAbIDNueCC=new TH1F("hAbIDNueCC","hAbIDNueCC",
05073                         4*320,-3.2,3.2);
05074     hAbIDNueCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05075     hAbIDNueCC->GetXaxis()->CenterTitle();
05076     hAbIDNueCC->GetYaxis()->SetTitle("");
05077     hAbIDNueCC->GetYaxis()->CenterTitle();
05078     hAbIDNueCC->SetFillColor(0);
05079     hAbIDNueCC->SetLineColor(1);
05080     //hAbIDNueCC->SetBit(TH1::kCanRebin);
05081 
05082     hAbIDNueBarCC=new TH1F("hAbIDNueBarCC","hAbIDNueBarCC",
05083                            4*320,-3.2,3.2);
05084     hAbIDNueBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05085     hAbIDNueBarCC->GetXaxis()->CenterTitle();
05086     hAbIDNueBarCC->GetYaxis()->SetTitle("");
05087     hAbIDNueBarCC->GetYaxis()->CenterTitle();
05088     hAbIDNueBarCC->SetFillColor(0);
05089     hAbIDNueBarCC->SetLineColor(1);
05090     //hAbIDNueBarCC->SetBit(TH1::kCanRebin);
05091 
05092     hAbIDNueNC=new TH1F("hAbIDNueNC","hAbIDNueNC",
05093                         4*320,-3.2,3.2);
05094     hAbIDNueNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05095     hAbIDNueNC->GetXaxis()->CenterTitle();
05096     hAbIDNueNC->GetYaxis()->SetTitle("");
05097     hAbIDNueNC->GetYaxis()->CenterTitle();
05098     hAbIDNueNC->SetFillColor(0);
05099     hAbIDNueNC->SetLineColor(1);
05100     //hAbIDNueNC->SetBit(TH1::kCanRebin);
05101 
05102     hAbIDNueBarNC=new TH1F("hAbIDNueBarNC","hAbIDNueBarNC",
05103                            4*320,-3.2,3.2);
05104     hAbIDNueBarNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05105     hAbIDNueBarNC->GetXaxis()->CenterTitle();
05106     hAbIDNueBarNC->GetYaxis()->SetTitle("");
05107     hAbIDNueBarNC->GetYaxis()->CenterTitle();
05108     hAbIDNueBarNC->SetFillColor(0);
05109     hAbIDNueBarNC->SetLineColor(1);
05110     //hAbIDNueBarNC->SetBit(TH1::kCanRebin);
05111 
05112 
05113     //nutau
05114     hAbIDNuTauCC=new TH1F("hAbIDNuTauCC","hAbIDNuTauCC",
05115                           4*320,-3.2,3.2);
05116     hAbIDNuTauCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05117     hAbIDNuTauCC->GetXaxis()->CenterTitle();
05118     hAbIDNuTauCC->GetYaxis()->SetTitle("");
05119     hAbIDNuTauCC->GetYaxis()->CenterTitle();
05120     hAbIDNuTauCC->SetFillColor(0);
05121     hAbIDNuTauCC->SetLineColor(1);
05122     //hAbIDNuTauCC->SetBit(TH1::kCanRebin);
05123 
05124     hAbIDNuTauBarCC=new TH1F("hAbIDNuTauBarCC","hAbIDNuTauBarCC",
05125                              4*320,-3.2,3.2);
05126     hAbIDNuTauBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05127     hAbIDNuTauBarCC->GetXaxis()->CenterTitle();
05128     hAbIDNuTauBarCC->GetYaxis()->SetTitle("");
05129     hAbIDNuTauBarCC->GetYaxis()->CenterTitle();
05130     hAbIDNuTauBarCC->SetFillColor(0);
05131     hAbIDNuTauBarCC->SetLineColor(1);
05132     //hAbIDNuTauBarCC->SetBit(TH1::kCanRebin);
05133 
05134     hAbIDNuTauNC=new TH1F("hAbIDNuTauNC","hAbIDNuTauNC",
05135                           4*320,-3.2,3.2);
05136     hAbIDNuTauNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05137     hAbIDNuTauNC->GetXaxis()->CenterTitle();
05138     hAbIDNuTauNC->GetYaxis()->SetTitle("");
05139     hAbIDNuTauNC->GetYaxis()->CenterTitle();
05140     hAbIDNuTauNC->SetFillColor(0);
05141     hAbIDNuTauNC->SetLineColor(1);
05142     //hAbIDNuTauNC->SetBit(TH1::kCanRebin);
05143 
05144     hAbIDNuTauBarNC=new TH1F("hAbIDNuTauBarNC","hAbIDNuTauBarNC",
05145                              4*320,-3.2,3.2);
05146     hAbIDNuTauBarNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05147     hAbIDNuTauBarNC->GetXaxis()->CenterTitle();
05148     hAbIDNuTauBarNC->GetYaxis()->SetTitle("");
05149     hAbIDNuTauBarNC->GetYaxis()->CenterTitle();
05150     hAbIDNuTauBarNC->SetFillColor(0);
05151     hAbIDNuTauBarNC->SetLineColor(1);
05152     //hAbIDNuTauBarNC->SetBit(TH1::kCanRebin);
05153 
05154 
05155 
05156     hAbIDAllNC=new TH1F("hAbIDAllNC","hAbIDAllNC",
05157                         4*320,-3.2,3.2);
05158     hAbIDAllNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05159     hAbIDAllNC->GetXaxis()->CenterTitle();
05160     hAbIDAllNC->GetYaxis()->SetTitle("");
05161     hAbIDAllNC->GetYaxis()->CenterTitle();
05162     hAbIDAllNC->SetFillColor(0);
05163     hAbIDAllNC->SetLineColor(1);
05164     //hAbIDAllNC->SetBit(TH1::kCanRebin);
05165 
05166     hAbIDAllShw=new TH1F("hAbIDAllShw","hAbIDAllShw",
05167                          4*320,-3.2,3.2);
05168     hAbIDAllShw->GetXaxis()->SetTitle("PID (from NuBarPID)");
05169     hAbIDAllShw->GetXaxis()->CenterTitle();
05170     hAbIDAllShw->GetYaxis()->SetTitle("");
05171     hAbIDAllShw->GetYaxis()->CenterTitle();
05172     hAbIDAllShw->SetFillColor(0);
05173     hAbIDAllShw->SetLineColor(1);
05174     //hAbIDAllShw->SetBit(TH1::kCanRebin);
05175 
05176     hAbIDNotNuMuBarCC=new TH1F("hAbIDNotNuMuBarCC","hAbIDNotNuMuBarCC",
05177                                4*320,-3.2,3.2);
05178     hAbIDNotNuMuBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05179     hAbIDNotNuMuBarCC->GetXaxis()->CenterTitle();
05180     hAbIDNotNuMuBarCC->GetYaxis()->SetTitle("");
05181     hAbIDNotNuMuBarCC->GetYaxis()->CenterTitle();
05182     hAbIDNotNuMuBarCC->SetFillColor(0);
05183     hAbIDNotNuMuBarCC->SetLineColor(1);
05184     //hAbIDNotNuMuBarCC->SetBit(TH1::kCanRebin);
05185 
05186     hAbIDNotNuMuCC=new TH1F("hAbIDNotNuMuCC","hAbIDNotNuMuCC",
05187                             4*320,-3.2,3.2);
05188     hAbIDNotNuMuCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05189     hAbIDNotNuMuCC->GetXaxis()->CenterTitle();
05190     hAbIDNotNuMuCC->GetYaxis()->SetTitle("");
05191     hAbIDNotNuMuCC->GetYaxis()->CenterTitle();
05192     hAbIDNotNuMuCC->SetFillColor(0);
05193     hAbIDNotNuMuCC->SetLineColor(1);
05194     //hAbIDNotNuMuCC->SetBit(TH1::kCanRebin);
05195   }
05196 
05199 
05200   //return if not MC
05201   if (nu.simFlag!=SimFlag::kMC) {
05202     MAXMSG("NuPlots",Msg::kDebug,1)
05203       <<"Not MC, so not filling TrueAbID histos..."<<endl;
05204     return;
05205   }
05206   MAXMSG("NuPlots",Msg::kDebug,1)
05207     <<"Is MC, filling TrueAbID histos..."<<endl;
05208   
05209   if (nu.iaction==1){//CC
05210     if (nu.inu==14){
05211       hAbIDNuMuCC->Fill(nu.abID,nu.rw);
05212     }
05213     else if (nu.inu==-14){
05214       hAbIDNuMuBarCC->Fill(nu.abID,nu.rw);
05215     }
05216     else if (nu.inu==12){
05217       hAbIDNueCC->Fill(nu.abID,nu.rw);
05218     }
05219     else if (nu.inu==-12){
05220       hAbIDNueBarCC->Fill(nu.abID,nu.rw);
05221     }
05222     else if (nu.inu==16){
05223       hAbIDNuTauCC->Fill(nu.abID,nu.rw);
05224     }
05225     else if (nu.inu==-16){
05226       hAbIDNuTauBarCC->Fill(nu.abID,nu.rw);
05227     }
05228     else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
05229   }
05230   else if (nu.iaction==0){//NC
05231     hAbIDAllNC->Fill(nu.abID,nu.rw);
05232     if (nu.inu==14){
05233       hAbIDNuMuNC->Fill(nu.abID,nu.rw);
05234     }
05235     else if (nu.inu==-14){
05236       hAbIDNuMuBarNC->Fill(nu.abID,nu.rw);
05237     }
05238     else if (nu.inu==12){
05239       hAbIDNueNC->Fill(nu.abID,nu.rw);
05240     }
05241     else if (nu.inu==-12){
05242       hAbIDNueBarNC->Fill(nu.abID,nu.rw);
05243     }
05244     else if (nu.inu==16){
05245       hAbIDNuTauNC->Fill(nu.abID,nu.rw);
05246     }
05247     else if (nu.inu==-16){
05248       hAbIDNuTauBarNC->Fill(nu.abID,nu.rw);
05249     }
05250     else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
05251   }
05252   
05253   //all but NuMu/NuMuBar CC
05254   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
05255     hAbIDAllShw->Fill(nu.abID,nu.rw);
05256   }
05257 
05258   //fill all-but-numubar-cc histos
05259   if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
05260     hAbIDNotNuMuBarCC->Fill(nu.abID,nu.rw);
05261   }
05262   //fill all-but-numu-cc histos
05263   if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
05264     //probably don't actually care about these ones... but do anyway
05265     hAbIDNotNuMuCC->Fill(nu.abID,nu.rw);
05266   }  
05267 }

void NuPlots::FillTrueAbIDHistosPQNQ const NuEvent nu  )  const
 

This function makes plots of the DP ID for different true interaction types

Definition at line 5271 of file NuPlots.cxx.

References NuEvent::abID, NuEvent::charge, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::rw, and NuEvent::simFlag.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuCutImps::NuCutsSelection::MakePostPreSelectionPlots(), and NuAnalysis::NMBSummaryTreeAna().

05272 {
05273   //PQ
05274   static TH1F* hAbIDNuMuCCPQ=0;
05275   static TH1F* hAbIDNuMuBarCCPQ=0;
05276   static TH1F* hAbIDNuMuNCPQ=0;
05277   static TH1F* hAbIDNuMuBarNCPQ=0;
05278 
05279   static TH1F* hAbIDNueCCPQ=0;
05280   static TH1F* hAbIDNueBarCCPQ=0;
05281   static TH1F* hAbIDNueNCPQ=0;
05282   static TH1F* hAbIDNueBarNCPQ=0;
05283 
05284   static TH1F* hAbIDNuTauCCPQ=0;
05285   static TH1F* hAbIDNuTauBarCCPQ=0;
05286   static TH1F* hAbIDNuTauNCPQ=0;
05287   static TH1F* hAbIDNuTauBarNCPQ=0;
05288   
05289   static TH1F* hAbIDAllNCPQ=0;
05290   static TH1F* hAbIDAllShwPQ=0;
05291 
05292   static TH1F* hAbIDNotNuMuBarCCPQ=0;
05293   static TH1F* hAbIDNotNuMuCCPQ=0;
05294   static TH1F* hAbIDPQ=0;
05295 
05296   //NQ
05297   static TH1F* hAbIDNuMuCCNQ=0;
05298   static TH1F* hAbIDNuMuBarCCNQ=0;
05299   static TH1F* hAbIDNuMuNCNQ=0;
05300   static TH1F* hAbIDNuMuBarNCNQ=0;
05301 
05302   static TH1F* hAbIDNueCCNQ=0;
05303   static TH1F* hAbIDNueBarCCNQ=0;
05304   static TH1F* hAbIDNueNCNQ=0;
05305   static TH1F* hAbIDNueBarNCNQ=0;
05306   
05307   static TH1F* hAbIDNuTauCCNQ=0;
05308   static TH1F* hAbIDNuTauBarCCNQ=0;
05309   static TH1F* hAbIDNuTauNCNQ=0;
05310   static TH1F* hAbIDNuTauBarNCNQ=0;
05311 
05312   static TH1F* hAbIDAllNCNQ=0;
05313   static TH1F* hAbIDAllShwNQ=0;
05314 
05315   static TH1F* hAbIDNotNuMuBarCCNQ=0;
05316   static TH1F* hAbIDNotNuMuCCNQ=0;
05317   static TH1F* hAbIDNQ=0;
05318 
05319   if (!hAbIDNuMuCCPQ){
05320     MAXMSG("NuPlots",Msg::kDebug,1)
05321       <<"Creating TrueAbIDPQNQ plots..."<<endl;
05322 
05323     hAbIDNuMuCCPQ=new TH1F("hAbIDNuMuCCPQ","hAbIDNuMuCCPQ",
05324                            4*320,-3.2,3.2);
05325     hAbIDNuMuCCPQ->GetXaxis()->SetTitle(" PID (from NuBarPID)");
05326     hAbIDNuMuCCPQ->GetXaxis()->CenterTitle();
05327     hAbIDNuMuCCPQ->GetYaxis()->SetTitle("");
05328     hAbIDNuMuCCPQ->GetYaxis()->CenterTitle();
05329     hAbIDNuMuCCPQ->SetFillColor(0);
05330     hAbIDNuMuCCPQ->SetLineColor(1);
05331     //hAbIDNuMuCCPQ->SetBit(TH1::kCanRebin);
05332 
05333     hAbIDNuMuBarCCPQ=new TH1F("hAbIDNuMuBarCCPQ","hAbIDNuMuBarCCPQ",
05334                               4*320,-3.2,3.2);
05335     hAbIDNuMuBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05336     hAbIDNuMuBarCCPQ->GetXaxis()->CenterTitle();
05337     hAbIDNuMuBarCCPQ->GetYaxis()->SetTitle("");
05338     hAbIDNuMuBarCCPQ->GetYaxis()->CenterTitle();
05339     hAbIDNuMuBarCCPQ->SetFillColor(0);
05340     hAbIDNuMuBarCCPQ->SetLineColor(1);
05341     //hAbIDNuMuBarCCPQ->SetBit(TH1::kCanRebin);
05342 
05343     hAbIDNuMuNCPQ=new TH1F("hAbIDNuMuNCPQ","hAbIDNuMuNCPQ",
05344                            4*320,-3.2,3.2);
05345     hAbIDNuMuNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05346     hAbIDNuMuNCPQ->GetXaxis()->CenterTitle();
05347     hAbIDNuMuNCPQ->GetYaxis()->SetTitle("");
05348     hAbIDNuMuNCPQ->GetYaxis()->CenterTitle();
05349     hAbIDNuMuNCPQ->SetFillColor(0);
05350     hAbIDNuMuNCPQ->SetLineColor(1);
05351     //hAbIDNuMuNCPQ->SetBit(TH1::kCanRebin);
05352 
05353     hAbIDNuMuBarNCPQ=new TH1F("hAbIDNuMuBarNCPQ","hAbIDNuMuBarNCPQ",
05354                               4*320,-3.2,3.2);
05355     hAbIDNuMuBarNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05356     hAbIDNuMuBarNCPQ->GetXaxis()->CenterTitle();
05357     hAbIDNuMuBarNCPQ->GetYaxis()->SetTitle("");
05358     hAbIDNuMuBarNCPQ->GetYaxis()->CenterTitle();
05359     hAbIDNuMuBarNCPQ->SetFillColor(0);
05360     hAbIDNuMuBarNCPQ->SetLineColor(1);
05361     //hAbIDNuMuBarNCPQ->SetBit(TH1::kCanRebin);
05362 
05363 
05364     //nue
05365     hAbIDNueCCPQ=new TH1F("hAbIDNueCCPQ","hAbIDNueCCPQ",
05366                           4*320,-3.2,3.2);
05367     hAbIDNueCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05368     hAbIDNueCCPQ->GetXaxis()->CenterTitle();
05369     hAbIDNueCCPQ->GetYaxis()->SetTitle("");
05370     hAbIDNueCCPQ->GetYaxis()->CenterTitle();
05371     hAbIDNueCCPQ->SetFillColor(0);
05372     hAbIDNueCCPQ->SetLineColor(1);
05373     //hAbIDNueCCPQ->SetBit(TH1::kCanRebin);
05374 
05375     hAbIDNueBarCCPQ=new TH1F("hAbIDNueBarCCPQ","hAbIDNueBarCCPQ",
05376                              4*320,-3.2,3.2);
05377     hAbIDNueBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05378     hAbIDNueBarCCPQ->GetXaxis()->CenterTitle();
05379     hAbIDNueBarCCPQ->GetYaxis()->SetTitle("");
05380     hAbIDNueBarCCPQ->GetYaxis()->CenterTitle();
05381     hAbIDNueBarCCPQ->SetFillColor(0);
05382     hAbIDNueBarCCPQ->SetLineColor(1);
05383     //hAbIDNueBarCCPQ->SetBit(TH1::kCanRebin);
05384 
05385     hAbIDNueNCPQ=new TH1F("hAbIDNueNCPQ","hAbIDNueNCPQ",
05386                           4*320,-3.2,3.2);
05387     hAbIDNueNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05388     hAbIDNueNCPQ->GetXaxis()->CenterTitle();
05389     hAbIDNueNCPQ->GetYaxis()->SetTitle("");
05390     hAbIDNueNCPQ->GetYaxis()->CenterTitle();
05391     hAbIDNueNCPQ->SetFillColor(0);
05392     hAbIDNueNCPQ->SetLineColor(1);
05393     //hAbIDNueNCPQ->SetBit(TH1::kCanRebin);
05394 
05395     hAbIDNueBarNCPQ=new TH1F("hAbIDNueBarNCPQ","hAbIDNueBarNCPQ",
05396                              4*320,-3.2,3.2);
05397     hAbIDNueBarNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05398     hAbIDNueBarNCPQ->GetXaxis()->CenterTitle();
05399     hAbIDNueBarNCPQ->GetYaxis()->SetTitle("");
05400     hAbIDNueBarNCPQ->GetYaxis()->CenterTitle();
05401     hAbIDNueBarNCPQ->SetFillColor(0);
05402     hAbIDNueBarNCPQ->SetLineColor(1);
05403     //hAbIDNueBarNCPQ->SetBit(TH1::kCanRebin);
05404 
05405 
05406     //nutau
05407     hAbIDNuTauCCPQ=new TH1F("hAbIDNuTauCCPQ","hAbIDNuTauCCPQ",
05408                             4*320,-3.2,3.2);
05409     hAbIDNuTauCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05410     hAbIDNuTauCCPQ->GetXaxis()->CenterTitle();
05411     hAbIDNuTauCCPQ->GetYaxis()->SetTitle("");
05412     hAbIDNuTauCCPQ->GetYaxis()->CenterTitle();
05413     hAbIDNuTauCCPQ->SetFillColor(0);
05414     hAbIDNuTauCCPQ->SetLineColor(1);
05415     //hAbIDNuTauCCPQ->SetBit(TH1::kCanRebin);
05416 
05417     hAbIDNuTauBarCCPQ=new TH1F("hAbIDNuTauBarCCPQ","hAbIDNuTauBarCCPQ",
05418                                4*320,-3.2,3.2);
05419     hAbIDNuTauBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05420     hAbIDNuTauBarCCPQ->GetXaxis()->CenterTitle();
05421     hAbIDNuTauBarCCPQ->GetYaxis()->SetTitle("");
05422     hAbIDNuTauBarCCPQ->GetYaxis()->CenterTitle();
05423     hAbIDNuTauBarCCPQ->SetFillColor(0);
05424     hAbIDNuTauBarCCPQ->SetLineColor(1);
05425     //hAbIDNuTauBarCCPQ->SetBit(TH1::kCanRebin);
05426 
05427     hAbIDNuTauNCPQ=new TH1F("hAbIDNuTauNCPQ","hAbIDNuTauNCPQ",
05428                             4*320,-3.2,3.2);
05429     hAbIDNuTauNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05430     hAbIDNuTauNCPQ->GetXaxis()->CenterTitle();
05431     hAbIDNuTauNCPQ->GetYaxis()->SetTitle("");
05432     hAbIDNuTauNCPQ->GetYaxis()->CenterTitle();
05433     hAbIDNuTauNCPQ->SetFillColor(0);
05434     hAbIDNuTauNCPQ->SetLineColor(1);
05435     //hAbIDNuTauNCPQ->SetBit(TH1::kCanRebin);
05436 
05437     hAbIDNuTauBarNCPQ=new TH1F("hAbIDNuTauBarNCPQ","hAbIDNuTauBarNCPQ",
05438                                4*320,-3.2,3.2);
05439     hAbIDNuTauBarNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05440     hAbIDNuTauBarNCPQ->GetXaxis()->CenterTitle();
05441     hAbIDNuTauBarNCPQ->GetYaxis()->SetTitle("");
05442     hAbIDNuTauBarNCPQ->GetYaxis()->CenterTitle();
05443     hAbIDNuTauBarNCPQ->SetFillColor(0);
05444     hAbIDNuTauBarNCPQ->SetLineColor(1);
05445     //hAbIDNuTauBarNCPQ->SetBit(TH1::kCanRebin);
05446 
05447 
05448 
05449     hAbIDAllNCPQ=new TH1F("hAbIDAllNCPQ","hAbIDAllNCPQ",
05450                           4*320,-3.2,3.2);
05451     hAbIDAllNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05452     hAbIDAllNCPQ->GetXaxis()->CenterTitle();
05453     hAbIDAllNCPQ->GetYaxis()->SetTitle("");
05454     hAbIDAllNCPQ->GetYaxis()->CenterTitle();
05455     hAbIDAllNCPQ->SetFillColor(0);
05456     hAbIDAllNCPQ->SetLineColor(1);
05457     //hAbIDAllNCPQ->SetBit(TH1::kCanRebin);
05458 
05459     hAbIDAllShwPQ=new TH1F("hAbIDAllShwPQ","hAbIDAllShwPQ",
05460                            4*320,-3.2,3.2);
05461     hAbIDAllShwPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05462     hAbIDAllShwPQ->GetXaxis()->CenterTitle();
05463     hAbIDAllShwPQ->GetYaxis()->SetTitle("");
05464     hAbIDAllShwPQ->GetYaxis()->CenterTitle();
05465     hAbIDAllShwPQ->SetFillColor(0);
05466     hAbIDAllShwPQ->SetLineColor(1);
05467     //hAbIDAllShwPQ->SetBit(TH1::kCanRebin);
05468 
05469     hAbIDNotNuMuBarCCPQ=new TH1F("hAbIDNotNuMuBarCCPQ","hAbIDNotNuMuBarCCPQ",
05470                                  4*320,-3.2,3.2);
05471     hAbIDNotNuMuBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05472     hAbIDNotNuMuBarCCPQ->GetXaxis()->CenterTitle();
05473     hAbIDNotNuMuBarCCPQ->GetYaxis()->SetTitle("");
05474     hAbIDNotNuMuBarCCPQ->GetYaxis()->CenterTitle();
05475     hAbIDNotNuMuBarCCPQ->SetFillColor(0);
05476     hAbIDNotNuMuBarCCPQ->SetLineColor(1);
05477     //hAbIDNotNuMuBarCCPQ->SetBit(TH1::kCanRebin);
05478 
05479     hAbIDNotNuMuCCPQ=new TH1F("hAbIDNotNuMuCCPQ","hAbIDNotNuMuCCPQ",
05480                               4*320,-3.2,3.2);
05481     hAbIDNotNuMuCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05482     hAbIDNotNuMuCCPQ->GetXaxis()->CenterTitle();
05483     hAbIDNotNuMuCCPQ->GetYaxis()->SetTitle("");
05484     hAbIDNotNuMuCCPQ->GetYaxis()->CenterTitle();
05485     hAbIDNotNuMuCCPQ->SetFillColor(0);
05486     hAbIDNotNuMuCCPQ->SetLineColor(1);
05487     //hAbIDNotNuMuCCPQ->SetBit(TH1::kCanRebin);
05488 
05489     //all
05490     hAbIDPQ=new TH1F("hAbIDPQ","hAbIDPQ",
05491                      4*320,-3.2,3.2);
05492     hAbIDPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05493     hAbIDPQ->GetXaxis()->CenterTitle();
05494     hAbIDPQ->GetYaxis()->SetTitle("");
05495     hAbIDPQ->GetYaxis()->CenterTitle();
05496     hAbIDPQ->SetFillColor(0);
05497     hAbIDPQ->SetLineColor(1);
05498     //hAbIDPQ->SetBit(TH1::kCanRebin);
05499 
05501     //NQ////
05503     hAbIDNuMuCCNQ=new TH1F("hAbIDNuMuCCNQ","hAbIDNuMuCCNQ",
05504                            4*320,-3.2,3.2);
05505     hAbIDNuMuCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05506     hAbIDNuMuCCNQ->GetXaxis()->CenterTitle();
05507     hAbIDNuMuCCNQ->GetYaxis()->SetTitle("");
05508     hAbIDNuMuCCNQ->GetYaxis()->CenterTitle();
05509     hAbIDNuMuCCNQ->SetFillColor(0);
05510     hAbIDNuMuCCNQ->SetLineColor(1);
05511     //hAbIDNuMuCCNQ->SetBit(TH1::kCanRebin);
05512 
05513     hAbIDNuMuBarCCNQ=new TH1F("hAbIDNuMuBarCCNQ","hAbIDNuMuBarCCNQ",
05514                               4*320,-3.2,3.2);
05515     hAbIDNuMuBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05516     hAbIDNuMuBarCCNQ->GetXaxis()->CenterTitle();
05517     hAbIDNuMuBarCCNQ->GetYaxis()->SetTitle("");
05518     hAbIDNuMuBarCCNQ->GetYaxis()->CenterTitle();
05519     hAbIDNuMuBarCCNQ->SetFillColor(0);
05520     hAbIDNuMuBarCCNQ->SetLineColor(1);
05521     //hAbIDNuMuBarCCNQ->SetBit(TH1::kCanRebin);
05522 
05523     hAbIDNuMuNCNQ=new TH1F("hAbIDNuMuNCNQ","hAbIDNuMuNCNQ",
05524                            4*320,-3.2,3.2);
05525     hAbIDNuMuNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05526     hAbIDNuMuNCNQ->GetXaxis()->CenterTitle();
05527     hAbIDNuMuNCNQ->GetYaxis()->SetTitle("");
05528     hAbIDNuMuNCNQ->GetYaxis()->CenterTitle();
05529     hAbIDNuMuNCNQ->SetFillColor(0);
05530     hAbIDNuMuNCNQ->SetLineColor(1);
05531     //hAbIDNuMuNCNQ->SetBit(TH1::kCanRebin);
05532 
05533     hAbIDNuMuBarNCNQ=new TH1F("hAbIDNuMuBarNCNQ","hAbIDNuMuBarNCNQ",
05534                               4*320,-3.2,3.2);
05535     hAbIDNuMuBarNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05536     hAbIDNuMuBarNCNQ->GetXaxis()->CenterTitle();
05537     hAbIDNuMuBarNCNQ->GetYaxis()->SetTitle("");
05538     hAbIDNuMuBarNCNQ->GetYaxis()->CenterTitle();
05539     hAbIDNuMuBarNCNQ->SetFillColor(0);
05540     hAbIDNuMuBarNCNQ->SetLineColor(1);
05541     //hAbIDNuMuBarNCNQ->SetBit(TH1::kCanRebin);
05542 
05543 
05544     //nue
05545     hAbIDNueCCNQ=new TH1F("hAbIDNueCCNQ","hAbIDNueCCNQ",
05546                           4*320,-3.2,3.2);
05547     hAbIDNueCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05548     hAbIDNueCCNQ->GetXaxis()->CenterTitle();
05549     hAbIDNueCCNQ->GetYaxis()->SetTitle("");
05550     hAbIDNueCCNQ->GetYaxis()->CenterTitle();
05551     hAbIDNueCCNQ->SetFillColor(0);
05552     hAbIDNueCCNQ->SetLineColor(1);
05553     //hAbIDNueCCNQ->SetBit(TH1::kCanRebin);
05554 
05555     hAbIDNueBarCCNQ=new TH1F("hAbIDNueBarCCNQ","hAbIDNueBarCCNQ",
05556                              4*320,-3.2,3.2);
05557     hAbIDNueBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05558     hAbIDNueBarCCNQ->GetXaxis()->CenterTitle();
05559     hAbIDNueBarCCNQ->GetYaxis()->SetTitle("");
05560     hAbIDNueBarCCNQ->GetYaxis()->CenterTitle();
05561     hAbIDNueBarCCNQ->SetFillColor(0);
05562     hAbIDNueBarCCNQ->SetLineColor(1);
05563     //hAbIDNueBarCCNQ->SetBit(TH1::kCanRebin);
05564 
05565     hAbIDNueNCNQ=new TH1F("hAbIDNueNCNQ","hAbIDNueNCNQ",
05566                           4*320,-3.2,3.2);
05567     hAbIDNueNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05568     hAbIDNueNCNQ->GetXaxis()->CenterTitle();
05569     hAbIDNueNCNQ->GetYaxis()->SetTitle("");
05570     hAbIDNueNCNQ->GetYaxis()->CenterTitle();
05571     hAbIDNueNCNQ->SetFillColor(0);
05572     hAbIDNueNCNQ->SetLineColor(1);
05573     //hAbIDNueNCNQ->SetBit(TH1::kCanRebin);
05574 
05575     hAbIDNueBarNCNQ=new TH1F("hAbIDNueBarNCNQ","hAbIDNueBarNCNQ",
05576                              4*320,-3.2,3.2);
05577     hAbIDNueBarNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05578     hAbIDNueBarNCNQ->GetXaxis()->CenterTitle();
05579     hAbIDNueBarNCNQ->GetYaxis()->SetTitle("");
05580     hAbIDNueBarNCNQ->GetYaxis()->CenterTitle();
05581     hAbIDNueBarNCNQ->SetFillColor(0);
05582     hAbIDNueBarNCNQ->SetLineColor(1);
05583     //hAbIDNueBarNCNQ->SetBit(TH1::kCanRebin);
05584 
05585 
05586     //nutau
05587     hAbIDNuTauCCNQ=new TH1F("hAbIDNuTauCCNQ","hAbIDNuTauCCNQ",
05588                             4*320,-3.2,3.2);
05589     hAbIDNuTauCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05590     hAbIDNuTauCCNQ->GetXaxis()->CenterTitle();
05591     hAbIDNuTauCCNQ->GetYaxis()->SetTitle("");
05592     hAbIDNuTauCCNQ->GetYaxis()->CenterTitle();
05593     hAbIDNuTauCCNQ->SetFillColor(0);
05594     hAbIDNuTauCCNQ->SetLineColor(1);
05595     //hAbIDNuTauCCNQ->SetBit(TH1::kCanRebin);
05596 
05597     hAbIDNuTauBarCCNQ=new TH1F("hAbIDNuTauBarCCNQ","hAbIDNuTauBarCCNQ",
05598                                4*320,-3.2,3.2);
05599     hAbIDNuTauBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05600     hAbIDNuTauBarCCNQ->GetXaxis()->CenterTitle();
05601     hAbIDNuTauBarCCNQ->GetYaxis()->SetTitle("");
05602     hAbIDNuTauBarCCNQ->GetYaxis()->CenterTitle();
05603     hAbIDNuTauBarCCNQ->SetFillColor(0);
05604     hAbIDNuTauBarCCNQ->SetLineColor(1);
05605     //hAbIDNuTauBarCCNQ->SetBit(TH1::kCanRebin);
05606 
05607     hAbIDNuTauNCNQ=new TH1F("hAbIDNuTauNCNQ","hAbIDNuTauNCNQ",
05608                             4*320,-3.2,3.2);
05609     hAbIDNuTauNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05610     hAbIDNuTauNCNQ->GetXaxis()->CenterTitle();
05611     hAbIDNuTauNCNQ->GetYaxis()->SetTitle("");
05612     hAbIDNuTauNCNQ->GetYaxis()->CenterTitle();
05613     hAbIDNuTauNCNQ->SetFillColor(0);
05614     hAbIDNuTauNCNQ->SetLineColor(1);
05615     //hAbIDNuTauNCNQ->SetBit(TH1::kCanRebin);
05616 
05617     hAbIDNuTauBarNCNQ=new TH1F("hAbIDNuTauBarNCNQ","hAbIDNuTauBarNCNQ",
05618                                4*320,-3.2,3.2);
05619     hAbIDNuTauBarNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05620     hAbIDNuTauBarNCNQ->GetXaxis()->CenterTitle();
05621     hAbIDNuTauBarNCNQ->GetYaxis()->SetTitle("");
05622     hAbIDNuTauBarNCNQ->GetYaxis()->CenterTitle();
05623     hAbIDNuTauBarNCNQ->SetFillColor(0);
05624     hAbIDNuTauBarNCNQ->SetLineColor(1);
05625     //hAbIDNuTauBarNCNQ->SetBit(TH1::kCanRebin);
05626 
05627 
05628 
05629     hAbIDAllNCNQ=new TH1F("hAbIDAllNCNQ","hAbIDAllNCNQ",
05630                           4*320,-3.2,3.2);
05631     hAbIDAllNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05632     hAbIDAllNCNQ->GetXaxis()->CenterTitle();
05633     hAbIDAllNCNQ->GetYaxis()->SetTitle("");
05634     hAbIDAllNCNQ->GetYaxis()->CenterTitle();
05635     hAbIDAllNCNQ->SetFillColor(0);
05636     hAbIDAllNCNQ->SetLineColor(1);
05637     //hAbIDAllNCNQ->SetBit(TH1::kCanRebin);
05638 
05639     hAbIDAllShwNQ=new TH1F("hAbIDAllShwNQ","hAbIDAllShwNQ",
05640                            4*320,-3.2,3.2);
05641     hAbIDAllShwNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05642     hAbIDAllShwNQ->GetXaxis()->CenterTitle();
05643     hAbIDAllShwNQ->GetYaxis()->SetTitle("");
05644     hAbIDAllShwNQ->GetYaxis()->CenterTitle();
05645     hAbIDAllShwNQ->SetFillColor(0);
05646     hAbIDAllShwNQ->SetLineColor(1);
05647     //hAbIDAllShwNQ->SetBit(TH1::kCanRebin);
05648 
05649     hAbIDNotNuMuBarCCNQ=new TH1F("hAbIDNotNuMuBarCCNQ","hAbIDNotNuMuBarCCNQ",
05650                                  4*320,-3.2,3.2);
05651     hAbIDNotNuMuBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05652     hAbIDNotNuMuBarCCNQ->GetXaxis()->CenterTitle();
05653     hAbIDNotNuMuBarCCNQ->GetYaxis()->SetTitle("");
05654     hAbIDNotNuMuBarCCNQ->GetYaxis()->CenterTitle();
05655     hAbIDNotNuMuBarCCNQ->SetFillColor(0);
05656     hAbIDNotNuMuBarCCNQ->SetLineColor(1);
05657     //hAbIDNotNuMuBarCCNQ->SetBit(TH1::kCanRebin);
05658 
05659     hAbIDNotNuMuCCNQ=new TH1F("hAbIDNotNuMuCCNQ","hAbIDNotNuMuCCNQ",
05660                               4*320,-3.2,3.2);
05661     hAbIDNotNuMuCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05662     hAbIDNotNuMuCCNQ->GetXaxis()->CenterTitle();
05663     hAbIDNotNuMuCCNQ->GetYaxis()->SetTitle("");
05664     hAbIDNotNuMuCCNQ->GetYaxis()->CenterTitle();
05665     hAbIDNotNuMuCCNQ->SetFillColor(0);
05666     hAbIDNotNuMuCCNQ->SetLineColor(1);
05667     //hAbIDNotNuMuCCNQ->SetBit(TH1::kCanRebin);
05668 
05669     hAbIDNQ=new TH1F("hAbIDNQ","hAbIDNQ",
05670                      4*320,-3.2,3.2);
05671     hAbIDNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
05672     hAbIDNQ->GetXaxis()->CenterTitle();
05673     hAbIDNQ->GetYaxis()->SetTitle("");
05674     hAbIDNQ->GetYaxis()->CenterTitle();
05675     hAbIDNQ->SetFillColor(0);
05676     hAbIDNQ->SetLineColor(1);
05677     //hAbIDNQ->SetBit(TH1::kCanRebin);
05678   }
05679 
05682 
05683   //fill the histos
05684   if (nu.charge>0) {
05685     hAbIDPQ->Fill(nu.abID,nu.rw);
05686   }
05687   else if (nu.charge<0) {
05688     hAbIDNQ->Fill(nu.abID,nu.rw);
05689   }
05690 
05691   //return if not MC
05692   if (nu.simFlag!=SimFlag::kMC) {
05693     MAXMSG("NuPlots",Msg::kDebug,1)
05694       <<"Not MC, so not filling TrueAbIDPQNQ histos..."<<endl;
05695     return;
05696   }
05697   MAXMSG("NuPlots",Msg::kDebug,1)
05698     <<"Is MC, filling TrueAbIDPQNQ histos..."<<endl;
05699   
05700   if (nu.charge>0) {
05701     if (nu.iaction==1){//CC
05702       if (nu.inu==14){
05703         hAbIDNuMuCCPQ->Fill(nu.abID,nu.rw);
05704       }
05705       else if (nu.inu==-14){
05706         hAbIDNuMuBarCCPQ->Fill(nu.abID,nu.rw);
05707       }
05708       else if (nu.inu==12){
05709         hAbIDNueCCPQ->Fill(nu.abID,nu.rw);
05710       }
05711       else if (nu.inu==-12){
05712         hAbIDNueBarCCPQ->Fill(nu.abID,nu.rw);
05713       }
05714       else if (nu.inu==16){
05715         hAbIDNuTauCCPQ->Fill(nu.abID,nu.rw);
05716       }
05717       else if (nu.inu==-16){
05718         hAbIDNuTauBarCCPQ->Fill(nu.abID,nu.rw);
05719       }
05720       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
05721     }
05722     else if (nu.iaction==0){//NC
05723       hAbIDAllNCPQ->Fill(nu.abID,nu.rw);
05724       if (nu.inu==14){
05725         hAbIDNuMuNCPQ->Fill(nu.abID,nu.rw);
05726       }
05727       else if (nu.inu==-14){
05728         hAbIDNuMuBarNCPQ->Fill(nu.abID,nu.rw);
05729       }
05730       else if (nu.inu==12){
05731         hAbIDNueNCPQ->Fill(nu.abID,nu.rw);
05732       }
05733       else if (nu.inu==-12){
05734         hAbIDNueBarNCPQ->Fill(nu.abID,nu.rw);
05735       }
05736       else if (nu.inu==16){
05737         hAbIDNuTauNCPQ->Fill(nu.abID,nu.rw);
05738       }
05739       else if (nu.inu==-16){
05740         hAbIDNuTauBarNCPQ->Fill(nu.abID,nu.rw);
05741       }
05742       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
05743     }
05744   
05745     //all but NuMu/NuMuBar CC
05746     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
05747       hAbIDAllShwPQ->Fill(nu.abID,nu.rw);
05748     }
05749 
05750     //fill all-but-numubar-cc histos
05751     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
05752       hAbIDNotNuMuBarCCPQ->Fill(nu.abID,nu.rw);
05753     }
05754     //fill all-but-numu-cc histos
05755     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
05756       //probably don't actually care about these ones... but do anyway
05757       hAbIDNotNuMuCCPQ->Fill(nu.abID,nu.rw);
05758     }
05759   }
05760   else if (nu.charge<0) {
05761     if (nu.iaction==1){//CC
05762       if (nu.inu==14){
05763         hAbIDNuMuCCNQ->Fill(nu.abID,nu.rw);
05764       }
05765       else if (nu.inu==-14){
05766         hAbIDNuMuBarCCNQ->Fill(nu.abID,nu.rw);
05767       }
05768       else if (nu.inu==12){
05769         hAbIDNueCCNQ->Fill(nu.abID,nu.rw);
05770       }
05771       else if (nu.inu==-12){
05772         hAbIDNueBarCCNQ->Fill(nu.abID,nu.rw);
05773       }
05774       else if (nu.inu==16){
05775         hAbIDNuTauCCNQ->Fill(nu.abID,nu.rw);
05776       }
05777       else if (nu.inu==-16){
05778         hAbIDNuTauBarCCNQ->Fill(nu.abID,nu.rw);
05779       }
05780       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
05781     }
05782     else if (nu.iaction==0){//NC
05783       hAbIDAllNCNQ->Fill(nu.abID,nu.rw);
05784       if (nu.inu==14){
05785         hAbIDNuMuNCNQ->Fill(nu.abID,nu.rw);
05786       }
05787       else if (nu.inu==-14){
05788         hAbIDNuMuBarNCNQ->Fill(nu.abID,nu.rw);
05789       }
05790       else if (nu.inu==12){
05791         hAbIDNueNCNQ->Fill(nu.abID,nu.rw);
05792       }
05793       else if (nu.inu==-12){
05794         hAbIDNueBarNCNQ->Fill(nu.abID,nu.rw);
05795       }
05796       else if (nu.inu==16){
05797         hAbIDNuTauNCNQ->Fill(nu.abID,nu.rw);
05798       }
05799       else if (nu.inu==-16){
05800         hAbIDNuTauBarNCNQ->Fill(nu.abID,nu.rw);
05801       }
05802       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
05803     }
05804   
05805     //all but NuMu/NuMuBar CC
05806     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
05807       hAbIDAllShwNQ->Fill(nu.abID,nu.rw);
05808     }
05809 
05810     //fill all-but-numubar-cc histos
05811     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
05812       hAbIDNotNuMuBarCCNQ->Fill(nu.abID,nu.rw);
05813     }
05814     //fill all-but-numu-cc histos
05815     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
05816       //probably don't actually care about these ones... but do anyway
05817       hAbIDNotNuMuCCNQ->Fill(nu.abID,nu.rw);
05818     }
05819   }
05820   else MSG("NuPlots",Msg::kWarning)<<"Ahhh qp=0"<<endl;
05821 }

void NuPlots::FillTrueDpIDHistos const NuEvent nu  )  const
 

This function makes plots of the PO ID for different true interaction types

Definition at line 5825 of file NuPlots.cxx.

References NuEvent::dpID, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::rw, and NuEvent::simFlag.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::EnergySpect(), NuCutImps::NuCutsSelection::MakePostPreSelectionPlots(), and NuAnalysis::NMBSummaryTreeAna().

05826 {
05827   static TH1F* hDpIDNuMuCC=0;
05828   static TH1F* hDpIDNuMuBarCC=0;
05829   static TH1F* hDpIDNuMuNC=0;
05830   static TH1F* hDpIDNuMuBarNC=0;
05831 
05832   static TH1F* hDpIDNueCC=0;
05833   static TH1F* hDpIDNueBarCC=0;
05834   static TH1F* hDpIDNueNC=0;
05835   static TH1F* hDpIDNueBarNC=0;
05836 
05837   static TH1F* hDpIDNuTauCC=0;
05838   static TH1F* hDpIDNuTauBarCC=0;
05839   static TH1F* hDpIDNuTauNC=0;
05840   static TH1F* hDpIDNuTauBarNC=0;
05841   
05842   static TH1F* hDpIDAllNC=0;
05843   static TH1F* hDpIDAllShw=0;
05844 
05845   static TH1F* hDpIDNotNuMuBarCC=0;
05846   static TH1F* hDpIDNotNuMuCC=0;
05847 
05848   if (!hDpIDNuMuCC){
05849     MAXMSG("NuPlots",Msg::kDebug,1)<<"Creating TrueDpID plots..."<<endl;
05850 
05851     hDpIDNuMuCC=new TH1F("hDpIDNuMuCC","hDpIDNuMuCC",
05852                          4*320,-3.2,3.2);
05853     hDpIDNuMuCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05854     hDpIDNuMuCC->GetXaxis()->CenterTitle();
05855     hDpIDNuMuCC->GetYaxis()->SetTitle("");
05856     hDpIDNuMuCC->GetYaxis()->CenterTitle();
05857     hDpIDNuMuCC->SetFillColor(0);
05858     hDpIDNuMuCC->SetLineColor(1);
05859     //hDpIDNuMuCC->SetBit(TH1::kCanRebin);
05860 
05861     hDpIDNuMuBarCC=new TH1F("hDpIDNuMuBarCC","hDpIDNuMuBarCC",
05862                             4*320,-3.2,3.2);
05863     hDpIDNuMuBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05864     hDpIDNuMuBarCC->GetXaxis()->CenterTitle();
05865     hDpIDNuMuBarCC->GetYaxis()->SetTitle("");
05866     hDpIDNuMuBarCC->GetYaxis()->CenterTitle();
05867     hDpIDNuMuBarCC->SetFillColor(0);
05868     hDpIDNuMuBarCC->SetLineColor(1);
05869     //hDpIDNuMuBarCC->SetBit(TH1::kCanRebin);
05870 
05871     hDpIDNuMuNC=new TH1F("hDpIDNuMuNC","hDpIDNuMuNC",
05872                          4*320,-3.2,3.2);
05873     hDpIDNuMuNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05874     hDpIDNuMuNC->GetXaxis()->CenterTitle();
05875     hDpIDNuMuNC->GetYaxis()->SetTitle("");
05876     hDpIDNuMuNC->GetYaxis()->CenterTitle();
05877     hDpIDNuMuNC->SetFillColor(0);
05878     hDpIDNuMuNC->SetLineColor(1);
05879     //hDpIDNuMuNC->SetBit(TH1::kCanRebin);
05880 
05881     hDpIDNuMuBarNC=new TH1F("hDpIDNuMuBarNC","hDpIDNuMuBarNC",
05882                             4*320,-3.2,3.2);
05883     hDpIDNuMuBarNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05884     hDpIDNuMuBarNC->GetXaxis()->CenterTitle();
05885     hDpIDNuMuBarNC->GetYaxis()->SetTitle("");
05886     hDpIDNuMuBarNC->GetYaxis()->CenterTitle();
05887     hDpIDNuMuBarNC->SetFillColor(0);
05888     hDpIDNuMuBarNC->SetLineColor(1);
05889     //hDpIDNuMuBarNC->SetBit(TH1::kCanRebin);
05890 
05891 
05892     //nue
05893     hDpIDNueCC=new TH1F("hDpIDNueCC","hDpIDNueCC",
05894                         4*320,-3.2,3.2);
05895     hDpIDNueCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05896     hDpIDNueCC->GetXaxis()->CenterTitle();
05897     hDpIDNueCC->GetYaxis()->SetTitle("");
05898     hDpIDNueCC->GetYaxis()->CenterTitle();
05899     hDpIDNueCC->SetFillColor(0);
05900     hDpIDNueCC->SetLineColor(1);
05901     //hDpIDNueCC->SetBit(TH1::kCanRebin);
05902 
05903     hDpIDNueBarCC=new TH1F("hDpIDNueBarCC","hDpIDNueBarCC",
05904                            4*320,-3.2,3.2);
05905     hDpIDNueBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05906     hDpIDNueBarCC->GetXaxis()->CenterTitle();
05907     hDpIDNueBarCC->GetYaxis()->SetTitle("");
05908     hDpIDNueBarCC->GetYaxis()->CenterTitle();
05909     hDpIDNueBarCC->SetFillColor(0);
05910     hDpIDNueBarCC->SetLineColor(1);
05911     //hDpIDNueBarCC->SetBit(TH1::kCanRebin);
05912 
05913     hDpIDNueNC=new TH1F("hDpIDNueNC","hDpIDNueNC",
05914                         4*320,-3.2,3.2);
05915     hDpIDNueNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05916     hDpIDNueNC->GetXaxis()->CenterTitle();
05917     hDpIDNueNC->GetYaxis()->SetTitle("");
05918     hDpIDNueNC->GetYaxis()->CenterTitle();
05919     hDpIDNueNC->SetFillColor(0);
05920     hDpIDNueNC->SetLineColor(1);
05921     //hDpIDNueNC->SetBit(TH1::kCanRebin);
05922 
05923     hDpIDNueBarNC=new TH1F("hDpIDNueBarNC","hDpIDNueBarNC",
05924                            4*320,-3.2,3.2);
05925     hDpIDNueBarNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05926     hDpIDNueBarNC->GetXaxis()->CenterTitle();
05927     hDpIDNueBarNC->GetYaxis()->SetTitle("");
05928     hDpIDNueBarNC->GetYaxis()->CenterTitle();
05929     hDpIDNueBarNC->SetFillColor(0);
05930     hDpIDNueBarNC->SetLineColor(1);
05931     //hDpIDNueBarNC->SetBit(TH1::kCanRebin);
05932 
05933 
05934     //nutau
05935     hDpIDNuTauCC=new TH1F("hDpIDNuTauCC","hDpIDNuTauCC",
05936                           4*320,-3.2,3.2);
05937     hDpIDNuTauCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05938     hDpIDNuTauCC->GetXaxis()->CenterTitle();
05939     hDpIDNuTauCC->GetYaxis()->SetTitle("");
05940     hDpIDNuTauCC->GetYaxis()->CenterTitle();
05941     hDpIDNuTauCC->SetFillColor(0);
05942     hDpIDNuTauCC->SetLineColor(1);
05943     //hDpIDNuTauCC->SetBit(TH1::kCanRebin);
05944 
05945     hDpIDNuTauBarCC=new TH1F("hDpIDNuTauBarCC","hDpIDNuTauBarCC",
05946                              4*320,-3.2,3.2);
05947     hDpIDNuTauBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05948     hDpIDNuTauBarCC->GetXaxis()->CenterTitle();
05949     hDpIDNuTauBarCC->GetYaxis()->SetTitle("");
05950     hDpIDNuTauBarCC->GetYaxis()->CenterTitle();
05951     hDpIDNuTauBarCC->SetFillColor(0);
05952     hDpIDNuTauBarCC->SetLineColor(1);
05953     //hDpIDNuTauBarCC->SetBit(TH1::kCanRebin);
05954 
05955     hDpIDNuTauNC=new TH1F("hDpIDNuTauNC","hDpIDNuTauNC",
05956                           4*320,-3.2,3.2);
05957     hDpIDNuTauNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05958     hDpIDNuTauNC->GetXaxis()->CenterTitle();
05959     hDpIDNuTauNC->GetYaxis()->SetTitle("");
05960     hDpIDNuTauNC->GetYaxis()->CenterTitle();
05961     hDpIDNuTauNC->SetFillColor(0);
05962     hDpIDNuTauNC->SetLineColor(1);
05963     //hDpIDNuTauNC->SetBit(TH1::kCanRebin);
05964 
05965     hDpIDNuTauBarNC=new TH1F("hDpIDNuTauBarNC","hDpIDNuTauBarNC",
05966                              4*320,-3.2,3.2);
05967     hDpIDNuTauBarNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05968     hDpIDNuTauBarNC->GetXaxis()->CenterTitle();
05969     hDpIDNuTauBarNC->GetYaxis()->SetTitle("");
05970     hDpIDNuTauBarNC->GetYaxis()->CenterTitle();
05971     hDpIDNuTauBarNC->SetFillColor(0);
05972     hDpIDNuTauBarNC->SetLineColor(1);
05973     //hDpIDNuTauBarNC->SetBit(TH1::kCanRebin);
05974 
05975 
05976 
05977     hDpIDAllNC=new TH1F("hDpIDAllNC","hDpIDAllNC",
05978                         4*320,-3.2,3.2);
05979     hDpIDAllNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
05980     hDpIDAllNC->GetXaxis()->CenterTitle();
05981     hDpIDAllNC->GetYaxis()->SetTitle("");
05982     hDpIDAllNC->GetYaxis()->CenterTitle();
05983     hDpIDAllNC->SetFillColor(0);
05984     hDpIDAllNC->SetLineColor(1);
05985     //hDpIDAllNC->SetBit(TH1::kCanRebin);
05986 
05987     hDpIDAllShw=new TH1F("hDpIDAllShw","hDpIDAllShw",
05988                          4*320,-3.2,3.2);
05989     hDpIDAllShw->GetXaxis()->SetTitle("PID (from NuBarPID)");
05990     hDpIDAllShw->GetXaxis()->CenterTitle();
05991     hDpIDAllShw->GetYaxis()->SetTitle("");
05992     hDpIDAllShw->GetYaxis()->CenterTitle();
05993     hDpIDAllShw->SetFillColor(0);
05994     hDpIDAllShw->SetLineColor(1);
05995     //hDpIDAllShw->SetBit(TH1::kCanRebin);
05996 
05997     hDpIDNotNuMuBarCC=new TH1F("hDpIDNotNuMuBarCC","hDpIDNotNuMuBarCC",
05998                                4*320,-3.2,3.2);
05999     hDpIDNotNuMuBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
06000     hDpIDNotNuMuBarCC->GetXaxis()->CenterTitle();
06001     hDpIDNotNuMuBarCC->GetYaxis()->SetTitle("");
06002     hDpIDNotNuMuBarCC->GetYaxis()->CenterTitle();
06003     hDpIDNotNuMuBarCC->SetFillColor(0);
06004     hDpIDNotNuMuBarCC->SetLineColor(1);
06005     //hDpIDNotNuMuBarCC->SetBit(TH1::kCanRebin);
06006 
06007     hDpIDNotNuMuCC=new TH1F("hDpIDNotNuMuCC","hDpIDNotNuMuCC",
06008                             4*320,-3.2,3.2);
06009     hDpIDNotNuMuCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
06010     hDpIDNotNuMuCC->GetXaxis()->CenterTitle();
06011     hDpIDNotNuMuCC->GetYaxis()->SetTitle("");
06012     hDpIDNotNuMuCC->GetYaxis()->CenterTitle();
06013     hDpIDNotNuMuCC->SetFillColor(0);
06014     hDpIDNotNuMuCC->SetLineColor(1);
06015     //hDpIDNotNuMuCC->SetBit(TH1::kCanRebin);
06016   }
06017 
06020 
06021   //return if not MC
06022   if (nu.simFlag!=SimFlag::kMC) {
06023     MAXMSG("NuPlots",Msg::kDebug,1)
06024       <<"Not MC, so not filling TrueDpID histos..."<<endl;
06025     return;
06026   }
06027   MAXMSG("NuPlots",Msg::kDebug,1)
06028     <<"Is MC, filling TrueDpID histos..."<<endl;
06029   
06030   if (nu.iaction==1){//CC
06031     if (nu.inu==14){
06032       hDpIDNuMuCC->Fill(nu.dpID,nu.rw);
06033     }
06034     else if (nu.inu==-14){
06035       hDpIDNuMuBarCC->Fill(nu.dpID,nu.rw);
06036     }
06037     else if (nu.inu==12){
06038       hDpIDNueCC->Fill(nu.dpID,nu.rw);
06039     }
06040     else if (nu.inu==-12){
06041       hDpIDNueBarCC->Fill(nu.dpID,nu.rw);
06042     }
06043     else if (nu.inu==16){
06044       hDpIDNuTauCC->Fill(nu.dpID,nu.rw);
06045     }
06046     else if (nu.inu==-16){
06047       hDpIDNuTauBarCC->Fill(nu.dpID,nu.rw);
06048     }
06049     else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
06050   }
06051   else if (nu.iaction==0){//NC
06052     hDpIDAllNC->Fill(nu.dpID,nu.rw);
06053     if (nu.inu==14){
06054       hDpIDNuMuNC->Fill(nu.dpID,nu.rw);
06055     }
06056     else if (nu.inu==-14){
06057       hDpIDNuMuBarNC->Fill(nu.dpID,nu.rw);
06058     }
06059     else if (nu.inu==12){
06060       hDpIDNueNC->Fill(nu.dpID,nu.rw);
06061     }
06062     else if (nu.inu==-12){
06063       hDpIDNueBarNC->Fill(nu.dpID,nu.rw);
06064     }
06065     else if (nu.inu==16){
06066       hDpIDNuTauNC->Fill(nu.dpID,nu.rw);
06067     }
06068     else if (nu.inu==-16){
06069       hDpIDNuTauBarNC->Fill(nu.dpID,nu.rw);
06070     }
06071     else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
06072   }
06073   
06074   //all but NuMu/NuMuBar CC
06075   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
06076     hDpIDAllShw->Fill(nu.dpID,nu.rw);
06077   }
06078 
06079   //fill all-but-numubar-cc histos
06080   if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
06081     hDpIDNotNuMuBarCC->Fill(nu.dpID,nu.rw);
06082   }
06083   //fill all-but-numu-cc histos
06084   if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
06085     //probably don't actually care about these ones... but do anyway
06086     hDpIDNotNuMuCC->Fill(nu.dpID,nu.rw);
06087   }  
06088 }

void NuPlots::FillTrueDpIDHistosPQNQ const NuEvent nu  )  const
 

This function makes plots of the DP ID for different true interaction types

Definition at line 6092 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::dpID, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::rw, and NuEvent::simFlag.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::EnergySpect(), NuCutImps::NuCutsSelection::MakePostPreSelectionPlots(), and NuAnalysis::NMBSummaryTreeAna().

06093 {
06094   //PQ
06095   static TH1F* hDpIDNuMuCCPQ=0;
06096   static TH1F* hDpIDNuMuBarCCPQ=0;
06097   static TH1F* hDpIDNuMuNCPQ=0;
06098   static TH1F* hDpIDNuMuBarNCPQ=0;
06099 
06100   static TH1F* hDpIDNueCCPQ=0;
06101   static TH1F* hDpIDNueBarCCPQ=0;
06102   static TH1F* hDpIDNueNCPQ=0;
06103   static TH1F* hDpIDNueBarNCPQ=0;
06104 
06105   static TH1F* hDpIDNuTauCCPQ=0;
06106   static TH1F* hDpIDNuTauBarCCPQ=0;
06107   static TH1F* hDpIDNuTauNCPQ=0;
06108   static TH1F* hDpIDNuTauBarNCPQ=0;
06109   
06110   static TH1F* hDpIDAllNCPQ=0;
06111   static TH1F* hDpIDAllShwPQ=0;
06112 
06113   static TH1F* hDpIDNotNuMuBarCCPQ=0;
06114   static TH1F* hDpIDNotNuMuCCPQ=0;
06115   static TH1F* hDpIDPQ=0;
06116 
06117   //NQ
06118   static TH1F* hDpIDNuMuCCNQ=0;
06119   static TH1F* hDpIDNuMuBarCCNQ=0;
06120   static TH1F* hDpIDNuMuNCNQ=0;
06121   static TH1F* hDpIDNuMuBarNCNQ=0;
06122 
06123   static TH1F* hDpIDNueCCNQ=0;
06124   static TH1F* hDpIDNueBarCCNQ=0;
06125   static TH1F* hDpIDNueNCNQ=0;
06126   static TH1F* hDpIDNueBarNCNQ=0;
06127   
06128   static TH1F* hDpIDNuTauCCNQ=0;
06129   static TH1F* hDpIDNuTauBarCCNQ=0;
06130   static TH1F* hDpIDNuTauNCNQ=0;
06131   static TH1F* hDpIDNuTauBarNCNQ=0;
06132 
06133   static TH1F* hDpIDAllNCNQ=0;
06134   static TH1F* hDpIDAllShwNQ=0;
06135 
06136   static TH1F* hDpIDNotNuMuBarCCNQ=0;
06137   static TH1F* hDpIDNotNuMuCCNQ=0;
06138   static TH1F* hDpIDNQ=0;
06139 
06140   if (!hDpIDNuMuCCPQ){
06141     MAXMSG("NuPlots",Msg::kDebug,1)
06142       <<"Creating TrueDpIDPQNQ plots..."<<endl;
06143 
06144     hDpIDNuMuCCPQ=new TH1F("hDpIDNuMuCCPQ","hDpIDNuMuCCPQ",
06145                            4*320,-3.2,3.2);
06146     hDpIDNuMuCCPQ->GetXaxis()->SetTitle(" PID (from NuBarPID)");
06147     hDpIDNuMuCCPQ->GetXaxis()->CenterTitle();
06148     hDpIDNuMuCCPQ->GetYaxis()->SetTitle("");
06149     hDpIDNuMuCCPQ->GetYaxis()->CenterTitle();
06150     hDpIDNuMuCCPQ->SetFillColor(0);
06151     hDpIDNuMuCCPQ->SetLineColor(1);
06152     //hDpIDNuMuCCPQ->SetBit(TH1::kCanRebin);
06153 
06154     hDpIDNuMuBarCCPQ=new TH1F("hDpIDNuMuBarCCPQ","hDpIDNuMuBarCCPQ",
06155                               4*320,-3.2,3.2);
06156     hDpIDNuMuBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06157     hDpIDNuMuBarCCPQ->GetXaxis()->CenterTitle();
06158     hDpIDNuMuBarCCPQ->GetYaxis()->SetTitle("");
06159     hDpIDNuMuBarCCPQ->GetYaxis()->CenterTitle();
06160     hDpIDNuMuBarCCPQ->SetFillColor(0);
06161     hDpIDNuMuBarCCPQ->SetLineColor(1);
06162     //hDpIDNuMuBarCCPQ->SetBit(TH1::kCanRebin);
06163 
06164     hDpIDNuMuNCPQ=new TH1F("hDpIDNuMuNCPQ","hDpIDNuMuNCPQ",
06165                            4*320,-3.2,3.2);
06166     hDpIDNuMuNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06167     hDpIDNuMuNCPQ->GetXaxis()->CenterTitle();
06168     hDpIDNuMuNCPQ->GetYaxis()->SetTitle("");
06169     hDpIDNuMuNCPQ->GetYaxis()->CenterTitle();
06170     hDpIDNuMuNCPQ->SetFillColor(0);
06171     hDpIDNuMuNCPQ->SetLineColor(1);
06172     //hDpIDNuMuNCPQ->SetBit(TH1::kCanRebin);
06173 
06174     hDpIDNuMuBarNCPQ=new TH1F("hDpIDNuMuBarNCPQ","hDpIDNuMuBarNCPQ",
06175                               4*320,-3.2,3.2);
06176     hDpIDNuMuBarNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06177     hDpIDNuMuBarNCPQ->GetXaxis()->CenterTitle();
06178     hDpIDNuMuBarNCPQ->GetYaxis()->SetTitle("");
06179     hDpIDNuMuBarNCPQ->GetYaxis()->CenterTitle();
06180     hDpIDNuMuBarNCPQ->SetFillColor(0);
06181     hDpIDNuMuBarNCPQ->SetLineColor(1);
06182     //hDpIDNuMuBarNCPQ->SetBit(TH1::kCanRebin);
06183 
06184 
06185     //nue
06186     hDpIDNueCCPQ=new TH1F("hDpIDNueCCPQ","hDpIDNueCCPQ",
06187                           4*320,-3.2,3.2);
06188     hDpIDNueCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06189     hDpIDNueCCPQ->GetXaxis()->CenterTitle();
06190     hDpIDNueCCPQ->GetYaxis()->SetTitle("");
06191     hDpIDNueCCPQ->GetYaxis()->CenterTitle();
06192     hDpIDNueCCPQ->SetFillColor(0);
06193     hDpIDNueCCPQ->SetLineColor(1);
06194     //hDpIDNueCCPQ->SetBit(TH1::kCanRebin);
06195 
06196     hDpIDNueBarCCPQ=new TH1F("hDpIDNueBarCCPQ","hDpIDNueBarCCPQ",
06197                              4*320,-3.2,3.2);
06198     hDpIDNueBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06199     hDpIDNueBarCCPQ->GetXaxis()->CenterTitle();
06200     hDpIDNueBarCCPQ->GetYaxis()->SetTitle("");
06201     hDpIDNueBarCCPQ->GetYaxis()->CenterTitle();
06202     hDpIDNueBarCCPQ->SetFillColor(0);
06203     hDpIDNueBarCCPQ->SetLineColor(1);
06204     //hDpIDNueBarCCPQ->SetBit(TH1::kCanRebin);
06205 
06206     hDpIDNueNCPQ=new TH1F("hDpIDNueNCPQ","hDpIDNueNCPQ",
06207                           4*320,-3.2,3.2);
06208     hDpIDNueNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06209     hDpIDNueNCPQ->GetXaxis()->CenterTitle();
06210     hDpIDNueNCPQ->GetYaxis()->SetTitle("");
06211     hDpIDNueNCPQ->GetYaxis()->CenterTitle();
06212     hDpIDNueNCPQ->SetFillColor(0);
06213     hDpIDNueNCPQ->SetLineColor(1);
06214     //hDpIDNueNCPQ->SetBit(TH1::kCanRebin);
06215 
06216     hDpIDNueBarNCPQ=new TH1F("hDpIDNueBarNCPQ","hDpIDNueBarNCPQ",
06217                              4*320,-3.2,3.2);
06218     hDpIDNueBarNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06219     hDpIDNueBarNCPQ->GetXaxis()->CenterTitle();
06220     hDpIDNueBarNCPQ->GetYaxis()->SetTitle("");
06221     hDpIDNueBarNCPQ->GetYaxis()->CenterTitle();
06222     hDpIDNueBarNCPQ->SetFillColor(0);
06223     hDpIDNueBarNCPQ->SetLineColor(1);
06224     //hDpIDNueBarNCPQ->SetBit(TH1::kCanRebin);
06225 
06226 
06227     //nutau
06228     hDpIDNuTauCCPQ=new TH1F("hDpIDNuTauCCPQ","hDpIDNuTauCCPQ",
06229                             4*320,-3.2,3.2);
06230     hDpIDNuTauCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06231     hDpIDNuTauCCPQ->GetXaxis()->CenterTitle();
06232     hDpIDNuTauCCPQ->GetYaxis()->SetTitle("");
06233     hDpIDNuTauCCPQ->GetYaxis()->CenterTitle();
06234     hDpIDNuTauCCPQ->SetFillColor(0);
06235     hDpIDNuTauCCPQ->SetLineColor(1);
06236     //hDpIDNuTauCCPQ->SetBit(TH1::kCanRebin);
06237 
06238     hDpIDNuTauBarCCPQ=new TH1F("hDpIDNuTauBarCCPQ","hDpIDNuTauBarCCPQ",
06239                                4*320,-3.2,3.2);
06240     hDpIDNuTauBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06241     hDpIDNuTauBarCCPQ->GetXaxis()->CenterTitle();
06242     hDpIDNuTauBarCCPQ->GetYaxis()->SetTitle("");
06243     hDpIDNuTauBarCCPQ->GetYaxis()->CenterTitle();
06244     hDpIDNuTauBarCCPQ->SetFillColor(0);
06245     hDpIDNuTauBarCCPQ->SetLineColor(1);
06246     //hDpIDNuTauBarCCPQ->SetBit(TH1::kCanRebin);
06247 
06248     hDpIDNuTauNCPQ=new TH1F("hDpIDNuTauNCPQ","hDpIDNuTauNCPQ",
06249                             4*320,-3.2,3.2);
06250     hDpIDNuTauNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06251     hDpIDNuTauNCPQ->GetXaxis()->CenterTitle();
06252     hDpIDNuTauNCPQ->GetYaxis()->SetTitle("");
06253     hDpIDNuTauNCPQ->GetYaxis()->CenterTitle();
06254     hDpIDNuTauNCPQ->SetFillColor(0);
06255     hDpIDNuTauNCPQ->SetLineColor(1);
06256     //hDpIDNuTauNCPQ->SetBit(TH1::kCanRebin);
06257 
06258     hDpIDNuTauBarNCPQ=new TH1F("hDpIDNuTauBarNCPQ","hDpIDNuTauBarNCPQ",
06259                                4*320,-3.2,3.2);
06260     hDpIDNuTauBarNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06261     hDpIDNuTauBarNCPQ->GetXaxis()->CenterTitle();
06262     hDpIDNuTauBarNCPQ->GetYaxis()->SetTitle("");
06263     hDpIDNuTauBarNCPQ->GetYaxis()->CenterTitle();
06264     hDpIDNuTauBarNCPQ->SetFillColor(0);
06265     hDpIDNuTauBarNCPQ->SetLineColor(1);
06266     //hDpIDNuTauBarNCPQ->SetBit(TH1::kCanRebin);
06267 
06268 
06269 
06270     hDpIDAllNCPQ=new TH1F("hDpIDAllNCPQ","hDpIDAllNCPQ",
06271                           4*320,-3.2,3.2);
06272     hDpIDAllNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06273     hDpIDAllNCPQ->GetXaxis()->CenterTitle();
06274     hDpIDAllNCPQ->GetYaxis()->SetTitle("");
06275     hDpIDAllNCPQ->GetYaxis()->CenterTitle();
06276     hDpIDAllNCPQ->SetFillColor(0);
06277     hDpIDAllNCPQ->SetLineColor(1);
06278     //hDpIDAllNCPQ->SetBit(TH1::kCanRebin);
06279 
06280     hDpIDAllShwPQ=new TH1F("hDpIDAllShwPQ","hDpIDAllShwPQ",
06281                            4*320,-3.2,3.2);
06282     hDpIDAllShwPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06283     hDpIDAllShwPQ->GetXaxis()->CenterTitle();
06284     hDpIDAllShwPQ->GetYaxis()->SetTitle("");
06285     hDpIDAllShwPQ->GetYaxis()->CenterTitle();
06286     hDpIDAllShwPQ->SetFillColor(0);
06287     hDpIDAllShwPQ->SetLineColor(1);
06288     //hDpIDAllShwPQ->SetBit(TH1::kCanRebin);
06289 
06290     hDpIDNotNuMuBarCCPQ=new TH1F("hDpIDNotNuMuBarCCPQ","hDpIDNotNuMuBarCCPQ",
06291                                  4*320,-3.2,3.2);
06292     hDpIDNotNuMuBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06293     hDpIDNotNuMuBarCCPQ->GetXaxis()->CenterTitle();
06294     hDpIDNotNuMuBarCCPQ->GetYaxis()->SetTitle("");
06295     hDpIDNotNuMuBarCCPQ->GetYaxis()->CenterTitle();
06296     hDpIDNotNuMuBarCCPQ->SetFillColor(0);
06297     hDpIDNotNuMuBarCCPQ->SetLineColor(1);
06298     //hDpIDNotNuMuBarCCPQ->SetBit(TH1::kCanRebin);
06299 
06300     hDpIDNotNuMuCCPQ=new TH1F("hDpIDNotNuMuCCPQ","hDpIDNotNuMuCCPQ",
06301                               4*320,-3.2,3.2);
06302     hDpIDNotNuMuCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06303     hDpIDNotNuMuCCPQ->GetXaxis()->CenterTitle();
06304     hDpIDNotNuMuCCPQ->GetYaxis()->SetTitle("");
06305     hDpIDNotNuMuCCPQ->GetYaxis()->CenterTitle();
06306     hDpIDNotNuMuCCPQ->SetFillColor(0);
06307     hDpIDNotNuMuCCPQ->SetLineColor(1);
06308     //hDpIDNotNuMuCCPQ->SetBit(TH1::kCanRebin);
06309 
06310     //all
06311     hDpIDPQ=new TH1F("hDpIDPQ","hDpIDPQ",
06312                      4*320,-3.2,3.2);
06313     hDpIDPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06314     hDpIDPQ->GetXaxis()->CenterTitle();
06315     hDpIDPQ->GetYaxis()->SetTitle("");
06316     hDpIDPQ->GetYaxis()->CenterTitle();
06317     hDpIDPQ->SetFillColor(0);
06318     hDpIDPQ->SetLineColor(1);
06319     //hDpIDPQ->SetBit(TH1::kCanRebin);
06320 
06322     //NQ////
06324     hDpIDNuMuCCNQ=new TH1F("hDpIDNuMuCCNQ","hDpIDNuMuCCNQ",
06325                            4*320,-3.2,3.2);
06326     hDpIDNuMuCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06327     hDpIDNuMuCCNQ->GetXaxis()->CenterTitle();
06328     hDpIDNuMuCCNQ->GetYaxis()->SetTitle("");
06329     hDpIDNuMuCCNQ->GetYaxis()->CenterTitle();
06330     hDpIDNuMuCCNQ->SetFillColor(0);
06331     hDpIDNuMuCCNQ->SetLineColor(1);
06332     //hDpIDNuMuCCNQ->SetBit(TH1::kCanRebin);
06333 
06334     hDpIDNuMuBarCCNQ=new TH1F("hDpIDNuMuBarCCNQ","hDpIDNuMuBarCCNQ",
06335                               4*320,-3.2,3.2);
06336     hDpIDNuMuBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06337     hDpIDNuMuBarCCNQ->GetXaxis()->CenterTitle();
06338     hDpIDNuMuBarCCNQ->GetYaxis()->SetTitle("");
06339     hDpIDNuMuBarCCNQ->GetYaxis()->CenterTitle();
06340     hDpIDNuMuBarCCNQ->SetFillColor(0);
06341     hDpIDNuMuBarCCNQ->SetLineColor(1);
06342     //hDpIDNuMuBarCCNQ->SetBit(TH1::kCanRebin);
06343 
06344     hDpIDNuMuNCNQ=new TH1F("hDpIDNuMuNCNQ","hDpIDNuMuNCNQ",
06345                            4*320,-3.2,3.2);
06346     hDpIDNuMuNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06347     hDpIDNuMuNCNQ->GetXaxis()->CenterTitle();
06348     hDpIDNuMuNCNQ->GetYaxis()->SetTitle("");
06349     hDpIDNuMuNCNQ->GetYaxis()->CenterTitle();
06350     hDpIDNuMuNCNQ->SetFillColor(0);
06351     hDpIDNuMuNCNQ->SetLineColor(1);
06352     //hDpIDNuMuNCNQ->SetBit(TH1::kCanRebin);
06353 
06354     hDpIDNuMuBarNCNQ=new TH1F("hDpIDNuMuBarNCNQ","hDpIDNuMuBarNCNQ",
06355                               4*320,-3.2,3.2);
06356     hDpIDNuMuBarNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06357     hDpIDNuMuBarNCNQ->GetXaxis()->CenterTitle();
06358     hDpIDNuMuBarNCNQ->GetYaxis()->SetTitle("");
06359     hDpIDNuMuBarNCNQ->GetYaxis()->CenterTitle();
06360     hDpIDNuMuBarNCNQ->SetFillColor(0);
06361     hDpIDNuMuBarNCNQ->SetLineColor(1);
06362     //hDpIDNuMuBarNCNQ->SetBit(TH1::kCanRebin);
06363 
06364 
06365     //nue
06366     hDpIDNueCCNQ=new TH1F("hDpIDNueCCNQ","hDpIDNueCCNQ",
06367                           4*320,-3.2,3.2);
06368     hDpIDNueCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06369     hDpIDNueCCNQ->GetXaxis()->CenterTitle();
06370     hDpIDNueCCNQ->GetYaxis()->SetTitle("");
06371     hDpIDNueCCNQ->GetYaxis()->CenterTitle();
06372     hDpIDNueCCNQ->SetFillColor(0);
06373     hDpIDNueCCNQ->SetLineColor(1);
06374     //hDpIDNueCCNQ->SetBit(TH1::kCanRebin);
06375 
06376     hDpIDNueBarCCNQ=new TH1F("hDpIDNueBarCCNQ","hDpIDNueBarCCNQ",
06377                              4*320,-3.2,3.2);
06378     hDpIDNueBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06379     hDpIDNueBarCCNQ->GetXaxis()->CenterTitle();
06380     hDpIDNueBarCCNQ->GetYaxis()->SetTitle("");
06381     hDpIDNueBarCCNQ->GetYaxis()->CenterTitle();
06382     hDpIDNueBarCCNQ->SetFillColor(0);
06383     hDpIDNueBarCCNQ->SetLineColor(1);
06384     //hDpIDNueBarCCNQ->SetBit(TH1::kCanRebin);
06385 
06386     hDpIDNueNCNQ=new TH1F("hDpIDNueNCNQ","hDpIDNueNCNQ",
06387                           4*320,-3.2,3.2);
06388     hDpIDNueNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06389     hDpIDNueNCNQ->GetXaxis()->CenterTitle();
06390     hDpIDNueNCNQ->GetYaxis()->SetTitle("");
06391     hDpIDNueNCNQ->GetYaxis()->CenterTitle();
06392     hDpIDNueNCNQ->SetFillColor(0);
06393     hDpIDNueNCNQ->SetLineColor(1);
06394     //hDpIDNueNCNQ->SetBit(TH1::kCanRebin);
06395 
06396     hDpIDNueBarNCNQ=new TH1F("hDpIDNueBarNCNQ","hDpIDNueBarNCNQ",
06397                              4*320,-3.2,3.2);
06398     hDpIDNueBarNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06399     hDpIDNueBarNCNQ->GetXaxis()->CenterTitle();
06400     hDpIDNueBarNCNQ->GetYaxis()->SetTitle("");
06401     hDpIDNueBarNCNQ->GetYaxis()->CenterTitle();
06402     hDpIDNueBarNCNQ->SetFillColor(0);
06403     hDpIDNueBarNCNQ->SetLineColor(1);
06404     //hDpIDNueBarNCNQ->SetBit(TH1::kCanRebin);
06405 
06406 
06407     //nutau
06408     hDpIDNuTauCCNQ=new TH1F("hDpIDNuTauCCNQ","hDpIDNuTauCCNQ",
06409                             4*320,-3.2,3.2);
06410     hDpIDNuTauCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06411     hDpIDNuTauCCNQ->GetXaxis()->CenterTitle();
06412     hDpIDNuTauCCNQ->GetYaxis()->SetTitle("");
06413     hDpIDNuTauCCNQ->GetYaxis()->CenterTitle();
06414     hDpIDNuTauCCNQ->SetFillColor(0);
06415     hDpIDNuTauCCNQ->SetLineColor(1);
06416     //hDpIDNuTauCCNQ->SetBit(TH1::kCanRebin);
06417 
06418     hDpIDNuTauBarCCNQ=new TH1F("hDpIDNuTauBarCCNQ","hDpIDNuTauBarCCNQ",
06419                                4*320,-3.2,3.2);
06420     hDpIDNuTauBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06421     hDpIDNuTauBarCCNQ->GetXaxis()->CenterTitle();
06422     hDpIDNuTauBarCCNQ->GetYaxis()->SetTitle("");
06423     hDpIDNuTauBarCCNQ->GetYaxis()->CenterTitle();
06424     hDpIDNuTauBarCCNQ->SetFillColor(0);
06425     hDpIDNuTauBarCCNQ->SetLineColor(1);
06426     //hDpIDNuTauBarCCNQ->SetBit(TH1::kCanRebin);
06427 
06428     hDpIDNuTauNCNQ=new TH1F("hDpIDNuTauNCNQ","hDpIDNuTauNCNQ",
06429                             4*320,-3.2,3.2);
06430     hDpIDNuTauNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06431     hDpIDNuTauNCNQ->GetXaxis()->CenterTitle();
06432     hDpIDNuTauNCNQ->GetYaxis()->SetTitle("");
06433     hDpIDNuTauNCNQ->GetYaxis()->CenterTitle();
06434     hDpIDNuTauNCNQ->SetFillColor(0);
06435     hDpIDNuTauNCNQ->SetLineColor(1);
06436     //hDpIDNuTauNCNQ->SetBit(TH1::kCanRebin);
06437 
06438     hDpIDNuTauBarNCNQ=new TH1F("hDpIDNuTauBarNCNQ","hDpIDNuTauBarNCNQ",
06439                                4*320,-3.2,3.2);
06440     hDpIDNuTauBarNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06441     hDpIDNuTauBarNCNQ->GetXaxis()->CenterTitle();
06442     hDpIDNuTauBarNCNQ->GetYaxis()->SetTitle("");
06443     hDpIDNuTauBarNCNQ->GetYaxis()->CenterTitle();
06444     hDpIDNuTauBarNCNQ->SetFillColor(0);
06445     hDpIDNuTauBarNCNQ->SetLineColor(1);
06446     //hDpIDNuTauBarNCNQ->SetBit(TH1::kCanRebin);
06447 
06448 
06449 
06450     hDpIDAllNCNQ=new TH1F("hDpIDAllNCNQ","hDpIDAllNCNQ",
06451                           4*320,-3.2,3.2);
06452     hDpIDAllNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06453     hDpIDAllNCNQ->GetXaxis()->CenterTitle();
06454     hDpIDAllNCNQ->GetYaxis()->SetTitle("");
06455     hDpIDAllNCNQ->GetYaxis()->CenterTitle();
06456     hDpIDAllNCNQ->SetFillColor(0);
06457     hDpIDAllNCNQ->SetLineColor(1);
06458     //hDpIDAllNCNQ->SetBit(TH1::kCanRebin);
06459 
06460     hDpIDAllShwNQ=new TH1F("hDpIDAllShwNQ","hDpIDAllShwNQ",
06461                            4*320,-3.2,3.2);
06462     hDpIDAllShwNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06463     hDpIDAllShwNQ->GetXaxis()->CenterTitle();
06464     hDpIDAllShwNQ->GetYaxis()->SetTitle("");
06465     hDpIDAllShwNQ->GetYaxis()->CenterTitle();
06466     hDpIDAllShwNQ->SetFillColor(0);
06467     hDpIDAllShwNQ->SetLineColor(1);
06468     //hDpIDAllShwNQ->SetBit(TH1::kCanRebin);
06469 
06470     hDpIDNotNuMuBarCCNQ=new TH1F("hDpIDNotNuMuBarCCNQ","hDpIDNotNuMuBarCCNQ",
06471                                  4*320,-3.2,3.2);
06472     hDpIDNotNuMuBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06473     hDpIDNotNuMuBarCCNQ->GetXaxis()->CenterTitle();
06474     hDpIDNotNuMuBarCCNQ->GetYaxis()->SetTitle("");
06475     hDpIDNotNuMuBarCCNQ->GetYaxis()->CenterTitle();
06476     hDpIDNotNuMuBarCCNQ->SetFillColor(0);
06477     hDpIDNotNuMuBarCCNQ->SetLineColor(1);
06478     //hDpIDNotNuMuBarCCNQ->SetBit(TH1::kCanRebin);
06479 
06480     hDpIDNotNuMuCCNQ=new TH1F("hDpIDNotNuMuCCNQ","hDpIDNotNuMuCCNQ",
06481                               4*320,-3.2,3.2);
06482     hDpIDNotNuMuCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06483     hDpIDNotNuMuCCNQ->GetXaxis()->CenterTitle();
06484     hDpIDNotNuMuCCNQ->GetYaxis()->SetTitle("");
06485     hDpIDNotNuMuCCNQ->GetYaxis()->CenterTitle();
06486     hDpIDNotNuMuCCNQ->SetFillColor(0);
06487     hDpIDNotNuMuCCNQ->SetLineColor(1);
06488     //hDpIDNotNuMuCCNQ->SetBit(TH1::kCanRebin);
06489 
06490     hDpIDNQ=new TH1F("hDpIDNQ","hDpIDNQ",
06491                      4*320,-3.2,3.2);
06492     hDpIDNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
06493     hDpIDNQ->GetXaxis()->CenterTitle();
06494     hDpIDNQ->GetYaxis()->SetTitle("");
06495     hDpIDNQ->GetYaxis()->CenterTitle();
06496     hDpIDNQ->SetFillColor(0);
06497     hDpIDNQ->SetLineColor(1);
06498     //hDpIDNQ->SetBit(TH1::kCanRebin);
06499   }
06500 
06503 
06504   //fill the histos
06505   if (nu.charge>0) {
06506     hDpIDPQ->Fill(nu.dpID,nu.rw);
06507   }
06508   else if (nu.charge<0) {
06509     hDpIDNQ->Fill(nu.dpID,nu.rw);
06510   }
06511 
06512   //return if not MC
06513   if (nu.simFlag!=SimFlag::kMC) {
06514     MAXMSG("NuPlots",Msg::kDebug,1)
06515       <<"Not MC, so not filling TrueDpIDPQNQ histos..."<<endl;
06516     return;
06517   }
06518   MAXMSG("NuPlots",Msg::kDebug,1)
06519     <<"Is MC, filling TrueDpIDPQNQ histos..."<<endl;
06520   
06521   if (nu.charge>0) {
06522     if (nu.iaction==1){//CC
06523       if (nu.inu==14){
06524         hDpIDNuMuCCPQ->Fill(nu.dpID,nu.rw);
06525       }
06526       else if (nu.inu==-14){
06527         hDpIDNuMuBarCCPQ->Fill(nu.dpID,nu.rw);
06528       }
06529       else if (nu.inu==12){
06530         hDpIDNueCCPQ->Fill(nu.dpID,nu.rw);
06531       }
06532       else if (nu.inu==-12){
06533         hDpIDNueBarCCPQ->Fill(nu.dpID,nu.rw);
06534       }
06535       else if (nu.inu==16){
06536         hDpIDNuTauCCPQ->Fill(nu.dpID,nu.rw);
06537       }
06538       else if (nu.inu==-16){
06539         hDpIDNuTauBarCCPQ->Fill(nu.dpID,nu.rw);
06540       }
06541       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
06542     }
06543     else if (nu.iaction==0){//NC
06544       hDpIDAllNCPQ->Fill(nu.dpID,nu.rw);
06545       if (nu.inu==14){
06546         hDpIDNuMuNCPQ->Fill(nu.dpID,nu.rw);
06547       }
06548       else if (nu.inu==-14){
06549         hDpIDNuMuBarNCPQ->Fill(nu.dpID,nu.rw);
06550       }
06551       else if (nu.inu==12){
06552         hDpIDNueNCPQ->Fill(nu.dpID,nu.rw);
06553       }
06554       else if (nu.inu==-12){
06555         hDpIDNueBarNCPQ->Fill(nu.dpID,nu.rw);
06556       }
06557       else if (nu.inu==16){
06558         hDpIDNuTauNCPQ->Fill(nu.dpID,nu.rw);
06559       }
06560       else if (nu.inu==-16){
06561         hDpIDNuTauBarNCPQ->Fill(nu.dpID,nu.rw);
06562       }
06563       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
06564     }
06565   
06566     //all but NuMu/NuMuBar CC
06567     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
06568       hDpIDAllShwPQ->Fill(nu.dpID,nu.rw);
06569     }
06570 
06571     //fill all-but-numubar-cc histos
06572     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
06573       hDpIDNotNuMuBarCCPQ->Fill(nu.dpID,nu.rw);
06574     }
06575     //fill all-but-numu-cc histos
06576     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
06577       //probably don't actually care about these ones... but do anyway
06578       hDpIDNotNuMuCCPQ->Fill(nu.dpID,nu.rw);
06579     }
06580   }
06581   else if (nu.charge<0) {
06582     if (nu.iaction==1){//CC
06583       if (nu.inu==14){
06584         hDpIDNuMuCCNQ->Fill(nu.dpID,nu.rw);
06585       }
06586       else if (nu.inu==-14){
06587         hDpIDNuMuBarCCNQ->Fill(nu.dpID,nu.rw);
06588       }
06589       else if (nu.inu==12){
06590         hDpIDNueCCNQ->Fill(nu.dpID,nu.rw);
06591       }
06592       else if (nu.inu==-12){
06593         hDpIDNueBarCCNQ->Fill(nu.dpID,nu.rw);
06594       }
06595       else if (nu.inu==16){
06596         hDpIDNuTauCCNQ->Fill(nu.dpID,nu.rw);
06597       }
06598       else if (nu.inu==-16){
06599         hDpIDNuTauBarCCNQ->Fill(nu.dpID,nu.rw);
06600       }
06601       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
06602     }
06603     else if (nu.iaction==0){//NC
06604       hDpIDAllNCNQ->Fill(nu.dpID,nu.rw);
06605       if (nu.inu==14){
06606         hDpIDNuMuNCNQ->Fill(nu.dpID,nu.rw);
06607       }
06608       else if (nu.inu==-14){
06609         hDpIDNuMuBarNCNQ->Fill(nu.dpID,nu.rw);
06610       }
06611       else if (nu.inu==12){
06612         hDpIDNueNCNQ->Fill(nu.dpID,nu.rw);
06613       }
06614       else if (nu.inu==-12){
06615         hDpIDNueBarNCNQ->Fill(nu.dpID,nu.rw);
06616       }
06617       else if (nu.inu==16){
06618         hDpIDNuTauNCNQ->Fill(nu.dpID,nu.rw);
06619       }
06620       else if (nu.inu==-16){
06621         hDpIDNuTauBarNCNQ->Fill(nu.dpID,nu.rw);
06622       }
06623       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
06624     }
06625   
06626     //all but NuMu/NuMuBar CC
06627     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
06628       hDpIDAllShwNQ->Fill(nu.dpID,nu.rw);
06629     }
06630 
06631     //fill all-but-numubar-cc histos
06632     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
06633       hDpIDNotNuMuBarCCNQ->Fill(nu.dpID,nu.rw);
06634     }
06635     //fill all-but-numu-cc histos
06636     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
06637       //probably don't actually care about these ones... but do anyway
06638       hDpIDNotNuMuCCNQ->Fill(nu.dpID,nu.rw);
06639     }
06640   }
06641   else MSG("NuPlots",Msg::kWarning)<<"Ahhh qp=0"<<endl;
06642 }

void NuPlots::FillTrueFidEnergySpect const NuMCEvent mc,
const NuBinningScheme::NuBinningScheme_t  binningScheme = NuBinningScheme::kUnknown
const
 

This function makes plots of the true energy spectrum

Definition at line 14064 of file NuPlots.cxx.

References MAXMSG, MSG, and NuUtilities::TrueBins().

14066 {
14068   
14069   //matrix method plots (CC numus)
14070   static TH1D* fTrueEnergyTrueCCFidEvents_ND=0;
14071   static TH1D* fTrueEnergyTrueCCFidEvents_FD=0;
14072   static TH1D* fTrueEnergyTrueCCFidEventsNoRw_ND=0;
14073   static TH1D* fTrueEnergyTrueCCFidEventsNoRw_FD=0;
14074   //matrix method plots (CC numubars)
14075   static TH1D* fTrueEnergyTrueCCFidEventsPQ_ND=0;
14076   static TH1D* fTrueEnergyTrueCCFidEventsPQ_FD=0;
14077   static TH1D* fTrueEnergyTrueCCFidEventsNoRwPQ_ND=0;
14078   static TH1D* fTrueEnergyTrueCCFidEventsNoRwPQ_FD=0;
14079   //matrix method plots (CC numus + CC numubars)
14080   static TH1D* fTrueEnergyTrueCCFidEventsAll_ND=0;
14081   static TH1D* fTrueEnergyTrueCCFidEventsAll_FD=0;
14082   static TH1D* fTrueEnergyTrueCCFidEventsNoRwAll_ND=0;
14083   static TH1D* fTrueEnergyTrueCCFidEventsNoRwAll_FD=0;
14084   //matrix method plots (CC nutaus)
14085   static TH1D* fTrueEnergyTrueCCFidEventsTau_FD=0;
14086   //matrix method plots (CC nutaubars)
14087   static TH1D* fTrueEnergyTrueCCFidEventsTauPQ_FD=0;
14088   //matrix method plots (CC nutaus + CC nutaubars)
14089   static TH1D* fTrueEnergyTrueCCFidEventsTauAll_FD=0;
14090 
14091   //other plots
14092   static TH1F* hEnFidNuMuCC=0;
14093   static TH1F* hEnFidNuMuBarCC=0;
14094   static TH1F* hEnFidNuMuNC=0;
14095   static TH1F* hEnFidNuMuBarNC=0;
14096 
14097   static TH1F* hEnFidNueCC=0;
14098   static TH1F* hEnFidNueBarCC=0;
14099   static TH1F* hEnFidNueNC=0;
14100   static TH1F* hEnFidNueBarNC=0;
14101 
14102   static TH1F* hEnFidNuTauCC=0;
14103   static TH1F* hEnFidNuTauBarCC=0;
14104   static TH1F* hEnFidNuTauNC=0;
14105   static TH1F* hEnFidNuTauBarNC=0;
14106   
14107   static TH1F* hEnFidAllNC=0;
14108   static TH1F* hEnFidAllShw=0;
14109 
14110   //y distributions
14111   static TH1F* hYFidNuMuCC=0;
14112   static TH1F* hYFidNuMuBarCC=0;
14113   static TH1F* hYFidNuMuNC=0;
14114   static TH1F* hYFidNuMuBarNC=0;
14115 
14116   static TH1F* hYFidNueCC=0;
14117   static TH1F* hYFidNueBarCC=0;
14118   static TH1F* hYFidNueNC=0;
14119   static TH1F* hYFidNueBarNC=0;
14120 
14121   static TH1F* hYFidNuTauCC=0;
14122   static TH1F* hYFidNuTauBarCC=0;
14123   static TH1F* hYFidNuTauNC=0;
14124   static TH1F* hYFidNuTauBarNC=0;
14125 
14126   //specific energy ranges
14127   static TH1F* hYFidNuMuCCl10=0;
14128   static TH1F* hYFidNuMuBarCCl10=0;
14129   static TH1F* hYFidNuMuCCg10l20=0;
14130   static TH1F* hYFidNuMuBarCCg10l20=0;
14131   static TH1F* hYFidNuMuCCg20=0;
14132   static TH1F* hYFidNuMuBarCCg20=0;
14133 
14134   //xsec
14135   static TH1F* hXSecNMCC=0;
14136   static TH1F* hXSecNMBCC=0;
14137   static TH1F* hXSecNMNC=0;
14138   static TH1F* hXSecNMBNC=0;
14139 
14140   static TH1F* hXSecNECC=0;
14141   static TH1F* hXSecNEBCC=0;
14142   static TH1F* hXSecNENC=0;
14143   static TH1F* hXSecNEBNC=0;
14144 
14145   static TH1F* hXSecNTCC=0;
14146   static TH1F* hXSecNTBCC=0;
14147   static TH1F* hXSecNTNC=0;
14148   static TH1F* hXSecNTBNC=0;
14149   
14150   static TProfile* pXSecEnVsEnNMCC=0;
14151   static TProfile* pXSecEnVsEnNMBCC=0;
14152   static TProfile* pXSecEnVsEnNMNC=0;
14153   static TProfile* pXSecEnVsEnNMBNC=0;
14154 
14155   static TProfile* pXSecEnVsEnNECC=0;
14156   static TProfile* pXSecEnVsEnNEBCC=0;
14157   static TProfile* pXSecEnVsEnNENC=0;
14158   static TProfile* pXSecEnVsEnNEBNC=0;
14159 
14160   static TProfile* pXSecEnVsEnNTCC=0;
14161   static TProfile* pXSecEnVsEnNTBCC=0;
14162   static TProfile* pXSecEnVsEnNTNC=0;
14163   static TProfile* pXSecEnVsEnNTBNC=0;
14164 
14165   static TProfile* pXSecEnVsEnNMCCQE=0;
14166   static TProfile* pXSecEnVsEnNMBCCQE=0;
14167   static TProfile* pXSecEnVsEnNMCCRES=0;
14168   static TProfile* pXSecEnVsEnNMBCCRES=0;
14169   static TProfile* pXSecEnVsEnNMCCDIS=0;
14170   static TProfile* pXSecEnVsEnNMBCCDIS=0;
14171   static TProfile* pXSecEnVsEnNMCCCPP=0;
14172   static TProfile* pXSecEnVsEnNMBCCCPP=0;
14173 
14174   if (!hEnFidNuMuCC){
14175     MAXMSG("NuPlots",Msg::kDebug,1)
14176       <<"Creating TrueFidEnergySpect(nu) plots..."<<endl;
14177     /*
14178       Float_t lowx=0;
14179       Float_t uppx=200;
14180       Int_t fNBins=400;
14181       Float_t *fXBins;
14182       fXBins=new Float_t[fNBins+1];
14183       Float_t bwidth = (uppx-lowx)/float(fNBins);
14184       for(Int_t i=0;i<fNBins+1;i++) fXBins[i] = lowx + i*bwidth;
14185     */
14186 
14187     const NuUtilities cuts;
14188     const vector<Double_t> trueBins = cuts.TrueBins(binningScheme);
14189     const Int_t numTrueBins = trueBins.size()-1;
14190     Float_t *trueBinsArray;
14191     trueBinsArray=new Float_t[numTrueBins+1];
14192     {
14193       Int_t i=0;
14194       for (vector<Double_t>::const_iterator itBin = trueBins.begin();
14195            itBin != trueBins.end();
14196            ++itBin, ++i){
14197         trueBinsArray[i] = *itBin;
14198       }
14199     }
14200 
14201     //Matrix Method plots (CC numus):
14202     fTrueEnergyTrueCCFidEvents_FD = new TH1D
14203       ("TrueEnergyTrueCCFidEvents_FD",
14204        "True Fid NuMu CC Events with True Energy (FarDet)",
14205        numTrueBins,trueBinsArray);
14206     fTrueEnergyTrueCCFidEvents_FD->Sumw2();
14207     
14208     fTrueEnergyTrueCCFidEvents_ND = new TH1D
14209       ("TrueEnergyTrueCCFidEvents_ND",
14210        "True Fid NuMu CC Events with True Energy (NearDet)",
14211        numTrueBins,trueBinsArray);
14212     fTrueEnergyTrueCCFidEvents_ND->Sumw2();
14213 
14214     fTrueEnergyTrueCCFidEventsNoRw_FD = new TH1D
14215       ("TrueEnergyTrueCCFidEventsNoRw_FD",
14216        "True Fid NuMu CC Events with True Energy (FarDet)",
14217        numTrueBins,trueBinsArray);
14218     fTrueEnergyTrueCCFidEventsNoRw_FD->Sumw2();
14219     
14220     fTrueEnergyTrueCCFidEventsNoRw_ND = new TH1D
14221       ("TrueEnergyTrueCCFidEventsNoRw_ND",
14222        "True Fid NuMu CC Events with True Energy (NearDet)",
14223        numTrueBins,trueBinsArray);
14224     fTrueEnergyTrueCCFidEventsNoRw_ND->Sumw2();
14225 
14226     //Matrix Method plots (CC numubars):
14227     fTrueEnergyTrueCCFidEventsPQ_FD = new TH1D
14228       ("TrueEnergyTrueCCFidEventsPQ_FD",
14229        "True Fid NuMu CC Events with True Energy (FarDet)",
14230        numTrueBins,trueBinsArray);
14231     fTrueEnergyTrueCCFidEventsPQ_FD->Sumw2();
14232     
14233     fTrueEnergyTrueCCFidEventsPQ_ND = new TH1D
14234       ("TrueEnergyTrueCCFidEventsPQ_ND",
14235        "True Fid NuMu CC Events with True Energy (NearDet)",
14236        numTrueBins,trueBinsArray);
14237     fTrueEnergyTrueCCFidEventsPQ_ND->Sumw2();
14238 
14239     fTrueEnergyTrueCCFidEventsNoRwPQ_FD = new TH1D
14240       ("TrueEnergyTrueCCFidEventsNoRwPQ_FD",
14241        "True Fid NuMu CC Events with True Energy (FarDet)",
14242        numTrueBins,trueBinsArray);
14243     fTrueEnergyTrueCCFidEventsNoRwPQ_FD->Sumw2();
14244     
14245     fTrueEnergyTrueCCFidEventsNoRwPQ_ND = new TH1D
14246       ("TrueEnergyTrueCCFidEventsNoRwPQ_ND",
14247        "True Fid NuMu CC Events with True Energy (NearDet)",
14248        numTrueBins,trueBinsArray);
14249     fTrueEnergyTrueCCFidEventsNoRwPQ_ND->Sumw2();
14250 
14251     //Matrix Method plots (CC numus + CC numubars):
14252     fTrueEnergyTrueCCFidEventsAll_FD = new TH1D
14253       ("TrueEnergyTrueCCFidEventsAll_FD",
14254        "True Fid NuMu CC Events with True Energy (FarDet)",
14255        numTrueBins,trueBinsArray);
14256     fTrueEnergyTrueCCFidEventsAll_FD->Sumw2();
14257     
14258     fTrueEnergyTrueCCFidEventsAll_ND = new TH1D
14259       ("TrueEnergyTrueCCFidEventsAll_ND",
14260        "True Fid NuMu CC Events with True Energy (NearDet)",
14261        numTrueBins,trueBinsArray);
14262     fTrueEnergyTrueCCFidEventsAll_ND->Sumw2();
14263 
14264     fTrueEnergyTrueCCFidEventsNoRwAll_FD = new TH1D
14265       ("TrueEnergyTrueCCFidEventsNoRwAll_FD",
14266        "True Fid NuMu CC Events with True Energy (FarDet)",
14267        numTrueBins,trueBinsArray);
14268     fTrueEnergyTrueCCFidEventsNoRwAll_FD->Sumw2();
14269     
14270     fTrueEnergyTrueCCFidEventsNoRwAll_ND = new TH1D
14271       ("TrueEnergyTrueCCFidEventsNoRwAll_ND",
14272        "True Fid NuMu CC Events with True Energy (NearDet)",
14273        numTrueBins,trueBinsArray);
14274     fTrueEnergyTrueCCFidEventsNoRwAll_ND->Sumw2();
14275 
14276     //Matrix Method plots (CC nutaus):
14277     fTrueEnergyTrueCCFidEventsTau_FD = new TH1D
14278       ("TrueEnergyTrueCCFidEventsTau_FD",
14279        "True Fid NuTau CC Events with True Energy (FarDet)",
14280        numTrueBins,trueBinsArray);
14281     fTrueEnergyTrueCCFidEventsTau_FD->Sumw2();
14282 
14283     //Matrix Method plots (CC nutaubars):
14284     fTrueEnergyTrueCCFidEventsTauPQ_FD = new TH1D
14285       ("TrueEnergyTrueCCFidEventsTauPQ_FD",
14286        "True Fid NuTauBar CC Events with True Energy (FarDet)",
14287        numTrueBins,trueBinsArray);
14288     fTrueEnergyTrueCCFidEventsTauPQ_FD->Sumw2();
14289 
14290     //Matrix Method plots (CC nutaus + CC nutaubars):
14291     fTrueEnergyTrueCCFidEventsTauAll_FD = new TH1D
14292       ("TrueEnergyTrueCCFidEventsTauAll_FD",
14293        "True Fid NuTau CC Events with True Energy (FarDet)",
14294        numTrueBins,trueBinsArray);
14295     fTrueEnergyTrueCCFidEventsTauAll_FD->Sumw2();
14296   
14297 
14298 
14299     //binning used to be 400,-10,200 but rebin caused zero to be spanned
14300     //4*352,-32,320 can be rebinned by 2,4,8,16,32 
14301     //for 0.5,1,2,4,8 GeV bins
14302     hEnFidNuMuCC=new TH1F("hEnFidNuMuCC","hEnFidNuMuCC",
14303                           4*352,-32,320);
14304     hEnFidNuMuCC->GetXaxis()->SetTitle("True Energy (GeV)");
14305     hEnFidNuMuCC->GetXaxis()->CenterTitle();
14306     hEnFidNuMuCC->GetYaxis()->SetTitle("");
14307     hEnFidNuMuCC->GetYaxis()->CenterTitle();
14308     hEnFidNuMuCC->SetFillColor(0);
14309     hEnFidNuMuCC->SetLineColor(1);
14310     //hEnFidNuMuCC->SetBit(TH1::kCanRebin);
14311 
14312     hEnFidNuMuBarCC=new TH1F("hEnFidNuMuBarCC","hEnFidNuMuBarCC",
14313                              4*352,-32,320);
14314     hEnFidNuMuBarCC->GetXaxis()->SetTitle("True Energy (GeV)");
14315     hEnFidNuMuBarCC->GetXaxis()->CenterTitle();
14316     hEnFidNuMuBarCC->GetYaxis()->SetTitle("");
14317     hEnFidNuMuBarCC->GetYaxis()->CenterTitle();
14318     hEnFidNuMuBarCC->SetFillColor(0);
14319     hEnFidNuMuBarCC->SetLineColor(1);
14320     //hEnFidNuMuBarCC->SetBit(TH1::kCanRebin);
14321 
14322     hEnFidNuMuNC=new TH1F("hEnFidNuMuNC","hEnFidNuMuNC",
14323                           4*352,-32,320);
14324     hEnFidNuMuNC->GetXaxis()->SetTitle("True Energy (GeV)");
14325     hEnFidNuMuNC->GetXaxis()->CenterTitle();
14326     hEnFidNuMuNC->GetYaxis()->SetTitle("");
14327     hEnFidNuMuNC->GetYaxis()->CenterTitle();
14328     hEnFidNuMuNC->SetFillColor(0);
14329     hEnFidNuMuNC->SetLineColor(1);
14330     //hEnFidNuMuNC->SetBit(TH1::kCanRebin);
14331 
14332     hEnFidNuMuBarNC=new TH1F("hEnFidNuMuBarNC","hEnFidNuMuBarNC",
14333                              4*352,-32,320);
14334     hEnFidNuMuBarNC->GetXaxis()->SetTitle("True Energy (GeV)");
14335     hEnFidNuMuBarNC->GetXaxis()->CenterTitle();
14336     hEnFidNuMuBarNC->GetYaxis()->SetTitle("");
14337     hEnFidNuMuBarNC->GetYaxis()->CenterTitle();
14338     hEnFidNuMuBarNC->SetFillColor(0);
14339     hEnFidNuMuBarNC->SetLineColor(1);
14340     //hEnFidNuMuBarNC->SetBit(TH1::kCanRebin);
14341 
14342 
14343     //nue
14344     hEnFidNueCC=new TH1F("hEnFidNueCC","hEnFidNueCC",
14345                          4*352,-32,320);
14346     hEnFidNueCC->GetXaxis()->SetTitle("True Energy (GeV)");
14347     hEnFidNueCC->GetXaxis()->CenterTitle();
14348     hEnFidNueCC->GetYaxis()->SetTitle("");
14349     hEnFidNueCC->GetYaxis()->CenterTitle();
14350     hEnFidNueCC->SetFillColor(0);
14351     hEnFidNueCC->SetLineColor(1);
14352     //hEnFidNueCC->SetBit(TH1::kCanRebin);
14353 
14354     hEnFidNueBarCC=new TH1F("hEnFidNueBarCC","hEnFidNueBarCC",
14355                             4*352,-32,320);
14356     hEnFidNueBarCC->GetXaxis()->SetTitle("True Energy (GeV)");
14357     hEnFidNueBarCC->GetXaxis()->CenterTitle();
14358     hEnFidNueBarCC->GetYaxis()->SetTitle("");
14359     hEnFidNueBarCC->GetYaxis()->CenterTitle();
14360     hEnFidNueBarCC->SetFillColor(0);
14361     hEnFidNueBarCC->SetLineColor(1);
14362     //hEnFidNueBarCC->SetBit(TH1::kCanRebin);
14363 
14364     hEnFidNueNC=new TH1F("hEnFidNueNC","hEnFidNueNC",
14365                          4*352,-32,320);
14366     hEnFidNueNC->GetXaxis()->SetTitle("True Energy (GeV)");
14367     hEnFidNueNC->GetXaxis()->CenterTitle();
14368     hEnFidNueNC->GetYaxis()->SetTitle("");
14369     hEnFidNueNC->GetYaxis()->CenterTitle();
14370     hEnFidNueNC->SetFillColor(0);
14371     hEnFidNueNC->SetLineColor(1);
14372     //hEnFidNueNC->SetBit(TH1::kCanRebin);
14373 
14374     hEnFidNueBarNC=new TH1F("hEnFidNueBarNC","hEnFidNueBarNC",
14375                             4*352,-32,320);
14376     hEnFidNueBarNC->GetXaxis()->SetTitle("True Energy (GeV)");
14377     hEnFidNueBarNC->GetXaxis()->CenterTitle();
14378     hEnFidNueBarNC->GetYaxis()->SetTitle("");
14379     hEnFidNueBarNC->GetYaxis()->CenterTitle();
14380     hEnFidNueBarNC->SetFillColor(0);
14381     hEnFidNueBarNC->SetLineColor(1);
14382     //hEnFidNueBarNC->SetBit(TH1::kCanRebin);
14383 
14384     //nutau
14385     hEnFidNuTauCC=new TH1F("hEnFidNuTauCC","hEnFidNuTauCC",
14386                            4*352,-32,320);
14387     hEnFidNuTauCC->GetXaxis()->SetTitle("True Energy (GeV)");
14388     hEnFidNuTauCC->GetXaxis()->CenterTitle();
14389     hEnFidNuTauCC->GetYaxis()->SetTitle("");
14390     hEnFidNuTauCC->GetYaxis()->CenterTitle();
14391     hEnFidNuTauCC->SetFillColor(0);
14392     hEnFidNuTauCC->SetLineColor(1);
14393     //hEnFidNuTauCC->SetBit(TH1::kCanRebin);
14394 
14395     hEnFidNuTauBarCC=new TH1F("hEnFidNuTauBarCC","hEnFidNuTauBarCC",
14396                               4*352,-32,320);
14397     hEnFidNuTauBarCC->GetXaxis()->SetTitle("True Energy (GeV)");
14398     hEnFidNuTauBarCC->GetXaxis()->CenterTitle();
14399     hEnFidNuTauBarCC->GetYaxis()->SetTitle("");
14400     hEnFidNuTauBarCC->GetYaxis()->CenterTitle();
14401     hEnFidNuTauBarCC->SetFillColor(0);
14402     hEnFidNuTauBarCC->SetLineColor(1);
14403     //hEnFidNuTauBarCC->SetBit(TH1::kCanRebin);
14404 
14405     hEnFidNuTauNC=new TH1F("hEnFidNuTauNC","hEnFidNuTauNC",
14406                            4*352,-32,320);
14407     hEnFidNuTauNC->GetXaxis()->SetTitle("True Energy (GeV)");
14408     hEnFidNuTauNC->GetXaxis()->CenterTitle();
14409     hEnFidNuTauNC->GetYaxis()->SetTitle("");
14410     hEnFidNuTauNC->GetYaxis()->CenterTitle();
14411     hEnFidNuTauNC->SetFillColor(0);
14412     hEnFidNuTauNC->SetLineColor(1);
14413     //hEnFidNuTauNC->SetBit(TH1::kCanRebin);
14414 
14415     hEnFidNuTauBarNC=new TH1F("hEnFidNuTauBarNC","hEnFidNuTauBarNC",
14416                               4*352,-32,320);
14417     hEnFidNuTauBarNC->GetXaxis()->SetTitle("True Energy (GeV)");
14418     hEnFidNuTauBarNC->GetXaxis()->CenterTitle();
14419     hEnFidNuTauBarNC->GetYaxis()->SetTitle("");
14420     hEnFidNuTauBarNC->GetYaxis()->CenterTitle();
14421     hEnFidNuTauBarNC->SetFillColor(0);
14422     hEnFidNuTauBarNC->SetLineColor(1);
14423     //hEnFidNuTauBarNC->SetBit(TH1::kCanRebin);
14424 
14425 
14426 
14427     hEnFidAllNC=new TH1F("hEnFidAllNC","hEnFidAllNC",
14428                          4*352,-32,320);
14429     hEnFidAllNC->GetXaxis()->SetTitle("True Energy (GeV)");
14430     hEnFidAllNC->GetXaxis()->CenterTitle();
14431     hEnFidAllNC->GetYaxis()->SetTitle("");
14432     hEnFidAllNC->GetYaxis()->CenterTitle();
14433     hEnFidAllNC->SetFillColor(0);
14434     hEnFidAllNC->SetLineColor(1);
14435     //hEnFidAllNC->SetBit(TH1::kCanRebin);
14436 
14437     hEnFidAllShw=new TH1F("hEnFidAllShw","hEnFidAllShw",
14438                           4*352,-32,320);
14439     hEnFidAllShw->GetXaxis()->SetTitle("True Energy (GeV)");
14440     hEnFidAllShw->GetXaxis()->CenterTitle();
14441     hEnFidAllShw->GetYaxis()->SetTitle("");
14442     hEnFidAllShw->GetYaxis()->CenterTitle();
14443     hEnFidAllShw->SetFillColor(0);
14444     hEnFidAllShw->SetLineColor(1);
14445     //hEnFidAllShw->SetBit(TH1::kCanRebin);
14446 
14448     //y distributions
14450     //was 400,-0.1,1.1
14451     hYFidNuMuCC=new TH1F("hYFidNuMuCC","hYFidNuMuCC",
14452                          1400,-0.2,1.2);
14453     hYFidNuMuCC->GetXaxis()->SetTitle("y");
14454     hYFidNuMuCC->GetXaxis()->CenterTitle();
14455     hYFidNuMuCC->GetYaxis()->SetTitle("");
14456     hYFidNuMuCC->GetYaxis()->CenterTitle();
14457     hYFidNuMuCC->SetFillColor(0);
14458     hYFidNuMuCC->SetLineColor(1);
14459     //hYFidNuMuCC->SetBit(TH1::kCanRebin);
14460 
14461     hYFidNuMuBarCC=new TH1F("hYFidNuMuBarCC","hYFidNuMuBarCC",
14462                             1400,-0.2,1.2);
14463     hYFidNuMuBarCC->GetXaxis()->SetTitle("y");
14464     hYFidNuMuBarCC->GetXaxis()->CenterTitle();
14465     hYFidNuMuBarCC->GetYaxis()->SetTitle("");
14466     hYFidNuMuBarCC->GetYaxis()->CenterTitle();
14467     hYFidNuMuBarCC->SetFillColor(0);
14468     hYFidNuMuBarCC->SetLineColor(1);
14469     //hYFidNuMuBarCC->SetBit(TH1::kCanRebin);
14470 
14471     hYFidNuMuNC=new TH1F("hYFidNuMuNC","hYFidNuMuNC",
14472                          1400,-0.2,1.2);
14473     hYFidNuMuNC->GetXaxis()->SetTitle("y");
14474     hYFidNuMuNC->GetXaxis()->CenterTitle();
14475     hYFidNuMuNC->GetYaxis()->SetTitle("");
14476     hYFidNuMuNC->GetYaxis()->CenterTitle();
14477     hYFidNuMuNC->SetFillColor(0);
14478     hYFidNuMuNC->SetLineColor(1);
14479     //hYFidNuMuNC->SetBit(TH1::kCanRebin);
14480 
14481     hYFidNuMuBarNC=new TH1F("hYFidNuMuBarNC","hYFidNuMuBarNC",
14482                             1400,-0.2,1.2);
14483     hYFidNuMuBarNC->GetXaxis()->SetTitle("y");
14484     hYFidNuMuBarNC->GetXaxis()->CenterTitle();
14485     hYFidNuMuBarNC->GetYaxis()->SetTitle("");
14486     hYFidNuMuBarNC->GetYaxis()->CenterTitle();
14487     hYFidNuMuBarNC->SetFillColor(0);
14488     hYFidNuMuBarNC->SetLineColor(1);
14489     //hYFidNuMuBarNC->SetBit(TH1::kCanRebin);
14490 
14491 
14492     //nue
14493     hYFidNueCC=new TH1F("hYFidNueCC","hYFidNueCC",
14494                         1400,-0.2,1.2);
14495     hYFidNueCC->GetXaxis()->SetTitle("y");
14496     hYFidNueCC->GetXaxis()->CenterTitle();
14497     hYFidNueCC->GetYaxis()->SetTitle("");
14498     hYFidNueCC->GetYaxis()->CenterTitle();
14499     hYFidNueCC->SetFillColor(0);
14500     hYFidNueCC->SetLineColor(1);
14501     //hYFidNueCC->SetBit(TH1::kCanRebin);
14502 
14503     hYFidNueBarCC=new TH1F("hYFidNueBarCC","hYFidNueBarCC",
14504                            1400,-0.2,1.2);
14505     hYFidNueBarCC->GetXaxis()->SetTitle("y");
14506     hYFidNueBarCC->GetXaxis()->CenterTitle();
14507     hYFidNueBarCC->GetYaxis()->SetTitle("");
14508     hYFidNueBarCC->GetYaxis()->CenterTitle();
14509     hYFidNueBarCC->SetFillColor(0);
14510     hYFidNueBarCC->SetLineColor(1);
14511     //hYFidNueBarCC->SetBit(TH1::kCanRebin);
14512 
14513     hYFidNueNC=new TH1F("hYFidNueNC","hYFidNueNC",
14514                         1400,-0.2,1.2);
14515     hYFidNueNC->GetXaxis()->SetTitle("y");
14516     hYFidNueNC->GetXaxis()->CenterTitle();
14517     hYFidNueNC->GetYaxis()->SetTitle("");
14518     hYFidNueNC->GetYaxis()->CenterTitle();
14519     hYFidNueNC->SetFillColor(0);
14520     hYFidNueNC->SetLineColor(1);
14521     //hYFidNueNC->SetBit(TH1::kCanRebin);
14522 
14523     hYFidNueBarNC=new TH1F("hYFidNueBarNC","hYFidNueBarNC",
14524                            1400,-0.2,1.2);
14525     hYFidNueBarNC->GetXaxis()->SetTitle("y");
14526     hYFidNueBarNC->GetXaxis()->CenterTitle();
14527     hYFidNueBarNC->GetYaxis()->SetTitle("");
14528     hYFidNueBarNC->GetYaxis()->CenterTitle();
14529     hYFidNueBarNC->SetFillColor(0);
14530     hYFidNueBarNC->SetLineColor(1);
14531     //hYFidNueBarNC->SetBit(TH1::kCanRebin);
14532 
14533 
14534     //nutau
14535     hYFidNuTauCC=new TH1F("hYFidNuTauCC","hYFidNuTauCC",
14536                           1400,-0.2,1.2);
14537     hYFidNuTauCC->GetXaxis()->SetTitle("y");
14538     hYFidNuTauCC->GetXaxis()->CenterTitle();
14539     hYFidNuTauCC->GetYaxis()->SetTitle("");
14540     hYFidNuTauCC->GetYaxis()->CenterTitle();
14541     hYFidNuTauCC->SetFillColor(0);
14542     hYFidNuTauCC->SetLineColor(1);
14543     //hYFidNuTauCC->SetBit(TH1::kCanRebin);
14544 
14545     hYFidNuTauBarCC=new TH1F("hYFidNuTauBarCC","hYFidNuTauBarCC",
14546                              1400,-0.2,1.2);
14547     hYFidNuTauBarCC->GetXaxis()->SetTitle("y");
14548     hYFidNuTauBarCC->GetXaxis()->CenterTitle();
14549     hYFidNuTauBarCC->GetYaxis()->SetTitle("");
14550     hYFidNuTauBarCC->GetYaxis()->CenterTitle();
14551     hYFidNuTauBarCC->SetFillColor(0);
14552     hYFidNuTauBarCC->SetLineColor(1);
14553     //hYFidNuTauBarCC->SetBit(TH1::kCanRebin);
14554 
14555     hYFidNuTauNC=new TH1F("hYFidNuTauNC","hYFidNuTauNC",
14556                           1400,-0.2,1.2);
14557     hYFidNuTauNC->GetXaxis()->SetTitle("y");
14558     hYFidNuTauNC->GetXaxis()->CenterTitle();
14559     hYFidNuTauNC->GetYaxis()->SetTitle("");
14560     hYFidNuTauNC->GetYaxis()->CenterTitle();
14561     hYFidNuTauNC->SetFillColor(0);
14562     hYFidNuTauNC->SetLineColor(1);
14563     //hYFidNuTauNC->SetBit(TH1::kCanRebin);
14564 
14565     hYFidNuTauBarNC=new TH1F("hYFidNuTauBarNC","hYFidNuTauBarNC",
14566                              1400,-0.2,1.2);
14567     hYFidNuTauBarNC->GetXaxis()->SetTitle("y");
14568     hYFidNuTauBarNC->GetXaxis()->CenterTitle();
14569     hYFidNuTauBarNC->GetYaxis()->SetTitle("");
14570     hYFidNuTauBarNC->GetYaxis()->CenterTitle();
14571     hYFidNuTauBarNC->SetFillColor(0);
14572     hYFidNuTauBarNC->SetLineColor(1);
14573     //hYFidNuTauBarNC->SetBit(TH1::kCanRebin);
14574 
14575 
14576 
14577     //specific energy ranges
14578     hYFidNuMuCCl10=new TH1F("hYFidNuMuCCl10","hYFidNuMuCCl10",
14579                             1400,-0.2,1.2);
14580     hYFidNuMuCCl10->GetXaxis()->SetTitle("y");
14581     hYFidNuMuCCl10->GetXaxis()->CenterTitle();
14582     hYFidNuMuCCl10->GetYaxis()->SetTitle("");
14583     hYFidNuMuCCl10->GetYaxis()->CenterTitle();
14584     hYFidNuMuCCl10->SetFillColor(0);
14585     hYFidNuMuCCl10->SetLineColor(1);
14586     //hYFidNuMuCCl10->SetBit(TH1::kCanRebin);
14587 
14588     hYFidNuMuBarCCl10=new TH1F("hYFidNuMuBarCCl10","hYFidNuMuBarCCl10",
14589                                1400,-0.2,1.2);
14590     hYFidNuMuBarCCl10->GetXaxis()->SetTitle("y");
14591     hYFidNuMuBarCCl10->GetXaxis()->CenterTitle();
14592     hYFidNuMuBarCCl10->GetYaxis()->SetTitle("");
14593     hYFidNuMuBarCCl10->GetYaxis()->CenterTitle();
14594     hYFidNuMuBarCCl10->SetFillColor(0);
14595     hYFidNuMuBarCCl10->SetLineColor(1);
14596     //hYFidNuMuBarCCl10->SetBit(TH1::kCanRebin);
14597 
14598     hYFidNuMuCCg10l20=new TH1F("hYFidNuMuCCg10l20","hYFidNuMuCCg10l20",
14599                                1400,-0.2,1.2);
14600     hYFidNuMuCCg10l20->GetXaxis()->SetTitle("y");
14601     hYFidNuMuCCg10l20->GetXaxis()->CenterTitle();
14602     hYFidNuMuCCg10l20->GetYaxis()->SetTitle("");
14603     hYFidNuMuCCg10l20->GetYaxis()->CenterTitle();
14604     hYFidNuMuCCg10l20->SetFillColor(0);
14605     hYFidNuMuCCg10l20->SetLineColor(1);
14606     //hYFidNuMuCCg10l20->SetBit(TH1::kCanRebin);
14607 
14608     hYFidNuMuBarCCg10l20=new TH1F("hYFidNuMuBarCCg10l20",
14609                                   "hYFidNuMuBarCCg10l20",
14610                                   1400,-0.2,1.2);
14611     hYFidNuMuBarCCg10l20->GetXaxis()->SetTitle("y");
14612     hYFidNuMuBarCCg10l20->GetXaxis()->CenterTitle();
14613     hYFidNuMuBarCCg10l20->GetYaxis()->SetTitle("");
14614     hYFidNuMuBarCCg10l20->GetYaxis()->CenterTitle();
14615     hYFidNuMuBarCCg10l20->SetFillColor(0);
14616     hYFidNuMuBarCCg10l20->SetLineColor(1);
14617     //hYFidNuMuBarCCg10l20->SetBit(TH1::kCanRebin);
14618 
14619     hYFidNuMuCCg20=new TH1F("hYFidNuMuCCg20","hYFidNuMuCCg20",
14620                             1400,-0.2,1.2);
14621     hYFidNuMuCCg20->GetXaxis()->SetTitle("y");
14622     hYFidNuMuCCg20->GetXaxis()->CenterTitle();
14623     hYFidNuMuCCg20->GetYaxis()->SetTitle("");
14624     hYFidNuMuCCg20->GetYaxis()->CenterTitle();
14625     hYFidNuMuCCg20->SetFillColor(0);
14626     hYFidNuMuCCg20->SetLineColor(1);
14627     //hYFidNuMuCCg20->SetBit(TH1::kCanRebin);
14628 
14629     hYFidNuMuBarCCg20=new TH1F("hYFidNuMuBarCCg20","hYFidNuMuBarCCg20",
14630                                1400,-0.2,1.2);
14631     hYFidNuMuBarCCg20->GetXaxis()->SetTitle("y");
14632     hYFidNuMuBarCCg20->GetXaxis()->CenterTitle();
14633     hYFidNuMuBarCCg20->GetYaxis()->SetTitle("");
14634     hYFidNuMuBarCCg20->GetYaxis()->CenterTitle();
14635     hYFidNuMuBarCCg20->SetFillColor(0);
14636     hYFidNuMuBarCCg20->SetLineColor(1);
14637     //hYFidNuMuBarCCg20->SetBit(TH1::kCanRebin);
14638 
14639     
14640     hXSecNMCC=new TH1F("hXSecNMCC","hXSecNMCC",
14641                        2500,0,5000);
14642     hXSecNMCC->GetXaxis()->SetTitle("#sigma");
14643     hXSecNMCC->GetXaxis()->CenterTitle();
14644     hXSecNMCC->GetYaxis()->SetTitle("");
14645     hXSecNMCC->GetYaxis()->CenterTitle();
14646     //hXSecNMCC->SetBit(TH1::kCanRebin);
14647   
14648     hXSecNMBCC=new TH1F("hXSecNMBCC","hXSecNMBCC",
14649                         2500,0,5000);
14650     hXSecNMBCC->GetXaxis()->SetTitle("#sigma");
14651     hXSecNMBCC->GetXaxis()->CenterTitle();
14652     hXSecNMBCC->GetYaxis()->SetTitle("");
14653     hXSecNMBCC->GetYaxis()->CenterTitle();
14654     //hXSecNMBCC->SetBit(TH1::kCanRebin);
14655 
14656     hXSecNMNC=new TH1F("hXSecNMNC","hXSecNMNC",
14657                        2500,0,5000);
14658     hXSecNMNC->GetXaxis()->SetTitle("#sigma");
14659     hXSecNMNC->GetXaxis()->CenterTitle();
14660     hXSecNMNC->GetYaxis()->SetTitle("");
14661     hXSecNMNC->GetYaxis()->CenterTitle();
14662     //hXSecNMNC->SetBit(TH1::kCanRebin);
14663   
14664     hXSecNMBNC=new TH1F("hXSecNMBNC","hXSecNMBNC",
14665                         2500,0,5000);
14666     hXSecNMBNC->GetXaxis()->SetTitle("#sigma");
14667     hXSecNMBNC->GetXaxis()->CenterTitle();
14668     hXSecNMBNC->GetYaxis()->SetTitle("");
14669     hXSecNMBNC->GetYaxis()->CenterTitle();
14670     //hXSecNMBNC->SetBit(TH1::kCanRebin);
14671   
14672 
14673     hXSecNECC=new TH1F("hXSecNECC","hXSecNECC",
14674                        2500,0,5000);
14675     hXSecNECC->GetXaxis()->SetTitle("#sigma");
14676     hXSecNECC->GetXaxis()->CenterTitle();
14677     hXSecNECC->GetYaxis()->SetTitle("");
14678     hXSecNECC->GetYaxis()->CenterTitle();
14679     //hXSecNECC->SetBit(TH1::kCanRebin);
14680   
14681     hXSecNEBCC=new TH1F("hXSecNEBCC","hXSecNEBCC",
14682                         2500,0,5000);
14683     hXSecNEBCC->GetXaxis()->SetTitle("#sigma");
14684     hXSecNEBCC->GetXaxis()->CenterTitle();
14685     hXSecNEBCC->GetYaxis()->SetTitle("");
14686     hXSecNEBCC->GetYaxis()->CenterTitle();
14687     //hXSecNEBCC->SetBit(TH1::kCanRebin);
14688 
14689     hXSecNENC=new TH1F("hXSecNENC","hXSecNENC",
14690                        2500,0,5000);
14691     hXSecNENC->GetXaxis()->SetTitle("#sigma");
14692     hXSecNENC->GetXaxis()->CenterTitle();
14693     hXSecNENC->GetYaxis()->SetTitle("");
14694     hXSecNENC->GetYaxis()->CenterTitle();
14695     //hXSecNENC->SetBit(TH1::kCanRebin);
14696   
14697     hXSecNEBNC=new TH1F("hXSecNEBNC","hXSecNEBNC",
14698                         2500,0,5000);
14699     hXSecNEBNC->GetXaxis()->SetTitle("#sigma");
14700     hXSecNEBNC->GetXaxis()->CenterTitle();
14701     hXSecNEBNC->GetYaxis()->SetTitle("");
14702     hXSecNEBNC->GetYaxis()->CenterTitle();
14703     //hXSecNEBNC->SetBit(TH1::kCanRebin);
14704   
14705 
14706 
14707     hXSecNTCC=new TH1F("hXSecNTCC","hXSecNTCC",
14708                        2500,0,5000);
14709     hXSecNTCC->GetXaxis()->SetTitle("#sigma");
14710     hXSecNTCC->GetXaxis()->CenterTitle();
14711     hXSecNTCC->GetYaxis()->SetTitle("");
14712     hXSecNTCC->GetYaxis()->CenterTitle();
14713     //hXSecNTCC->SetBit(TH1::kCanRebin);
14714   
14715     hXSecNTBCC=new TH1F("hXSecNTBCC","hXSecNTBCC",
14716                         2500,0,5000);
14717     hXSecNTBCC->GetXaxis()->SetTitle("#sigma");
14718     hXSecNTBCC->GetXaxis()->CenterTitle();
14719     hXSecNTBCC->GetYaxis()->SetTitle("");
14720     hXSecNTBCC->GetYaxis()->CenterTitle();
14721     //hXSecNTBCC->SetBit(TH1::kCanRebin);
14722 
14723     hXSecNTNC=new TH1F("hXSecNTNC","hXSecNTNC",
14724                        2500,0,5000);
14725     hXSecNTNC->GetXaxis()->SetTitle("#sigma");
14726     hXSecNTNC->GetXaxis()->CenterTitle();
14727     hXSecNTNC->GetYaxis()->SetTitle("");
14728     hXSecNTNC->GetYaxis()->CenterTitle();
14729     //hXSecNTNC->SetBit(TH1::kCanRebin);
14730   
14731     hXSecNTBNC=new TH1F("hXSecNTBNC","hXSecNTBNC",
14732                         2500,0,5000);
14733     hXSecNTBNC->GetXaxis()->SetTitle("#sigma");
14734     hXSecNTBNC->GetXaxis()->CenterTitle();
14735     hXSecNTBNC->GetYaxis()->SetTitle("");
14736     hXSecNTBNC->GetYaxis()->CenterTitle();
14737     //hXSecNTBNC->SetBit(TH1::kCanRebin);
14738   
14739 
14740 
14741     pXSecEnVsEnNMCC=new TProfile
14742       ("pXSecEnVsEnNMCC","pXSecEnVsEnNMCC",4*352,-32,320);
14743     pXSecEnVsEnNMCC->GetXaxis()->SetTitle("True Energy (GeV)");
14744     pXSecEnVsEnNMCC->GetXaxis()->CenterTitle();
14745     pXSecEnVsEnNMCC->GetYaxis()->SetTitle("#sigma/E");
14746     pXSecEnVsEnNMCC->GetYaxis()->CenterTitle();
14747 
14748     pXSecEnVsEnNMBCC=new TProfile
14749       ("pXSecEnVsEnNMBCC","pXSecEnVsEnNMBCC",4*352,-32,320);
14750     pXSecEnVsEnNMBCC->GetXaxis()->SetTitle("True Energy (GeV)");
14751     pXSecEnVsEnNMBCC->GetXaxis()->CenterTitle();
14752     pXSecEnVsEnNMBCC->GetYaxis()->SetTitle("#sigma/E");
14753     pXSecEnVsEnNMBCC->GetYaxis()->CenterTitle();
14754 
14755     pXSecEnVsEnNMNC=new TProfile
14756       ("pXSecEnVsEnNMNC","pXSecEnVsEnNMNC",4*352,-32,320);
14757     pXSecEnVsEnNMNC->GetXaxis()->SetTitle("True Energy (GeV)");
14758     pXSecEnVsEnNMNC->GetXaxis()->CenterTitle();
14759     pXSecEnVsEnNMNC->GetYaxis()->SetTitle("#sigma/E");
14760     pXSecEnVsEnNMNC->GetYaxis()->CenterTitle();
14761 
14762     pXSecEnVsEnNMBNC=new TProfile
14763       ("pXSecEnVsEnNMBNC","pXSecEnVsEnNMBNC",4*352,-32,320);
14764     pXSecEnVsEnNMBNC->GetXaxis()->SetTitle("True Energy (GeV)");
14765     pXSecEnVsEnNMBNC->GetXaxis()->CenterTitle();
14766     pXSecEnVsEnNMBNC->GetYaxis()->SetTitle("#sigma/E");
14767     pXSecEnVsEnNMBNC->GetYaxis()->CenterTitle();
14768 
14769 
14770 
14771     pXSecEnVsEnNECC=new TProfile
14772       ("pXSecEnVsEnNECC","pXSecEnVsEnNECC",4*352,-32,320);
14773     pXSecEnVsEnNECC->GetXaxis()->SetTitle("True Energy (GeV)");
14774     pXSecEnVsEnNECC->GetXaxis()->CenterTitle();
14775     pXSecEnVsEnNECC->GetYaxis()->SetTitle("#sigma/E");
14776     pXSecEnVsEnNECC->GetYaxis()->CenterTitle();
14777 
14778     pXSecEnVsEnNEBCC=new TProfile
14779       ("pXSecEnVsEnNEBCC","pXSecEnVsEnNEBCC",4*352,-32,320);
14780     pXSecEnVsEnNEBCC->GetXaxis()->SetTitle("True Energy (GeV)");
14781     pXSecEnVsEnNEBCC->GetXaxis()->CenterTitle();
14782     pXSecEnVsEnNEBCC->GetYaxis()->SetTitle("#sigma/E");
14783     pXSecEnVsEnNEBCC->GetYaxis()->CenterTitle();
14784 
14785     pXSecEnVsEnNENC=new TProfile
14786       ("pXSecEnVsEnNENC","pXSecEnVsEnNENC",4*352,-32,320);
14787     pXSecEnVsEnNENC->GetXaxis()->SetTitle("True Energy (GeV)");
14788     pXSecEnVsEnNENC->GetXaxis()->CenterTitle();
14789     pXSecEnVsEnNENC->GetYaxis()->SetTitle("#sigma/E");
14790     pXSecEnVsEnNENC->GetYaxis()->CenterTitle();
14791 
14792     pXSecEnVsEnNEBNC=new TProfile
14793       ("pXSecEnVsEnNEBNC","pXSecEnVsEnNEBNC",4*352,-32,320);
14794     pXSecEnVsEnNEBNC->GetXaxis()->SetTitle("True Energy (GeV)");
14795     pXSecEnVsEnNEBNC->GetXaxis()->CenterTitle();
14796     pXSecEnVsEnNEBNC->GetYaxis()->SetTitle("#sigma/E");
14797     pXSecEnVsEnNEBNC->GetYaxis()->CenterTitle();
14798 
14799 
14800 
14801     pXSecEnVsEnNTCC=new TProfile
14802       ("pXSecEnVsEnNTCC","pXSecEnVsEnNTCC",4*352,-32,320);
14803     pXSecEnVsEnNTCC->GetXaxis()->SetTitle("True Energy (GeV)");
14804     pXSecEnVsEnNTCC->GetXaxis()->CenterTitle();
14805     pXSecEnVsEnNTCC->GetYaxis()->SetTitle("#sigma/E");
14806     pXSecEnVsEnNTCC->GetYaxis()->CenterTitle();
14807 
14808     pXSecEnVsEnNTBCC=new TProfile
14809       ("pXSecEnVsEnNTBCC","pXSecEnVsEnNTBCC",4*352,-32,320);
14810     pXSecEnVsEnNTBCC->GetXaxis()->SetTitle("True Energy (GeV)");
14811     pXSecEnVsEnNTBCC->GetXaxis()->CenterTitle();
14812     pXSecEnVsEnNTBCC->GetYaxis()->SetTitle("#sigma/E");
14813     pXSecEnVsEnNTBCC->GetYaxis()->CenterTitle();
14814 
14815     pXSecEnVsEnNTNC=new TProfile
14816       ("pXSecEnVsEnNTNC","pXSecEnVsEnNTNC",4*352,-32,320);
14817     pXSecEnVsEnNTNC->GetXaxis()->SetTitle("True Energy (GeV)");
14818     pXSecEnVsEnNTNC->GetXaxis()->CenterTitle();
14819     pXSecEnVsEnNTNC->GetYaxis()->SetTitle("#sigma/E");
14820     pXSecEnVsEnNTNC->GetYaxis()->CenterTitle();
14821 
14822     pXSecEnVsEnNTBNC=new TProfile
14823       ("pXSecEnVsEnNTBNC","pXSecEnVsEnNTBNC",4*352,-32,320);
14824     pXSecEnVsEnNTBNC->GetXaxis()->SetTitle("True Energy (GeV)");
14825     pXSecEnVsEnNTBNC->GetXaxis()->CenterTitle();
14826     pXSecEnVsEnNTBNC->GetYaxis()->SetTitle("#sigma/E");
14827     pXSecEnVsEnNTBNC->GetYaxis()->CenterTitle();
14828 
14829 
14830 
14831     //for different interaction types
14832     pXSecEnVsEnNMCCQE=new TProfile
14833       ("pXSecEnVsEnNMCCQE","pXSecEnVsEnNMCCQE",4*352,-32,320);
14834     pXSecEnVsEnNMCCQE->GetXaxis()->SetTitle("True Energy (GeV)");
14835     pXSecEnVsEnNMCCQE->GetXaxis()->CenterTitle();
14836     pXSecEnVsEnNMCCQE->GetYaxis()->SetTitle("#sigma/E");
14837     pXSecEnVsEnNMCCQE->GetYaxis()->CenterTitle();
14838 
14839     pXSecEnVsEnNMBCCQE=new TProfile
14840       ("pXSecEnVsEnNMBCCQE","pXSecEnVsEnNMBCCQE",4*352,-32,320);
14841     pXSecEnVsEnNMBCCQE->GetXaxis()->SetTitle("True Energy (GeV)");
14842     pXSecEnVsEnNMBCCQE->GetXaxis()->CenterTitle();
14843     pXSecEnVsEnNMBCCQE->GetYaxis()->SetTitle("#sigma/E");
14844     pXSecEnVsEnNMBCCQE->GetYaxis()->CenterTitle();
14845 
14846     pXSecEnVsEnNMCCRES=new TProfile
14847       ("pXSecEnVsEnNMCCRES","pXSecEnVsEnNMCCRES",4*352,-32,320);
14848     pXSecEnVsEnNMCCRES->GetXaxis()->SetTitle("True Energy (GeV)");
14849     pXSecEnVsEnNMCCRES->GetXaxis()->CenterTitle();
14850     pXSecEnVsEnNMCCRES->GetYaxis()->SetTitle("#sigma/E");
14851     pXSecEnVsEnNMCCRES->GetYaxis()->CenterTitle();
14852 
14853     pXSecEnVsEnNMBCCRES=new TProfile
14854       ("pXSecEnVsEnNMBCCRES","pXSecEnVsEnNMBCCRES",4*352,-32,320);
14855     pXSecEnVsEnNMBCCRES->GetXaxis()->SetTitle("True Energy (GeV)");
14856     pXSecEnVsEnNMBCCRES->GetXaxis()->CenterTitle();
14857     pXSecEnVsEnNMBCCRES->GetYaxis()->SetTitle("#sigma/E");
14858     pXSecEnVsEnNMBCCRES->GetYaxis()->CenterTitle();
14859 
14860     pXSecEnVsEnNMCCDIS=new TProfile
14861       ("pXSecEnVsEnNMCCDIS","pXSecEnVsEnNMCCDIS",4*352,-32,320);
14862     pXSecEnVsEnNMCCDIS->GetXaxis()->SetTitle("True Energy (GeV)");
14863     pXSecEnVsEnNMCCDIS->GetXaxis()->CenterTitle();
14864     pXSecEnVsEnNMCCDIS->GetYaxis()->SetTitle("#sigma/E");
14865     pXSecEnVsEnNMCCDIS->GetYaxis()->CenterTitle();
14866 
14867     pXSecEnVsEnNMBCCDIS=new TProfile
14868       ("pXSecEnVsEnNMBCCDIS","pXSecEnVsEnNMBCCDIS",4*352,-32,320);
14869     pXSecEnVsEnNMBCCDIS->GetXaxis()->SetTitle("True Energy (GeV)");
14870     pXSecEnVsEnNMBCCDIS->GetXaxis()->CenterTitle();
14871     pXSecEnVsEnNMBCCDIS->GetYaxis()->SetTitle("#sigma/E");
14872     pXSecEnVsEnNMBCCDIS->GetYaxis()->CenterTitle();
14873 
14874     pXSecEnVsEnNMCCCPP=new TProfile
14875       ("pXSecEnVsEnNMCCCPP","pXSecEnVsEnNMCCCPP",4*352,-32,320);
14876     pXSecEnVsEnNMCCCPP->GetXaxis()->SetTitle("True Energy (GeV)");
14877     pXSecEnVsEnNMCCCPP->GetXaxis()->CenterTitle();
14878     pXSecEnVsEnNMCCCPP->GetYaxis()->SetTitle("#sigma/E");
14879     pXSecEnVsEnNMCCCPP->GetYaxis()->CenterTitle();
14880 
14881     pXSecEnVsEnNMBCCCPP=new TProfile
14882       ("pXSecEnVsEnNMBCCCPP","pXSecEnVsEnNMBCCCPP",4*352,-32,320);
14883     pXSecEnVsEnNMBCCCPP->GetXaxis()->SetTitle("True Energy (GeV)");
14884     pXSecEnVsEnNMBCCCPP->GetXaxis()->CenterTitle();
14885     pXSecEnVsEnNMBCCCPP->GetYaxis()->SetTitle("#sigma/E");
14886     pXSecEnVsEnNMBCCCPP->GetYaxis()->CenterTitle();
14887 
14888   }
14889 
14890   if (mc.simFlag==SimFlag::kData) {
14891     MAXMSG("NuPlots",Msg::kDebug,1) 
14892       <<"Created but not filling truth plots in FillTrueFidEnergySpect"
14893       <<" for data"<<endl;
14894     return;
14895   }
14896   else {
14897     MAXMSG("NuPlots",Msg::kVerbose,100) 
14898       <<"Filling truth plots in FillTrueFidEnergySpect..."
14899       <<endl;
14900   }
14901 
14902   Float_t xsecEn=999999;
14903   if (mc.neuEnMC) xsecEn=mc.sigma/mc.neuEnMC;
14904   else cout<<"Ahhh, mc.neuEnMC="<<mc.neuEnMC<<endl;
14905 
14906   if (mc.neuEnMC<0.3*(Munits::GeV)) {
14907     MAXMSG("NuPlots",Msg::kInfo,200) 
14908       <<"V. low energy event: p4neu[3]="<<mc.neuEnMC
14909       <<", p4mu1[3]="<<mc.trkEnMC
14910       <<", iaction="<<mc.iaction<<", inu="<<mc.inu
14911       <<endl; 
14912   }
14913     
14914   //cache the iresonance
14915   Int_t ir=mc.iresonance;
14916 
14917   if (mc.iaction==1){//CC
14918     if (14==mc.inu || -14==mc.inu){
14919       //fill plots for matrix method (CC numus + CC numubars):
14920       if (mc.detector==Detector::kNear) {
14921         fTrueEnergyTrueCCFidEventsAll_ND->Fill(mc.neuEnMC,mc.rw);
14922         fTrueEnergyTrueCCFidEventsNoRwAll_ND->Fill(mc.neuEnMC);
14923       }
14924       else if (mc.detector==Detector::kFar) {
14925         fTrueEnergyTrueCCFidEventsAll_FD->Fill(mc.neuEnMC,mc.rw);
14926         fTrueEnergyTrueCCFidEventsNoRwAll_FD->Fill(mc.neuEnMC);
14927       }
14928       else cout<<"Ahhh det="<<mc.detector<<endl;
14929     }
14930     if ((16==mc.inu || -16 == mc.inu) && (14==mc.inunoosc || -14 == mc.inunoosc)){//taus
14931       if (Detector::kFar == mc.detector){
14932         fTrueEnergyTrueCCFidEventsTauAll_FD->Fill(mc.neuEnMC,mc.rw);
14933       }
14934     }
14935 
14936     if (mc.inu==14){//neutrinos
14937       //fill plots for matrix method (CC numus):
14938       if (mc.detector==Detector::kNear) {
14939         fTrueEnergyTrueCCFidEvents_ND->Fill(mc.neuEnMC,mc.rw);
14940         fTrueEnergyTrueCCFidEventsNoRw_ND->Fill(mc.neuEnMC);
14941       }
14942       else if (mc.detector==Detector::kFar) {
14943         fTrueEnergyTrueCCFidEvents_FD->Fill(mc.neuEnMC,mc.rw);
14944         fTrueEnergyTrueCCFidEventsNoRw_FD->Fill(mc.neuEnMC);
14945       }
14946       else cout<<"Ahhh det="<<mc.detector<<endl;
14947 
14948       //fill other plots
14949       hEnFidNuMuCC->Fill(mc.energyMC,mc.rw);
14950       hYFidNuMuCC->Fill(mc.yMC,mc.rw);
14951       hXSecNMCC->Fill(mc.sigma,mc.rw);
14952       pXSecEnVsEnNMCC->Fill(mc.neuEnMC,xsecEn,mc.rw);
14953       if (ir==1001) pXSecEnVsEnNMCCQE->
14954                       Fill(mc.neuEnMC,xsecEn,mc.rw);
14955       else if (ir==1002) pXSecEnVsEnNMCCRES->
14956                            Fill(mc.neuEnMC,xsecEn,mc.rw);
14957       else if (ir==1003) pXSecEnVsEnNMCCDIS->
14958                            Fill(mc.neuEnMC,xsecEn,mc.rw);
14959       else if (ir==1004) pXSecEnVsEnNMCCCPP->
14960                            Fill(mc.neuEnMC,xsecEn,mc.rw);
14961       if (mc.energyMC<10) hYFidNuMuCCl10->Fill(mc.yMC,mc.rw);
14962       else if (mc.energyMC<20) hYFidNuMuCCg10l20->Fill(mc.yMC,mc.rw);
14963       else hYFidNuMuCCg20->Fill(mc.yMC,mc.rw);
14964     }
14965     else if (mc.inu==-14){//anti-neutrinos      
14966       //fill plots for matrix method (CC numubars):
14967       if (mc.detector==Detector::kNear) {
14968         fTrueEnergyTrueCCFidEventsPQ_ND->Fill(mc.neuEnMC,mc.rw);
14969         fTrueEnergyTrueCCFidEventsNoRwPQ_ND->Fill(mc.neuEnMC);
14970       }
14971       else if (mc.detector==Detector::kFar) {
14972         fTrueEnergyTrueCCFidEventsPQ_FD->Fill(mc.neuEnMC,mc.rw);
14973         fTrueEnergyTrueCCFidEventsNoRwPQ_FD->Fill(mc.neuEnMC);
14974       }
14975       else cout<<"Ahhh det="<<mc.detector<<endl;
14976 
14977       //Fill other plots:
14978       hEnFidNuMuBarCC->Fill(mc.energyMC,mc.rw);
14979       hYFidNuMuBarCC->Fill(mc.yMC,mc.rw);
14980       hXSecNMBCC->Fill(mc.sigma,mc.rw);
14981       pXSecEnVsEnNMBCC->Fill(mc.neuEnMC,xsecEn,mc.rw);
14982       if (ir==1001) pXSecEnVsEnNMBCCQE->
14983                       Fill(mc.neuEnMC,xsecEn,mc.rw);
14984       else if (ir==1002) pXSecEnVsEnNMBCCRES->
14985                            Fill(mc.neuEnMC,xsecEn,mc.rw);
14986       else if (ir==1003) pXSecEnVsEnNMBCCDIS->
14987                            Fill(mc.neuEnMC,xsecEn,mc.rw);
14988       else if (ir==1004) pXSecEnVsEnNMBCCCPP->
14989                            Fill(mc.neuEnMC,xsecEn,mc.rw);
14990       if (mc.energyMC<10) hYFidNuMuBarCCl10->Fill(mc.yMC,mc.rw);
14991       else if (mc.energyMC<20) hYFidNuMuBarCCg10l20->Fill(mc.yMC,mc.rw);
14992       else hYFidNuMuBarCCg20->Fill(mc.yMC,mc.rw);
14993     }
14994     else if (mc.inu==12){
14995       hEnFidNueCC->Fill(mc.energyMC,mc.rw);
14996       hYFidNueCC->Fill(mc.yMC,mc.rw);
14997       hXSecNECC->Fill(mc.sigma,mc.rw);
14998       pXSecEnVsEnNECC->Fill(mc.neuEnMC,xsecEn,mc.rw);
14999     }
15000     else if (mc.inu==-12){
15001       hEnFidNueBarCC->Fill(mc.energyMC,mc.rw);
15002       hYFidNueBarCC->Fill(mc.yMC,mc.rw);
15003       hXSecNEBCC->Fill(mc.sigma,mc.rw);
15004       pXSecEnVsEnNEBCC->Fill(mc.neuEnMC,xsecEn,mc.rw);
15005     }
15006     else if (mc.inu==16){
15007       hEnFidNuTauCC->Fill(mc.energyMC,mc.rw);
15008       hYFidNuTauCC->Fill(mc.yMC,mc.rw);
15009       hXSecNTCC->Fill(mc.sigma,mc.rw);
15010       pXSecEnVsEnNTCC->Fill(mc.neuEnMC,xsecEn,mc.rw);
15011       if (Detector::kFar == mc.detector){
15012         if (mc.inunoosc==14){
15013           fTrueEnergyTrueCCFidEventsTau_FD->Fill(mc.neuEnMC,mc.rw);
15014         }
15015       }
15016     }
15017     else if (mc.inu==-16){
15018       hEnFidNuTauBarCC->Fill(mc.energyMC,mc.rw);
15019       hYFidNuTauBarCC->Fill(mc.yMC,mc.rw);
15020       hXSecNTBCC->Fill(mc.sigma,mc.rw);
15021       pXSecEnVsEnNTBCC->Fill(mc.neuEnMC,xsecEn,mc.rw);
15022       if (Detector::kFar == mc.detector){
15023         if (mc.inunoosc==-14){
15024           fTrueEnergyTrueCCFidEventsTauPQ_FD->Fill(mc.neuEnMC,mc.rw);
15025         }
15026       }
15027     }
15028     else {
15029       MSG("NuPlots",Msg::kWarning)
15030         <<"Neutrino not used with id="<<mc.inu<<endl;
15031     }
15032   }
15033   else if (mc.iaction==0){//NC
15034     hEnFidAllNC->Fill(mc.energyMC,mc.rw);
15035     if (mc.inu==14){
15036       hEnFidNuMuNC->Fill(mc.energyMC,mc.rw);
15037       hYFidNuMuNC->Fill(mc.yMC,mc.rw);
15038       hXSecNMNC->Fill(mc.sigma,mc.rw);
15039       pXSecEnVsEnNMNC->Fill(mc.neuEnMC,xsecEn,mc.rw);
15040     }
15041     else if (mc.inu==-14){
15042       hEnFidNuMuBarNC->Fill(mc.energyMC,mc.rw);
15043       hYFidNuMuBarNC->Fill(mc.yMC,mc.rw);
15044       hXSecNMBNC->Fill(mc.sigma,mc.rw);
15045       pXSecEnVsEnNMBNC->Fill(mc.neuEnMC,xsecEn,mc.rw);
15046     }
15047     else if (mc.inu==12){
15048       hEnFidNueNC->Fill(mc.energyMC,mc.rw);
15049       hYFidNueNC->Fill(mc.yMC,mc.rw);
15050       hXSecNENC->Fill(mc.sigma,mc.rw);
15051       pXSecEnVsEnNENC->Fill(mc.neuEnMC,xsecEn,mc.rw);
15052     }
15053     else if (mc.inu==-12){
15054       hEnFidNueBarNC->Fill(mc.energyMC,mc.rw);
15055       hYFidNueBarNC->Fill(mc.yMC,mc.rw);
15056       hXSecNEBNC->Fill(mc.sigma,mc.rw);
15057       pXSecEnVsEnNEBNC->Fill(mc.neuEnMC,xsecEn,mc.rw);
15058     }
15059     else if (mc.inu==16){
15060       hEnFidNuTauNC->Fill(mc.energyMC,mc.rw);
15061       hYFidNuTauNC->Fill(mc.yMC,mc.rw);
15062       hXSecNTNC->Fill(mc.sigma,mc.rw);
15063       pXSecEnVsEnNTNC->Fill(mc.neuEnMC,xsecEn,mc.rw);
15064     }
15065     else if (mc.inu==-16){
15066       hEnFidNuTauBarNC->Fill(mc.energyMC,mc.rw);
15067       hYFidNuTauBarNC->Fill(mc.yMC,mc.rw);
15068       hXSecNTBNC->Fill(mc.sigma,mc.rw);
15069       pXSecEnVsEnNTBNC->Fill(mc.neuEnMC,xsecEn,mc.rw);
15070     }
15071     else {
15072       MSG("NuPlots",Msg::kWarning)
15073         <<"Neutrino not used with id="<<mc.inu<<endl;
15074     }
15075   }
15076     
15077   //all but NuMu/NuMuBar CC
15078   if (!(mc.iaction==1 && (mc.inu==14 || mc.inu==-14))) {
15079     hEnFidAllShw->Fill(mc.energyMC,mc.rw);
15080   }
15081 }

void NuPlots::FillTrueFidEnergySpect const NuEvent nu  )  const
 

Definition at line 14046 of file NuPlots.cxx.

References NuLibrary::ext, NuLibrary::Instance(), and NuExtraction::NuMCEventFromNuEvent().

Referenced by NuAnalysis::EnergySpect(), NuDSTAna::JeffsTestAna(), NuAnalysis::LIRejectionTest(), NuAnalysis::LoopOverTruthInfo(), NuDSTAna::MMRereco(), NuDSTAna::MMTransition(), NuDSTAna::StdCCAna(), and NuDSTAna::StdNMBAna().

14047 {
14048   //get an instance of the code library
14049   const NuLibrary& lib=NuLibrary::Instance();
14050   
14051   //create an mc event
14052   NuMCEvent mc;
14053   
14054   //copy the NuEvent over to the NuMCEvent
14055   lib.ext.NuMCEventFromNuEvent(nu,mc);
14056   
14057   //fill the plots
14058   this->FillTrueFidEnergySpect(mc);
14059 }

void NuPlots::FillTrueFidEnergySpectSpecial const NuMCEvent mc  )  const
 

This function makes plots of the true energy spectrum

Definition at line 15085 of file NuPlots.cxx.

References NuLibrary::cuts, NuMCEvent::energyMC, NuMCEvent::iaction, NuLibrary::Instance(), NuMCEvent::inu, NuCuts::IsInCylindricalVolume(), NuCuts::IsInFidVolOffset(), MAXMSG, NuMCEvent::rw, NuMCEvent::vtxxMC, NuMCEvent::vtxyMC, and NuMCEvent::vtxzMC.

Referenced by NuDSTAna::JeffsTestAna(), NuDSTAna::StdCCAna(), and NuDSTAna::StdNMBAna().

15086 {
15088   
15089   //other plots
15090   static TH1F* hTrueEnNMCC=0;
15091   static TH1F* hTrueEnNMCCCyl10Cyl08=0;
15092   static TH1F* hTrueEnNMCCCyl08Cyl05=0;
15093   static TH1F* hTrueEnNMCCCyl05Cyl00=0;
15094   static TH1F* hTrueEnNMCCCyl10Z13=0;
15095   static TH1F* hTrueEnNMCCCyl10Z35=0;
15096   static TH1F* hTrueEnNMCCCyl05Z13=0;
15097   static TH1F* hTrueEnNMCCCyl05Z35=0;
15098   static TH1F* hTrueEnNMCCOffset=0;
15099   static TH1F* hTrueEnNMCCCyl10NotOffset=0;
15100   
15101   static TH1F* hTrueEnNMBCC=0;
15102   static TH1F* hTrueEnNMBCCCyl10Cyl08=0;
15103   static TH1F* hTrueEnNMBCCCyl08Cyl05=0;
15104   static TH1F* hTrueEnNMBCCCyl05Cyl00=0;
15105   static TH1F* hTrueEnNMBCCCyl10Z13=0;
15106   static TH1F* hTrueEnNMBCCCyl10Z35=0;
15107   static TH1F* hTrueEnNMBCCCyl05Z13=0;
15108   static TH1F* hTrueEnNMBCCCyl05Z35=0;
15109   static TH1F* hTrueEnNMBCCOffset=0;
15110   static TH1F* hTrueEnNMBCCCyl10NotOffset=0;
15111 
15112   static TH1F* hTrueEnNotMuCC=0;
15113   static TH1F* hTrueEnNotMuCCCyl10Cyl08=0;
15114   static TH1F* hTrueEnNotMuCCCyl08Cyl05=0;
15115   static TH1F* hTrueEnNotMuCCCyl05Cyl00=0;
15116   static TH1F* hTrueEnNotMuCCCyl10Z13=0;
15117   static TH1F* hTrueEnNotMuCCCyl10Z35=0;
15118   static TH1F* hTrueEnNotMuCCCyl05Z13=0;
15119   static TH1F* hTrueEnNotMuCCCyl05Z35=0;
15120   static TH1F* hTrueEnNotMuCCOffset=0;
15121   static TH1F* hTrueEnNotMuCCCyl10NotOffset=0;
15122 
15123 
15124   if (!hTrueEnNMCC){
15125     MAXMSG("NuPlots",Msg::kDebug,1)
15126       <<"Creating TrueFidEnergySpect plots..."<<endl;
15127     
15128     //make NM histos
15129     hTrueEnNMCC=new TH1F
15130       ("hTrueEnNMCC","hTrueEnNMCC",
15131        4*352,-32,320);
15132     hTrueEnNMCC->GetXaxis()->SetTitle("True Energy (GeV)");
15133     hTrueEnNMCC->GetXaxis()->CenterTitle();
15134     hTrueEnNMCC->GetYaxis()->SetTitle("");
15135     hTrueEnNMCC->GetYaxis()->CenterTitle();
15136     //hTrueEnNMCC->SetBit(TH1::kCanRebin);
15137 
15138     hTrueEnNMCCCyl10Cyl08=new TH1F
15139       ("hTrueEnNMCCCyl10Cyl08","hTrueEnNMCCCyl10Cyl08",
15140        4*352,-32,320);
15141     hTrueEnNMCCCyl10Cyl08->GetXaxis()->SetTitle("True Energy (GeV)");
15142     hTrueEnNMCCCyl10Cyl08->GetXaxis()->CenterTitle();
15143     hTrueEnNMCCCyl10Cyl08->GetYaxis()->SetTitle("");
15144     hTrueEnNMCCCyl10Cyl08->GetYaxis()->CenterTitle();
15145     //hTrueEnNMCCCyl10Cyl08->SetBit(TH1::kCanRebin);
15146 
15147     hTrueEnNMCCCyl08Cyl05=new TH1F
15148       ("hTrueEnNMCCCyl08Cyl05","hTrueEnNMCCCyl08Cyl05",
15149        4*352,-32,320);
15150     hTrueEnNMCCCyl08Cyl05->GetXaxis()->SetTitle("True Energy (GeV)");
15151     hTrueEnNMCCCyl08Cyl05->GetXaxis()->CenterTitle();
15152     hTrueEnNMCCCyl08Cyl05->GetYaxis()->SetTitle("");
15153     hTrueEnNMCCCyl08Cyl05->GetYaxis()->CenterTitle();
15154     //hTrueEnNMCCCyl08Cyl05->SetBit(TH1::kCanRebin);
15155 
15156     hTrueEnNMCCCyl05Cyl00=new TH1F
15157       ("hTrueEnNMCCCyl05Cyl00","hTrueEnNMCCCyl05Cyl00",
15158        4*352,-32,320);
15159     hTrueEnNMCCCyl05Cyl00->GetXaxis()->SetTitle("True Energy (GeV)");
15160     hTrueEnNMCCCyl05Cyl00->GetXaxis()->CenterTitle();
15161     hTrueEnNMCCCyl05Cyl00->GetYaxis()->SetTitle("");
15162     hTrueEnNMCCCyl05Cyl00->GetYaxis()->CenterTitle();
15163     //hTrueEnNMCCCyl05Cyl00->SetBit(TH1::kCanRebin);
15164     
15165     hTrueEnNMCCCyl10Z13=new TH1F
15166       ("hTrueEnNMCCCyl10Z13","hTrueEnNMCCCyl10Z13",
15167        4*352,-32,320);
15168     hTrueEnNMCCCyl10Z13->GetXaxis()->SetTitle("True Energy (GeV)");
15169     hTrueEnNMCCCyl10Z13->GetXaxis()->CenterTitle();
15170     hTrueEnNMCCCyl10Z13->GetYaxis()->SetTitle("");
15171     hTrueEnNMCCCyl10Z13->GetYaxis()->CenterTitle();
15172     //hTrueEnNMCCCyl10Z13->SetBit(TH1::kCanRebin);
15173 
15174     hTrueEnNMCCCyl10Z35=new TH1F
15175       ("hTrueEnNMCCCyl10Z35","hTrueEnNMCCCyl10Z35",
15176        4*352,-32,320);
15177     hTrueEnNMCCCyl10Z35->GetXaxis()->SetTitle("True Energy (GeV)");
15178     hTrueEnNMCCCyl10Z35->GetXaxis()->CenterTitle();
15179     hTrueEnNMCCCyl10Z35->GetYaxis()->SetTitle("");
15180     hTrueEnNMCCCyl10Z35->GetYaxis()->CenterTitle();
15181     //hTrueEnNMCCCyl10Z35->SetBit(TH1::kCanRebin);
15182 
15183     hTrueEnNMCCCyl05Z13=new TH1F
15184       ("hTrueEnNMCCCyl05Z13","hTrueEnNMCCCyl05Z13",
15185        4*352,-32,320);
15186     hTrueEnNMCCCyl05Z13->GetXaxis()->SetTitle("True Energy (GeV)");
15187     hTrueEnNMCCCyl05Z13->GetXaxis()->CenterTitle();
15188     hTrueEnNMCCCyl05Z13->GetYaxis()->SetTitle("");
15189     hTrueEnNMCCCyl05Z13->GetYaxis()->CenterTitle();
15190     //hTrueEnNMCCCyl05Z13->SetBit(TH1::kCanRebin);
15191 
15192     hTrueEnNMCCCyl05Z35=new TH1F
15193       ("hTrueEnNMCCCyl05Z35","hTrueEnNMCCCyl05Z35",
15194        4*352,-32,320);
15195     hTrueEnNMCCCyl05Z35->GetXaxis()->SetTitle("True Energy (GeV)");
15196     hTrueEnNMCCCyl05Z35->GetXaxis()->CenterTitle();
15197     hTrueEnNMCCCyl05Z35->GetYaxis()->SetTitle("");
15198     hTrueEnNMCCCyl05Z35->GetYaxis()->CenterTitle();
15199     //hTrueEnNMCCCyl05Z35->SetBit(TH1::kCanRebin);
15200 
15201     hTrueEnNMCCOffset=new TH1F
15202       ("hTrueEnNMCCOffset","hTrueEnNMCCOffset",
15203        4*352,-32,320);
15204     hTrueEnNMCCOffset->GetXaxis()->SetTitle("True Energy (GeV)");
15205     hTrueEnNMCCOffset->GetXaxis()->CenterTitle();
15206     hTrueEnNMCCOffset->GetYaxis()->SetTitle("");
15207     hTrueEnNMCCOffset->GetYaxis()->CenterTitle();
15208     //hTrueEnNMCCOffset->SetBit(TH1::kCanRebin);
15209 
15210     hTrueEnNMCCCyl10NotOffset=new TH1F
15211       ("hTrueEnNMCCCyl10NotOffset","hTrueEnNMCCCyl10NotOffset",
15212        4*352,-32,320);
15213     hTrueEnNMCCCyl10NotOffset->GetXaxis()->
15214       SetTitle("True Energy (GeV)");
15215     hTrueEnNMCCCyl10NotOffset->GetXaxis()->CenterTitle();
15216     hTrueEnNMCCCyl10NotOffset->GetYaxis()->SetTitle("");
15217     hTrueEnNMCCCyl10NotOffset->GetYaxis()->CenterTitle();
15218     //hTrueEnNMCCCyl10NotOffset->SetBit(TH1::kCanRebin);
15219 
15220 
15221 
15222     //create NMB plots
15223     hTrueEnNMBCC=new TH1F
15224       ("hTrueEnNMBCC","hTrueEnNMBCC",
15225        4*352,-32,320);
15226     hTrueEnNMBCC->GetXaxis()->SetTitle("True Energy (GeV)");
15227     hTrueEnNMBCC->GetXaxis()->CenterTitle();
15228     hTrueEnNMBCC->GetYaxis()->SetTitle("");
15229     hTrueEnNMBCC->GetYaxis()->CenterTitle();
15230     //hTrueEnNMBCC->SetBit(TH1::kCanRebin);
15231 
15232     hTrueEnNMBCCCyl10Cyl08=new TH1F
15233       ("hTrueEnNMBCCCyl10Cyl08","hTrueEnNMBCCCyl10Cyl08",
15234        4*352,-32,320);
15235     hTrueEnNMBCCCyl10Cyl08->GetXaxis()->SetTitle("True Energy (GeV)");
15236     hTrueEnNMBCCCyl10Cyl08->GetXaxis()->CenterTitle();
15237     hTrueEnNMBCCCyl10Cyl08->GetYaxis()->SetTitle("");
15238     hTrueEnNMBCCCyl10Cyl08->GetYaxis()->CenterTitle();
15239     //hTrueEnNMBCCCyl10Cyl08->SetBit(TH1::kCanRebin);
15240 
15241     hTrueEnNMBCCCyl08Cyl05=new TH1F
15242       ("hTrueEnNMBCCCyl08Cyl05","hTrueEnNMBCCCyl08Cyl05",
15243        4*352,-32,320);
15244     hTrueEnNMBCCCyl08Cyl05->GetXaxis()->SetTitle("True Energy (GeV)");
15245     hTrueEnNMBCCCyl08Cyl05->GetXaxis()->CenterTitle();
15246     hTrueEnNMBCCCyl08Cyl05->GetYaxis()->SetTitle("");
15247     hTrueEnNMBCCCyl08Cyl05->GetYaxis()->CenterTitle();
15248     //hTrueEnNMBCCCyl08Cyl05->SetBit(TH1::kCanRebin);
15249 
15250     hTrueEnNMBCCCyl05Cyl00=new TH1F
15251       ("hTrueEnNMBCCCyl05Cyl00","hTrueEnNMBCCCyl05Cyl00",
15252        4*352,-32,320);
15253     hTrueEnNMBCCCyl05Cyl00->GetXaxis()->SetTitle("True Energy (GeV)");
15254     hTrueEnNMBCCCyl05Cyl00->GetXaxis()->CenterTitle();
15255     hTrueEnNMBCCCyl05Cyl00->GetYaxis()->SetTitle("");
15256     hTrueEnNMBCCCyl05Cyl00->GetYaxis()->CenterTitle();
15257     //hTrueEnNMBCCCyl05Cyl00->SetBit(TH1::kCanRebin);
15258     
15259     hTrueEnNMBCCCyl10Z13=new TH1F
15260       ("hTrueEnNMBCCCyl10Z13","hTrueEnNMBCCCyl10Z13",
15261        4*352,-32,320);
15262     hTrueEnNMBCCCyl10Z13->GetXaxis()->SetTitle("True Energy (GeV)");
15263     hTrueEnNMBCCCyl10Z13->GetXaxis()->CenterTitle();
15264     hTrueEnNMBCCCyl10Z13->GetYaxis()->SetTitle("");
15265     hTrueEnNMBCCCyl10Z13->GetYaxis()->CenterTitle();
15266     //hTrueEnNMBCCCyl10Z13->SetBit(TH1::kCanRebin);
15267 
15268     hTrueEnNMBCCCyl10Z35=new TH1F
15269       ("hTrueEnNMBCCCyl10Z35","hTrueEnNMBCCCyl10Z35",
15270        4*352,-32,320);
15271     hTrueEnNMBCCCyl10Z35->GetXaxis()->SetTitle("True Energy (GeV)");
15272     hTrueEnNMBCCCyl10Z35->GetXaxis()->CenterTitle();
15273     hTrueEnNMBCCCyl10Z35->GetYaxis()->SetTitle("");
15274     hTrueEnNMBCCCyl10Z35->GetYaxis()->CenterTitle();
15275     //hTrueEnNMBCCCyl10Z35->SetBit(TH1::kCanRebin);
15276 
15277     hTrueEnNMBCCCyl05Z13=new TH1F
15278       ("hTrueEnNMBCCCyl05Z13","hTrueEnNMBCCCyl05Z13",
15279        4*352,-32,320);
15280     hTrueEnNMBCCCyl05Z13->GetXaxis()->SetTitle("True Energy (GeV)");
15281     hTrueEnNMBCCCyl05Z13->GetXaxis()->CenterTitle();
15282     hTrueEnNMBCCCyl05Z13->GetYaxis()->SetTitle("");
15283     hTrueEnNMBCCCyl05Z13->GetYaxis()->CenterTitle();
15284     //hTrueEnNMBCCCyl05Z13->SetBit(TH1::kCanRebin);
15285 
15286     hTrueEnNMBCCCyl05Z35=new TH1F
15287       ("hTrueEnNMBCCCyl05Z35","hTrueEnNMBCCCyl05Z35",
15288        4*352,-32,320);
15289     hTrueEnNMBCCCyl05Z35->GetXaxis()->SetTitle("True Energy (GeV)");
15290     hTrueEnNMBCCCyl05Z35->GetXaxis()->CenterTitle();
15291     hTrueEnNMBCCCyl05Z35->GetYaxis()->SetTitle("");
15292     hTrueEnNMBCCCyl05Z35->GetYaxis()->CenterTitle();
15293     //hTrueEnNMBCCCyl05Z35->SetBit(TH1::kCanRebin);
15294 
15295     hTrueEnNMBCCOffset=new TH1F
15296       ("hTrueEnNMBCCOffset","hTrueEnNMBCCOffset",
15297        4*352,-32,320);
15298     hTrueEnNMBCCOffset->GetXaxis()->SetTitle("True Energy (GeV)");
15299     hTrueEnNMBCCOffset->GetXaxis()->CenterTitle();
15300     hTrueEnNMBCCOffset->GetYaxis()->SetTitle("");
15301     hTrueEnNMBCCOffset->GetYaxis()->CenterTitle();
15302     //hTrueEnNMBCCOffset->SetBit(TH1::kCanRebin);
15303 
15304     hTrueEnNMBCCCyl10NotOffset=new TH1F
15305       ("hTrueEnNMBCCCyl10NotOffset","hTrueEnNMBCCCyl10NotOffset",
15306        4*352,-32,320);
15307     hTrueEnNMBCCCyl10NotOffset->GetXaxis()->
15308       SetTitle("True Energy (GeV)");
15309     hTrueEnNMBCCCyl10NotOffset->GetXaxis()->CenterTitle();
15310     hTrueEnNMBCCCyl10NotOffset->GetYaxis()->SetTitle("");
15311     hTrueEnNMBCCCyl10NotOffset->GetYaxis()->CenterTitle();
15312     //hTrueEnNMBCCCyl10NotOffset->SetBit(TH1::kCanRebin);
15313 
15314 
15315 
15316     //create NotMu plots
15317     hTrueEnNotMuCC=new TH1F
15318       ("hTrueEnNotMuCC","hTrueEnNotMuCC",
15319        4*352,-32,320);
15320     hTrueEnNotMuCC->GetXaxis()->SetTitle("True Energy (GeV)");
15321     hTrueEnNotMuCC->GetXaxis()->CenterTitle();
15322     hTrueEnNotMuCC->GetYaxis()->SetTitle("");
15323     hTrueEnNotMuCC->GetYaxis()->CenterTitle();
15324     //hTrueEnNotMuCC->SetBit(TH1::kCanRebin);
15325 
15326     hTrueEnNotMuCCCyl10Cyl08=new TH1F
15327       ("hTrueEnNotMuCCCyl10Cyl08","hTrueEnNotMuCCCyl10Cyl08",
15328        4*352,-32,320);
15329     hTrueEnNotMuCCCyl10Cyl08->GetXaxis()->SetTitle("True Energy (GeV)");
15330     hTrueEnNotMuCCCyl10Cyl08->GetXaxis()->CenterTitle();
15331     hTrueEnNotMuCCCyl10Cyl08->GetYaxis()->SetTitle("");
15332     hTrueEnNotMuCCCyl10Cyl08->GetYaxis()->CenterTitle();
15333     //hTrueEnNotMuCCCyl10Cyl08->SetBit(TH1::kCanRebin);
15334 
15335     hTrueEnNotMuCCCyl08Cyl05=new TH1F
15336       ("hTrueEnNotMuCCCyl08Cyl05","hTrueEnNotMuCCCyl08Cyl05",
15337        4*352,-32,320);
15338     hTrueEnNotMuCCCyl08Cyl05->GetXaxis()->SetTitle("True Energy (GeV)");
15339     hTrueEnNotMuCCCyl08Cyl05->GetXaxis()->CenterTitle();
15340     hTrueEnNotMuCCCyl08Cyl05->GetYaxis()->SetTitle("");
15341     hTrueEnNotMuCCCyl08Cyl05->GetYaxis()->CenterTitle();
15342     //hTrueEnNotMuCCCyl08Cyl05->SetBit(TH1::kCanRebin);
15343 
15344     hTrueEnNotMuCCCyl05Cyl00=new TH1F
15345       ("hTrueEnNotMuCCCyl05Cyl00","hTrueEnNotMuCCCyl05Cyl00",
15346        4*352,-32,320);
15347     hTrueEnNotMuCCCyl05Cyl00->GetXaxis()->SetTitle("True Energy (GeV)");
15348     hTrueEnNotMuCCCyl05Cyl00->GetXaxis()->CenterTitle();
15349     hTrueEnNotMuCCCyl05Cyl00->GetYaxis()->SetTitle("");
15350     hTrueEnNotMuCCCyl05Cyl00->GetYaxis()->CenterTitle();
15351     //hTrueEnNotMuCCCyl05Cyl00->SetBit(TH1::kCanRebin);
15352     
15353     hTrueEnNotMuCCCyl10Z13=new TH1F
15354       ("hTrueEnNotMuCCCyl10Z13","hTrueEnNotMuCCCyl10Z13",
15355        4*352,-32,320);
15356     hTrueEnNotMuCCCyl10Z13->GetXaxis()->SetTitle("True Energy (GeV)");
15357     hTrueEnNotMuCCCyl10Z13->GetXaxis()->CenterTitle();
15358     hTrueEnNotMuCCCyl10Z13->GetYaxis()->SetTitle("");
15359     hTrueEnNotMuCCCyl10Z13->GetYaxis()->CenterTitle();
15360     //hTrueEnNotMuCCCyl10Z13->SetBit(TH1::kCanRebin);
15361 
15362     hTrueEnNotMuCCCyl10Z35=new TH1F
15363       ("hTrueEnNotMuCCCyl10Z35","hTrueEnNotMuCCCyl10Z35",
15364        4*352,-32,320);
15365     hTrueEnNotMuCCCyl10Z35->GetXaxis()->SetTitle("True Energy (GeV)");
15366     hTrueEnNotMuCCCyl10Z35->GetXaxis()->CenterTitle();
15367     hTrueEnNotMuCCCyl10Z35->GetYaxis()->SetTitle("");
15368     hTrueEnNotMuCCCyl10Z35->GetYaxis()->CenterTitle();
15369     //hTrueEnNotMuCCCyl10Z35->SetBit(TH1::kCanRebin);
15370 
15371     hTrueEnNotMuCCCyl05Z13=new TH1F
15372       ("hTrueEnNotMuCCCyl05Z13","hTrueEnNotMuCCCyl05Z13",
15373        4*352,-32,320);
15374     hTrueEnNotMuCCCyl05Z13->GetXaxis()->SetTitle("True Energy (GeV)");
15375     hTrueEnNotMuCCCyl05Z13->GetXaxis()->CenterTitle();
15376     hTrueEnNotMuCCCyl05Z13->GetYaxis()->SetTitle("");
15377     hTrueEnNotMuCCCyl05Z13->GetYaxis()->CenterTitle();
15378     //hTrueEnNotMuCCCyl05Z13->SetBit(TH1::kCanRebin);
15379 
15380     hTrueEnNotMuCCCyl05Z35=new TH1F
15381       ("hTrueEnNotMuCCCyl05Z35","hTrueEnNotMuCCCyl05Z35",
15382        4*352,-32,320);
15383     hTrueEnNotMuCCCyl05Z35->GetXaxis()->SetTitle("True Energy (GeV)");
15384     hTrueEnNotMuCCCyl05Z35->GetXaxis()->CenterTitle();
15385     hTrueEnNotMuCCCyl05Z35->GetYaxis()->SetTitle("");
15386     hTrueEnNotMuCCCyl05Z35->GetYaxis()->CenterTitle();
15387     //hTrueEnNotMuCCCyl05Z35->SetBit(TH1::kCanRebin);
15388 
15389     hTrueEnNotMuCCOffset=new TH1F
15390       ("hTrueEnNotMuCCOffset","hTrueEnNotMuCCOffset",
15391        4*352,-32,320);
15392     hTrueEnNotMuCCOffset->GetXaxis()->SetTitle("True Energy (GeV)");
15393     hTrueEnNotMuCCOffset->GetXaxis()->CenterTitle();
15394     hTrueEnNotMuCCOffset->GetYaxis()->SetTitle("");
15395     hTrueEnNotMuCCOffset->GetYaxis()->CenterTitle();
15396     //hTrueEnNotMuCCOffset->SetBit(TH1::kCanRebin);
15397 
15398     hTrueEnNotMuCCCyl10NotOffset=new TH1F
15399       ("hTrueEnNotMuCCCyl10NotOffset","hTrueEnNotMuCCCyl10NotOffset",
15400        4*352,-32,320);
15401     hTrueEnNotMuCCCyl10NotOffset->GetXaxis()->
15402       SetTitle("True Energy (GeV)");
15403     hTrueEnNotMuCCCyl10NotOffset->GetXaxis()->CenterTitle();
15404     hTrueEnNotMuCCCyl10NotOffset->GetYaxis()->SetTitle("");
15405     hTrueEnNotMuCCCyl10NotOffset->GetYaxis()->CenterTitle();
15406     //hTrueEnNotMuCCCyl10NotOffset->SetBit(TH1::kCanRebin);
15407   }
15408   
15409   //get an instance of the code library
15410   const NuLibrary& lib=NuLibrary::Instance();
15411   
15412   const Float_t beamzerox=1.4828*(Munits::m);//new for 2.5 analysis
15413   const Float_t beamzeroy=0.2384*(Munits::m);//new for 2.5 analysis
15414   
15415   //determine base bools
15416   Bool_t cyl10=lib.cuts.IsInCylindricalVolume
15417     (mc.vtxxMC,mc.vtxyMC,mc.vtxzMC,beamzerox,beamzeroy,
15418      1*(Munits::m),5*(Munits::m),1.0*(Munits::m));
15419   Bool_t cyl08=lib.cuts.IsInCylindricalVolume
15420     (mc.vtxxMC,mc.vtxyMC,mc.vtxzMC,beamzerox,beamzeroy,
15421      1*(Munits::m),5*(Munits::m),0.8*(Munits::m));
15422   Bool_t cyl05=lib.cuts.IsInCylindricalVolume
15423     (mc.vtxxMC,mc.vtxyMC,mc.vtxzMC,beamzerox,beamzeroy,
15424      1*(Munits::m),5*(Munits::m),0.5*(Munits::m));
15425   
15426   Bool_t z13=mc.vtxzMC>1*(Munits::m) && mc.vtxzMC<=3*(Munits::m);
15427   Bool_t z35=mc.vtxzMC>3*(Munits::m) && mc.vtxzMC<=5*(Munits::m);
15428   
15429   Bool_t ofv=lib.cuts.IsInFidVolOffset(mc.vtxxMC,mc.vtxyMC,mc.vtxzMC);
15430 
15431   //now combine base bools 
15432   Bool_t fvC10C08=cyl10 && !cyl08;
15433   Bool_t fvC08C05=cyl08 && !cyl05;
15434   Bool_t fvC05C00=cyl05;
15435   Bool_t fvC10Z13=cyl10 && z13;
15436   Bool_t fvC10Z35=cyl10 && z35;
15437   Bool_t fvC05Z13=cyl05 && z13;
15438   Bool_t fvC05Z35=cyl05 && z35;
15439   Bool_t fvC10NotOffset=cyl10 && !ofv;
15440 
15441   //fill plots
15442   if (mc.iaction==1){//CC
15443     if (mc.inu==14){//neutrinos
15444       hTrueEnNMCC->Fill(mc.energyMC,mc.rw);
15445       if (fvC10C08) hTrueEnNMCCCyl10Cyl08->Fill(mc.energyMC,mc.rw);
15446       if (fvC08C05) hTrueEnNMCCCyl08Cyl05->Fill(mc.energyMC,mc.rw);
15447       if (fvC05C00) hTrueEnNMCCCyl05Cyl00->Fill(mc.energyMC,mc.rw);
15448       
15449       if (fvC10Z13) hTrueEnNMCCCyl10Z13->Fill(mc.energyMC,mc.rw);
15450       if (fvC10Z35) hTrueEnNMCCCyl10Z35->Fill(mc.energyMC,mc.rw);
15451       if (fvC05Z13) hTrueEnNMCCCyl05Z13->Fill(mc.energyMC,mc.rw);
15452       if (fvC05Z35) hTrueEnNMCCCyl05Z35->Fill(mc.energyMC,mc.rw);
15453       
15454       if (ofv) hTrueEnNMCCOffset->Fill(mc.energyMC,mc.rw);
15455       if (fvC10NotOffset) hTrueEnNMCCCyl10NotOffset->
15456                             Fill(mc.energyMC,mc.rw);
15457     }
15458     else if (mc.inu==-14){//anti-neutrinos      
15459       hTrueEnNMBCC->Fill(mc.energyMC,mc.rw);
15460       if (fvC10C08) hTrueEnNMBCCCyl10Cyl08->Fill(mc.energyMC,mc.rw);
15461       if (fvC08C05) hTrueEnNMBCCCyl08Cyl05->Fill(mc.energyMC,mc.rw);
15462       if (fvC05C00) hTrueEnNMBCCCyl05Cyl00->Fill(mc.energyMC,mc.rw);
15463       
15464       if (fvC10Z13) hTrueEnNMBCCCyl10Z13->Fill(mc.energyMC,mc.rw);
15465       if (fvC10Z35) hTrueEnNMBCCCyl10Z35->Fill(mc.energyMC,mc.rw);
15466       if (fvC05Z13) hTrueEnNMBCCCyl05Z13->Fill(mc.energyMC,mc.rw);
15467       if (fvC05Z35) hTrueEnNMBCCCyl05Z35->Fill(mc.energyMC,mc.rw);
15468       
15469       if (ofv) hTrueEnNMBCCOffset->Fill(mc.energyMC,mc.rw);
15470       if (fvC10NotOffset) hTrueEnNMBCCCyl10NotOffset->
15471                             Fill(mc.energyMC,mc.rw);
15472     }
15473   }
15474   
15475   //all but NuMu/NuMuBar CC
15476   if (!(mc.iaction==1 && (mc.inu==14 || mc.inu==-14))) {
15477     hTrueEnNotMuCC->Fill(mc.energyMC,mc.rw);
15478     if (fvC10C08) hTrueEnNotMuCCCyl10Cyl08->Fill(mc.energyMC,mc.rw);
15479     if (fvC08C05) hTrueEnNotMuCCCyl08Cyl05->Fill(mc.energyMC,mc.rw);
15480     if (fvC05C00) hTrueEnNotMuCCCyl05Cyl00->Fill(mc.energyMC,mc.rw);
15481     
15482     if (fvC10Z13) hTrueEnNotMuCCCyl10Z13->Fill(mc.energyMC,mc.rw);
15483     if (fvC10Z35) hTrueEnNotMuCCCyl10Z35->Fill(mc.energyMC,mc.rw);
15484     if (fvC05Z13) hTrueEnNotMuCCCyl05Z13->Fill(mc.energyMC,mc.rw);
15485     if (fvC05Z35) hTrueEnNotMuCCCyl05Z35->Fill(mc.energyMC,mc.rw);
15486     
15487     if (ofv) hTrueEnNotMuCCOffset->Fill(mc.energyMC,mc.rw);
15488     if (fvC10NotOffset) hTrueEnNotMuCCCyl10NotOffset->
15489                           Fill(mc.energyMC,mc.rw);
15490   }
15491 }

void NuPlots::FillTruePIDHistos const NuEvent nu  )  const
 

This function makes plots of the true energy and reconstructed energy of the signal and the background

Note: not all histos are reweighted

Definition at line 16514 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::energy, NuEvent::energyMC, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::rw, NuEvent::simFlag, and NuEvent::y.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::ChargeSignCut(), NuAnalysis::EnergySpect(), NuAnalysis::LIRejectionTest(), NuDSTAna::MakeFinalPlots(), and NuAnalysis::NMBSummaryTreeAna().

16515 {  
16518 
16520  
16521   //PQ
16522   //true energy
16523   static TH1F* hEnNuMuCCPQ=0;
16524   static TH1F* hEnNuMuBarCCPQ=0;
16525   static TH1F* hEnNoRwNuMuCCPQ=0;//no reweighting
16526   static TH1F* hEnNoRwNuMuBarCCPQ=0;
16527   static TH1F* hEnNuMuNCPQ=0;
16528   static TH1F* hEnNuMuBarNCPQ=0;
16529   static TH1F* hEnNueCCPQ=0;
16530   static TH1F* hEnNueBarCCPQ=0;
16531   static TH1F* hEnNueNCPQ=0;
16532   static TH1F* hEnNueBarNCPQ=0;
16533   static TH1F* hEnNuTauCCPQ=0;
16534   static TH1F* hEnNuTauBarCCPQ=0;
16535   static TH1F* hEnNuTauNCPQ=0;
16536   static TH1F* hEnNuTauBarNCPQ=0;
16537 
16538   //reco energy
16539   static TH1F* hRecoEnNuMuCCPQ=0;
16540   static TH1F* hRecoEnNuMuBarCCPQ=0;
16541   static TH1F* hRecoEnNuMuNCPQ=0;
16542   static TH1F* hRecoEnNuMuBarNCPQ=0;
16543   static TH1F* hRecoEnNueCCPQ=0;
16544   static TH1F* hRecoEnNueBarCCPQ=0;
16545   static TH1F* hRecoEnNueNCPQ=0;
16546   static TH1F* hRecoEnNueBarNCPQ=0;
16547   static TH1F* hRecoEnNuTauCCPQ=0;
16548   static TH1F* hRecoEnNuTauBarCCPQ=0;
16549   static TH1F* hRecoEnNuTauNCPQ=0;
16550   static TH1F* hRecoEnNuTauBarNCPQ=0;
16551 
16552   //general NC ones
16553   static TH1F* hEnNCPQ=0;
16554   static TH1F* hRecoEnNCPQ=0;
16555 
16556   //general shw ones
16557   static TH1F* hEnAllShwPQ=0;
16558   static TH1F* hRecoEnAllShwPQ=0;
16559 
16560   //catch all except NuMuCC/NuMuBarCC
16561   static TH1F* hEnNotNuMuBarCCPQ=0;
16562   static TH1F* hEnNotNuMuCCPQ=0;
16563   static TH1F* hEnNoRwNotNuMuBarCCPQ=0;
16564   static TH1F* hEnNoRwNotNuMuCCPQ=0;
16565   static TH1F* hRecoEnNotNuMuBarCCPQ=0;
16566   static TH1F* hRecoEnNotNuMuCCPQ=0;
16567 
16568 
16569   //NQ
16570   //true energy
16571   static TH1F* hEnNuMuCCNQ=0;
16572   static TH1F* hEnNuMuBarCCNQ=0;
16573   static TH1F* hEnNoRwNuMuCCNQ=0;
16574   static TH1F* hEnNoRwNuMuBarCCNQ=0;
16575   static TH1F* hEnNuMuNCNQ=0;
16576   static TH1F* hEnNuMuBarNCNQ=0;
16577   static TH1F* hEnNueCCNQ=0;
16578   static TH1F* hEnNueBarCCNQ=0;
16579   static TH1F* hEnNueNCNQ=0;
16580   static TH1F* hEnNueBarNCNQ=0;
16581   static TH1F* hEnNuTauCCNQ=0;
16582   static TH1F* hEnNuTauBarCCNQ=0;
16583   static TH1F* hEnNuTauNCNQ=0;
16584   static TH1F* hEnNuTauBarNCNQ=0;
16585 
16586   //reco energy
16587   static TH1F* hRecoEnNuMuCCNQ=0;
16588   static TH1F* hRecoEnNuMuBarCCNQ=0;
16589   static TH1F* hRecoEnNuMuNCNQ=0;
16590   static TH1F* hRecoEnNuMuBarNCNQ=0;
16591   static TH1F* hRecoEnNueCCNQ=0;
16592   static TH1F* hRecoEnNueBarCCNQ=0;
16593   static TH1F* hRecoEnNueNCNQ=0;
16594   static TH1F* hRecoEnNueBarNCNQ=0;
16595   static TH1F* hRecoEnNuTauCCNQ=0;
16596   static TH1F* hRecoEnNuTauBarCCNQ=0;
16597   static TH1F* hRecoEnNuTauNCNQ=0;
16598   static TH1F* hRecoEnNuTauBarNCNQ=0;
16599 
16600   //general NC ones
16601   static TH1F* hEnNCNQ=0;
16602   static TH1F* hRecoEnNCNQ=0;
16603 
16604   //general shw ones
16605   static TH1F* hEnAllShwNQ=0;
16606   static TH1F* hRecoEnAllShwNQ=0;
16607 
16608   //catch all except NuMuCC/NuMuBarCC
16609   static TH1F* hEnNotNuMuBarCCNQ=0;
16610   static TH1F* hEnNotNuMuCCNQ=0;
16611   static TH1F* hEnNoRwNotNuMuBarCCNQ=0;
16612   static TH1F* hEnNoRwNotNuMuCCNQ=0;
16613   static TH1F* hRecoEnNotNuMuBarCCNQ=0;
16614   static TH1F* hRecoEnNotNuMuCCNQ=0;
16615 
16616 
16620   //y-distributions
16621   //PQ
16622   //true y
16623   static TH1F* hYNuMuCCPQ=0;
16624   static TH1F* hYNuMuBarCCPQ=0;
16625   static TH1F* hYNuMuNCPQ=0;
16626   static TH1F* hYNuMuBarNCPQ=0;
16627   static TH1F* hYNueCCPQ=0;
16628   static TH1F* hYNueBarCCPQ=0;
16629   static TH1F* hYNueNCPQ=0;
16630   static TH1F* hYNueBarNCPQ=0;
16631   static TH1F* hYNuTauCCPQ=0;
16632   static TH1F* hYNuTauBarCCPQ=0;
16633   static TH1F* hYNuTauNCPQ=0;
16634   static TH1F* hYNuTauBarNCPQ=0;
16635 
16636   //reco y
16637   static TH1F* hRecoYNuMuCCPQ=0;
16638   static TH1F* hRecoYNuMuBarCCPQ=0;
16639   static TH1F* hRecoYNuMuNCPQ=0;
16640   static TH1F* hRecoYNuMuBarNCPQ=0;
16641   static TH1F* hRecoYNueCCPQ=0;
16642   static TH1F* hRecoYNueBarCCPQ=0;
16643   static TH1F* hRecoYNueNCPQ=0;
16644   static TH1F* hRecoYNueBarNCPQ=0;
16645   static TH1F* hRecoYNuTauCCPQ=0;
16646   static TH1F* hRecoYNuTauBarCCPQ=0;
16647   static TH1F* hRecoYNuTauNCPQ=0;
16648   static TH1F* hRecoYNuTauBarNCPQ=0;
16649  
16650   //general NC ones
16651   static TH1F* hYNCPQ=0;
16652   static TH1F* hRecoYNCPQ=0;
16653 
16654   //general shw ones
16655   static TH1F* hYAllShwPQ=0;
16656   static TH1F* hRecoYAllShwPQ=0;
16657 
16658   //catch all except NuMuCC/NuMuBarCC
16659   static TH1F* hYNotNuMuBarCCPQ=0;
16660   static TH1F* hYNotNuMuCCPQ=0;
16661   static TH1F* hRecoYNotNuMuBarCCPQ=0;
16662   static TH1F* hRecoYNotNuMuCCPQ=0;
16663 
16664   //reco y - specific energy ranges
16665   static TH1F* hRecoYl10PQ=0;
16666   static TH1F* hRecoYg10l20PQ=0;
16667   static TH1F* hRecoYg20PQ=0;
16668 
16669 
16670   //NQ
16671   //true y
16672   static TH1F* hYNuMuCCNQ=0;
16673   static TH1F* hYNuMuBarCCNQ=0;
16674   static TH1F* hYNuMuNCNQ=0;
16675   static TH1F* hYNuMuBarNCNQ=0;
16676   static TH1F* hYNueCCNQ=0;
16677   static TH1F* hYNueBarCCNQ=0;
16678   static TH1F* hYNueNCNQ=0;
16679   static TH1F* hYNueBarNCNQ=0;
16680   static TH1F* hYNuTauCCNQ=0;
16681   static TH1F* hYNuTauBarCCNQ=0;
16682   static TH1F* hYNuTauNCNQ=0;
16683   static TH1F* hYNuTauBarNCNQ=0;
16684 
16685   //reco y
16686   static TH1F* hRecoYNuMuCCNQ=0;
16687   static TH1F* hRecoYNuMuBarCCNQ=0;
16688   static TH1F* hRecoYNuMuNCNQ=0;
16689   static TH1F* hRecoYNuMuBarNCNQ=0;
16690   static TH1F* hRecoYNueCCNQ=0;
16691   static TH1F* hRecoYNueBarCCNQ=0;
16692   static TH1F* hRecoYNueNCNQ=0;
16693   static TH1F* hRecoYNueBarNCNQ=0;
16694   static TH1F* hRecoYNuTauCCNQ=0;
16695   static TH1F* hRecoYNuTauBarCCNQ=0;
16696   static TH1F* hRecoYNuTauNCNQ=0;
16697   static TH1F* hRecoYNuTauBarNCNQ=0;
16698 
16699   //general NC ones
16700   static TH1F* hYNCNQ=0;
16701   static TH1F* hRecoYNCNQ=0;
16702 
16703   //general shw ones  
16704   static TH1F* hYAllShwNQ=0;
16705   static TH1F* hRecoYAllShwNQ=0;
16706 
16707   //catch all except NuMuCC/NuMuBarCC
16708   static TH1F* hYNotNuMuBarCCNQ=0;
16709   static TH1F* hYNotNuMuCCNQ=0;
16710   static TH1F* hRecoYNotNuMuBarCCNQ=0;
16711   static TH1F* hRecoYNotNuMuCCNQ=0;
16712 
16713   //reco y - specific energy ranges
16714   static TH1F* hRecoYl10NQ=0;
16715   static TH1F* hRecoYg10l20NQ=0;
16716   static TH1F* hRecoYg20NQ=0;
16717 
16718 
16719   if (!hRecoEnNuMuCCNQ){
16720     MAXMSG("NuPlots",Msg::kDebug,1)
16721       <<"Creating TruePID plots..."<<endl;
16722 
16723     //Positive charge
16724     //true energy
16725     hEnNuMuCCPQ=new TH1F("hEnNuMuCCPQ","hEnNuMuCCPQ",
16726                          4*352,-32,320);
16727     hEnNuMuCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16728     hEnNuMuCCPQ->GetXaxis()->CenterTitle();
16729     hEnNuMuCCPQ->GetYaxis()->SetTitle("");
16730     hEnNuMuCCPQ->GetYaxis()->CenterTitle();
16731     hEnNuMuCCPQ->SetFillColor(0);
16732     hEnNuMuCCPQ->SetLineColor(1);
16733     //hEnNuMuCCPQ->SetBit(TH1::kCanRebin);
16734 
16735     hEnNuMuBarCCPQ=new TH1F("hEnNuMuBarCCPQ","hEnNuMuBarCCPQ",
16736                             4*352,-32,320);
16737     hEnNuMuBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16738     hEnNuMuBarCCPQ->GetXaxis()->CenterTitle();
16739     hEnNuMuBarCCPQ->GetYaxis()->SetTitle("");
16740     hEnNuMuBarCCPQ->GetYaxis()->CenterTitle();
16741     hEnNuMuBarCCPQ->SetFillColor(0);
16742     hEnNuMuBarCCPQ->SetLineColor(2);
16743     //hEnNuMuBarCCPQ->SetBit(TH1::kCanRebin);
16744 
16745     hEnNoRwNuMuCCPQ=new TH1F("hEnNoRwNuMuCCPQ","hEnNoRwNuMuCCPQ",
16746                              4*352,-32,320);
16747     hEnNoRwNuMuCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16748     hEnNoRwNuMuCCPQ->GetXaxis()->CenterTitle();
16749     hEnNoRwNuMuCCPQ->GetYaxis()->SetTitle("");
16750     hEnNoRwNuMuCCPQ->GetYaxis()->CenterTitle();
16751     hEnNoRwNuMuCCPQ->SetFillColor(0);
16752     hEnNoRwNuMuCCPQ->SetLineColor(1);
16753     //hEnNoRwNuMuCCPQ->SetBit(TH1::kCanRebin);
16754 
16755     hEnNoRwNuMuBarCCPQ=new TH1F("hEnNoRwNuMuBarCCPQ",
16756                                 "hEnNoRwNuMuBarCCPQ",
16757                                 4*352,-32,320);
16758     hEnNoRwNuMuBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16759     hEnNoRwNuMuBarCCPQ->GetXaxis()->CenterTitle();
16760     hEnNoRwNuMuBarCCPQ->GetYaxis()->SetTitle("");
16761     hEnNoRwNuMuBarCCPQ->GetYaxis()->CenterTitle();
16762     hEnNoRwNuMuBarCCPQ->SetFillColor(0);
16763     hEnNoRwNuMuBarCCPQ->SetLineColor(2);
16764     //hEnNoRwNuMuBarCCPQ->SetBit(TH1::kCanRebin);
16765 
16766     hEnNuMuNCPQ=new TH1F("hEnNuMuNCPQ","hEnNuMuNCPQ",
16767                          4*352,-32,320);
16768     hEnNuMuNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16769     hEnNuMuNCPQ->GetXaxis()->CenterTitle();
16770     hEnNuMuNCPQ->GetYaxis()->SetTitle("");
16771     hEnNuMuNCPQ->GetYaxis()->CenterTitle();
16772     hEnNuMuNCPQ->SetFillColor(0);
16773     hEnNuMuNCPQ->SetLineColor(1);
16774     //hEnNuMuNCPQ->SetBit(TH1::kCanRebin);
16775 
16776     hEnNuMuBarNCPQ=new TH1F("hEnNuMuBarNCPQ","hEnNuMuBarNCPQ",
16777                             4*352,-32,320);
16778     hEnNuMuBarNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16779     hEnNuMuBarNCPQ->GetXaxis()->CenterTitle();
16780     hEnNuMuBarNCPQ->GetYaxis()->SetTitle("");
16781     hEnNuMuBarNCPQ->GetYaxis()->CenterTitle();
16782     hEnNuMuBarNCPQ->SetFillColor(0);
16783     hEnNuMuBarNCPQ->SetLineColor(2);
16784     //hEnNuMuBarNCPQ->SetBit(TH1::kCanRebin);
16785 
16786 
16787 
16788     hEnNueCCPQ=new TH1F("hEnNueCCPQ","hEnNueCCPQ",
16789                         4*352,-32,320);
16790     hEnNueCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16791     hEnNueCCPQ->GetXaxis()->CenterTitle();
16792     hEnNueCCPQ->GetYaxis()->SetTitle("");
16793     hEnNueCCPQ->GetYaxis()->CenterTitle();
16794     hEnNueCCPQ->SetFillColor(0);
16795     hEnNueCCPQ->SetLineColor(4);
16796     //hEnNueCCPQ->SetBit(TH1::kCanRebin);
16797 
16798     hEnNueBarCCPQ=new TH1F("hEnNueBarCCPQ","hEnNueBarCCPQ",
16799                            4*352,-32,320);
16800     hEnNueBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16801     hEnNueBarCCPQ->GetXaxis()->CenterTitle();
16802     hEnNueBarCCPQ->GetYaxis()->SetTitle("");
16803     hEnNueBarCCPQ->GetYaxis()->CenterTitle();
16804     hEnNueBarCCPQ->SetFillColor(0);
16805     hEnNueBarCCPQ->SetLineColor(4);
16806     //hEnNueBarCCPQ->SetBit(TH1::kCanRebin);
16807 
16808     hEnNueNCPQ=new TH1F("hEnNueNCPQ","hEnNueNCPQ",
16809                         4*352,-32,320);
16810     hEnNueNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16811     hEnNueNCPQ->GetXaxis()->CenterTitle();
16812     hEnNueNCPQ->GetYaxis()->SetTitle("");
16813     hEnNueNCPQ->GetYaxis()->CenterTitle();
16814     hEnNueNCPQ->SetFillColor(0);
16815     hEnNueNCPQ->SetLineColor(4);
16816     //hEnNueNCPQ->SetBit(TH1::kCanRebin);
16817 
16818     hEnNueBarNCPQ=new TH1F("hEnNueBarNCPQ","hEnNueBarNCPQ",
16819                            4*352,-32,320);
16820     hEnNueBarNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16821     hEnNueBarNCPQ->GetXaxis()->CenterTitle();
16822     hEnNueBarNCPQ->GetYaxis()->SetTitle("");
16823     hEnNueBarNCPQ->GetYaxis()->CenterTitle();
16824     hEnNueBarNCPQ->SetFillColor(0);
16825     hEnNueBarNCPQ->SetLineColor(4);
16826     //hEnNueBarNCPQ->SetBit(TH1::kCanRebin);
16827 
16828 
16829     hEnNuTauCCPQ=new TH1F("hEnNuTauCCPQ","hEnNuTauCCPQ",
16830                           4*352,-32,320);
16831     hEnNuTauCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16832     hEnNuTauCCPQ->GetXaxis()->CenterTitle();
16833     hEnNuTauCCPQ->GetYaxis()->SetTitle("");
16834     hEnNuTauCCPQ->GetYaxis()->CenterTitle();
16835     hEnNuTauCCPQ->SetFillColor(0);
16836     hEnNuTauCCPQ->SetLineColor(4);
16837     //hEnNuTauCCPQ->SetBit(TH1::kCanRebin);
16838 
16839     hEnNuTauBarCCPQ=new TH1F("hEnNuTauBarCCPQ","hEnNuTauBarCCPQ",
16840                              4*352,-32,320);
16841     hEnNuTauBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16842     hEnNuTauBarCCPQ->GetXaxis()->CenterTitle();
16843     hEnNuTauBarCCPQ->GetYaxis()->SetTitle("");
16844     hEnNuTauBarCCPQ->GetYaxis()->CenterTitle();
16845     hEnNuTauBarCCPQ->SetFillColor(0);
16846     hEnNuTauBarCCPQ->SetLineColor(4);
16847     //hEnNuTauBarCCPQ->SetBit(TH1::kCanRebin);
16848 
16849     hEnNuTauNCPQ=new TH1F("hEnNuTauNCPQ","hEnNuTauNCPQ",
16850                           4*352,-32,320);
16851     hEnNuTauNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16852     hEnNuTauNCPQ->GetXaxis()->CenterTitle();
16853     hEnNuTauNCPQ->GetYaxis()->SetTitle("");
16854     hEnNuTauNCPQ->GetYaxis()->CenterTitle();
16855     hEnNuTauNCPQ->SetFillColor(0);
16856     hEnNuTauNCPQ->SetLineColor(4);
16857     //hEnNuTauNCPQ->SetBit(TH1::kCanRebin);
16858 
16859     hEnNuTauBarNCPQ=new TH1F("hEnNuTauBarNCPQ","hEnNuTauBarNCPQ",
16860                              4*352,-32,320);
16861     hEnNuTauBarNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16862     hEnNuTauBarNCPQ->GetXaxis()->CenterTitle();
16863     hEnNuTauBarNCPQ->GetYaxis()->SetTitle("");
16864     hEnNuTauBarNCPQ->GetYaxis()->CenterTitle();
16865     hEnNuTauBarNCPQ->SetFillColor(0);
16866     hEnNuTauBarNCPQ->SetLineColor(4);
16867     //hEnNuTauBarNCPQ->SetBit(TH1::kCanRebin);
16868 
16869 
16870     //reco energy
16871     hRecoEnNuMuCCPQ=new TH1F("hRecoEnNuMuCCPQ","hRecoEnNuMuCCPQ",
16872                              4*352,-32,320);
16873     hRecoEnNuMuCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16874     hRecoEnNuMuCCPQ->GetXaxis()->CenterTitle();
16875     hRecoEnNuMuCCPQ->GetYaxis()->SetTitle("");
16876     hRecoEnNuMuCCPQ->GetYaxis()->CenterTitle();
16877     hRecoEnNuMuCCPQ->SetFillColor(0);
16878     hRecoEnNuMuCCPQ->SetLineColor(1);
16879     //hRecoEnNuMuCCPQ->SetBit(TH1::kCanRebin);
16880 
16881     hRecoEnNuMuBarCCPQ=new TH1F("hRecoEnNuMuBarCCPQ",
16882                                 "hRecoEnNuMuBarCCPQ",
16883                                 4*352,-32,320);
16884     hRecoEnNuMuBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16885     hRecoEnNuMuBarCCPQ->GetXaxis()->CenterTitle();
16886     hRecoEnNuMuBarCCPQ->GetYaxis()->SetTitle("");
16887     hRecoEnNuMuBarCCPQ->GetYaxis()->CenterTitle();
16888     hRecoEnNuMuBarCCPQ->SetFillColor(0);
16889     hRecoEnNuMuBarCCPQ->SetLineColor(2);
16890     //hRecoEnNuMuBarCCPQ->SetBit(TH1::kCanRebin);
16891 
16892     hRecoEnNuMuNCPQ=new TH1F("hRecoEnNuMuNCPQ","hRecoEnNuMuNCPQ",
16893                              4*352,-32,320);
16894     hRecoEnNuMuNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16895     hRecoEnNuMuNCPQ->GetXaxis()->CenterTitle();
16896     hRecoEnNuMuNCPQ->GetYaxis()->SetTitle("");
16897     hRecoEnNuMuNCPQ->GetYaxis()->CenterTitle();
16898     hRecoEnNuMuNCPQ->SetFillColor(0);
16899     hRecoEnNuMuNCPQ->SetLineColor(1);
16900     //hRecoEnNuMuNCPQ->SetBit(TH1::kCanRebin);
16901 
16902     hRecoEnNuMuBarNCPQ=new TH1F("hRecoEnNuMuBarNCPQ",
16903                                 "hRecoEnNuMuBarNCPQ",
16904                                 4*352,-32,320);
16905     hRecoEnNuMuBarNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16906     hRecoEnNuMuBarNCPQ->GetXaxis()->CenterTitle();
16907     hRecoEnNuMuBarNCPQ->GetYaxis()->SetTitle("");
16908     hRecoEnNuMuBarNCPQ->GetYaxis()->CenterTitle();
16909     hRecoEnNuMuBarNCPQ->SetFillColor(0);
16910     hRecoEnNuMuBarNCPQ->SetLineColor(2);
16911     //hRecoEnNuMuBarNCPQ->SetBit(TH1::kCanRebin);
16912 
16913 
16914 
16915     hRecoEnNueCCPQ=new TH1F("hRecoEnNueCCPQ","hRecoEnNueCCPQ",
16916                             4*352,-32,320);
16917     hRecoEnNueCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16918     hRecoEnNueCCPQ->GetXaxis()->CenterTitle();
16919     hRecoEnNueCCPQ->GetYaxis()->SetTitle("");
16920     hRecoEnNueCCPQ->GetYaxis()->CenterTitle();
16921     hRecoEnNueCCPQ->SetFillColor(0);
16922     hRecoEnNueCCPQ->SetLineColor(4);
16923     //hRecoEnNueCCPQ->SetBit(TH1::kCanRebin);
16924 
16925     hRecoEnNueBarCCPQ=new TH1F("hRecoEnNueBarCCPQ","hRecoEnNueBarCCPQ",
16926                                4*352,-32,320);
16927     hRecoEnNueBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16928     hRecoEnNueBarCCPQ->GetXaxis()->CenterTitle();
16929     hRecoEnNueBarCCPQ->GetYaxis()->SetTitle("");
16930     hRecoEnNueBarCCPQ->GetYaxis()->CenterTitle();
16931     hRecoEnNueBarCCPQ->SetFillColor(0);
16932     hRecoEnNueBarCCPQ->SetLineColor(4);
16933     //hRecoEnNueBarCCPQ->SetBit(TH1::kCanRebin);
16934 
16935     hRecoEnNueNCPQ=new TH1F("hRecoEnNueNCPQ","hRecoEnNueNCPQ",
16936                             4*352,-32,320);
16937     hRecoEnNueNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16938     hRecoEnNueNCPQ->GetXaxis()->CenterTitle();
16939     hRecoEnNueNCPQ->GetYaxis()->SetTitle("");
16940     hRecoEnNueNCPQ->GetYaxis()->CenterTitle();
16941     hRecoEnNueNCPQ->SetFillColor(0);
16942     hRecoEnNueNCPQ->SetLineColor(4);
16943     //hRecoEnNueNCPQ->SetBit(TH1::kCanRebin);
16944 
16945     hRecoEnNueBarNCPQ=new TH1F("hRecoEnNueBarNCPQ","hRecoEnNueBarNCPQ",
16946                                4*352,-32,320);
16947     hRecoEnNueBarNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16948     hRecoEnNueBarNCPQ->GetXaxis()->CenterTitle();
16949     hRecoEnNueBarNCPQ->GetYaxis()->SetTitle("");
16950     hRecoEnNueBarNCPQ->GetYaxis()->CenterTitle();
16951     hRecoEnNueBarNCPQ->SetFillColor(0);
16952     hRecoEnNueBarNCPQ->SetLineColor(4);
16953     //hRecoEnNueBarNCPQ->SetBit(TH1::kCanRebin);
16954 
16955 
16956     hRecoEnNuTauCCPQ=new TH1F("hRecoEnNuTauCCPQ","hRecoEnNuTauCCPQ",
16957                               4*352,-32,320);
16958     hRecoEnNuTauCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16959     hRecoEnNuTauCCPQ->GetXaxis()->CenterTitle();
16960     hRecoEnNuTauCCPQ->GetYaxis()->SetTitle("");
16961     hRecoEnNuTauCCPQ->GetYaxis()->CenterTitle();
16962     hRecoEnNuTauCCPQ->SetFillColor(0);
16963     hRecoEnNuTauCCPQ->SetLineColor(4);
16964     //hRecoEnNuTauCCPQ->SetBit(TH1::kCanRebin);
16965 
16966     hRecoEnNuTauBarCCPQ=new TH1F("hRecoEnNuTauBarCCPQ","hRecoEnNuTauBarCCPQ",
16967                                  4*352,-32,320);
16968     hRecoEnNuTauBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16969     hRecoEnNuTauBarCCPQ->GetXaxis()->CenterTitle();
16970     hRecoEnNuTauBarCCPQ->GetYaxis()->SetTitle("");
16971     hRecoEnNuTauBarCCPQ->GetYaxis()->CenterTitle();
16972     hRecoEnNuTauBarCCPQ->SetFillColor(0);
16973     hRecoEnNuTauBarCCPQ->SetLineColor(4);
16974     //hRecoEnNuTauBarCCPQ->SetBit(TH1::kCanRebin);
16975 
16976     hRecoEnNuTauNCPQ=new TH1F("hRecoEnNuTauNCPQ","hRecoEnNuTauNCPQ",
16977                               4*352,-32,320);
16978     hRecoEnNuTauNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16979     hRecoEnNuTauNCPQ->GetXaxis()->CenterTitle();
16980     hRecoEnNuTauNCPQ->GetYaxis()->SetTitle("");
16981     hRecoEnNuTauNCPQ->GetYaxis()->CenterTitle();
16982     hRecoEnNuTauNCPQ->SetFillColor(0);
16983     hRecoEnNuTauNCPQ->SetLineColor(4);
16984     //hRecoEnNuTauNCPQ->SetBit(TH1::kCanRebin);
16985 
16986     hRecoEnNuTauBarNCPQ=new TH1F("hRecoEnNuTauBarNCPQ","hRecoEnNuTauBarNCPQ",
16987                                  4*352,-32,320);
16988     hRecoEnNuTauBarNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
16989     hRecoEnNuTauBarNCPQ->GetXaxis()->CenterTitle();
16990     hRecoEnNuTauBarNCPQ->GetYaxis()->SetTitle("");
16991     hRecoEnNuTauBarNCPQ->GetYaxis()->CenterTitle();
16992     hRecoEnNuTauBarNCPQ->SetFillColor(0);
16993     hRecoEnNuTauBarNCPQ->SetLineColor(4);
16994     //hRecoEnNuTauBarNCPQ->SetBit(TH1::kCanRebin);
16995 
16996 
17000     //NQ
17001     //true energy
17002     hEnNuMuCCNQ=new TH1F("hEnNuMuCCNQ","hEnNuMuCCNQ",
17003                          4*352,-32,320);
17004     hEnNuMuCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17005     hEnNuMuCCNQ->GetXaxis()->CenterTitle();
17006     hEnNuMuCCNQ->GetYaxis()->SetTitle("");
17007     hEnNuMuCCNQ->GetYaxis()->CenterTitle();
17008     hEnNuMuCCNQ->SetFillColor(0);
17009     hEnNuMuCCNQ->SetLineColor(1);
17010     //hEnNuMuCCNQ->SetBit(TH1::kCanRebin);
17011 
17012     hEnNuMuBarCCNQ=new TH1F("hEnNuMuBarCCNQ","hEnNuMuBarCCNQ",
17013                             4*352,-32,320);
17014     hEnNuMuBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17015     hEnNuMuBarCCNQ->GetXaxis()->CenterTitle();
17016     hEnNuMuBarCCNQ->GetYaxis()->SetTitle("");
17017     hEnNuMuBarCCNQ->GetYaxis()->CenterTitle();
17018     hEnNuMuBarCCNQ->SetFillColor(0);
17019     hEnNuMuBarCCNQ->SetLineColor(2);
17020     //hEnNuMuBarCCNQ->SetBit(TH1::kCanRebin);
17021 
17022     hEnNoRwNuMuCCNQ=new TH1F("hEnNoRwNuMuCCNQ","hEnNoRwNuMuCCNQ",
17023                              4*352,-32,320);
17024     hEnNoRwNuMuCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17025     hEnNoRwNuMuCCNQ->GetXaxis()->CenterTitle();
17026     hEnNoRwNuMuCCNQ->GetYaxis()->SetTitle("");
17027     hEnNoRwNuMuCCNQ->GetYaxis()->CenterTitle();
17028     hEnNoRwNuMuCCNQ->SetFillColor(0);
17029     hEnNoRwNuMuCCNQ->SetLineColor(1);
17030     //hEnNoRwNuMuCCNQ->SetBit(TH1::kCanRebin);
17031 
17032     hEnNoRwNuMuBarCCNQ=new TH1F("hEnNoRwNuMuBarCCNQ",
17033                                 "hEnNoRwNuMuBarCCNQ",
17034                                 4*352,-32,320);
17035     hEnNoRwNuMuBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17036     hEnNoRwNuMuBarCCNQ->GetXaxis()->CenterTitle();
17037     hEnNoRwNuMuBarCCNQ->GetYaxis()->SetTitle("");
17038     hEnNoRwNuMuBarCCNQ->GetYaxis()->CenterTitle();
17039     hEnNoRwNuMuBarCCNQ->SetFillColor(0);
17040     hEnNoRwNuMuBarCCNQ->SetLineColor(2);
17041     //hEnNoRwNuMuBarCCNQ->SetBit(TH1::kCanRebin);
17042 
17043     hEnNuMuNCNQ=new TH1F("hEnNuMuNCNQ","hEnNuMuNCNQ",
17044                          4*352,-32,320);
17045     hEnNuMuNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17046     hEnNuMuNCNQ->GetXaxis()->CenterTitle();
17047     hEnNuMuNCNQ->GetYaxis()->SetTitle("");
17048     hEnNuMuNCNQ->GetYaxis()->CenterTitle();
17049     hEnNuMuNCNQ->SetFillColor(0);
17050     hEnNuMuNCNQ->SetLineColor(1);
17051     //hEnNuMuNCNQ->SetBit(TH1::kCanRebin);
17052 
17053     hEnNuMuBarNCNQ=new TH1F("hEnNuMuBarNCNQ","hEnNuMuBarNCNQ",
17054                             4*352,-32,320);
17055     hEnNuMuBarNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17056     hEnNuMuBarNCNQ->GetXaxis()->CenterTitle();
17057     hEnNuMuBarNCNQ->GetYaxis()->SetTitle("");
17058     hEnNuMuBarNCNQ->GetYaxis()->CenterTitle();
17059     hEnNuMuBarNCNQ->SetFillColor(0);
17060     hEnNuMuBarNCNQ->SetLineColor(2);
17061     //hEnNuMuBarNCNQ->SetBit(TH1::kCanRebin);
17062 
17063 
17064     hEnNueCCNQ=new TH1F("hEnNueCCNQ","hEnNueCCNQ",
17065                         4*352,-32,320);
17066     hEnNueCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17067     hEnNueCCNQ->GetXaxis()->CenterTitle();
17068     hEnNueCCNQ->GetYaxis()->SetTitle("");
17069     hEnNueCCNQ->GetYaxis()->CenterTitle();
17070     hEnNueCCNQ->SetFillColor(0);
17071     hEnNueCCNQ->SetLineColor(4);
17072     //hEnNueCCNQ->SetBit(TH1::kCanRebin);
17073 
17074     hEnNueBarCCNQ=new TH1F("hEnNueBarCCNQ","hEnNueBarCCNQ",
17075                            4*352,-32,320);
17076     hEnNueBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17077     hEnNueBarCCNQ->GetXaxis()->CenterTitle();
17078     hEnNueBarCCNQ->GetYaxis()->SetTitle("");
17079     hEnNueBarCCNQ->GetYaxis()->CenterTitle();
17080     hEnNueBarCCNQ->SetFillColor(0);
17081     hEnNueBarCCNQ->SetLineColor(4);
17082     //hEnNueBarCCNQ->SetBit(TH1::kCanRebin);
17083 
17084     hEnNueNCNQ=new TH1F("hEnNueNCNQ","hEnNueNCNQ",
17085                         4*352,-32,320);
17086     hEnNueNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17087     hEnNueNCNQ->GetXaxis()->CenterTitle();
17088     hEnNueNCNQ->GetYaxis()->SetTitle("");
17089     hEnNueNCNQ->GetYaxis()->CenterTitle();
17090     hEnNueNCNQ->SetFillColor(0);
17091     hEnNueNCNQ->SetLineColor(4);
17092     //hEnNueNCNQ->SetBit(TH1::kCanRebin);
17093 
17094     hEnNueBarNCNQ=new TH1F("hEnNueBarNCNQ","hEnNueBarNCNQ",
17095                            4*352,-32,320);
17096     hEnNueBarNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17097     hEnNueBarNCNQ->GetXaxis()->CenterTitle();
17098     hEnNueBarNCNQ->GetYaxis()->SetTitle("");
17099     hEnNueBarNCNQ->GetYaxis()->CenterTitle();
17100     hEnNueBarNCNQ->SetFillColor(0);
17101     hEnNueBarNCNQ->SetLineColor(4);
17102     //hEnNueBarNCNQ->SetBit(TH1::kCanRebin);
17103 
17104 
17105     hEnNuTauCCNQ=new TH1F("hEnNuTauCCNQ","hEnNuTauCCNQ",
17106                           4*352,-32,320);
17107     hEnNuTauCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17108     hEnNuTauCCNQ->GetXaxis()->CenterTitle();
17109     hEnNuTauCCNQ->GetYaxis()->SetTitle("");
17110     hEnNuTauCCNQ->GetYaxis()->CenterTitle();
17111     hEnNuTauCCNQ->SetFillColor(0);
17112     hEnNuTauCCNQ->SetLineColor(4);
17113     //hEnNuTauCCNQ->SetBit(TH1::kCanRebin);
17114 
17115     hEnNuTauBarCCNQ=new TH1F("hEnNuTauBarCCNQ","hEnNuTauBarCCNQ",
17116                              4*352,-32,320);
17117     hEnNuTauBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17118     hEnNuTauBarCCNQ->GetXaxis()->CenterTitle();
17119     hEnNuTauBarCCNQ->GetYaxis()->SetTitle("");
17120     hEnNuTauBarCCNQ->GetYaxis()->CenterTitle();
17121     hEnNuTauBarCCNQ->SetFillColor(0);
17122     hEnNuTauBarCCNQ->SetLineColor(4);
17123     //hEnNuTauBarCCNQ->SetBit(TH1::kCanRebin);
17124 
17125     hEnNuTauNCNQ=new TH1F("hEnNuTauNCNQ","hEnNuTauNCNQ",
17126                           4*352,-32,320);
17127     hEnNuTauNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17128     hEnNuTauNCNQ->GetXaxis()->CenterTitle();
17129     hEnNuTauNCNQ->GetYaxis()->SetTitle("");
17130     hEnNuTauNCNQ->GetYaxis()->CenterTitle();
17131     hEnNuTauNCNQ->SetFillColor(0);
17132     hEnNuTauNCNQ->SetLineColor(4);
17133     //hEnNuTauNCNQ->SetBit(TH1::kCanRebin);
17134 
17135     hEnNuTauBarNCNQ=new TH1F("hEnNuTauBarNCNQ","hEnNuTauBarNCNQ",
17136                              4*352,-32,320);
17137     hEnNuTauBarNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17138     hEnNuTauBarNCNQ->GetXaxis()->CenterTitle();
17139     hEnNuTauBarNCNQ->GetYaxis()->SetTitle("");
17140     hEnNuTauBarNCNQ->GetYaxis()->CenterTitle();
17141     hEnNuTauBarNCNQ->SetFillColor(0);
17142     hEnNuTauBarNCNQ->SetLineColor(4);
17143     //hEnNuTauBarNCNQ->SetBit(TH1::kCanRebin);
17144 
17145 
17146 
17147     //reco energy
17148     hRecoEnNuMuCCNQ=new TH1F("hRecoEnNuMuCCNQ","hRecoEnNuMuCCNQ",
17149                              4*352,-32,320);
17150     hRecoEnNuMuCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17151     hRecoEnNuMuCCNQ->GetXaxis()->CenterTitle();
17152     hRecoEnNuMuCCNQ->GetYaxis()->SetTitle("");
17153     hRecoEnNuMuCCNQ->GetYaxis()->CenterTitle();
17154     hRecoEnNuMuCCNQ->SetFillColor(0);
17155     hRecoEnNuMuCCNQ->SetLineColor(1);
17156     //hRecoEnNuMuCCNQ->SetBit(TH1::kCanRebin);
17157 
17158     hRecoEnNuMuBarCCNQ=new TH1F("hRecoEnNuMuBarCCNQ",
17159                                 "hRecoEnNuMuBarCCNQ",
17160                                 4*352,-32,320);
17161     hRecoEnNuMuBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17162     hRecoEnNuMuBarCCNQ->GetXaxis()->CenterTitle();
17163     hRecoEnNuMuBarCCNQ->GetYaxis()->SetTitle("");
17164     hRecoEnNuMuBarCCNQ->GetYaxis()->CenterTitle();
17165     hRecoEnNuMuBarCCNQ->SetFillColor(0);
17166     hRecoEnNuMuBarCCNQ->SetLineColor(2);
17167     //hRecoEnNuMuBarCCNQ->SetBit(TH1::kCanRebin);
17168 
17169     hRecoEnNuMuNCNQ=new TH1F("hRecoEnNuMuNCNQ","hRecoEnNuMuNCNQ",
17170                              4*352,-32,320);
17171     hRecoEnNuMuNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17172     hRecoEnNuMuNCNQ->GetXaxis()->CenterTitle();
17173     hRecoEnNuMuNCNQ->GetYaxis()->SetTitle("");
17174     hRecoEnNuMuNCNQ->GetYaxis()->CenterTitle();
17175     hRecoEnNuMuNCNQ->SetFillColor(0);
17176     hRecoEnNuMuNCNQ->SetLineColor(1);
17177     //hRecoEnNuMuNCNQ->SetBit(TH1::kCanRebin);
17178 
17179     hRecoEnNuMuBarNCNQ=new TH1F("hRecoEnNuMuBarNCNQ",
17180                                 "hRecoEnNuMuBarNCNQ",
17181                                 4*352,-32,320);
17182     hRecoEnNuMuBarNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17183     hRecoEnNuMuBarNCNQ->GetXaxis()->CenterTitle();
17184     hRecoEnNuMuBarNCNQ->GetYaxis()->SetTitle("");
17185     hRecoEnNuMuBarNCNQ->GetYaxis()->CenterTitle();
17186     hRecoEnNuMuBarNCNQ->SetFillColor(0);
17187     hRecoEnNuMuBarNCNQ->SetLineColor(2);
17188     //hRecoEnNuMuBarNCNQ->SetBit(TH1::kCanRebin);
17189 
17190 
17191 
17192     hRecoEnNueCCNQ=new TH1F("hRecoEnNueCCNQ","hRecoEnNueCCNQ",
17193                             4*352,-32,320);
17194     hRecoEnNueCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17195     hRecoEnNueCCNQ->GetXaxis()->CenterTitle();
17196     hRecoEnNueCCNQ->GetYaxis()->SetTitle("");
17197     hRecoEnNueCCNQ->GetYaxis()->CenterTitle();
17198     hRecoEnNueCCNQ->SetFillColor(0);
17199     hRecoEnNueCCNQ->SetLineColor(4);
17200     //hRecoEnNueCCNQ->SetBit(TH1::kCanRebin);
17201 
17202     hRecoEnNueBarCCNQ=new TH1F("hRecoEnNueBarCCNQ","hRecoEnNueBarCCNQ",
17203                                4*352,-32,320);
17204     hRecoEnNueBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17205     hRecoEnNueBarCCNQ->GetXaxis()->CenterTitle();
17206     hRecoEnNueBarCCNQ->GetYaxis()->SetTitle("");
17207     hRecoEnNueBarCCNQ->GetYaxis()->CenterTitle();
17208     hRecoEnNueBarCCNQ->SetFillColor(0);
17209     hRecoEnNueBarCCNQ->SetLineColor(4);
17210     //hRecoEnNueBarCCNQ->SetBit(TH1::kCanRebin);
17211 
17212     hRecoEnNueNCNQ=new TH1F("hRecoEnNueNCNQ","hRecoEnNueNCNQ",
17213                             4*352,-32,320);
17214     hRecoEnNueNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17215     hRecoEnNueNCNQ->GetXaxis()->CenterTitle();
17216     hRecoEnNueNCNQ->GetYaxis()->SetTitle("");
17217     hRecoEnNueNCNQ->GetYaxis()->CenterTitle();
17218     hRecoEnNueNCNQ->SetFillColor(0);
17219     hRecoEnNueNCNQ->SetLineColor(4);
17220     //hRecoEnNueNCNQ->SetBit(TH1::kCanRebin);
17221 
17222     hRecoEnNueBarNCNQ=new TH1F("hRecoEnNueBarNCNQ","hRecoEnNueBarNCNQ",
17223                                4*352,-32,320);
17224     hRecoEnNueBarNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17225     hRecoEnNueBarNCNQ->GetXaxis()->CenterTitle();
17226     hRecoEnNueBarNCNQ->GetYaxis()->SetTitle("");
17227     hRecoEnNueBarNCNQ->GetYaxis()->CenterTitle();
17228     hRecoEnNueBarNCNQ->SetFillColor(0);
17229     hRecoEnNueBarNCNQ->SetLineColor(4);
17230     //hRecoEnNueBarNCNQ->SetBit(TH1::kCanRebin);
17231 
17232 
17233     hRecoEnNuTauCCNQ=new TH1F("hRecoEnNuTauCCNQ","hRecoEnNuTauCCNQ",
17234                               4*352,-32,320);
17235     hRecoEnNuTauCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17236     hRecoEnNuTauCCNQ->GetXaxis()->CenterTitle();
17237     hRecoEnNuTauCCNQ->GetYaxis()->SetTitle("");
17238     hRecoEnNuTauCCNQ->GetYaxis()->CenterTitle();
17239     hRecoEnNuTauCCNQ->SetFillColor(0);
17240     hRecoEnNuTauCCNQ->SetLineColor(4);
17241     //hRecoEnNuTauCCNQ->SetBit(TH1::kCanRebin);
17242 
17243     hRecoEnNuTauBarCCNQ=new TH1F("hRecoEnNuTauBarCCNQ","hRecoEnNuTauBarCCNQ",
17244                                  4*352,-32,320);
17245     hRecoEnNuTauBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17246     hRecoEnNuTauBarCCNQ->GetXaxis()->CenterTitle();
17247     hRecoEnNuTauBarCCNQ->GetYaxis()->SetTitle("");
17248     hRecoEnNuTauBarCCNQ->GetYaxis()->CenterTitle();
17249     hRecoEnNuTauBarCCNQ->SetFillColor(0);
17250     hRecoEnNuTauBarCCNQ->SetLineColor(4);
17251     //hRecoEnNuTauBarCCNQ->SetBit(TH1::kCanRebin);
17252 
17253     hRecoEnNuTauNCNQ=new TH1F("hRecoEnNuTauNCNQ","hRecoEnNuTauNCNQ",
17254                               4*352,-32,320);
17255     hRecoEnNuTauNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17256     hRecoEnNuTauNCNQ->GetXaxis()->CenterTitle();
17257     hRecoEnNuTauNCNQ->GetYaxis()->SetTitle("");
17258     hRecoEnNuTauNCNQ->GetYaxis()->CenterTitle();
17259     hRecoEnNuTauNCNQ->SetFillColor(0);
17260     hRecoEnNuTauNCNQ->SetLineColor(4);
17261     //hRecoEnNuTauNCNQ->SetBit(TH1::kCanRebin);
17262 
17263     hRecoEnNuTauBarNCNQ=new TH1F("hRecoEnNuTauBarNCNQ","hRecoEnNuTauBarNCNQ",
17264                                  4*352,-32,320);
17265     hRecoEnNuTauBarNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17266     hRecoEnNuTauBarNCNQ->GetXaxis()->CenterTitle();
17267     hRecoEnNuTauBarNCNQ->GetYaxis()->SetTitle("");
17268     hRecoEnNuTauBarNCNQ->GetYaxis()->CenterTitle();
17269     hRecoEnNuTauBarNCNQ->SetFillColor(0);
17270     hRecoEnNuTauBarNCNQ->SetLineColor(4);
17271     //hRecoEnNuTauBarNCNQ->SetBit(TH1::kCanRebin);
17272 
17273 
17274 
17276     //general NC ones
17278     hEnNCPQ=new TH1F("hEnNCPQ","hEnNCPQ",
17279                      4*352,-32,320);
17280     hEnNCPQ->GetXaxis()->SetTitle("Energy (GeV)");
17281     hEnNCPQ->GetXaxis()->CenterTitle();
17282     hEnNCPQ->GetYaxis()->SetTitle("");
17283     hEnNCPQ->GetYaxis()->CenterTitle();
17284     hEnNCPQ->SetFillColor(0);
17285     hEnNCPQ->SetLineColor(4);
17286     //hEnNCPQ->SetBit(TH1::kCanRebin);
17287 
17288     hEnNCNQ=new TH1F("hEnNCNQ","hEnNCNQ",
17289                      4*352,-32,320);
17290     hEnNCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17291     hEnNCNQ->GetXaxis()->CenterTitle();
17292     hEnNCNQ->GetYaxis()->SetTitle("");
17293     hEnNCNQ->GetYaxis()->CenterTitle();
17294     hEnNCNQ->SetFillColor(0);
17295     hEnNCNQ->SetLineColor(4);
17296     //hEnNCNQ->SetBit(TH1::kCanRebin);
17297 
17298 
17299     hRecoEnNCPQ=new TH1F("hRecoEnNCPQ","hRecoEnNCPQ",
17300                          4*352,-32,320);
17301     hRecoEnNCPQ->GetXaxis()->SetTitle("RecoEnergy (GeV)");
17302     hRecoEnNCPQ->GetXaxis()->CenterTitle();
17303     hRecoEnNCPQ->GetYaxis()->SetTitle("");
17304     hRecoEnNCPQ->GetYaxis()->CenterTitle();
17305     hRecoEnNCPQ->SetFillColor(0);
17306     hRecoEnNCPQ->SetLineColor(4);
17307     //hRecoEnNCPQ->SetBit(TH1::kCanRebin);
17308 
17309     hRecoEnNCNQ=new TH1F("hRecoEnNCNQ","hRecoEnNCNQ",
17310                          4*352,-32,320);
17311     hRecoEnNCNQ->GetXaxis()->SetTitle("RecoEnergy (GeV)");
17312     hRecoEnNCNQ->GetXaxis()->CenterTitle();
17313     hRecoEnNCNQ->GetYaxis()->SetTitle("");
17314     hRecoEnNCNQ->GetYaxis()->CenterTitle();
17315     hRecoEnNCNQ->SetFillColor(0);
17316     hRecoEnNCNQ->SetLineColor(4);
17317     //hRecoEnNCNQ->SetBit(TH1::kCanRebin);
17318 
17320     //general shw ones
17322     hEnAllShwPQ=new TH1F("hEnAllShwPQ","hEnAllShwPQ",
17323                          4*352,-32,320);
17324     hEnAllShwPQ->GetXaxis()->SetTitle("Energy (GeV)");
17325     hEnAllShwPQ->GetXaxis()->CenterTitle();
17326     hEnAllShwPQ->GetYaxis()->SetTitle("");
17327     hEnAllShwPQ->GetYaxis()->CenterTitle();
17328     hEnAllShwPQ->SetFillColor(0);
17329     hEnAllShwPQ->SetLineColor(4);
17330     //hEnAllShwPQ->SetBit(TH1::kCanRebin);
17331 
17332     hEnAllShwNQ=new TH1F("hEnAllShwNQ","hEnAllShwNQ",
17333                          4*352,-32,320);
17334     hEnAllShwNQ->GetXaxis()->SetTitle("Energy (GeV)");
17335     hEnAllShwNQ->GetXaxis()->CenterTitle();
17336     hEnAllShwNQ->GetYaxis()->SetTitle("");
17337     hEnAllShwNQ->GetYaxis()->CenterTitle();
17338     hEnAllShwNQ->SetFillColor(0);
17339     hEnAllShwNQ->SetLineColor(4);
17340     //hEnAllShwNQ->SetBit(TH1::kCanRebin);
17341 
17342 
17343     hRecoEnAllShwPQ=new TH1F("hRecoEnAllShwPQ","hRecoEnAllShwPQ",
17344                              4*352,-32,320);
17345     hRecoEnAllShwPQ->GetXaxis()->SetTitle("RecoEnergy (GeV)");
17346     hRecoEnAllShwPQ->GetXaxis()->CenterTitle();
17347     hRecoEnAllShwPQ->GetYaxis()->SetTitle("");
17348     hRecoEnAllShwPQ->GetYaxis()->CenterTitle();
17349     hRecoEnAllShwPQ->SetFillColor(0);
17350     hRecoEnAllShwPQ->SetLineColor(4);
17351     //hRecoEnAllShwPQ->SetBit(TH1::kCanRebin);
17352 
17353     hRecoEnAllShwNQ=new TH1F("hRecoEnAllShwNQ","hRecoEnAllShwNQ",
17354                              4*352,-32,320);
17355     hRecoEnAllShwNQ->GetXaxis()->SetTitle("RecoEnergy (GeV)");
17356     hRecoEnAllShwNQ->GetXaxis()->CenterTitle();
17357     hRecoEnAllShwNQ->GetYaxis()->SetTitle("");
17358     hRecoEnAllShwNQ->GetYaxis()->CenterTitle();
17359     hRecoEnAllShwNQ->SetFillColor(0);
17360     hRecoEnAllShwNQ->SetLineColor(4);
17361     //hRecoEnAllShwNQ->SetBit(TH1::kCanRebin);
17362 
17366     //catch all except NuMuCC/NuMuBarCC
17367     hEnNotNuMuBarCCPQ=new TH1F("hEnNotNuMuBarCCPQ","hEnNotNuMuBarCCPQ",
17368                                4*352,-32,320);
17369     hEnNotNuMuBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
17370     hEnNotNuMuBarCCPQ->GetXaxis()->CenterTitle();
17371     hEnNotNuMuBarCCPQ->GetYaxis()->SetTitle("");
17372     hEnNotNuMuBarCCPQ->GetYaxis()->CenterTitle();
17373     hEnNotNuMuBarCCPQ->SetFillColor(0);
17374     hEnNotNuMuBarCCPQ->SetLineColor(4);
17375     //hEnNotNuMuBarCCPQ->SetBit(TH1::kCanRebin);
17376 
17377     hEnNotNuMuBarCCNQ=new TH1F("hEnNotNuMuBarCCNQ","hEnNotNuMuBarCCNQ",
17378                                4*352,-32,320);
17379     hEnNotNuMuBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17380     hEnNotNuMuBarCCNQ->GetXaxis()->CenterTitle();
17381     hEnNotNuMuBarCCNQ->GetYaxis()->SetTitle("");
17382     hEnNotNuMuBarCCNQ->GetYaxis()->CenterTitle();
17383     hEnNotNuMuBarCCNQ->SetFillColor(0);
17384     hEnNotNuMuBarCCNQ->SetLineColor(4);
17385     //hEnNotNuMuBarCCNQ->SetBit(TH1::kCanRebin);
17386 
17387     hEnNotNuMuCCPQ=new TH1F("hEnNotNuMuCCPQ","hEnNotNuMuCCPQ",
17388                             4*352,-32,320);
17389     hEnNotNuMuCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
17390     hEnNotNuMuCCPQ->GetXaxis()->CenterTitle();
17391     hEnNotNuMuCCPQ->GetYaxis()->SetTitle("");
17392     hEnNotNuMuCCPQ->GetYaxis()->CenterTitle();
17393     hEnNotNuMuCCPQ->SetFillColor(0);
17394     hEnNotNuMuCCPQ->SetLineColor(4);
17395     //hEnNotNuMuCCPQ->SetBit(TH1::kCanRebin);
17396 
17397     hEnNotNuMuCCNQ=new TH1F("hEnNotNuMuCCNQ","hEnNotNuMuCCNQ",
17398                             4*352,-32,320);
17399     hEnNotNuMuCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17400     hEnNotNuMuCCNQ->GetXaxis()->CenterTitle();
17401     hEnNotNuMuCCNQ->GetYaxis()->SetTitle("");
17402     hEnNotNuMuCCNQ->GetYaxis()->CenterTitle();
17403     hEnNotNuMuCCNQ->SetFillColor(0);
17404     hEnNotNuMuCCNQ->SetLineColor(4);
17405     //hEnNotNuMuCCNQ->SetBit(TH1::kCanRebin);
17406 
17407 
17408     hEnNoRwNotNuMuBarCCPQ=new TH1F("hEnNoRwNotNuMuBarCCPQ",
17409                                    "hEnNoRwNotNuMuBarCCPQ",
17410                                    4*352,-32,320);
17411     hEnNoRwNotNuMuBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
17412     hEnNoRwNotNuMuBarCCPQ->GetXaxis()->CenterTitle();
17413     hEnNoRwNotNuMuBarCCPQ->GetYaxis()->SetTitle("");
17414     hEnNoRwNotNuMuBarCCPQ->GetYaxis()->CenterTitle();
17415     hEnNoRwNotNuMuBarCCPQ->SetFillColor(0);
17416     hEnNoRwNotNuMuBarCCPQ->SetLineColor(4);
17417     //hEnNoRwNotNuMuBarCCPQ->SetBit(TH1::kCanRebin);
17418 
17419     hEnNoRwNotNuMuBarCCNQ=new TH1F("hEnNoRwNotNuMuBarCCNQ",
17420                                    "hEnNoRwNotNuMuBarCCNQ",
17421                                    4*352,-32,320);
17422     hEnNoRwNotNuMuBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17423     hEnNoRwNotNuMuBarCCNQ->GetXaxis()->CenterTitle();
17424     hEnNoRwNotNuMuBarCCNQ->GetYaxis()->SetTitle("");
17425     hEnNoRwNotNuMuBarCCNQ->GetYaxis()->CenterTitle();
17426     hEnNoRwNotNuMuBarCCNQ->SetFillColor(0);
17427     hEnNoRwNotNuMuBarCCNQ->SetLineColor(4);
17428     //hEnNoRwNotNuMuBarCCNQ->SetBit(TH1::kCanRebin);
17429 
17430     hEnNoRwNotNuMuCCPQ=new TH1F("hEnNoRwNotNuMuCCPQ",
17431                                 "hEnNoRwNotNuMuCCPQ",
17432                                 4*352,-32,320);
17433     hEnNoRwNotNuMuCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
17434     hEnNoRwNotNuMuCCPQ->GetXaxis()->CenterTitle();
17435     hEnNoRwNotNuMuCCPQ->GetYaxis()->SetTitle("");
17436     hEnNoRwNotNuMuCCPQ->GetYaxis()->CenterTitle();
17437     hEnNoRwNotNuMuCCPQ->SetFillColor(0);
17438     hEnNoRwNotNuMuCCPQ->SetLineColor(4);
17439     //hEnNoRwNotNuMuCCPQ->SetBit(TH1::kCanRebin);
17440 
17441     hEnNoRwNotNuMuCCNQ=new TH1F("hEnNoRwNotNuMuCCNQ",
17442                                 "hEnNoRwNotNuMuCCNQ",
17443                                 4*352,-32,320);
17444     hEnNoRwNotNuMuCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17445     hEnNoRwNotNuMuCCNQ->GetXaxis()->CenterTitle();
17446     hEnNoRwNotNuMuCCNQ->GetYaxis()->SetTitle("");
17447     hEnNoRwNotNuMuCCNQ->GetYaxis()->CenterTitle();
17448     hEnNoRwNotNuMuCCNQ->SetFillColor(0);
17449     hEnNoRwNotNuMuCCNQ->SetLineColor(4);
17450     //hEnNoRwNotNuMuCCNQ->SetBit(TH1::kCanRebin);
17451 
17452 
17453 
17454     //reco
17455     hRecoEnNotNuMuBarCCPQ=new TH1F("hRecoEnNotNuMuBarCCPQ",
17456                                    "hRecoEnNotNuMuBarCCPQ",
17457                                    4*352,-32,320);
17458     hRecoEnNotNuMuBarCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
17459     hRecoEnNotNuMuBarCCPQ->GetXaxis()->CenterTitle();
17460     hRecoEnNotNuMuBarCCPQ->GetYaxis()->SetTitle("");
17461     hRecoEnNotNuMuBarCCPQ->GetYaxis()->CenterTitle();
17462     hRecoEnNotNuMuBarCCPQ->SetFillColor(0);
17463     hRecoEnNotNuMuBarCCPQ->SetLineColor(4);
17464     //hRecoEnNotNuMuBarCCPQ->SetBit(TH1::kCanRebin);
17465 
17466     hRecoEnNotNuMuBarCCNQ=new TH1F("hRecoEnNotNuMuBarCCNQ",
17467                                    "hRecoEnNotNuMuBarCCNQ",
17468                                    4*352,-32,320);
17469     hRecoEnNotNuMuBarCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17470     hRecoEnNotNuMuBarCCNQ->GetXaxis()->CenterTitle();
17471     hRecoEnNotNuMuBarCCNQ->GetYaxis()->SetTitle("");
17472     hRecoEnNotNuMuBarCCNQ->GetYaxis()->CenterTitle();
17473     hRecoEnNotNuMuBarCCNQ->SetFillColor(0);
17474     hRecoEnNotNuMuBarCCNQ->SetLineColor(4);
17475     //hRecoEnNotNuMuBarCCNQ->SetBit(TH1::kCanRebin);
17476 
17477     hRecoEnNotNuMuCCPQ=new TH1F("hRecoEnNotNuMuCCPQ",
17478                                 "hRecoEnNotNuMuCCPQ",
17479                                 4*352,-32,320);
17480     hRecoEnNotNuMuCCPQ->GetXaxis()->SetTitle("Energy (GeV)");
17481     hRecoEnNotNuMuCCPQ->GetXaxis()->CenterTitle();
17482     hRecoEnNotNuMuCCPQ->GetYaxis()->SetTitle("");
17483     hRecoEnNotNuMuCCPQ->GetYaxis()->CenterTitle();
17484     hRecoEnNotNuMuCCPQ->SetFillColor(0);
17485     hRecoEnNotNuMuCCPQ->SetLineColor(4);
17486     //hRecoEnNotNuMuCCPQ->SetBit(TH1::kCanRebin);
17487 
17488     hRecoEnNotNuMuCCNQ=new TH1F("hRecoEnNotNuMuCCNQ",
17489                                 "hRecoEnNotNuMuCCNQ",
17490                                 4*352,-32,320);
17491     hRecoEnNotNuMuCCNQ->GetXaxis()->SetTitle("Energy (GeV)");
17492     hRecoEnNotNuMuCCNQ->GetXaxis()->CenterTitle();
17493     hRecoEnNotNuMuCCNQ->GetYaxis()->SetTitle("");
17494     hRecoEnNotNuMuCCNQ->GetYaxis()->CenterTitle();
17495     hRecoEnNotNuMuCCNQ->SetFillColor(0);
17496     hRecoEnNotNuMuCCNQ->SetLineColor(4);
17497     //hRecoEnNotNuMuCCNQ->SetBit(TH1::kCanRebin);
17498 
17499 
17500 
17504     //y-distributions
17505     //Positive charge
17506     //true y
17507     hYNuMuCCPQ=new TH1F("hYNuMuCCPQ","hYNuMuCCPQ",
17508                         1400,-0.2,1.2);
17509     hYNuMuCCPQ->GetXaxis()->SetTitle("y");
17510     hYNuMuCCPQ->GetXaxis()->CenterTitle();
17511     hYNuMuCCPQ->GetYaxis()->SetTitle("");
17512     hYNuMuCCPQ->GetYaxis()->CenterTitle();
17513     hYNuMuCCPQ->SetFillColor(0);
17514     hYNuMuCCPQ->SetLineColor(1);
17515     //hYNuMuCCPQ->SetBit(TH1::kCanRebin);
17516 
17517     hYNuMuBarCCPQ=new TH1F("hYNuMuBarCCPQ","hYNuMuBarCCPQ",
17518                            1400,-0.2,1.2);
17519     hYNuMuBarCCPQ->GetXaxis()->SetTitle("y");
17520     hYNuMuBarCCPQ->GetXaxis()->CenterTitle();
17521     hYNuMuBarCCPQ->GetYaxis()->SetTitle("");
17522     hYNuMuBarCCPQ->GetYaxis()->CenterTitle();
17523     hYNuMuBarCCPQ->SetFillColor(0);
17524     hYNuMuBarCCPQ->SetLineColor(2);
17525     //hYNuMuBarCCPQ->SetBit(TH1::kCanRebin);
17526 
17527     hYNuMuNCPQ=new TH1F("hYNuMuNCPQ","hYNuMuNCPQ",
17528                         1400,-0.2,1.2);
17529     hYNuMuNCPQ->GetXaxis()->SetTitle("y");
17530     hYNuMuNCPQ->GetXaxis()->CenterTitle();
17531     hYNuMuNCPQ->GetYaxis()->SetTitle("");
17532     hYNuMuNCPQ->GetYaxis()->CenterTitle();
17533     hYNuMuNCPQ->SetFillColor(0);
17534     hYNuMuNCPQ->SetLineColor(1);
17535     //hYNuMuNCPQ->SetBit(TH1::kCanRebin);
17536 
17537     hYNuMuBarNCPQ=new TH1F("hYNuMuBarNCPQ","hYNuMuBarNCPQ",
17538                            1400,-0.2,1.2);
17539     hYNuMuBarNCPQ->GetXaxis()->SetTitle("y");
17540     hYNuMuBarNCPQ->GetXaxis()->CenterTitle();
17541     hYNuMuBarNCPQ->GetYaxis()->SetTitle("");
17542     hYNuMuBarNCPQ->GetYaxis()->CenterTitle();
17543     hYNuMuBarNCPQ->SetFillColor(0);
17544     hYNuMuBarNCPQ->SetLineColor(2);
17545     //hYNuMuBarNCPQ->SetBit(TH1::kCanRebin);
17546 
17547 
17548 
17549     hYNueCCPQ=new TH1F("hYNueCCPQ","hYNueCCPQ",
17550                        1400,-0.2,1.2);
17551     hYNueCCPQ->GetXaxis()->SetTitle("y");
17552     hYNueCCPQ->GetXaxis()->CenterTitle();
17553     hYNueCCPQ->GetYaxis()->SetTitle("");
17554     hYNueCCPQ->GetYaxis()->CenterTitle();
17555     hYNueCCPQ->SetFillColor(0);
17556     hYNueCCPQ->SetLineColor(4);
17557     //hYNueCCPQ->SetBit(TH1::kCanRebin);
17558 
17559     hYNueBarCCPQ=new TH1F("hYNueBarCCPQ","hYNueBarCCPQ",
17560                           1400,-0.2,1.2);
17561     hYNueBarCCPQ->GetXaxis()->SetTitle("y");
17562     hYNueBarCCPQ->GetXaxis()->CenterTitle();
17563     hYNueBarCCPQ->GetYaxis()->SetTitle("");
17564     hYNueBarCCPQ->GetYaxis()->CenterTitle();
17565     hYNueBarCCPQ->SetFillColor(0);
17566     hYNueBarCCPQ->SetLineColor(4);
17567     //hYNueBarCCPQ->SetBit(TH1::kCanRebin);
17568 
17569     hYNueNCPQ=new TH1F("hYNueNCPQ","hYNueNCPQ",
17570                        1400,-0.2,1.2);
17571     hYNueNCPQ->GetXaxis()->SetTitle("y");
17572     hYNueNCPQ->GetXaxis()->CenterTitle();
17573     hYNueNCPQ->GetYaxis()->SetTitle("");
17574     hYNueNCPQ->GetYaxis()->CenterTitle();
17575     hYNueNCPQ->SetFillColor(0);
17576     hYNueNCPQ->SetLineColor(4);
17577     //hYNueNCPQ->SetBit(TH1::kCanRebin);
17578 
17579     hYNueBarNCPQ=new TH1F("hYNueBarNCPQ","hYNueBarNCPQ",
17580                           1400,-0.2,1.2);
17581     hYNueBarNCPQ->GetXaxis()->SetTitle("y");
17582     hYNueBarNCPQ->GetXaxis()->CenterTitle();
17583     hYNueBarNCPQ->GetYaxis()->SetTitle("");
17584     hYNueBarNCPQ->GetYaxis()->CenterTitle();
17585     hYNueBarNCPQ->SetFillColor(0);
17586     hYNueBarNCPQ->SetLineColor(4);
17587     //hYNueBarNCPQ->SetBit(TH1::kCanRebin);
17588 
17589 
17590     hYNuTauCCPQ=new TH1F("hYNuTauCCPQ","hYNuTauCCPQ",
17591                          1400,-0.2,1.2);
17592     hYNuTauCCPQ->GetXaxis()->SetTitle("y");
17593     hYNuTauCCPQ->GetXaxis()->CenterTitle();
17594     hYNuTauCCPQ->GetYaxis()->SetTitle("");
17595     hYNuTauCCPQ->GetYaxis()->CenterTitle();
17596     hYNuTauCCPQ->SetFillColor(0);
17597     hYNuTauCCPQ->SetLineColor(4);
17598     //hYNuTauCCPQ->SetBit(TH1::kCanRebin);
17599 
17600     hYNuTauBarCCPQ=new TH1F("hYNuTauBarCCPQ","hYNuTauBarCCPQ",
17601                             1400,-0.2,1.2);
17602     hYNuTauBarCCPQ->GetXaxis()->SetTitle("y");
17603     hYNuTauBarCCPQ->GetXaxis()->CenterTitle();
17604     hYNuTauBarCCPQ->GetYaxis()->SetTitle("");
17605     hYNuTauBarCCPQ->GetYaxis()->CenterTitle();
17606     hYNuTauBarCCPQ->SetFillColor(0);
17607     hYNuTauBarCCPQ->SetLineColor(4);
17608     //hYNuTauBarCCPQ->SetBit(TH1::kCanRebin);
17609 
17610     hYNuTauNCPQ=new TH1F("hYNuTauNCPQ","hYNuTauNCPQ",
17611                          1400,-0.2,1.2);
17612     hYNuTauNCPQ->GetXaxis()->SetTitle("y");
17613     hYNuTauNCPQ->GetXaxis()->CenterTitle();
17614     hYNuTauNCPQ->GetYaxis()->SetTitle("");
17615     hYNuTauNCPQ->GetYaxis()->CenterTitle();
17616     hYNuTauNCPQ->SetFillColor(0);
17617     hYNuTauNCPQ->SetLineColor(4);
17618     //hYNuTauNCPQ->SetBit(TH1::kCanRebin);
17619 
17620     hYNuTauBarNCPQ=new TH1F("hYNuTauBarNCPQ","hYNuTauBarNCPQ",
17621                             1400,-0.2,1.2);
17622     hYNuTauBarNCPQ->GetXaxis()->SetTitle("y");
17623     hYNuTauBarNCPQ->GetXaxis()->CenterTitle();
17624     hYNuTauBarNCPQ->GetYaxis()->SetTitle("");
17625     hYNuTauBarNCPQ->GetYaxis()->CenterTitle();
17626     hYNuTauBarNCPQ->SetFillColor(0);
17627     hYNuTauBarNCPQ->SetLineColor(4);
17628     //hYNuTauBarNCPQ->SetBit(TH1::kCanRebin);
17629 
17630 
17631     //reco y
17632     hRecoYNuMuCCPQ=new TH1F("hRecoYNuMuCCPQ","hRecoYNuMuCCPQ",
17633                             1400,-0.2,1.2);
17634     hRecoYNuMuCCPQ->GetXaxis()->SetTitle("y");
17635     hRecoYNuMuCCPQ->GetXaxis()->CenterTitle();
17636     hRecoYNuMuCCPQ->GetYaxis()->SetTitle("");
17637     hRecoYNuMuCCPQ->GetYaxis()->CenterTitle();
17638     hRecoYNuMuCCPQ->SetFillColor(0);
17639     hRecoYNuMuCCPQ->SetLineColor(1);
17640     //hRecoYNuMuCCPQ->SetBit(TH1::kCanRebin);
17641 
17642     hRecoYNuMuBarCCPQ=new TH1F("hRecoYNuMuBarCCPQ",
17643                                "hRecoYNuMuBarCCPQ",
17644                                1400,-0.2,1.2);
17645     hRecoYNuMuBarCCPQ->GetXaxis()->SetTitle("y");
17646     hRecoYNuMuBarCCPQ->GetXaxis()->CenterTitle();
17647     hRecoYNuMuBarCCPQ->GetYaxis()->SetTitle("");
17648     hRecoYNuMuBarCCPQ->GetYaxis()->CenterTitle();
17649     hRecoYNuMuBarCCPQ->SetFillColor(0);
17650     hRecoYNuMuBarCCPQ->SetLineColor(2);
17651     //hRecoYNuMuBarCCPQ->SetBit(TH1::kCanRebin);
17652 
17653     hRecoYNuMuNCPQ=new TH1F("hRecoYNuMuNCPQ","hRecoYNuMuNCPQ",
17654                             1400,-0.2,1.2);
17655     hRecoYNuMuNCPQ->GetXaxis()->SetTitle("y");
17656     hRecoYNuMuNCPQ->GetXaxis()->CenterTitle();
17657     hRecoYNuMuNCPQ->GetYaxis()->SetTitle("");
17658     hRecoYNuMuNCPQ->GetYaxis()->CenterTitle();
17659     hRecoYNuMuNCPQ->SetFillColor(0);
17660     hRecoYNuMuNCPQ->SetLineColor(1);
17661     //hRecoYNuMuNCPQ->SetBit(TH1::kCanRebin);
17662 
17663     hRecoYNuMuBarNCPQ=new TH1F("hRecoYNuMuBarNCPQ",
17664                                "hRecoYNuMuBarNCPQ",
17665                                1400,-0.2,1.2);
17666     hRecoYNuMuBarNCPQ->GetXaxis()->SetTitle("y");
17667     hRecoYNuMuBarNCPQ->GetXaxis()->CenterTitle();
17668     hRecoYNuMuBarNCPQ->GetYaxis()->SetTitle("");
17669     hRecoYNuMuBarNCPQ->GetYaxis()->CenterTitle();
17670     hRecoYNuMuBarNCPQ->SetFillColor(0);
17671     hRecoYNuMuBarNCPQ->SetLineColor(2);
17672     //hRecoYNuMuBarNCPQ->SetBit(TH1::kCanRebin);
17673 
17674 
17675 
17676     hRecoYNueCCPQ=new TH1F("hRecoYNueCCPQ","hRecoYNueCCPQ",
17677                            1400,-0.2,1.2);
17678     hRecoYNueCCPQ->GetXaxis()->SetTitle("y");
17679     hRecoYNueCCPQ->GetXaxis()->CenterTitle();
17680     hRecoYNueCCPQ->GetYaxis()->SetTitle("");
17681     hRecoYNueCCPQ->GetYaxis()->CenterTitle();
17682     hRecoYNueCCPQ->SetFillColor(0);
17683     hRecoYNueCCPQ->SetLineColor(4);
17684     //hRecoYNueCCPQ->SetBit(TH1::kCanRebin);
17685 
17686     hRecoYNueBarCCPQ=new TH1F("hRecoYNueBarCCPQ","hRecoYNueBarCCPQ",
17687                               1400,-0.2,1.2);
17688     hRecoYNueBarCCPQ->GetXaxis()->SetTitle("y");
17689     hRecoYNueBarCCPQ->GetXaxis()->CenterTitle();
17690     hRecoYNueBarCCPQ->GetYaxis()->SetTitle("");
17691     hRecoYNueBarCCPQ->GetYaxis()->CenterTitle();
17692     hRecoYNueBarCCPQ->SetFillColor(0);
17693     hRecoYNueBarCCPQ->SetLineColor(4);
17694     //hRecoYNueBarCCPQ->SetBit(TH1::kCanRebin);
17695 
17696     hRecoYNueNCPQ=new TH1F("hRecoYNueNCPQ","hRecoYNueNCPQ",
17697                            1400,-0.2,1.2);
17698     hRecoYNueNCPQ->GetXaxis()->SetTitle("y");
17699     hRecoYNueNCPQ->GetXaxis()->CenterTitle();
17700     hRecoYNueNCPQ->GetYaxis()->SetTitle("");
17701     hRecoYNueNCPQ->GetYaxis()->CenterTitle();
17702     hRecoYNueNCPQ->SetFillColor(0);
17703     hRecoYNueNCPQ->SetLineColor(4);
17704     //hRecoYNueNCPQ->SetBit(TH1::kCanRebin);
17705 
17706     hRecoYNueBarNCPQ=new TH1F("hRecoYNueBarNCPQ","hRecoYNueBarNCPQ",
17707                               1400,-0.2,1.2);
17708     hRecoYNueBarNCPQ->GetXaxis()->SetTitle("y");
17709     hRecoYNueBarNCPQ->GetXaxis()->CenterTitle();
17710     hRecoYNueBarNCPQ->GetYaxis()->SetTitle("");
17711     hRecoYNueBarNCPQ->GetYaxis()->CenterTitle();
17712     hRecoYNueBarNCPQ->SetFillColor(0);
17713     hRecoYNueBarNCPQ->SetLineColor(4);
17714     //hRecoYNueBarNCPQ->SetBit(TH1::kCanRebin);
17715 
17716 
17717     hRecoYNuTauCCPQ=new TH1F("hRecoYNuTauCCPQ","hRecoYNuTauCCPQ",
17718                              1400,-0.2,1.2);
17719     hRecoYNuTauCCPQ->GetXaxis()->SetTitle("y");
17720     hRecoYNuTauCCPQ->GetXaxis()->CenterTitle();
17721     hRecoYNuTauCCPQ->GetYaxis()->SetTitle("");
17722     hRecoYNuTauCCPQ->GetYaxis()->CenterTitle();
17723     hRecoYNuTauCCPQ->SetFillColor(0);
17724     hRecoYNuTauCCPQ->SetLineColor(4);
17725     //hRecoYNuTauCCPQ->SetBit(TH1::kCanRebin);
17726 
17727     hRecoYNuTauBarCCPQ=new TH1F("hRecoYNuTauBarCCPQ","hRecoYNuTauBarCCPQ",
17728                                 1400,-0.2,1.2);
17729     hRecoYNuTauBarCCPQ->GetXaxis()->SetTitle("y");
17730     hRecoYNuTauBarCCPQ->GetXaxis()->CenterTitle();
17731     hRecoYNuTauBarCCPQ->GetYaxis()->SetTitle("");
17732     hRecoYNuTauBarCCPQ->GetYaxis()->CenterTitle();
17733     hRecoYNuTauBarCCPQ->SetFillColor(0);
17734     hRecoYNuTauBarCCPQ->SetLineColor(4);
17735     //hRecoYNuTauBarCCPQ->SetBit(TH1::kCanRebin);
17736 
17737     hRecoYNuTauNCPQ=new TH1F("hRecoYNuTauNCPQ","hRecoYNuTauNCPQ",
17738                              1400,-0.2,1.2);
17739     hRecoYNuTauNCPQ->GetXaxis()->SetTitle("y");
17740     hRecoYNuTauNCPQ->GetXaxis()->CenterTitle();
17741     hRecoYNuTauNCPQ->GetYaxis()->SetTitle("");
17742     hRecoYNuTauNCPQ->GetYaxis()->CenterTitle();
17743     hRecoYNuTauNCPQ->SetFillColor(0);
17744     hRecoYNuTauNCPQ->SetLineColor(4);
17745     //hRecoYNuTauNCPQ->SetBit(TH1::kCanRebin);
17746 
17747     hRecoYNuTauBarNCPQ=new TH1F("hRecoYNuTauBarNCPQ","hRecoYNuTauBarNCPQ",
17748                                 1400,-0.2,1.2);
17749     hRecoYNuTauBarNCPQ->GetXaxis()->SetTitle("y");
17750     hRecoYNuTauBarNCPQ->GetXaxis()->CenterTitle();
17751     hRecoYNuTauBarNCPQ->GetYaxis()->SetTitle("");
17752     hRecoYNuTauBarNCPQ->GetYaxis()->CenterTitle();
17753     hRecoYNuTauBarNCPQ->SetFillColor(0);
17754     hRecoYNuTauBarNCPQ->SetLineColor(4);
17755     //hRecoYNuTauBarNCPQ->SetBit(TH1::kCanRebin);
17756 
17757 
17761     //Negative charge
17762     //true y
17763     hYNuMuCCNQ=new TH1F("hYNuMuCCNQ","hYNuMuCCNQ",
17764                         1400,-0.2,1.2);
17765     hYNuMuCCNQ->GetXaxis()->SetTitle("y");
17766     hYNuMuCCNQ->GetXaxis()->CenterTitle();
17767     hYNuMuCCNQ->GetYaxis()->SetTitle("");
17768     hYNuMuCCNQ->GetYaxis()->CenterTitle();
17769     hYNuMuCCNQ->SetFillColor(0);
17770     hYNuMuCCNQ->SetLineColor(1);
17771     //hYNuMuCCNQ->SetBit(TH1::kCanRebin);
17772 
17773     hYNuMuBarCCNQ=new TH1F("hYNuMuBarCCNQ","hYNuMuBarCCNQ",
17774                            1400,-0.2,1.2);
17775     hYNuMuBarCCNQ->GetXaxis()->SetTitle("y");
17776     hYNuMuBarCCNQ->GetXaxis()->CenterTitle();
17777     hYNuMuBarCCNQ->GetYaxis()->SetTitle("");
17778     hYNuMuBarCCNQ->GetYaxis()->CenterTitle();
17779     hYNuMuBarCCNQ->SetFillColor(0);
17780     hYNuMuBarCCNQ->SetLineColor(2);
17781     //hYNuMuBarCCNQ->SetBit(TH1::kCanRebin);
17782 
17783     hYNuMuNCNQ=new TH1F("hYNuMuNCNQ","hYNuMuNCNQ",
17784                         1400,-0.2,1.2);
17785     hYNuMuNCNQ->GetXaxis()->SetTitle("y");
17786     hYNuMuNCNQ->GetXaxis()->CenterTitle();
17787     hYNuMuNCNQ->GetYaxis()->SetTitle("");
17788     hYNuMuNCNQ->GetYaxis()->CenterTitle();
17789     hYNuMuNCNQ->SetFillColor(0);
17790     hYNuMuNCNQ->SetLineColor(1);
17791     //hYNuMuNCNQ->SetBit(TH1::kCanRebin);
17792 
17793     hYNuMuBarNCNQ=new TH1F("hYNuMuBarNCNQ","hYNuMuBarNCNQ",
17794                            1400,-0.2,1.2);
17795     hYNuMuBarNCNQ->GetXaxis()->SetTitle("y");
17796     hYNuMuBarNCNQ->GetXaxis()->CenterTitle();
17797     hYNuMuBarNCNQ->GetYaxis()->SetTitle("");
17798     hYNuMuBarNCNQ->GetYaxis()->CenterTitle();
17799     hYNuMuBarNCNQ->SetFillColor(0);
17800     hYNuMuBarNCNQ->SetLineColor(2);
17801     //hYNuMuBarNCNQ->SetBit(TH1::kCanRebin);
17802 
17803 
17804 
17805     hYNueCCNQ=new TH1F("hYNueCCNQ","hYNueCCNQ",
17806                        1400,-0.2,1.2);
17807     hYNueCCNQ->GetXaxis()->SetTitle("y");
17808     hYNueCCNQ->GetXaxis()->CenterTitle();
17809     hYNueCCNQ->GetYaxis()->SetTitle("");
17810     hYNueCCNQ->GetYaxis()->CenterTitle();
17811     hYNueCCNQ->SetFillColor(0);
17812     hYNueCCNQ->SetLineColor(4);
17813     //hYNueCCNQ->SetBit(TH1::kCanRebin);
17814 
17815     hYNueBarCCNQ=new TH1F("hYNueBarCCNQ","hYNueBarCCNQ",
17816                           1400,-0.2,1.2);
17817     hYNueBarCCNQ->GetXaxis()->SetTitle("y");
17818     hYNueBarCCNQ->GetXaxis()->CenterTitle();
17819     hYNueBarCCNQ->GetYaxis()->SetTitle("");
17820     hYNueBarCCNQ->GetYaxis()->CenterTitle();
17821     hYNueBarCCNQ->SetFillColor(0);
17822     hYNueBarCCNQ->SetLineColor(4);
17823     //hYNueBarCCNQ->SetBit(TH1::kCanRebin);
17824 
17825     hYNueNCNQ=new TH1F("hYNueNCNQ","hYNueNCNQ",
17826                        1400,-0.2,1.2);
17827     hYNueNCNQ->GetXaxis()->SetTitle("y");
17828     hYNueNCNQ->GetXaxis()->CenterTitle();
17829     hYNueNCNQ->GetYaxis()->SetTitle("");
17830     hYNueNCNQ->GetYaxis()->CenterTitle();
17831     hYNueNCNQ->SetFillColor(0);
17832     hYNueNCNQ->SetLineColor(4);
17833     //hYNueNCNQ->SetBit(TH1::kCanRebin);
17834 
17835     hYNueBarNCNQ=new TH1F("hYNueBarNCNQ","hYNueBarNCNQ",
17836                           1400,-0.2,1.2);
17837     hYNueBarNCNQ->GetXaxis()->SetTitle("y");
17838     hYNueBarNCNQ->GetXaxis()->CenterTitle();
17839     hYNueBarNCNQ->GetYaxis()->SetTitle("");
17840     hYNueBarNCNQ->GetYaxis()->CenterTitle();
17841     hYNueBarNCNQ->SetFillColor(0);
17842     hYNueBarNCNQ->SetLineColor(4);
17843     //hYNueBarNCNQ->SetBit(TH1::kCanRebin);
17844 
17845 
17846     hYNuTauCCNQ=new TH1F("hYNuTauCCNQ","hYNuTauCCNQ",
17847                          1400,-0.2,1.2);
17848     hYNuTauCCNQ->GetXaxis()->SetTitle("y");
17849     hYNuTauCCNQ->GetXaxis()->CenterTitle();
17850     hYNuTauCCNQ->GetYaxis()->SetTitle("");
17851     hYNuTauCCNQ->GetYaxis()->CenterTitle();
17852     hYNuTauCCNQ->SetFillColor(0);
17853     hYNuTauCCNQ->SetLineColor(4);
17854     //hYNuTauCCNQ->SetBit(TH1::kCanRebin);
17855 
17856     hYNuTauBarCCNQ=new TH1F("hYNuTauBarCCNQ","hYNuTauBarCCNQ",
17857                             1400,-0.2,1.2);
17858     hYNuTauBarCCNQ->GetXaxis()->SetTitle("y");
17859     hYNuTauBarCCNQ->GetXaxis()->CenterTitle();
17860     hYNuTauBarCCNQ->GetYaxis()->SetTitle("");
17861     hYNuTauBarCCNQ->GetYaxis()->CenterTitle();
17862     hYNuTauBarCCNQ->SetFillColor(0);
17863     hYNuTauBarCCNQ->SetLineColor(4);
17864     //hYNuTauBarCCNQ->SetBit(TH1::kCanRebin);
17865 
17866     hYNuTauNCNQ=new TH1F("hYNuTauNCNQ","hYNuTauNCNQ",
17867                          1400,-0.2,1.2);
17868     hYNuTauNCNQ->GetXaxis()->SetTitle("y");
17869     hYNuTauNCNQ->GetXaxis()->CenterTitle();
17870     hYNuTauNCNQ->GetYaxis()->SetTitle("");
17871     hYNuTauNCNQ->GetYaxis()->CenterTitle();
17872     hYNuTauNCNQ->SetFillColor(0);
17873     hYNuTauNCNQ->SetLineColor(4);
17874     //hYNuTauNCNQ->SetBit(TH1::kCanRebin);
17875 
17876     hYNuTauBarNCNQ=new TH1F("hYNuTauBarNCNQ","hYNuTauBarNCNQ",
17877                             1400,-0.2,1.2);
17878     hYNuTauBarNCNQ->GetXaxis()->SetTitle("y");
17879     hYNuTauBarNCNQ->GetXaxis()->CenterTitle();
17880     hYNuTauBarNCNQ->GetYaxis()->SetTitle("");
17881     hYNuTauBarNCNQ->GetYaxis()->CenterTitle();
17882     hYNuTauBarNCNQ->SetFillColor(0);
17883     hYNuTauBarNCNQ->SetLineColor(4);
17884     //hYNuTauBarNCNQ->SetBit(TH1::kCanRebin);
17885 
17886 
17887 
17888 
17889     //reco y
17890     hRecoYNuMuCCNQ=new TH1F("hRecoYNuMuCCNQ","hRecoYNuMuCCNQ",
17891                             1400,-0.2,1.2);
17892     hRecoYNuMuCCNQ->GetXaxis()->SetTitle("y");
17893     hRecoYNuMuCCNQ->GetXaxis()->CenterTitle();
17894     hRecoYNuMuCCNQ->GetYaxis()->SetTitle("");
17895     hRecoYNuMuCCNQ->GetYaxis()->CenterTitle();
17896     hRecoYNuMuCCNQ->SetFillColor(0);
17897     hRecoYNuMuCCNQ->SetLineColor(1);
17898     //hRecoYNuMuCCNQ->SetBit(TH1::kCanRebin);
17899 
17900     hRecoYNuMuBarCCNQ=new TH1F("hRecoYNuMuBarCCNQ",
17901                                "hRecoYNuMuBarCCNQ",
17902                                1400,-0.2,1.2);
17903     hRecoYNuMuBarCCNQ->GetXaxis()->SetTitle("y");
17904     hRecoYNuMuBarCCNQ->GetXaxis()->CenterTitle();
17905     hRecoYNuMuBarCCNQ->GetYaxis()->SetTitle("");
17906     hRecoYNuMuBarCCNQ->GetYaxis()->CenterTitle();
17907     hRecoYNuMuBarCCNQ->SetFillColor(0);
17908     hRecoYNuMuBarCCNQ->SetLineColor(2);
17909     //hRecoYNuMuBarCCNQ->SetBit(TH1::kCanRebin);
17910 
17911     hRecoYNuMuNCNQ=new TH1F("hRecoYNuMuNCNQ","hRecoYNuMuNCNQ",
17912                             1400,-0.2,1.2);
17913     hRecoYNuMuNCNQ->GetXaxis()->SetTitle("y");
17914     hRecoYNuMuNCNQ->GetXaxis()->CenterTitle();
17915     hRecoYNuMuNCNQ->GetYaxis()->SetTitle("");
17916     hRecoYNuMuNCNQ->GetYaxis()->CenterTitle();
17917     hRecoYNuMuNCNQ->SetFillColor(0);
17918     hRecoYNuMuNCNQ->SetLineColor(1);
17919     //hRecoYNuMuNCNQ->SetBit(TH1::kCanRebin);
17920 
17921     hRecoYNuMuBarNCNQ=new TH1F("hRecoYNuMuBarNCNQ",
17922                                "hRecoYNuMuBarNCNQ",
17923                                1400,-0.2,1.2);
17924     hRecoYNuMuBarNCNQ->GetXaxis()->SetTitle("y");
17925     hRecoYNuMuBarNCNQ->GetXaxis()->CenterTitle();
17926     hRecoYNuMuBarNCNQ->GetYaxis()->SetTitle("");
17927     hRecoYNuMuBarNCNQ->GetYaxis()->CenterTitle();
17928     hRecoYNuMuBarNCNQ->SetFillColor(0);
17929     hRecoYNuMuBarNCNQ->SetLineColor(2);
17930     //hRecoYNuMuBarNCNQ->SetBit(TH1::kCanRebin);
17931 
17932 
17933 
17934     hRecoYNueCCNQ=new TH1F("hRecoYNueCCNQ","hRecoYNueCCNQ",
17935                            1400,-0.2,1.2);
17936     hRecoYNueCCNQ->GetXaxis()->SetTitle("y");
17937     hRecoYNueCCNQ->GetXaxis()->CenterTitle();
17938     hRecoYNueCCNQ->GetYaxis()->SetTitle("");
17939     hRecoYNueCCNQ->GetYaxis()->CenterTitle();
17940     hRecoYNueCCNQ->SetFillColor(0);
17941     hRecoYNueCCNQ->SetLineColor(4);
17942     //hRecoYNueCCNQ->SetBit(TH1::kCanRebin);
17943 
17944     hRecoYNueBarCCNQ=new TH1F("hRecoYNueBarCCNQ","hRecoYNueBarCCNQ",
17945                               1400,-0.2,1.2);
17946     hRecoYNueBarCCNQ->GetXaxis()->SetTitle("y");
17947     hRecoYNueBarCCNQ->GetXaxis()->CenterTitle();
17948     hRecoYNueBarCCNQ->GetYaxis()->SetTitle("");
17949     hRecoYNueBarCCNQ->GetYaxis()->CenterTitle();
17950     hRecoYNueBarCCNQ->SetFillColor(0);
17951     hRecoYNueBarCCNQ->SetLineColor(4);
17952     //hRecoYNueBarCCNQ->SetBit(TH1::kCanRebin);
17953 
17954     hRecoYNueNCNQ=new TH1F("hRecoYNueNCNQ","hRecoYNueNCNQ",
17955                            1400,-0.2,1.2);
17956     hRecoYNueNCNQ->GetXaxis()->SetTitle("y");
17957     hRecoYNueNCNQ->GetXaxis()->CenterTitle();
17958     hRecoYNueNCNQ->GetYaxis()->SetTitle("");
17959     hRecoYNueNCNQ->GetYaxis()->CenterTitle();
17960     hRecoYNueNCNQ->SetFillColor(0);
17961     hRecoYNueNCNQ->SetLineColor(4);
17962     //hRecoYNueNCNQ->SetBit(TH1::kCanRebin);
17963 
17964     hRecoYNueBarNCNQ=new TH1F("hRecoYNueBarNCNQ","hRecoYNueBarNCNQ",
17965                               1400,-0.2,1.2);
17966     hRecoYNueBarNCNQ->GetXaxis()->SetTitle("y");
17967     hRecoYNueBarNCNQ->GetXaxis()->CenterTitle();
17968     hRecoYNueBarNCNQ->GetYaxis()->SetTitle("");
17969     hRecoYNueBarNCNQ->GetYaxis()->CenterTitle();
17970     hRecoYNueBarNCNQ->SetFillColor(0);
17971     hRecoYNueBarNCNQ->SetLineColor(4);
17972     //hRecoYNueBarNCNQ->SetBit(TH1::kCanRebin);
17973 
17974 
17975     hRecoYNuTauCCNQ=new TH1F("hRecoYNuTauCCNQ","hRecoYNuTauCCNQ",
17976                              1400,-0.2,1.2);
17977     hRecoYNuTauCCNQ->GetXaxis()->SetTitle("y");
17978     hRecoYNuTauCCNQ->GetXaxis()->CenterTitle();
17979     hRecoYNuTauCCNQ->GetYaxis()->SetTitle("");
17980     hRecoYNuTauCCNQ->GetYaxis()->CenterTitle();
17981     hRecoYNuTauCCNQ->SetFillColor(0);
17982     hRecoYNuTauCCNQ->SetLineColor(4);
17983     //hRecoYNuTauCCNQ->SetBit(TH1::kCanRebin);
17984 
17985     hRecoYNuTauBarCCNQ=new TH1F("hRecoYNuTauBarCCNQ","hRecoYNuTauBarCCNQ",
17986                                 1400,-0.2,1.2);
17987     hRecoYNuTauBarCCNQ->GetXaxis()->SetTitle("y");
17988     hRecoYNuTauBarCCNQ->GetXaxis()->CenterTitle();
17989     hRecoYNuTauBarCCNQ->GetYaxis()->SetTitle("");
17990     hRecoYNuTauBarCCNQ->GetYaxis()->CenterTitle();
17991     hRecoYNuTauBarCCNQ->SetFillColor(0);
17992     hRecoYNuTauBarCCNQ->SetLineColor(4);
17993     //hRecoYNuTauBarCCNQ->SetBit(TH1::kCanRebin);
17994 
17995     hRecoYNuTauNCNQ=new TH1F("hRecoYNuTauNCNQ","hRecoYNuTauNCNQ",
17996                              1400,-0.2,1.2);
17997     hRecoYNuTauNCNQ->GetXaxis()->SetTitle("y");
17998     hRecoYNuTauNCNQ->GetXaxis()->CenterTitle();
17999     hRecoYNuTauNCNQ->GetYaxis()->SetTitle("");
18000     hRecoYNuTauNCNQ->GetYaxis()->CenterTitle();
18001     hRecoYNuTauNCNQ->SetFillColor(0);
18002     hRecoYNuTauNCNQ->SetLineColor(4);
18003     //hRecoYNuTauNCNQ->SetBit(TH1::kCanRebin);
18004 
18005     hRecoYNuTauBarNCNQ=new TH1F("hRecoYNuTauBarNCNQ","hRecoYNuTauBarNCNQ",
18006                                 1400,-0.2,1.2);
18007     hRecoYNuTauBarNCNQ->GetXaxis()->SetTitle("y");
18008     hRecoYNuTauBarNCNQ->GetXaxis()->CenterTitle();
18009     hRecoYNuTauBarNCNQ->GetYaxis()->SetTitle("");
18010     hRecoYNuTauBarNCNQ->GetYaxis()->CenterTitle();
18011     hRecoYNuTauBarNCNQ->SetFillColor(0);
18012     hRecoYNuTauBarNCNQ->SetLineColor(4);
18013     //hRecoYNuTauBarNCNQ->SetBit(TH1::kCanRebin);
18014 
18015 
18016 
18017 
18018 
18019 
18020 
18021 
18022 
18023 
18025     //general NC ones
18027     hYNCPQ=new TH1F("hYNCPQ","hYNCPQ",
18028                     4*352,-32,320);
18029     hYNCPQ->GetXaxis()->SetTitle("y");
18030     hYNCPQ->GetXaxis()->CenterTitle();
18031     hYNCPQ->GetYaxis()->SetTitle("");
18032     hYNCPQ->GetYaxis()->CenterTitle();
18033     hYNCPQ->SetFillColor(0);
18034     hYNCPQ->SetLineColor(4);
18035     //hYNCPQ->SetBit(TH1::kCanRebin);
18036 
18037     hYNCNQ=new TH1F("hYNCNQ","hYNCNQ",
18038                     4*352,-32,320);
18039     hYNCNQ->GetXaxis()->SetTitle("y");
18040     hYNCNQ->GetXaxis()->CenterTitle();
18041     hYNCNQ->GetYaxis()->SetTitle("");
18042     hYNCNQ->GetYaxis()->CenterTitle();
18043     hYNCNQ->SetFillColor(0);
18044     hYNCNQ->SetLineColor(4);
18045     //hYNCNQ->SetBit(TH1::kCanRebin);
18046 
18047 
18048     hRecoYNCPQ=new TH1F("hRecoYNCPQ","hRecoYNCPQ",
18049                         4*352,-32,320);
18050     hRecoYNCPQ->GetXaxis()->SetTitle("y");
18051     hRecoYNCPQ->GetXaxis()->CenterTitle();
18052     hRecoYNCPQ->GetYaxis()->SetTitle("");
18053     hRecoYNCPQ->GetYaxis()->CenterTitle();
18054     hRecoYNCPQ->SetFillColor(0);
18055     hRecoYNCPQ->SetLineColor(4);
18056     //hRecoYNCPQ->SetBit(TH1::kCanRebin);
18057 
18058     hRecoYNCNQ=new TH1F("hRecoYNCNQ","hRecoYNCNQ",
18059                         4*352,-32,320);
18060     hRecoYNCNQ->GetXaxis()->SetTitle("y");
18061     hRecoYNCNQ->GetXaxis()->CenterTitle();
18062     hRecoYNCNQ->GetYaxis()->SetTitle("");
18063     hRecoYNCNQ->GetYaxis()->CenterTitle();
18064     hRecoYNCNQ->SetFillColor(0);
18065     hRecoYNCNQ->SetLineColor(4);
18066     //hRecoYNCNQ->SetBit(TH1::kCanRebin);
18067 
18069     //general shw ones
18071     hYAllShwPQ=new TH1F("hYAllShwPQ","hYAllShwPQ",
18072                         4*352,-32,320);
18073     hYAllShwPQ->GetXaxis()->SetTitle("y");
18074     hYAllShwPQ->GetXaxis()->CenterTitle();
18075     hYAllShwPQ->GetYaxis()->SetTitle("");
18076     hYAllShwPQ->GetYaxis()->CenterTitle();
18077     hYAllShwPQ->SetFillColor(0);
18078     hYAllShwPQ->SetLineColor(4);
18079     //hYAllShwPQ->SetBit(TH1::kCanRebin);
18080 
18081     hYAllShwNQ=new TH1F("hYAllShwNQ","hYAllShwNQ",
18082                         4*352,-32,320);
18083     hYAllShwNQ->GetXaxis()->SetTitle("y");
18084     hYAllShwNQ->GetXaxis()->CenterTitle();
18085     hYAllShwNQ->GetYaxis()->SetTitle("");
18086     hYAllShwNQ->GetYaxis()->CenterTitle();
18087     hYAllShwNQ->SetFillColor(0);
18088     hYAllShwNQ->SetLineColor(4);
18089     //hYAllShwNQ->SetBit(TH1::kCanRebin);
18090 
18091 
18092     hRecoYAllShwPQ=new TH1F("hRecoYAllShwPQ","hRecoYAllShwPQ",
18093                             4*352,-32,320);
18094     hRecoYAllShwPQ->GetXaxis()->SetTitle("y");
18095     hRecoYAllShwPQ->GetXaxis()->CenterTitle();
18096     hRecoYAllShwPQ->GetYaxis()->SetTitle("");
18097     hRecoYAllShwPQ->GetYaxis()->CenterTitle();
18098     hRecoYAllShwPQ->SetFillColor(0);
18099     hRecoYAllShwPQ->SetLineColor(4);
18100     //hRecoYAllShwPQ->SetBit(TH1::kCanRebin);
18101 
18102     hRecoYAllShwNQ=new TH1F("hRecoYAllShwNQ","hRecoYAllShwNQ",
18103                             4*352,-32,320);
18104     hRecoYAllShwNQ->GetXaxis()->SetTitle("y");
18105     hRecoYAllShwNQ->GetXaxis()->CenterTitle();
18106     hRecoYAllShwNQ->GetYaxis()->SetTitle("");
18107     hRecoYAllShwNQ->GetYaxis()->CenterTitle();
18108     hRecoYAllShwNQ->SetFillColor(0);
18109     hRecoYAllShwNQ->SetLineColor(4);
18110     //hRecoYAllShwNQ->SetBit(TH1::kCanRebin);
18111 
18115     //catch all except NuMuCC/NuMuBarCC
18116     hYNotNuMuBarCCPQ=new TH1F("hYNotNuMuBarCCPQ","hYNotNuMuBarCCPQ",
18117                               4*352,-32,320);
18118     hYNotNuMuBarCCPQ->GetXaxis()->SetTitle("y");
18119     hYNotNuMuBarCCPQ->GetXaxis()->CenterTitle();
18120     hYNotNuMuBarCCPQ->GetYaxis()->SetTitle("");
18121     hYNotNuMuBarCCPQ->GetYaxis()->CenterTitle();
18122     hYNotNuMuBarCCPQ->SetFillColor(0);
18123     hYNotNuMuBarCCPQ->SetLineColor(4);
18124     //hYNotNuMuBarCCPQ->SetBit(TH1::kCanRebin);
18125 
18126     hYNotNuMuBarCCNQ=new TH1F("hYNotNuMuBarCCNQ","hYNotNuMuBarCCNQ",
18127                               4*352,-32,320);
18128     hYNotNuMuBarCCNQ->GetXaxis()->SetTitle("y");
18129     hYNotNuMuBarCCNQ->GetXaxis()->CenterTitle();
18130     hYNotNuMuBarCCNQ->GetYaxis()->SetTitle("");
18131     hYNotNuMuBarCCNQ->GetYaxis()->CenterTitle();
18132     hYNotNuMuBarCCNQ->SetFillColor(0);
18133     hYNotNuMuBarCCNQ->SetLineColor(4);
18134     //hYNotNuMuBarCCNQ->SetBit(TH1::kCanRebin);
18135 
18136     hYNotNuMuCCPQ=new TH1F("hYNotNuMuCCPQ","hYNotNuMuCCPQ",
18137                            4*352,-32,320);
18138     hYNotNuMuCCPQ->GetXaxis()->SetTitle("y");
18139     hYNotNuMuCCPQ->GetXaxis()->CenterTitle();
18140     hYNotNuMuCCPQ->GetYaxis()->SetTitle("");
18141     hYNotNuMuCCPQ->GetYaxis()->CenterTitle();
18142     hYNotNuMuCCPQ->SetFillColor(0);
18143     hYNotNuMuCCPQ->SetLineColor(4);
18144     //hYNotNuMuCCPQ->SetBit(TH1::kCanRebin);
18145 
18146     hYNotNuMuCCNQ=new TH1F("hYNotNuMuCCNQ","hYNotNuMuCCNQ",
18147                            4*352,-32,320);
18148     hYNotNuMuCCNQ->GetXaxis()->SetTitle("y");
18149     hYNotNuMuCCNQ->GetXaxis()->CenterTitle();
18150     hYNotNuMuCCNQ->GetYaxis()->SetTitle("");
18151     hYNotNuMuCCNQ->GetYaxis()->CenterTitle();
18152     hYNotNuMuCCNQ->SetFillColor(0);
18153     hYNotNuMuCCNQ->SetLineColor(4);
18154     //hYNotNuMuCCNQ->SetBit(TH1::kCanRebin);
18155 
18156     //reco
18157     hRecoYNotNuMuBarCCPQ=new TH1F("hRecoYNotNuMuBarCCPQ",
18158                                   "hRecoYNotNuMuBarCCPQ",
18159                                   4*352,-32,320);
18160     hRecoYNotNuMuBarCCPQ->GetXaxis()->SetTitle("y");
18161     hRecoYNotNuMuBarCCPQ->GetXaxis()->CenterTitle();
18162     hRecoYNotNuMuBarCCPQ->GetYaxis()->SetTitle("");
18163     hRecoYNotNuMuBarCCPQ->GetYaxis()->CenterTitle();
18164     hRecoYNotNuMuBarCCPQ->SetFillColor(0);
18165     hRecoYNotNuMuBarCCPQ->SetLineColor(4);
18166     //hRecoYNotNuMuBarCCPQ->SetBit(TH1::kCanRebin);
18167 
18168     hRecoYNotNuMuBarCCNQ=new TH1F("hRecoYNotNuMuBarCCNQ",
18169                                   "hRecoYNotNuMuBarCCNQ",
18170                                   4*352,-32,320);
18171     hRecoYNotNuMuBarCCNQ->GetXaxis()->SetTitle("y");
18172     hRecoYNotNuMuBarCCNQ->GetXaxis()->CenterTitle();
18173     hRecoYNotNuMuBarCCNQ->GetYaxis()->SetTitle("");
18174     hRecoYNotNuMuBarCCNQ->GetYaxis()->CenterTitle();
18175     hRecoYNotNuMuBarCCNQ->SetFillColor(0);
18176     hRecoYNotNuMuBarCCNQ->SetLineColor(4);
18177     //hRecoYNotNuMuBarCCNQ->SetBit(TH1::kCanRebin);
18178 
18179     hRecoYNotNuMuCCPQ=new TH1F("hRecoYNotNuMuCCPQ",
18180                                "hRecoYNotNuMuCCPQ",
18181                                4*352,-32,320);
18182     hRecoYNotNuMuCCPQ->GetXaxis()->SetTitle("y");
18183     hRecoYNotNuMuCCPQ->GetXaxis()->CenterTitle();
18184     hRecoYNotNuMuCCPQ->GetYaxis()->SetTitle("");
18185     hRecoYNotNuMuCCPQ->GetYaxis()->CenterTitle();
18186     hRecoYNotNuMuCCPQ->SetFillColor(0);
18187     hRecoYNotNuMuCCPQ->SetLineColor(4);
18188     //hRecoYNotNuMuCCPQ->SetBit(TH1::kCanRebin);
18189 
18190     hRecoYNotNuMuCCNQ=new TH1F("hRecoYNotNuMuCCNQ",
18191                                "hRecoYNotNuMuCCNQ",
18192                                4*352,-32,320);
18193     hRecoYNotNuMuCCNQ->GetXaxis()->SetTitle("y");
18194     hRecoYNotNuMuCCNQ->GetXaxis()->CenterTitle();
18195     hRecoYNotNuMuCCNQ->GetYaxis()->SetTitle("");
18196     hRecoYNotNuMuCCNQ->GetYaxis()->CenterTitle();
18197     hRecoYNotNuMuCCNQ->SetFillColor(0);
18198     hRecoYNotNuMuCCNQ->SetLineColor(4);
18199     //hRecoYNotNuMuCCNQ->SetBit(TH1::kCanRebin);
18200 
18201 
18202     MAXMSG("NuPlots",Msg::kDebug,1)
18203       <<"Creating RecoY NQ/PQ plots..."<<endl;
18204     //NQ
18205     hRecoYl10NQ=new TH1F("hRecoYl10NQ","hRecoYl10NQ",
18206                          1400,-0.2,1.2);
18207     hRecoYl10NQ->GetXaxis()->SetTitle("y");
18208     hRecoYl10NQ->GetXaxis()->CenterTitle();
18209     hRecoYl10NQ->GetYaxis()->SetTitle("");
18210     hRecoYl10NQ->GetYaxis()->CenterTitle();
18211     hRecoYl10NQ->SetFillColor(0);
18212     hRecoYl10NQ->SetLineColor(4);
18213     //hRecoYl10NQ->SetBit(TH1::kCanRebin);
18214 
18215     hRecoYg10l20NQ=new TH1F("hRecoYg10l20NQ","hRecoYg10l20NQ",
18216                             1400,-0.2,1.2);
18217     hRecoYg10l20NQ->GetXaxis()->SetTitle("y");
18218     hRecoYg10l20NQ->GetXaxis()->CenterTitle();
18219     hRecoYg10l20NQ->GetYaxis()->SetTitle("");
18220     hRecoYg10l20NQ->GetYaxis()->CenterTitle();
18221     hRecoYg10l20NQ->SetFillColor(0);
18222     hRecoYg10l20NQ->SetLineColor(4);
18223     //hRecoYg10l20NQ->SetBit(TH1::kCanRebin);
18224 
18225     hRecoYg20NQ=new TH1F("hRecoYg20NQ","hRecoYg20NQ",
18226                          1400,-0.2,1.2);
18227     hRecoYg20NQ->GetXaxis()->SetTitle("y");
18228     hRecoYg20NQ->GetXaxis()->CenterTitle();
18229     hRecoYg20NQ->GetYaxis()->SetTitle("");
18230     hRecoYg20NQ->GetYaxis()->CenterTitle();
18231     hRecoYg20NQ->SetFillColor(0);
18232     hRecoYg20NQ->SetLineColor(4);
18233     //hRecoYg20NQ->SetBit(TH1::kCanRebin);
18234 
18235     //PQ
18236     hRecoYl10PQ=new TH1F("hRecoYl10PQ","hRecoYl10PQ",
18237                          1400,-0.2,1.2);
18238     hRecoYl10PQ->GetXaxis()->SetTitle("y");
18239     hRecoYl10PQ->GetXaxis()->CenterTitle();
18240     hRecoYl10PQ->GetYaxis()->SetTitle("");
18241     hRecoYl10PQ->GetYaxis()->CenterTitle();
18242     hRecoYl10PQ->SetFillColor(0);
18243     hRecoYl10PQ->SetLineColor(4);
18244     //hRecoYl10PQ->SetBit(TH1::kCanRebin);
18245 
18246     hRecoYg10l20PQ=new TH1F("hRecoYg10l20PQ","hRecoYg10l20PQ",
18247                             1400,-0.2,1.2);
18248     hRecoYg10l20PQ->GetXaxis()->SetTitle("y");
18249     hRecoYg10l20PQ->GetXaxis()->CenterTitle();
18250     hRecoYg10l20PQ->GetYaxis()->SetTitle("");
18251     hRecoYg10l20PQ->GetYaxis()->CenterTitle();
18252     hRecoYg10l20PQ->SetFillColor(0);
18253     hRecoYg10l20PQ->SetLineColor(4);
18254     //hRecoYg10l20PQ->SetBit(TH1::kCanRebin);
18255 
18256     hRecoYg20PQ=new TH1F("hRecoYg20PQ","hRecoYg20PQ",
18257                          1400,-0.2,1.2);
18258     hRecoYg20PQ->GetXaxis()->SetTitle("y");
18259     hRecoYg20PQ->GetXaxis()->CenterTitle();
18260     hRecoYg20PQ->GetYaxis()->SetTitle("");
18261     hRecoYg20PQ->GetYaxis()->CenterTitle();
18262     hRecoYg20PQ->SetFillColor(0);
18263     hRecoYg20PQ->SetLineColor(4);
18264     //hRecoYg20PQ->SetBit(TH1::kCanRebin);
18265   }
18266 
18267   //fill the histos for MC and Data
18268   if (nu.charge<0) {
18269     if (nu.energy<10) hRecoYl10NQ->Fill(nu.y,nu.rw);
18270     else if (nu.energy<20) hRecoYg10l20NQ->Fill(nu.y,nu.rw);
18271     else hRecoYg20NQ->Fill(nu.y,nu.rw);
18272   }
18273   else if (nu.charge>0) {
18274     if (nu.energy<10) hRecoYl10PQ->Fill(nu.y,nu.rw);
18275     else if (nu.energy<20) hRecoYg10l20PQ->Fill(nu.y,nu.rw);
18276     else hRecoYg20PQ->Fill(nu.y,nu.rw);
18277   }
18278   
18279   //can only fill histos below if MC
18280   if (nu.simFlag!=SimFlag::kMC) {
18281     MAXMSG("NuPlots",Msg::kDebug,1)
18282       <<"Not MC, so not filling TruePID histos..."<<endl;
18283     return;
18284   }
18285   MAXMSG("NuPlots",Msg::kDebug,1)
18286     <<"Is MC, filling TruePID histos..."<<endl;
18287   
18288   if (nu.charge==+1) {
18289     if (nu.iaction==1){//CC
18290       if (nu.inu==14){
18291         hEnNuMuCCPQ->Fill(nu.energyMC,nu.rw);
18292         hEnNoRwNuMuCCPQ->Fill(nu.energyMC);
18293         hRecoEnNuMuCCPQ->Fill(nu.energy,nu.rw);
18294         hYNuMuCCPQ->Fill(nu.y,nu.rw);
18295         hRecoYNuMuCCPQ->Fill(nu.y,nu.rw);
18296       }
18297       else if (nu.inu==-14){
18298         hEnNuMuBarCCPQ->Fill(nu.energyMC,nu.rw);
18299         hEnNoRwNuMuBarCCPQ->Fill(nu.energyMC);
18300         hRecoEnNuMuBarCCPQ->Fill(nu.energy,nu.rw);
18301         hYNuMuBarCCPQ->Fill(nu.y,nu.rw);
18302         hRecoYNuMuBarCCPQ->Fill(nu.y,nu.rw);
18303       }
18304       else if (nu.inu==12){
18305         hEnNueCCPQ->Fill(nu.energyMC,nu.rw);
18306         hRecoEnNueCCPQ->Fill(nu.energy,nu.rw);
18307         hYNueCCPQ->Fill(nu.y,nu.rw);
18308         hRecoYNueCCPQ->Fill(nu.y,nu.rw);
18309       }
18310       else if (nu.inu==-12){
18311         hEnNueBarCCPQ->Fill(nu.energyMC,nu.rw);
18312         hRecoEnNueBarCCPQ->Fill(nu.energy,nu.rw);
18313         hYNueBarCCPQ->Fill(nu.y,nu.rw);
18314         hRecoYNueBarCCPQ->Fill(nu.y,nu.rw);
18315       }
18316       else if (nu.inu==16){
18317         hEnNuTauCCPQ->Fill(nu.energyMC,nu.rw);
18318         hRecoEnNuTauCCPQ->Fill(nu.energy,nu.rw);
18319         hYNuTauCCPQ->Fill(nu.y,nu.rw);
18320         hRecoYNuTauCCPQ->Fill(nu.y,nu.rw);
18321       }
18322       else if (nu.inu==-16){
18323         hEnNuTauBarCCPQ->Fill(nu.energyMC,nu.rw);
18324         hRecoEnNuTauBarCCPQ->Fill(nu.energy,nu.rw);
18325         hYNuTauBarCCPQ->Fill(nu.y,nu.rw);
18326         hRecoYNuTauBarCCPQ->Fill(nu.y,nu.rw);
18327       }
18328       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
18329     }
18330     else if (nu.iaction==0){//NC
18331       hEnNCPQ->Fill(nu.energyMC,nu.rw);
18332       hRecoEnNCPQ->Fill(nu.energy,nu.rw);
18333       hYNCPQ->Fill(nu.y,nu.rw);
18334       hRecoYNCPQ->Fill(nu.y,nu.rw);
18335       
18336       if (nu.inu==14){
18337         hEnNuMuNCPQ->Fill(nu.energyMC,nu.rw);
18338         hRecoEnNuMuNCPQ->Fill(nu.energy,nu.rw);
18339         hYNuMuNCPQ->Fill(nu.y,nu.rw);
18340         hRecoYNuMuNCPQ->Fill(nu.y,nu.rw);
18341       }
18342       else if (nu.inu==-14){
18343         hEnNuMuBarNCPQ->Fill(nu.energyMC,nu.rw);
18344         hRecoEnNuMuBarNCPQ->Fill(nu.energy,nu.rw);
18345         hYNuMuBarNCPQ->Fill(nu.y,nu.rw);
18346         hRecoYNuMuBarNCPQ->Fill(nu.y,nu.rw);
18347       }
18348       else if (nu.inu==12){
18349         hEnNueNCPQ->Fill(nu.energyMC,nu.rw);
18350         hRecoEnNueNCPQ->Fill(nu.energy,nu.rw);
18351         hYNueNCPQ->Fill(nu.y,nu.rw);
18352         hRecoYNueNCPQ->Fill(nu.y,nu.rw);
18353       }
18354       else if (nu.inu==-12){
18355         hEnNueBarNCPQ->Fill(nu.energyMC,nu.rw);
18356         hRecoEnNueBarNCPQ->Fill(nu.energy,nu.rw);
18357         hYNueBarNCPQ->Fill(nu.y,nu.rw);
18358         hRecoYNueBarNCPQ->Fill(nu.y,nu.rw);
18359       }
18360       else if (nu.inu==16){
18361         hEnNuTauNCPQ->Fill(nu.energyMC,nu.rw);
18362         hRecoEnNuTauNCPQ->Fill(nu.energy,nu.rw);
18363         hYNuTauNCPQ->Fill(nu.y,nu.rw);
18364         hRecoYNuTauNCPQ->Fill(nu.y,nu.rw);
18365       }
18366       else if (nu.inu==-16){
18367         hEnNuTauBarNCPQ->Fill(nu.energyMC,nu.rw);
18368         hRecoEnNuTauBarNCPQ->Fill(nu.energy,nu.rw);
18369         hYNuTauBarNCPQ->Fill(nu.y,nu.rw);
18370         hRecoYNuTauBarNCPQ->Fill(nu.y,nu.rw);
18371       }
18372       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
18373     }
18374     else MSG("NuPlots",Msg::kWarning)<<"ahh, weird iaction"<<endl;
18375     
18376     //all but NuMu/NuMuBar CC
18377     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
18378       hEnAllShwPQ->Fill(nu.energyMC,nu.rw);
18379       hRecoEnAllShwPQ->Fill(nu.energy,nu.rw);
18380       hYAllShwPQ->Fill(nu.y,nu.rw);
18381       hRecoYAllShwPQ->Fill(nu.y,nu.rw);
18382     }
18383 
18384     //fill all-but-numubar-cc histos
18385     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
18386       hEnNotNuMuBarCCPQ->Fill(nu.energyMC,nu.rw);
18387       hEnNoRwNotNuMuBarCCPQ->Fill(nu.energyMC);
18388       hRecoEnNotNuMuBarCCPQ->Fill(nu.energy,nu.rw);
18389       hYNotNuMuBarCCPQ->Fill(nu.y,nu.rw);
18390       hRecoYNotNuMuBarCCPQ->Fill(nu.y,nu.rw);
18391     }
18392     //fill all-but-numu-cc histos
18393     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
18394       //probably don't actually care about these ones... but do anyway
18395       hEnNotNuMuCCPQ->Fill(nu.energyMC,nu.rw);
18396       hEnNoRwNotNuMuCCPQ->Fill(nu.energyMC);
18397       hRecoEnNotNuMuCCPQ->Fill(nu.energy,nu.rw);
18398       hYNotNuMuCCPQ->Fill(nu.y,nu.rw);
18399       hRecoYNotNuMuCCPQ->Fill(nu.y,nu.rw);
18400     }
18401   }
18402   else if (nu.charge==-1) {
18403     if (nu.iaction==1){//CC
18404       if (nu.inu==14){
18405         hEnNuMuCCNQ->Fill(nu.energyMC,nu.rw);
18406         hEnNoRwNuMuCCNQ->Fill(nu.energyMC);
18407         hRecoEnNuMuCCNQ->Fill(nu.energy,nu.rw);
18408         hYNuMuCCNQ->Fill(nu.y,nu.rw);
18409         hRecoYNuMuCCNQ->Fill(nu.y,nu.rw);
18410       }
18411       else if (nu.inu==-14){
18412         hEnNuMuBarCCNQ->Fill(nu.energyMC,nu.rw);
18413         hEnNoRwNuMuBarCCNQ->Fill(nu.energyMC);
18414         hRecoEnNuMuBarCCNQ->Fill(nu.energy,nu.rw);
18415         hYNuMuBarCCNQ->Fill(nu.y,nu.rw);
18416         hRecoYNuMuBarCCNQ->Fill(nu.y,nu.rw);
18417       }
18418       else if (nu.inu==12){
18419         hEnNueCCNQ->Fill(nu.energyMC,nu.rw);
18420         hRecoEnNueCCNQ->Fill(nu.energy,nu.rw);
18421         hYNueCCNQ->Fill(nu.y,nu.rw);
18422         hRecoYNueCCNQ->Fill(nu.y,nu.rw);
18423       }
18424       else if (nu.inu==-12){
18425         hEnNueBarCCNQ->Fill(nu.energyMC,nu.rw);
18426         hRecoEnNueBarCCNQ->Fill(nu.energy,nu.rw);
18427         hYNueBarCCNQ->Fill(nu.y,nu.rw);
18428         hRecoYNueBarCCNQ->Fill(nu.y,nu.rw);
18429       }
18430       else if (nu.inu==16){
18431         hEnNuTauCCNQ->Fill(nu.energyMC,nu.rw);
18432         hRecoEnNuTauCCNQ->Fill(nu.energy,nu.rw);
18433         hYNuTauCCNQ->Fill(nu.y,nu.rw);
18434         hRecoYNuTauCCNQ->Fill(nu.y,nu.rw);
18435       }
18436       else if (nu.inu==-16){
18437         hEnNuTauBarCCNQ->Fill(nu.energyMC,nu.rw);
18438         hRecoEnNuTauBarCCNQ->Fill(nu.energy,nu.rw);
18439         hYNuTauBarCCNQ->Fill(nu.y,nu.rw);
18440         hRecoYNuTauBarCCNQ->Fill(nu.y,nu.rw);
18441       }
18442       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
18443     }
18444     else if (nu.iaction==0){//NC
18445       hEnNCNQ->Fill(nu.energyMC,nu.rw);
18446       hRecoEnNCNQ->Fill(nu.energy,nu.rw);
18447       hYNCNQ->Fill(nu.y,nu.rw);
18448       hRecoYNCNQ->Fill(nu.y,nu.rw);
18449       
18450       if (nu.inu==14){
18451         hEnNuMuNCNQ->Fill(nu.energyMC,nu.rw);
18452         hRecoEnNuMuNCNQ->Fill(nu.energy,nu.rw);
18453         hYNuMuNCNQ->Fill(nu.y,nu.rw);
18454         hRecoYNuMuNCNQ->Fill(nu.y,nu.rw);
18455       }
18456       else if (nu.inu==-14){
18457         hEnNuMuBarNCNQ->Fill(nu.energyMC,nu.rw);
18458         hRecoEnNuMuBarNCNQ->Fill(nu.energy,nu.rw);
18459         hYNuMuBarNCNQ->Fill(nu.y,nu.rw);
18460         hRecoYNuMuBarNCNQ->Fill(nu.y,nu.rw);
18461       }
18462       else if (nu.inu==12){
18463         hEnNueNCNQ->Fill(nu.energyMC,nu.rw);
18464         hRecoEnNueNCNQ->Fill(nu.energy,nu.rw);
18465         hYNueNCNQ->Fill(nu.y,nu.rw);
18466         hRecoYNueNCNQ->Fill(nu.y,nu.rw);
18467       }
18468       else if (nu.inu==-12){
18469         hEnNueBarNCNQ->Fill(nu.energyMC,nu.rw);
18470         hRecoEnNueBarNCNQ->Fill(nu.energy,nu.rw);
18471         hYNueBarNCNQ->Fill(nu.y,nu.rw);
18472         hRecoYNueBarNCNQ->Fill(nu.y,nu.rw);
18473       }
18474       else if (nu.inu==16){
18475         hEnNuTauNCNQ->Fill(nu.energyMC,nu.rw);
18476         hRecoEnNuTauNCNQ->Fill(nu.energy,nu.rw);
18477         hYNuTauNCNQ->Fill(nu.y,nu.rw);
18478         hRecoYNuTauNCNQ->Fill(nu.y,nu.rw);
18479       }
18480       else if (nu.inu==-16){
18481         hEnNuTauBarNCNQ->Fill(nu.energyMC,nu.rw);
18482         hRecoEnNuTauBarNCNQ->Fill(nu.energy,nu.rw);
18483         hYNuTauBarNCNQ->Fill(nu.y,nu.rw);
18484         hRecoYNuTauBarNCNQ->Fill(nu.y,nu.rw);
18485       }
18486       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
18487     }
18488     else MSG("NuPlots",Msg::kWarning)<<"ahh, weird iaction"<<endl;
18489 
18490     //all but NuMu/NuMuBar CC
18491     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
18492       hEnAllShwNQ->Fill(nu.energyMC,nu.rw);
18493       hRecoEnAllShwNQ->Fill(nu.energy,nu.rw);
18494       hYAllShwNQ->Fill(nu.y,nu.rw);
18495       hRecoYAllShwNQ->Fill(nu.y,nu.rw);
18496     }
18497 
18498     //fill all-but-numubar-cc histos
18499     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
18500       hEnNotNuMuBarCCNQ->Fill(nu.energyMC,nu.rw);
18501       hEnNoRwNotNuMuBarCCNQ->Fill(nu.energyMC);
18502       hRecoEnNotNuMuBarCCNQ->Fill(nu.energy,nu.rw);
18503       hYNotNuMuBarCCNQ->Fill(nu.y,nu.rw);
18504       hRecoYNotNuMuBarCCNQ->Fill(nu.y,nu.rw);
18505     }
18506     //fill all-but-numu-cc histos
18507     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
18508       //probably don't actually care about these ones... but do anyway
18509       hEnNotNuMuCCNQ->Fill(nu.energyMC,nu.rw);
18510       hEnNoRwNotNuMuCCNQ->Fill(nu.energyMC);
18511       hRecoEnNotNuMuCCNQ->Fill(nu.energy,nu.rw);
18512       hYNotNuMuCCNQ->Fill(nu.y,nu.rw);
18513       hRecoYNotNuMuCCNQ->Fill(nu.y,nu.rw);
18514     }
18515   }
18516   else MSG("NuPlots",Msg::kWarning)<<"Ahhh qp=0"<<endl;
18517 }

void NuPlots::FillTrueRoIDHistos const NuEvent nu  )  const
 

This function makes plots of the PO ID for different true interaction types

Definition at line 4183 of file NuPlots.cxx.

References NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::roID, NuEvent::rw, and NuEvent::simFlag.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), and NuCutImps::NuCutsSelection::MakePostPreSelectionPlots().

04184 {
04185   static TH1F* hRoIDNuMuCC=0;
04186   static TH1F* hRoIDNuMuBarCC=0;
04187   static TH1F* hRoIDNuMuNC=0;
04188   static TH1F* hRoIDNuMuBarNC=0;
04189 
04190   static TH1F* hRoIDNueCC=0;
04191   static TH1F* hRoIDNueBarCC=0;
04192   static TH1F* hRoIDNueNC=0;
04193   static TH1F* hRoIDNueBarNC=0;
04194 
04195   static TH1F* hRoIDNuTauCC=0;
04196   static TH1F* hRoIDNuTauBarCC=0;
04197   static TH1F* hRoIDNuTauNC=0;
04198   static TH1F* hRoIDNuTauBarNC=0;
04199   
04200   static TH1F* hRoIDAllNC=0;
04201   static TH1F* hRoIDAllShw=0;
04202 
04203   static TH1F* hRoIDNotNuMuBarCC=0;
04204   static TH1F* hRoIDNotNuMuCC=0;
04205 
04206   if (!hRoIDNuMuCC){
04207     MAXMSG("NuPlots",Msg::kDebug,1)<<"Creating TrueRoID plots..."<<endl;
04208 
04209     hRoIDNuMuCC=new TH1F("hRoIDNuMuCC","hRoIDNuMuCC",
04210                          4*320,-3.2,3.2);
04211     hRoIDNuMuCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04212     hRoIDNuMuCC->GetXaxis()->CenterTitle();
04213     hRoIDNuMuCC->GetYaxis()->SetTitle("");
04214     hRoIDNuMuCC->GetYaxis()->CenterTitle();
04215     hRoIDNuMuCC->SetFillColor(0);
04216     hRoIDNuMuCC->SetLineColor(1);
04217     //hRoIDNuMuCC->SetBit(TH1::kCanRebin);
04218 
04219     hRoIDNuMuBarCC=new TH1F("hRoIDNuMuBarCC","hRoIDNuMuBarCC",
04220                             4*320,-3.2,3.2);
04221     hRoIDNuMuBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04222     hRoIDNuMuBarCC->GetXaxis()->CenterTitle();
04223     hRoIDNuMuBarCC->GetYaxis()->SetTitle("");
04224     hRoIDNuMuBarCC->GetYaxis()->CenterTitle();
04225     hRoIDNuMuBarCC->SetFillColor(0);
04226     hRoIDNuMuBarCC->SetLineColor(1);
04227     //hRoIDNuMuBarCC->SetBit(TH1::kCanRebin);
04228 
04229     hRoIDNuMuNC=new TH1F("hRoIDNuMuNC","hRoIDNuMuNC",
04230                          4*320,-3.2,3.2);
04231     hRoIDNuMuNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04232     hRoIDNuMuNC->GetXaxis()->CenterTitle();
04233     hRoIDNuMuNC->GetYaxis()->SetTitle("");
04234     hRoIDNuMuNC->GetYaxis()->CenterTitle();
04235     hRoIDNuMuNC->SetFillColor(0);
04236     hRoIDNuMuNC->SetLineColor(1);
04237     //hRoIDNuMuNC->SetBit(TH1::kCanRebin);
04238 
04239     hRoIDNuMuBarNC=new TH1F("hRoIDNuMuBarNC","hRoIDNuMuBarNC",
04240                             4*320,-3.2,3.2);
04241     hRoIDNuMuBarNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04242     hRoIDNuMuBarNC->GetXaxis()->CenterTitle();
04243     hRoIDNuMuBarNC->GetYaxis()->SetTitle("");
04244     hRoIDNuMuBarNC->GetYaxis()->CenterTitle();
04245     hRoIDNuMuBarNC->SetFillColor(0);
04246     hRoIDNuMuBarNC->SetLineColor(1);
04247     //hRoIDNuMuBarNC->SetBit(TH1::kCanRebin);
04248 
04249 
04250     //nue
04251     hRoIDNueCC=new TH1F("hRoIDNueCC","hRoIDNueCC",
04252                         4*320,-3.2,3.2);
04253     hRoIDNueCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04254     hRoIDNueCC->GetXaxis()->CenterTitle();
04255     hRoIDNueCC->GetYaxis()->SetTitle("");
04256     hRoIDNueCC->GetYaxis()->CenterTitle();
04257     hRoIDNueCC->SetFillColor(0);
04258     hRoIDNueCC->SetLineColor(1);
04259     //hRoIDNueCC->SetBit(TH1::kCanRebin);
04260 
04261     hRoIDNueBarCC=new TH1F("hRoIDNueBarCC","hRoIDNueBarCC",
04262                            4*320,-3.2,3.2);
04263     hRoIDNueBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04264     hRoIDNueBarCC->GetXaxis()->CenterTitle();
04265     hRoIDNueBarCC->GetYaxis()->SetTitle("");
04266     hRoIDNueBarCC->GetYaxis()->CenterTitle();
04267     hRoIDNueBarCC->SetFillColor(0);
04268     hRoIDNueBarCC->SetLineColor(1);
04269     //hRoIDNueBarCC->SetBit(TH1::kCanRebin);
04270 
04271     hRoIDNueNC=new TH1F("hRoIDNueNC","hRoIDNueNC",
04272                         4*320,-3.2,3.2);
04273     hRoIDNueNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04274     hRoIDNueNC->GetXaxis()->CenterTitle();
04275     hRoIDNueNC->GetYaxis()->SetTitle("");
04276     hRoIDNueNC->GetYaxis()->CenterTitle();
04277     hRoIDNueNC->SetFillColor(0);
04278     hRoIDNueNC->SetLineColor(1);
04279     //hRoIDNueNC->SetBit(TH1::kCanRebin);
04280 
04281     hRoIDNueBarNC=new TH1F("hRoIDNueBarNC","hRoIDNueBarNC",
04282                            4*320,-3.2,3.2);
04283     hRoIDNueBarNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04284     hRoIDNueBarNC->GetXaxis()->CenterTitle();
04285     hRoIDNueBarNC->GetYaxis()->SetTitle("");
04286     hRoIDNueBarNC->GetYaxis()->CenterTitle();
04287     hRoIDNueBarNC->SetFillColor(0);
04288     hRoIDNueBarNC->SetLineColor(1);
04289     //hRoIDNueBarNC->SetBit(TH1::kCanRebin);
04290 
04291 
04292     //nutau
04293     hRoIDNuTauCC=new TH1F("hRoIDNuTauCC","hRoIDNuTauCC",
04294                           4*320,-3.2,3.2);
04295     hRoIDNuTauCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04296     hRoIDNuTauCC->GetXaxis()->CenterTitle();
04297     hRoIDNuTauCC->GetYaxis()->SetTitle("");
04298     hRoIDNuTauCC->GetYaxis()->CenterTitle();
04299     hRoIDNuTauCC->SetFillColor(0);
04300     hRoIDNuTauCC->SetLineColor(1);
04301     //hRoIDNuTauCC->SetBit(TH1::kCanRebin);
04302 
04303     hRoIDNuTauBarCC=new TH1F("hRoIDNuTauBarCC","hRoIDNuTauBarCC",
04304                              4*320,-3.2,3.2);
04305     hRoIDNuTauBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04306     hRoIDNuTauBarCC->GetXaxis()->CenterTitle();
04307     hRoIDNuTauBarCC->GetYaxis()->SetTitle("");
04308     hRoIDNuTauBarCC->GetYaxis()->CenterTitle();
04309     hRoIDNuTauBarCC->SetFillColor(0);
04310     hRoIDNuTauBarCC->SetLineColor(1);
04311     //hRoIDNuTauBarCC->SetBit(TH1::kCanRebin);
04312 
04313     hRoIDNuTauNC=new TH1F("hRoIDNuTauNC","hRoIDNuTauNC",
04314                           4*320,-3.2,3.2);
04315     hRoIDNuTauNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04316     hRoIDNuTauNC->GetXaxis()->CenterTitle();
04317     hRoIDNuTauNC->GetYaxis()->SetTitle("");
04318     hRoIDNuTauNC->GetYaxis()->CenterTitle();
04319     hRoIDNuTauNC->SetFillColor(0);
04320     hRoIDNuTauNC->SetLineColor(1);
04321     //hRoIDNuTauNC->SetBit(TH1::kCanRebin);
04322 
04323     hRoIDNuTauBarNC=new TH1F("hRoIDNuTauBarNC","hRoIDNuTauBarNC",
04324                              4*320,-3.2,3.2);
04325     hRoIDNuTauBarNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04326     hRoIDNuTauBarNC->GetXaxis()->CenterTitle();
04327     hRoIDNuTauBarNC->GetYaxis()->SetTitle("");
04328     hRoIDNuTauBarNC->GetYaxis()->CenterTitle();
04329     hRoIDNuTauBarNC->SetFillColor(0);
04330     hRoIDNuTauBarNC->SetLineColor(1);
04331     //hRoIDNuTauBarNC->SetBit(TH1::kCanRebin);
04332 
04333 
04334 
04335     hRoIDAllNC=new TH1F("hRoIDAllNC","hRoIDAllNC",
04336                         4*320,-3.2,3.2);
04337     hRoIDAllNC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04338     hRoIDAllNC->GetXaxis()->CenterTitle();
04339     hRoIDAllNC->GetYaxis()->SetTitle("");
04340     hRoIDAllNC->GetYaxis()->CenterTitle();
04341     hRoIDAllNC->SetFillColor(0);
04342     hRoIDAllNC->SetLineColor(1);
04343     //hRoIDAllNC->SetBit(TH1::kCanRebin);
04344 
04345     hRoIDAllShw=new TH1F("hRoIDAllShw","hRoIDAllShw",
04346                          4*320,-3.2,3.2);
04347     hRoIDAllShw->GetXaxis()->SetTitle("PID (from NuBarPID)");
04348     hRoIDAllShw->GetXaxis()->CenterTitle();
04349     hRoIDAllShw->GetYaxis()->SetTitle("");
04350     hRoIDAllShw->GetYaxis()->CenterTitle();
04351     hRoIDAllShw->SetFillColor(0);
04352     hRoIDAllShw->SetLineColor(1);
04353     //hRoIDAllShw->SetBit(TH1::kCanRebin);
04354 
04355     hRoIDNotNuMuBarCC=new TH1F("hRoIDNotNuMuBarCC","hRoIDNotNuMuBarCC",
04356                                4*320,-3.2,3.2);
04357     hRoIDNotNuMuBarCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04358     hRoIDNotNuMuBarCC->GetXaxis()->CenterTitle();
04359     hRoIDNotNuMuBarCC->GetYaxis()->SetTitle("");
04360     hRoIDNotNuMuBarCC->GetYaxis()->CenterTitle();
04361     hRoIDNotNuMuBarCC->SetFillColor(0);
04362     hRoIDNotNuMuBarCC->SetLineColor(1);
04363     //hRoIDNotNuMuBarCC->SetBit(TH1::kCanRebin);
04364 
04365     hRoIDNotNuMuCC=new TH1F("hRoIDNotNuMuCC","hRoIDNotNuMuCC",
04366                             4*320,-3.2,3.2);
04367     hRoIDNotNuMuCC->GetXaxis()->SetTitle("PID (from NuBarPID)");
04368     hRoIDNotNuMuCC->GetXaxis()->CenterTitle();
04369     hRoIDNotNuMuCC->GetYaxis()->SetTitle("");
04370     hRoIDNotNuMuCC->GetYaxis()->CenterTitle();
04371     hRoIDNotNuMuCC->SetFillColor(0);
04372     hRoIDNotNuMuCC->SetLineColor(1);
04373     //hRoIDNotNuMuCC->SetBit(TH1::kCanRebin);
04374   }
04375 
04378 
04379   //return if not MC
04380   if (nu.simFlag!=SimFlag::kMC) {
04381     MAXMSG("NuPlots",Msg::kDebug,1)
04382       <<"Not MC, so not filling TrueRoID histos..."<<endl;
04383     return;
04384   }
04385   MAXMSG("NuPlots",Msg::kDebug,1)
04386     <<"Is MC, filling TrueRoID histos..."<<endl;
04387   
04388   if (nu.iaction==1){//CC
04389     if (nu.inu==14){
04390       hRoIDNuMuCC->Fill(nu.roID,nu.rw);
04391     }
04392     else if (nu.inu==-14){
04393       hRoIDNuMuBarCC->Fill(nu.roID,nu.rw);
04394     }
04395     else if (nu.inu==12){
04396       hRoIDNueCC->Fill(nu.roID,nu.rw);
04397     }
04398     else if (nu.inu==-12){
04399       hRoIDNueBarCC->Fill(nu.roID,nu.rw);
04400     }
04401     else if (nu.inu==16){
04402       hRoIDNuTauCC->Fill(nu.roID,nu.rw);
04403     }
04404     else if (nu.inu==-16){
04405       hRoIDNuTauBarCC->Fill(nu.roID,nu.rw);
04406     }
04407     else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
04408   }
04409   else if (nu.iaction==0){//NC
04410     hRoIDAllNC->Fill(nu.roID,nu.rw);
04411     if (nu.inu==14){
04412       hRoIDNuMuNC->Fill(nu.roID,nu.rw);
04413     }
04414     else if (nu.inu==-14){
04415       hRoIDNuMuBarNC->Fill(nu.roID,nu.rw);
04416     }
04417     else if (nu.inu==12){
04418       hRoIDNueNC->Fill(nu.roID,nu.rw);
04419     }
04420     else if (nu.inu==-12){
04421       hRoIDNueBarNC->Fill(nu.roID,nu.rw);
04422     }
04423     else if (nu.inu==16){
04424       hRoIDNuTauNC->Fill(nu.roID,nu.rw);
04425     }
04426     else if (nu.inu==-16){
04427       hRoIDNuTauBarNC->Fill(nu.roID,nu.rw);
04428     }
04429     else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
04430   }
04431   
04432   //all but NuMu/NuMuBar CC
04433   if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
04434     hRoIDAllShw->Fill(nu.roID,nu.rw);
04435   }
04436 
04437   //fill all-but-numubar-cc histos
04438   if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
04439     hRoIDNotNuMuBarCC->Fill(nu.roID,nu.rw);
04440   }
04441   //fill all-but-numu-cc histos
04442   if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
04443     //probably don't actually care about these ones... but do anyway
04444     hRoIDNotNuMuCC->Fill(nu.roID,nu.rw);
04445   }  
04446 }

void NuPlots::FillTrueRoIDHistosPQNQ const NuEvent nu  )  const
 

This function makes plots of the DP ID for different true interaction types

Definition at line 4450 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::iaction, NuEvent::inu, MAXMSG, MSG, NuEvent::roID, NuEvent::rw, and NuEvent::simFlag.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), and NuCutImps::NuCutsSelection::MakePostPreSelectionPlots().

04451 {
04452   //PQ
04453   static TH1F* hRoIDNuMuCCPQ=0;
04454   static TH1F* hRoIDNuMuBarCCPQ=0;
04455   static TH1F* hRoIDNuMuNCPQ=0;
04456   static TH1F* hRoIDNuMuBarNCPQ=0;
04457 
04458   static TH1F* hRoIDNueCCPQ=0;
04459   static TH1F* hRoIDNueBarCCPQ=0;
04460   static TH1F* hRoIDNueNCPQ=0;
04461   static TH1F* hRoIDNueBarNCPQ=0;
04462 
04463   static TH1F* hRoIDNuTauCCPQ=0;
04464   static TH1F* hRoIDNuTauBarCCPQ=0;
04465   static TH1F* hRoIDNuTauNCPQ=0;
04466   static TH1F* hRoIDNuTauBarNCPQ=0;
04467   
04468   static TH1F* hRoIDAllNCPQ=0;
04469   static TH1F* hRoIDAllShwPQ=0;
04470 
04471   static TH1F* hRoIDNotNuMuBarCCPQ=0;
04472   static TH1F* hRoIDNotNuMuCCPQ=0;
04473   static TH1F* hRoIDPQ=0;
04474 
04475   //NQ
04476   static TH1F* hRoIDNuMuCCNQ=0;
04477   static TH1F* hRoIDNuMuBarCCNQ=0;
04478   static TH1F* hRoIDNuMuNCNQ=0;
04479   static TH1F* hRoIDNuMuBarNCNQ=0;
04480 
04481   static TH1F* hRoIDNueCCNQ=0;
04482   static TH1F* hRoIDNueBarCCNQ=0;
04483   static TH1F* hRoIDNueNCNQ=0;
04484   static TH1F* hRoIDNueBarNCNQ=0;
04485   
04486   static TH1F* hRoIDNuTauCCNQ=0;
04487   static TH1F* hRoIDNuTauBarCCNQ=0;
04488   static TH1F* hRoIDNuTauNCNQ=0;
04489   static TH1F* hRoIDNuTauBarNCNQ=0;
04490 
04491   static TH1F* hRoIDAllNCNQ=0;
04492   static TH1F* hRoIDAllShwNQ=0;
04493 
04494   static TH1F* hRoIDNotNuMuBarCCNQ=0;
04495   static TH1F* hRoIDNotNuMuCCNQ=0;
04496   static TH1F* hRoIDNQ=0;
04497 
04498   if (!hRoIDNuMuCCPQ){
04499     MAXMSG("NuPlots",Msg::kDebug,1)
04500       <<"Creating TrueRoIDPQNQ plots..."<<endl;
04501 
04502     hRoIDNuMuCCPQ=new TH1F("hRoIDNuMuCCPQ","hRoIDNuMuCCPQ",
04503                            4*320,-3.2,3.2);
04504     hRoIDNuMuCCPQ->GetXaxis()->SetTitle(" PID (from NuBarPID)");
04505     hRoIDNuMuCCPQ->GetXaxis()->CenterTitle();
04506     hRoIDNuMuCCPQ->GetYaxis()->SetTitle("");
04507     hRoIDNuMuCCPQ->GetYaxis()->CenterTitle();
04508     hRoIDNuMuCCPQ->SetFillColor(0);
04509     hRoIDNuMuCCPQ->SetLineColor(1);
04510     //hRoIDNuMuCCPQ->SetBit(TH1::kCanRebin);
04511 
04512     hRoIDNuMuBarCCPQ=new TH1F("hRoIDNuMuBarCCPQ","hRoIDNuMuBarCCPQ",
04513                               4*320,-3.2,3.2);
04514     hRoIDNuMuBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04515     hRoIDNuMuBarCCPQ->GetXaxis()->CenterTitle();
04516     hRoIDNuMuBarCCPQ->GetYaxis()->SetTitle("");
04517     hRoIDNuMuBarCCPQ->GetYaxis()->CenterTitle();
04518     hRoIDNuMuBarCCPQ->SetFillColor(0);
04519     hRoIDNuMuBarCCPQ->SetLineColor(1);
04520     //hRoIDNuMuBarCCPQ->SetBit(TH1::kCanRebin);
04521 
04522     hRoIDNuMuNCPQ=new TH1F("hRoIDNuMuNCPQ","hRoIDNuMuNCPQ",
04523                            4*320,-3.2,3.2);
04524     hRoIDNuMuNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04525     hRoIDNuMuNCPQ->GetXaxis()->CenterTitle();
04526     hRoIDNuMuNCPQ->GetYaxis()->SetTitle("");
04527     hRoIDNuMuNCPQ->GetYaxis()->CenterTitle();
04528     hRoIDNuMuNCPQ->SetFillColor(0);
04529     hRoIDNuMuNCPQ->SetLineColor(1);
04530     //hRoIDNuMuNCPQ->SetBit(TH1::kCanRebin);
04531 
04532     hRoIDNuMuBarNCPQ=new TH1F("hRoIDNuMuBarNCPQ","hRoIDNuMuBarNCPQ",
04533                               4*320,-3.2,3.2);
04534     hRoIDNuMuBarNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04535     hRoIDNuMuBarNCPQ->GetXaxis()->CenterTitle();
04536     hRoIDNuMuBarNCPQ->GetYaxis()->SetTitle("");
04537     hRoIDNuMuBarNCPQ->GetYaxis()->CenterTitle();
04538     hRoIDNuMuBarNCPQ->SetFillColor(0);
04539     hRoIDNuMuBarNCPQ->SetLineColor(1);
04540     //hRoIDNuMuBarNCPQ->SetBit(TH1::kCanRebin);
04541 
04542 
04543     //nue
04544     hRoIDNueCCPQ=new TH1F("hRoIDNueCCPQ","hRoIDNueCCPQ",
04545                           4*320,-3.2,3.2);
04546     hRoIDNueCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04547     hRoIDNueCCPQ->GetXaxis()->CenterTitle();
04548     hRoIDNueCCPQ->GetYaxis()->SetTitle("");
04549     hRoIDNueCCPQ->GetYaxis()->CenterTitle();
04550     hRoIDNueCCPQ->SetFillColor(0);
04551     hRoIDNueCCPQ->SetLineColor(1);
04552     //hRoIDNueCCPQ->SetBit(TH1::kCanRebin);
04553 
04554     hRoIDNueBarCCPQ=new TH1F("hRoIDNueBarCCPQ","hRoIDNueBarCCPQ",
04555                              4*320,-3.2,3.2);
04556     hRoIDNueBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04557     hRoIDNueBarCCPQ->GetXaxis()->CenterTitle();
04558     hRoIDNueBarCCPQ->GetYaxis()->SetTitle("");
04559     hRoIDNueBarCCPQ->GetYaxis()->CenterTitle();
04560     hRoIDNueBarCCPQ->SetFillColor(0);
04561     hRoIDNueBarCCPQ->SetLineColor(1);
04562     //hRoIDNueBarCCPQ->SetBit(TH1::kCanRebin);
04563 
04564     hRoIDNueNCPQ=new TH1F("hRoIDNueNCPQ","hRoIDNueNCPQ",
04565                           4*320,-3.2,3.2);
04566     hRoIDNueNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04567     hRoIDNueNCPQ->GetXaxis()->CenterTitle();
04568     hRoIDNueNCPQ->GetYaxis()->SetTitle("");
04569     hRoIDNueNCPQ->GetYaxis()->CenterTitle();
04570     hRoIDNueNCPQ->SetFillColor(0);
04571     hRoIDNueNCPQ->SetLineColor(1);
04572     //hRoIDNueNCPQ->SetBit(TH1::kCanRebin);
04573 
04574     hRoIDNueBarNCPQ=new TH1F("hRoIDNueBarNCPQ","hRoIDNueBarNCPQ",
04575                              4*320,-3.2,3.2);
04576     hRoIDNueBarNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04577     hRoIDNueBarNCPQ->GetXaxis()->CenterTitle();
04578     hRoIDNueBarNCPQ->GetYaxis()->SetTitle("");
04579     hRoIDNueBarNCPQ->GetYaxis()->CenterTitle();
04580     hRoIDNueBarNCPQ->SetFillColor(0);
04581     hRoIDNueBarNCPQ->SetLineColor(1);
04582     //hRoIDNueBarNCPQ->SetBit(TH1::kCanRebin);
04583 
04584 
04585     //nutau
04586     hRoIDNuTauCCPQ=new TH1F("hRoIDNuTauCCPQ","hRoIDNuTauCCPQ",
04587                             4*320,-3.2,3.2);
04588     hRoIDNuTauCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04589     hRoIDNuTauCCPQ->GetXaxis()->CenterTitle();
04590     hRoIDNuTauCCPQ->GetYaxis()->SetTitle("");
04591     hRoIDNuTauCCPQ->GetYaxis()->CenterTitle();
04592     hRoIDNuTauCCPQ->SetFillColor(0);
04593     hRoIDNuTauCCPQ->SetLineColor(1);
04594     //hRoIDNuTauCCPQ->SetBit(TH1::kCanRebin);
04595 
04596     hRoIDNuTauBarCCPQ=new TH1F("hRoIDNuTauBarCCPQ","hRoIDNuTauBarCCPQ",
04597                                4*320,-3.2,3.2);
04598     hRoIDNuTauBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04599     hRoIDNuTauBarCCPQ->GetXaxis()->CenterTitle();
04600     hRoIDNuTauBarCCPQ->GetYaxis()->SetTitle("");
04601     hRoIDNuTauBarCCPQ->GetYaxis()->CenterTitle();
04602     hRoIDNuTauBarCCPQ->SetFillColor(0);
04603     hRoIDNuTauBarCCPQ->SetLineColor(1);
04604     //hRoIDNuTauBarCCPQ->SetBit(TH1::kCanRebin);
04605 
04606     hRoIDNuTauNCPQ=new TH1F("hRoIDNuTauNCPQ","hRoIDNuTauNCPQ",
04607                             4*320,-3.2,3.2);
04608     hRoIDNuTauNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04609     hRoIDNuTauNCPQ->GetXaxis()->CenterTitle();
04610     hRoIDNuTauNCPQ->GetYaxis()->SetTitle("");
04611     hRoIDNuTauNCPQ->GetYaxis()->CenterTitle();
04612     hRoIDNuTauNCPQ->SetFillColor(0);
04613     hRoIDNuTauNCPQ->SetLineColor(1);
04614     //hRoIDNuTauNCPQ->SetBit(TH1::kCanRebin);
04615 
04616     hRoIDNuTauBarNCPQ=new TH1F("hRoIDNuTauBarNCPQ","hRoIDNuTauBarNCPQ",
04617                                4*320,-3.2,3.2);
04618     hRoIDNuTauBarNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04619     hRoIDNuTauBarNCPQ->GetXaxis()->CenterTitle();
04620     hRoIDNuTauBarNCPQ->GetYaxis()->SetTitle("");
04621     hRoIDNuTauBarNCPQ->GetYaxis()->CenterTitle();
04622     hRoIDNuTauBarNCPQ->SetFillColor(0);
04623     hRoIDNuTauBarNCPQ->SetLineColor(1);
04624     //hRoIDNuTauBarNCPQ->SetBit(TH1::kCanRebin);
04625 
04626 
04627 
04628     hRoIDAllNCPQ=new TH1F("hRoIDAllNCPQ","hRoIDAllNCPQ",
04629                           4*320,-3.2,3.2);
04630     hRoIDAllNCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04631     hRoIDAllNCPQ->GetXaxis()->CenterTitle();
04632     hRoIDAllNCPQ->GetYaxis()->SetTitle("");
04633     hRoIDAllNCPQ->GetYaxis()->CenterTitle();
04634     hRoIDAllNCPQ->SetFillColor(0);
04635     hRoIDAllNCPQ->SetLineColor(1);
04636     //hRoIDAllNCPQ->SetBit(TH1::kCanRebin);
04637 
04638     hRoIDAllShwPQ=new TH1F("hRoIDAllShwPQ","hRoIDAllShwPQ",
04639                            4*320,-3.2,3.2);
04640     hRoIDAllShwPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04641     hRoIDAllShwPQ->GetXaxis()->CenterTitle();
04642     hRoIDAllShwPQ->GetYaxis()->SetTitle("");
04643     hRoIDAllShwPQ->GetYaxis()->CenterTitle();
04644     hRoIDAllShwPQ->SetFillColor(0);
04645     hRoIDAllShwPQ->SetLineColor(1);
04646     //hRoIDAllShwPQ->SetBit(TH1::kCanRebin);
04647 
04648     hRoIDNotNuMuBarCCPQ=new TH1F("hRoIDNotNuMuBarCCPQ","hRoIDNotNuMuBarCCPQ",
04649                                  4*320,-3.2,3.2);
04650     hRoIDNotNuMuBarCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04651     hRoIDNotNuMuBarCCPQ->GetXaxis()->CenterTitle();
04652     hRoIDNotNuMuBarCCPQ->GetYaxis()->SetTitle("");
04653     hRoIDNotNuMuBarCCPQ->GetYaxis()->CenterTitle();
04654     hRoIDNotNuMuBarCCPQ->SetFillColor(0);
04655     hRoIDNotNuMuBarCCPQ->SetLineColor(1);
04656     //hRoIDNotNuMuBarCCPQ->SetBit(TH1::kCanRebin);
04657 
04658     hRoIDNotNuMuCCPQ=new TH1F("hRoIDNotNuMuCCPQ","hRoIDNotNuMuCCPQ",
04659                               4*320,-3.2,3.2);
04660     hRoIDNotNuMuCCPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04661     hRoIDNotNuMuCCPQ->GetXaxis()->CenterTitle();
04662     hRoIDNotNuMuCCPQ->GetYaxis()->SetTitle("");
04663     hRoIDNotNuMuCCPQ->GetYaxis()->CenterTitle();
04664     hRoIDNotNuMuCCPQ->SetFillColor(0);
04665     hRoIDNotNuMuCCPQ->SetLineColor(1);
04666     //hRoIDNotNuMuCCPQ->SetBit(TH1::kCanRebin);
04667 
04668     //all
04669     hRoIDPQ=new TH1F("hRoIDPQ","hRoIDPQ",
04670                      4*320,-3.2,3.2);
04671     hRoIDPQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04672     hRoIDPQ->GetXaxis()->CenterTitle();
04673     hRoIDPQ->GetYaxis()->SetTitle("");
04674     hRoIDPQ->GetYaxis()->CenterTitle();
04675     hRoIDPQ->SetFillColor(0);
04676     hRoIDPQ->SetLineColor(1);
04677     //hRoIDPQ->SetBit(TH1::kCanRebin);
04678 
04680     //NQ////
04682     hRoIDNuMuCCNQ=new TH1F("hRoIDNuMuCCNQ","hRoIDNuMuCCNQ",
04683                            4*320,-3.2,3.2);
04684     hRoIDNuMuCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04685     hRoIDNuMuCCNQ->GetXaxis()->CenterTitle();
04686     hRoIDNuMuCCNQ->GetYaxis()->SetTitle("");
04687     hRoIDNuMuCCNQ->GetYaxis()->CenterTitle();
04688     hRoIDNuMuCCNQ->SetFillColor(0);
04689     hRoIDNuMuCCNQ->SetLineColor(1);
04690     //hRoIDNuMuCCNQ->SetBit(TH1::kCanRebin);
04691 
04692     hRoIDNuMuBarCCNQ=new TH1F("hRoIDNuMuBarCCNQ","hRoIDNuMuBarCCNQ",
04693                               4*320,-3.2,3.2);
04694     hRoIDNuMuBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04695     hRoIDNuMuBarCCNQ->GetXaxis()->CenterTitle();
04696     hRoIDNuMuBarCCNQ->GetYaxis()->SetTitle("");
04697     hRoIDNuMuBarCCNQ->GetYaxis()->CenterTitle();
04698     hRoIDNuMuBarCCNQ->SetFillColor(0);
04699     hRoIDNuMuBarCCNQ->SetLineColor(1);
04700     //hRoIDNuMuBarCCNQ->SetBit(TH1::kCanRebin);
04701 
04702     hRoIDNuMuNCNQ=new TH1F("hRoIDNuMuNCNQ","hRoIDNuMuNCNQ",
04703                            4*320,-3.2,3.2);
04704     hRoIDNuMuNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04705     hRoIDNuMuNCNQ->GetXaxis()->CenterTitle();
04706     hRoIDNuMuNCNQ->GetYaxis()->SetTitle("");
04707     hRoIDNuMuNCNQ->GetYaxis()->CenterTitle();
04708     hRoIDNuMuNCNQ->SetFillColor(0);
04709     hRoIDNuMuNCNQ->SetLineColor(1);
04710     //hRoIDNuMuNCNQ->SetBit(TH1::kCanRebin);
04711 
04712     hRoIDNuMuBarNCNQ=new TH1F("hRoIDNuMuBarNCNQ","hRoIDNuMuBarNCNQ",
04713                               4*320,-3.2,3.2);
04714     hRoIDNuMuBarNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04715     hRoIDNuMuBarNCNQ->GetXaxis()->CenterTitle();
04716     hRoIDNuMuBarNCNQ->GetYaxis()->SetTitle("");
04717     hRoIDNuMuBarNCNQ->GetYaxis()->CenterTitle();
04718     hRoIDNuMuBarNCNQ->SetFillColor(0);
04719     hRoIDNuMuBarNCNQ->SetLineColor(1);
04720     //hRoIDNuMuBarNCNQ->SetBit(TH1::kCanRebin);
04721 
04722 
04723     //nue
04724     hRoIDNueCCNQ=new TH1F("hRoIDNueCCNQ","hRoIDNueCCNQ",
04725                           4*320,-3.2,3.2);
04726     hRoIDNueCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04727     hRoIDNueCCNQ->GetXaxis()->CenterTitle();
04728     hRoIDNueCCNQ->GetYaxis()->SetTitle("");
04729     hRoIDNueCCNQ->GetYaxis()->CenterTitle();
04730     hRoIDNueCCNQ->SetFillColor(0);
04731     hRoIDNueCCNQ->SetLineColor(1);
04732     //hRoIDNueCCNQ->SetBit(TH1::kCanRebin);
04733 
04734     hRoIDNueBarCCNQ=new TH1F("hRoIDNueBarCCNQ","hRoIDNueBarCCNQ",
04735                              4*320,-3.2,3.2);
04736     hRoIDNueBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04737     hRoIDNueBarCCNQ->GetXaxis()->CenterTitle();
04738     hRoIDNueBarCCNQ->GetYaxis()->SetTitle("");
04739     hRoIDNueBarCCNQ->GetYaxis()->CenterTitle();
04740     hRoIDNueBarCCNQ->SetFillColor(0);
04741     hRoIDNueBarCCNQ->SetLineColor(1);
04742     //hRoIDNueBarCCNQ->SetBit(TH1::kCanRebin);
04743 
04744     hRoIDNueNCNQ=new TH1F("hRoIDNueNCNQ","hRoIDNueNCNQ",
04745                           4*320,-3.2,3.2);
04746     hRoIDNueNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04747     hRoIDNueNCNQ->GetXaxis()->CenterTitle();
04748     hRoIDNueNCNQ->GetYaxis()->SetTitle("");
04749     hRoIDNueNCNQ->GetYaxis()->CenterTitle();
04750     hRoIDNueNCNQ->SetFillColor(0);
04751     hRoIDNueNCNQ->SetLineColor(1);
04752     //hRoIDNueNCNQ->SetBit(TH1::kCanRebin);
04753 
04754     hRoIDNueBarNCNQ=new TH1F("hRoIDNueBarNCNQ","hRoIDNueBarNCNQ",
04755                              4*320,-3.2,3.2);
04756     hRoIDNueBarNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04757     hRoIDNueBarNCNQ->GetXaxis()->CenterTitle();
04758     hRoIDNueBarNCNQ->GetYaxis()->SetTitle("");
04759     hRoIDNueBarNCNQ->GetYaxis()->CenterTitle();
04760     hRoIDNueBarNCNQ->SetFillColor(0);
04761     hRoIDNueBarNCNQ->SetLineColor(1);
04762     //hRoIDNueBarNCNQ->SetBit(TH1::kCanRebin);
04763 
04764 
04765     //nutau
04766     hRoIDNuTauCCNQ=new TH1F("hRoIDNuTauCCNQ","hRoIDNuTauCCNQ",
04767                             4*320,-3.2,3.2);
04768     hRoIDNuTauCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04769     hRoIDNuTauCCNQ->GetXaxis()->CenterTitle();
04770     hRoIDNuTauCCNQ->GetYaxis()->SetTitle("");
04771     hRoIDNuTauCCNQ->GetYaxis()->CenterTitle();
04772     hRoIDNuTauCCNQ->SetFillColor(0);
04773     hRoIDNuTauCCNQ->SetLineColor(1);
04774     //hRoIDNuTauCCNQ->SetBit(TH1::kCanRebin);
04775 
04776     hRoIDNuTauBarCCNQ=new TH1F("hRoIDNuTauBarCCNQ","hRoIDNuTauBarCCNQ",
04777                                4*320,-3.2,3.2);
04778     hRoIDNuTauBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04779     hRoIDNuTauBarCCNQ->GetXaxis()->CenterTitle();
04780     hRoIDNuTauBarCCNQ->GetYaxis()->SetTitle("");
04781     hRoIDNuTauBarCCNQ->GetYaxis()->CenterTitle();
04782     hRoIDNuTauBarCCNQ->SetFillColor(0);
04783     hRoIDNuTauBarCCNQ->SetLineColor(1);
04784     //hRoIDNuTauBarCCNQ->SetBit(TH1::kCanRebin);
04785 
04786     hRoIDNuTauNCNQ=new TH1F("hRoIDNuTauNCNQ","hRoIDNuTauNCNQ",
04787                             4*320,-3.2,3.2);
04788     hRoIDNuTauNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04789     hRoIDNuTauNCNQ->GetXaxis()->CenterTitle();
04790     hRoIDNuTauNCNQ->GetYaxis()->SetTitle("");
04791     hRoIDNuTauNCNQ->GetYaxis()->CenterTitle();
04792     hRoIDNuTauNCNQ->SetFillColor(0);
04793     hRoIDNuTauNCNQ->SetLineColor(1);
04794     //hRoIDNuTauNCNQ->SetBit(TH1::kCanRebin);
04795 
04796     hRoIDNuTauBarNCNQ=new TH1F("hRoIDNuTauBarNCNQ","hRoIDNuTauBarNCNQ",
04797                                4*320,-3.2,3.2);
04798     hRoIDNuTauBarNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04799     hRoIDNuTauBarNCNQ->GetXaxis()->CenterTitle();
04800     hRoIDNuTauBarNCNQ->GetYaxis()->SetTitle("");
04801     hRoIDNuTauBarNCNQ->GetYaxis()->CenterTitle();
04802     hRoIDNuTauBarNCNQ->SetFillColor(0);
04803     hRoIDNuTauBarNCNQ->SetLineColor(1);
04804     //hRoIDNuTauBarNCNQ->SetBit(TH1::kCanRebin);
04805 
04806 
04807 
04808     hRoIDAllNCNQ=new TH1F("hRoIDAllNCNQ","hRoIDAllNCNQ",
04809                           4*320,-3.2,3.2);
04810     hRoIDAllNCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04811     hRoIDAllNCNQ->GetXaxis()->CenterTitle();
04812     hRoIDAllNCNQ->GetYaxis()->SetTitle("");
04813     hRoIDAllNCNQ->GetYaxis()->CenterTitle();
04814     hRoIDAllNCNQ->SetFillColor(0);
04815     hRoIDAllNCNQ->SetLineColor(1);
04816     //hRoIDAllNCNQ->SetBit(TH1::kCanRebin);
04817 
04818     hRoIDAllShwNQ=new TH1F("hRoIDAllShwNQ","hRoIDAllShwNQ",
04819                            4*320,-3.2,3.2);
04820     hRoIDAllShwNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04821     hRoIDAllShwNQ->GetXaxis()->CenterTitle();
04822     hRoIDAllShwNQ->GetYaxis()->SetTitle("");
04823     hRoIDAllShwNQ->GetYaxis()->CenterTitle();
04824     hRoIDAllShwNQ->SetFillColor(0);
04825     hRoIDAllShwNQ->SetLineColor(1);
04826     //hRoIDAllShwNQ->SetBit(TH1::kCanRebin);
04827 
04828     hRoIDNotNuMuBarCCNQ=new TH1F("hRoIDNotNuMuBarCCNQ","hRoIDNotNuMuBarCCNQ",
04829                                  4*320,-3.2,3.2);
04830     hRoIDNotNuMuBarCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04831     hRoIDNotNuMuBarCCNQ->GetXaxis()->CenterTitle();
04832     hRoIDNotNuMuBarCCNQ->GetYaxis()->SetTitle("");
04833     hRoIDNotNuMuBarCCNQ->GetYaxis()->CenterTitle();
04834     hRoIDNotNuMuBarCCNQ->SetFillColor(0);
04835     hRoIDNotNuMuBarCCNQ->SetLineColor(1);
04836     //hRoIDNotNuMuBarCCNQ->SetBit(TH1::kCanRebin);
04837 
04838     hRoIDNotNuMuCCNQ=new TH1F("hRoIDNotNuMuCCNQ","hRoIDNotNuMuCCNQ",
04839                               4*320,-3.2,3.2);
04840     hRoIDNotNuMuCCNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04841     hRoIDNotNuMuCCNQ->GetXaxis()->CenterTitle();
04842     hRoIDNotNuMuCCNQ->GetYaxis()->SetTitle("");
04843     hRoIDNotNuMuCCNQ->GetYaxis()->CenterTitle();
04844     hRoIDNotNuMuCCNQ->SetFillColor(0);
04845     hRoIDNotNuMuCCNQ->SetLineColor(1);
04846     //hRoIDNotNuMuCCNQ->SetBit(TH1::kCanRebin);
04847 
04848     hRoIDNQ=new TH1F("hRoIDNQ","hRoIDNQ",
04849                      4*320,-3.2,3.2);
04850     hRoIDNQ->GetXaxis()->SetTitle("PID (from NuBarPID)");
04851     hRoIDNQ->GetXaxis()->CenterTitle();
04852     hRoIDNQ->GetYaxis()->SetTitle("");
04853     hRoIDNQ->GetYaxis()->CenterTitle();
04854     hRoIDNQ->SetFillColor(0);
04855     hRoIDNQ->SetLineColor(1);
04856     //hRoIDNQ->SetBit(TH1::kCanRebin);
04857   }
04858 
04861 
04862   //fill the histos
04863   if (nu.charge>0) {
04864     hRoIDPQ->Fill(nu.roID,nu.rw);
04865   }
04866   else if (nu.charge<0) {
04867     hRoIDNQ->Fill(nu.roID,nu.rw);
04868   }
04869 
04870   //return if not MC
04871   if (nu.simFlag!=SimFlag::kMC) {
04872     MAXMSG("NuPlots",Msg::kDebug,1)
04873       <<"Not MC, so not filling TrueRoIDPQNQ histos..."<<endl;
04874     return;
04875   }
04876   MAXMSG("NuPlots",Msg::kDebug,1)
04877     <<"Is MC, filling TrueRoIDPQNQ histos..."<<endl;
04878   
04879   if (nu.charge>0) {
04880     if (nu.iaction==1){//CC
04881       if (nu.inu==14){
04882         hRoIDNuMuCCPQ->Fill(nu.roID,nu.rw);
04883       }
04884       else if (nu.inu==-14){
04885         hRoIDNuMuBarCCPQ->Fill(nu.roID,nu.rw);
04886       }
04887       else if (nu.inu==12){
04888         hRoIDNueCCPQ->Fill(nu.roID,nu.rw);
04889       }
04890       else if (nu.inu==-12){
04891         hRoIDNueBarCCPQ->Fill(nu.roID,nu.rw);
04892       }
04893       else if (nu.inu==16){
04894         hRoIDNuTauCCPQ->Fill(nu.roID,nu.rw);
04895       }
04896       else if (nu.inu==-16){
04897         hRoIDNuTauBarCCPQ->Fill(nu.roID,nu.rw);
04898       }
04899       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
04900     }
04901     else if (nu.iaction==0){//NC
04902       hRoIDAllNCPQ->Fill(nu.roID,nu.rw);
04903       if (nu.inu==14){
04904         hRoIDNuMuNCPQ->Fill(nu.roID,nu.rw);
04905       }
04906       else if (nu.inu==-14){
04907         hRoIDNuMuBarNCPQ->Fill(nu.roID,nu.rw);
04908       }
04909       else if (nu.inu==12){
04910         hRoIDNueNCPQ->Fill(nu.roID,nu.rw);
04911       }
04912       else if (nu.inu==-12){
04913         hRoIDNueBarNCPQ->Fill(nu.roID,nu.rw);
04914       }
04915       else if (nu.inu==16){
04916         hRoIDNuTauNCPQ->Fill(nu.roID,nu.rw);
04917       }
04918       else if (nu.inu==-16){
04919         hRoIDNuTauBarNCPQ->Fill(nu.roID,nu.rw);
04920       }
04921       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
04922     }
04923   
04924     //all but NuMu/NuMuBar CC
04925     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
04926       hRoIDAllShwPQ->Fill(nu.roID,nu.rw);
04927     }
04928 
04929     //fill all-but-numubar-cc histos
04930     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
04931       hRoIDNotNuMuBarCCPQ->Fill(nu.roID,nu.rw);
04932     }
04933     //fill all-but-numu-cc histos
04934     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
04935       //probably don't actually care about these ones... but do anyway
04936       hRoIDNotNuMuCCPQ->Fill(nu.roID,nu.rw);
04937     }
04938   }
04939   else if (nu.charge<0) {
04940     if (nu.iaction==1){//CC
04941       if (nu.inu==14){
04942         hRoIDNuMuCCNQ->Fill(nu.roID,nu.rw);
04943       }
04944       else if (nu.inu==-14){
04945         hRoIDNuMuBarCCNQ->Fill(nu.roID,nu.rw);
04946       }
04947       else if (nu.inu==12){
04948         hRoIDNueCCNQ->Fill(nu.roID,nu.rw);
04949       }
04950       else if (nu.inu==-12){
04951         hRoIDNueBarCCNQ->Fill(nu.roID,nu.rw);
04952       }
04953       else if (nu.inu==16){
04954         hRoIDNuTauCCNQ->Fill(nu.roID,nu.rw);
04955       }
04956       else if (nu.inu==-16){
04957         hRoIDNuTauBarCCNQ->Fill(nu.roID,nu.rw);
04958       }
04959       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
04960     }
04961     else if (nu.iaction==0){//NC
04962       hRoIDAllNCNQ->Fill(nu.roID,nu.rw);
04963       if (nu.inu==14){
04964         hRoIDNuMuNCNQ->Fill(nu.roID,nu.rw);
04965       }
04966       else if (nu.inu==-14){
04967         hRoIDNuMuBarNCNQ->Fill(nu.roID,nu.rw);
04968       }
04969       else if (nu.inu==12){
04970         hRoIDNueNCNQ->Fill(nu.roID,nu.rw);
04971       }
04972       else if (nu.inu==-12){
04973         hRoIDNueBarNCNQ->Fill(nu.roID,nu.rw);
04974       }
04975       else if (nu.inu==16){
04976         hRoIDNuTauNCNQ->Fill(nu.roID,nu.rw);
04977       }
04978       else if (nu.inu==-16){
04979         hRoIDNuTauBarNCNQ->Fill(nu.roID,nu.rw);
04980       }
04981       else MSG("NuPlots",Msg::kWarning)<<"Neutrino not used with id="<<nu.inu<<endl;
04982     }
04983   
04984     //all but NuMu/NuMuBar CC
04985     if (!(nu.iaction==1 && (nu.inu==14 || nu.inu==-14))) {
04986       hRoIDAllShwNQ->Fill(nu.roID,nu.rw);
04987     }
04988 
04989     //fill all-but-numubar-cc histos
04990     if (!(nu.inu==-14 && nu.iaction==1)) {// !numubarCC
04991       hRoIDNotNuMuBarCCNQ->Fill(nu.roID,nu.rw);
04992     }
04993     //fill all-but-numu-cc histos
04994     if (!(nu.inu==14 && nu.iaction==1)) {// !numuCC
04995       //probably don't actually care about these ones... but do anyway
04996       hRoIDNotNuMuCCNQ->Fill(nu.roID,nu.rw);
04997     }
04998   }
04999   else MSG("NuPlots",Msg::kWarning)<<"Ahhh qp=0"<<endl;
05000 }

void NuPlots::FillUVHistos const NuEvent nu  )  const
 

Definition at line 1278 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::evtVtxUVDiffPl, NuEvent::iaction, NuEvent::inu, MAXMSG, NuEvent::planeEvtBeg, NuEvent::planeEvtEnd, NuEvent::planeTrkBeg, NuEvent::planeTrkBegu, NuEvent::planeTrkBegv, NuEvent::planeTrkEnd, NuEvent::planeTrkEndu, NuEvent::planeTrkEndv, NuEvent::rw, and NuEvent::trkVtxUVDiffPl.

Referenced by NuDSTAna::MakeFinalPlots().

01279 {
01280   static TH1F* hPlUVDiffTrk=0;  
01281   static TH1F* hPlUVDiffEvt=0;
01282 
01283   static TH1F* hPlUDiffEvt=0;
01284   static TH1F* hPlVDiffEvt=0;
01285   static TH1F* hPlUDiffEvtNotNMBCCPQ=0;
01286   static TH1F* hPlVDiffEvtNotNMBCCPQ=0;
01287 
01288 
01289   static TH1F* hPlEvtTrkVtxDiff=0;
01290   static TH1F* hPlEvtTrkEndDiff=0;
01291 
01292   if (!hPlUVDiffTrk){
01293     MAXMSG("NuPlots",Msg::kInfo,1)
01294       <<"Creating vtx plane diff. plots..."<<endl;
01295 
01296     hPlUVDiffEvt=new TH1F("hPlUVDiffEvt","hPlUVDiffEvt",1000,-500,500);
01297     hPlUVDiffEvt->GetXaxis()->SetTitle("U-V Difference (planes)");
01298     hPlUVDiffEvt->GetXaxis()->CenterTitle();
01299     hPlUVDiffEvt->GetYaxis()->SetTitle("");
01300     hPlUVDiffEvt->GetYaxis()->CenterTitle();
01301     hPlUVDiffEvt->SetFillColor(0);
01302     hPlUVDiffEvt->SetLineColor(1);
01303     //hPlUVDiffEvt->SetBit(TH1::kCanRebin);
01304 
01305     hPlUVDiffTrk=new TH1F("hPlUVDiffTrk","hPlUVDiffTrk",1000,-500,500);
01306     hPlUVDiffTrk->GetXaxis()->SetTitle("U-V Difference (planes)");
01307     hPlUVDiffTrk->GetXaxis()->CenterTitle();
01308     hPlUVDiffTrk->GetYaxis()->SetTitle("");
01309     hPlUVDiffTrk->GetYaxis()->CenterTitle();
01310     hPlUVDiffTrk->SetFillColor(0);
01311     hPlUVDiffTrk->SetLineColor(1);
01312     //hPlUVDiffTrk->SetBit(TH1::kCanRebin);
01313 
01314     hPlEvtTrkVtxDiff=new TH1F("hPlEvtTrkVtxDiff","hPlEvtTrkVtxDiff",
01315                               1000,-500,500);
01316     hPlEvtTrkVtxDiff->GetXaxis()->SetTitle("Evt-Trk Vtx Diff. (planes)");
01317     hPlEvtTrkVtxDiff->GetXaxis()->CenterTitle();
01318     hPlEvtTrkVtxDiff->GetYaxis()->SetTitle("");
01319     hPlEvtTrkVtxDiff->GetYaxis()->CenterTitle();
01320     hPlEvtTrkVtxDiff->SetFillColor(0);
01321     hPlEvtTrkVtxDiff->SetLineColor(1);
01322     //hPlEvtTrkVtxDiff->SetBit(TH1::kCanRebin);
01323 
01324     hPlEvtTrkEndDiff=new TH1F("hPlEvtTrkEndDiff","hPlEvtTrkEndDiff",
01325                               1000,-500,500);
01326     hPlEvtTrkEndDiff->GetXaxis()->SetTitle("Evt-Trk End Diff. (planes)");
01327     hPlEvtTrkEndDiff->GetXaxis()->CenterTitle();
01328     hPlEvtTrkEndDiff->GetYaxis()->SetTitle("");
01329     hPlEvtTrkEndDiff->GetYaxis()->CenterTitle();
01330     hPlEvtTrkEndDiff->SetFillColor(0);
01331     hPlEvtTrkEndDiff->SetLineColor(1);
01332     //hPlEvtTrkEndDiff->SetBit(TH1::kCanRebin);
01333 
01334     // new stuff -MR
01335     hPlUDiffEvt=new TH1F("hPlUDiffEvt","hPlUDiffEvt",
01336                               300,0,300);
01337     hPlUDiffEvt->GetXaxis()->SetTitle("Evt UPlane Diff.");
01338     hPlUDiffEvt->GetXaxis()->CenterTitle();
01339     hPlUDiffEvt->GetYaxis()->SetTitle("");
01340     hPlUDiffEvt->GetYaxis()->CenterTitle();
01341     hPlUDiffEvt->SetFillColor(0);
01342     hPlUDiffEvt->SetLineColor(1);
01343     //hPlUDiffEvt->SetBit(TH1::kCanRebin);
01344 
01345     hPlUDiffEvtNotNMBCCPQ=new TH1F("hPlUDiffEvtNotNMBCCPQ","hPlUDiffEvtNotNMBCCPQ",
01346                          300,0,300);
01347     hPlUDiffEvtNotNMBCCPQ->GetXaxis()->SetTitle("Evt UPlane Diff.");
01348     hPlUDiffEvtNotNMBCCPQ->GetXaxis()->CenterTitle();
01349     hPlUDiffEvtNotNMBCCPQ->GetYaxis()->SetTitle("");
01350     hPlUDiffEvtNotNMBCCPQ->GetYaxis()->CenterTitle();
01351     hPlUDiffEvtNotNMBCCPQ->SetFillColor(0);
01352     hPlUDiffEvtNotNMBCCPQ->SetLineColor(1);
01353     //hPlUDiffEvtNotNMBCCPQ->SetBit(TH1::kCanRebin);
01354 
01355     hPlVDiffEvt=new TH1F("hPlVDiffEvt","hPlVDiffEvt",
01356                               300,0,300);
01357     hPlVDiffEvt->GetXaxis()->SetTitle("Evt VPlane Diff.");
01358     hPlVDiffEvt->GetXaxis()->CenterTitle();
01359     hPlVDiffEvt->GetYaxis()->SetTitle("");
01360     hPlVDiffEvt->GetYaxis()->CenterTitle();
01361     hPlVDiffEvt->SetFillColor(0);
01362     hPlVDiffEvt->SetLineColor(1);
01363     //hPlVDiffEvt->SetBit(TH1::kCanRebin);
01364 
01365     hPlVDiffEvtNotNMBCCPQ=new TH1F("hPlVDiffEvtNotNMBCCPQ","hPlVDiffEvtNotNMBCCPQ",
01366                                    300,0,300);
01367     hPlVDiffEvtNotNMBCCPQ->GetXaxis()->SetTitle("Evt UPlane Diff.");
01368     hPlVDiffEvtNotNMBCCPQ->GetXaxis()->CenterTitle();
01369     hPlVDiffEvtNotNMBCCPQ->GetYaxis()->SetTitle("");
01370     hPlVDiffEvtNotNMBCCPQ->GetYaxis()->CenterTitle();
01371     hPlVDiffEvtNotNMBCCPQ->SetFillColor(0);
01372     hPlVDiffEvtNotNMBCCPQ->SetLineColor(1);
01373     //hPlVDiffEvtNotNMBCCPQ->SetBit(TH1::kCanRebin);
01374 
01375   }
01376   
01377   hPlUVDiffEvt->Fill(nu.evtVtxUVDiffPl,nu.rw);
01378   hPlUVDiffTrk->Fill(nu.trkVtxUVDiffPl,nu.rw);
01379 
01380   hPlEvtTrkVtxDiff->Fill(nu.planeEvtBeg-nu.planeTrkBeg,nu.rw);
01381   hPlEvtTrkEndDiff->Fill(nu.planeEvtEnd-nu.planeTrkEnd,nu.rw);
01382 
01383   if (nu.charge==+1) {
01384   hPlUDiffEvt->Fill(nu.planeTrkEndu-nu.planeTrkBegu,nu.rw);
01385   hPlVDiffEvt->Fill(nu.planeTrkEndv-nu.planeTrkBegv,nu.rw);
01386   if (!(nu.inu==-14 && nu.iaction==1)) {
01387     hPlUDiffEvtNotNMBCCPQ->Fill(nu.planeTrkEndu-nu.planeTrkBegu,nu.rw);
01388     hPlVDiffEvtNotNMBCCPQ->Fill(nu.planeTrkEndv-nu.planeTrkBegv,nu.rw);
01389   }
01390   }
01391 }

void NuPlots::FillXYZHistos const NuEvent nu  )  const
 

Definition at line 9718 of file NuPlots.cxx.

References NuEvent::charge, NuEvent::containmentFlag, NuEvent::cosPrTrkVtx, CreateHist(), NuEvent::drTrkFidall, NuEvent::drTrkFidend, NuEvent::drTrkFidvtx, NuEvent::dzTrkFidall, NuEvent::dzTrkFidend, NuEvent::dzTrkFidvtx, NuEvent::iaction, NuEvent::inu, NuEvent::knn10TrkMeanPhEvt, NuEvent::knn40TrkPhFracEvt, MSG, NuEvent::nshw, NuEvent::nstripShw, NuEvent::ntrk, NuEvent::ntrklike, NuEvent::planeEvtBeg, NuEvent::planeEvtEnd, NuEvent::planeEvtVtx, NuEvent::planeTrkBeg, NuEvent::planeTrkBegu, NuEvent::planeTrkBegv, NuEvent::planeTrkEnd, NuEvent::planeTrkEndu, NuEvent::planeTrkEndv, NuEvent::planeTrkNu, NuEvent::planeTrkNv, NuEvent::planeTrkVtx, NuEvent::rEvtEnd, NuEvent::rEvtVtx, NuEvent::rTrkEnd, NuEvent::rTrkVtx, NuEvent::rw, NuEvent::traceTrkFidall, NuEvent::traceTrkFidend, NuEvent::traceTrkFidvtx, NuEvent::trknplane, NuEvent::xEvtEnd, NuEvent::xEvtVtx, NuEvent::xTrkEnd, NuEvent::xTrkVtx, NuEvent::yEvtEnd, NuEvent::yEvtVtx, NuEvent::yTrkEnd, NuEvent::yTrkVtx, NuEvent::zEvtEnd, NuEvent::zEvtVtx, NuEvent::zTrkEnd, and NuEvent::zTrkVtx.

Referenced by NuAnalysis::ChargeSeparationOneSnarl(), NuAnalysis::ChargeSignCut(), NuAnalysis::EnergySpect(), NuAnalysis::LIRejectionTest(), NuDSTAna::MakeFinalPlots(), and NuAnalysis::NMBSummaryTreeAna().

09719 {
09720   Int_t nbinsZ=7;
09721   static Float_t zbins[8]={0,5,10,14.8,15.9,20,25,30};
09722 
09723   //PQ
09724   static TH2F* hYvsXEvtVtxPQ=0;
09725   static TH2F* hYvsXEvtEndPQ=0;
09726   static TH2F* hYvsXEvtEndPQ1=0;
09727   static TH2F* hYvsXEvtEndPQ2=0;
09728   static TH2F* hYvsXEvtEndPQ3=0;
09729   static TH2F* hYvsXEvtEndPQ4=0;
09730   static TH2F* hYvsXEvtEndPQ0=0;
09731 
09732   static TH2F* hYvsXTrkVtxPQ=0;
09733   static TH2F* hYvsXTrkEndPQ=0;
09734   static TH2F* hYvsXTrkEndPQ1=0;
09735   static TH2F* hYvsXTrkEndPQ2=0;
09736   static TH2F* hYvsXTrkEndPQ3=0;
09737   static TH2F* hYvsXTrkEndPQ4=0;
09738   static TH2F* hYvsXTrkEndPQ0=0;
09739 
09740   static TH1F* hXEvtVtxPQ=0;
09741   static TH1F* hYEvtVtxPQ=0;
09742   static TH1F* hZEvtVtxPQ=0;
09743   static TH1F* hZEvtVtxPQ_CoarseBin=0;
09744   static TH1F* hREvtVtxPQ=0;
09745   static TH1F* hXEvtEndPQ=0;
09746   static TH1F* hYEvtEndPQ=0;
09747   static TH1F* hZEvtEndPQ=0;
09748   static TH1F* hZEvtEndPQ_CoarseBin=0;
09749   static TH1F* hREvtEndPQ=0;
09750 
09751   static TH1F* hXTrkVtxPQ=0;
09752   static TH1F* hYTrkVtxPQ=0;
09753   static TH1F* hZTrkVtxPQ=0;
09754   static TH1F* hXTrkVtxNoRwPQ=0;
09755   static TH1F* hYTrkVtxNoRwPQ=0;
09756   static TH1F* hZTrkVtxNoRwPQ=0;
09757   static TH1F* hZTrkVtxPQ_CoarseBin=0;
09758   static TH1F* hRTrkVtxPQ=0;
09759   static TH1F* hRTrkVtxNoRwPQ=0;
09760   static TH1F* hR2TrkVtxPQ=0;
09761 
09762   static TH1F* hXTrkEndPQ=0;
09763   static TH1F* hYTrkEndPQ=0;
09764   static TH1F* hZTrkEndPQ=0;
09765   static TH1F* hXTrkEndNoRwPQ=0;
09766   static TH1F* hYTrkEndNoRwPQ=0;
09767   static TH1F* hZTrkEndNoRwPQ=0;
09768   static TH1F* hZTrkEndPQ_CoarseBin=0;
09769   static TH1F* hRTrkEndPQ=0;
09770   static TH1F* hR2TrkEndPQ=0;
09771   static TH1F* hRTrkEndNoRwPQ=0;
09772 
09773   static TH1F* hZEvtEndPQ1=0;
09774   static TH1F* hZEvtEndPQ2=0;
09775   static TH1F* hZEvtEndPQ3=0;
09776   static TH1F* hZEvtEndPQ4=0;
09777 
09778   static TH1F* hZTrkEndPQ1=0;
09779   static TH1F* hZTrkEndPQ2=0;
09780   static TH1F* hZTrkEndPQ3=0;
09781   static TH1F* hZTrkEndPQ4=0;
09782 
09783   static TH1F* hdrTrkFidallPQ=0;
09784   static TH1F* hdzTrkFidallPQ=0;
09785   static TH1F* hdrTrkFidvtxPQ=0;
09786   static TH1F* hdzTrkFidvtxPQ=0;
09787   static TH1F* hdrTrkFidendPQ=0;
09788   static TH1F* hdzTrkFidendPQ=0;
09789   static TH1F* htraceTrkFidallPQ=0;
09790   static TH1F* htraceTrkFidvtxPQ=0;
09791   static TH1F* htraceTrkFidendPQ=0;
09792   
09793   static TH1F* hcosPrTrkVtxPQ=0;
09794   
09795   
09796   static TH1F* hPlaneEvtVtxPQ=0;
09797   static TH1F* hPlaneEvtBegPQ=0;
09798   static TH1F* hPlaneEvtEndPQ=0;
09799   static TH1F* hPlaneTrkBegvPQ=0;
09800   static TH1F* hPlaneTrkBeguPQ=0;
09801   static TH1F* hPlaneTrkEndvPQ=0;
09802   static TH1F* hPlaneTrkEnduPQ=0;
09803 
09804   static TH1F* hPlaneTrkVtxPQ=0;
09805   static TH1F* hPlaneTrkBegPQ=0;
09806   static TH1F* hPlaneTrkEndPQ=0;
09807 
09808   static TH1F* hPlaneTrkLenPQ=0;
09809   static TH1F* hPlaneTrkLenNoRwPQ=0;
09810   static TH1F* hPlaneTrkLenPQ1=0;
09811   static TH1F* hPlaneTrkLenPQ2=0;
09812   static TH1F* hPlaneTrkLenPQ3=0;
09813   static TH1F* hPlaneTrkLenPQ4=0;
09814   static TH1F* hPlaneTrkLenNotNMBCCPQ=0; 
09815 
09816   static TH1F* hnTrkPQ=0;
09817   static TH1F* hnTrkLikePQ=0;
09818   static TH1F* hTrknPlanePQ=0;
09819   static TH1F* hPlaneTrkNuPQ=0;
09820   static TH1F* hPlaneTrkNvPQ=0;
09821   static TH1F* hknn10TrkMeanPhEvtPQ=0;
09822   static TH1F* hknn40TrkPhFracEvtPQ=0;
09823   static TH1F* hnShwPQ=0;
09824   static TH1F* hnStripShwPQ=0;
09825   static TH1F* hnTrkNotNMBCCPQ=0;
09826   static TH1F* hPlaneTrkNuNotNMBCCPQ=0;
09827   static TH1F* hPlaneTrkNvNotNMBCCPQ=0;
09828   static TH1F* hknn10TrkMeanPhEvtNotNMBCCPQ=0;
09829   static TH1F* hknn40TrkPhFracEvtNotNMBCCPQ=0;
09830   static TH1F* hnShwNotNMBCCPQ=0;
09831   static TH1F* hnStripShwNotNMBCCPQ=0;
09832   
09833   //NQ
09834   static TH2F* hYvsXEvtVtxNQ=0;
09835   static TH2F* hYvsXEvtEndNQ=0;
09836   static TH2F* hYvsXEvtEndNQ1=0;
09837   static TH2F* hYvsXEvtEndNQ2=0;
09838   static TH2F* hYvsXEvtEndNQ3=0;
09839   static TH2F* hYvsXEvtEndNQ4=0;
09840   static TH2F* hYvsXEvtEndNQ0=0;
09841 
09842   static TH2F* hYvsXTrkVtxNQ=0;
09843   static TH2F* hYvsXTrkEndNQ=0;
09844   static TH2F* hYvsXTrkEndNQ1=0;
09845   static TH2F* hYvsXTrkEndNQ2=0;
09846   static TH2F* hYvsXTrkEndNQ3=0;
09847   static TH2F* hYvsXTrkEndNQ4=0;
09848   static TH2F* hYvsXTrkEndNQ0=0;
09849 
09850   static TH1F* hXEvtVtxNQ=0;
09851   static TH1F* hYEvtVtxNQ=0;
09852   static TH1F* hZEvtVtxNQ=0;
09853   static TH1F* hZEvtVtxNQ_CoarseBin=0;
09854   static TH1F* hREvtVtxNQ=0;
09855   static TH1F* hXEvtEndNQ=0;
09856   static TH1F* hYEvtEndNQ=0;
09857   static TH1F* hZEvtEndNQ=0;
09858   static TH1F* hZEvtEndNQ_CoarseBin=0;
09859   static TH1F* hREvtEndNQ=0;
09860 
09861   static TH1F* hXTrkVtxNQ=0;
09862   static TH1F* hYTrkVtxNQ=0;
09863   static TH1F* hZTrkVtxNQ=0;
09864   static TH1F* hZTrkVtxNQ_CoarseBin=0;
09865   static TH1F* hRTrkVtxNQ=0;
09866   static TH1F* hR2TrkVtxNQ=0;
09867   static TH1F* hXTrkEndNQ=0;
09868   static TH1F* hYTrkEndNQ=0;
09869   static TH1F* hZTrkEndNQ=0;
09870   static TH1F* hZTrkEndNQ_CoarseBin=0;
09871   static TH1F* hRTrkEndNQ=0;
09872   static TH1F* hR2TrkEndNQ=0;
09873 
09874   static TH1F* hZEvtEndNQ1=0;
09875   static TH1F* hZEvtEndNQ2=0;
09876   static TH1F* hZEvtEndNQ3=0;
09877   static TH1F* hZEvtEndNQ4=0;
09878 
09879   static TH1F* hZTrkEndNQ1=0;
09880   static TH1F* hZTrkEndNQ2=0;
09881   static TH1F* hZTrkEndNQ3=0;
09882   static TH1F* hZTrkEndNQ4=0;
09883 
09884   static TH1F* hdrTrkFidallNQ=0;
09885   static TH1F* hdzTrkFidallNQ=0;
09886   static TH1F* hdrTrkFidvtxNQ=0;
09887   static TH1F* hdzTrkFidvtxNQ=0;
09888   static TH1F* hdrTrkFidendNQ=0;
09889   static TH1F* hdzTrkFidendNQ=0;
09890   static TH1F* htraceTrkFidallNQ=0;
09891   static TH1F* htraceTrkFidvtxNQ=0;
09892   static TH1F* htraceTrkFidendNQ=0;
09893   
09894   static TH1F* hcosPrTrkVtxNQ=0;
09895   
09896   static TH1F* hPlaneEvtVtxNQ=0;
09897   static TH1F* hPlaneEvtBegNQ=0;
09898   static TH1F* hPlaneEvtEndNQ=0;
09899   static TH1F* hPlaneTrkBegvNQ=0;
09900   static TH1F* hPlaneTrkBeguNQ=0;
09901   static TH1F* hPlaneTrkEndvNQ=0;
09902   static TH1F* hPlaneTrkEnduNQ=0;
09903 
09904   static TH1F* hPlaneTrkVtxNQ=0;
09905   static TH1F* hPlaneTrkBegNQ=0;
09906   static TH1F* hPlaneTrkEndNQ=0;
09907  
09908   static TH1F* hPlaneTrkLenNQ=0;
09909   static TH1F* hPlaneTrkLenNotNMCCNQ=0; 
09910   static TH1F* hntrkNQ=0;
09911   static TH1F* htrknplaneNQ=0;
09912   static TH1F* hntrkLikeNQ=0;
09913   static TH1F* hplaneTrkNuNQ=0;
09914   static TH1F* hplaneTrkNvNQ=0;
09915   static TH1F* hknn10TrkMeanPhEvtNQ=0;
09916   static TH1F* hknn40TrkPhFracEvtNQ=0;
09917   static TH1F* hnshwNQ=0;
09918   static TH1F* hnstripShwNQ=0;
09919 
09920   if (!hYvsXEvtVtxPQ) {
09921     Int_t nYvsX60=60;
09922 
09923     //PQ
09924     hYvsXEvtVtxPQ=new TH2F
09925       ("hYvsXEvtVtxPQ","hYvsXEvtVtxPQ",
09926        nYvsX60,-4.3,4.3,nYvsX60,-4.3,4.3);
09927     hYvsXEvtVtxPQ->SetTitle("Y vs. X");
09928     hYvsXEvtVtxPQ->GetXaxis()->SetTitle("X (m)");
09929     hYvsXEvtVtxPQ->GetXaxis()->CenterTitle();
09930     hYvsXEvtVtxPQ->GetYaxis()->SetTitle("Y (m)");
09931     hYvsXEvtVtxPQ->GetYaxis()->CenterTitle();
09932 
09933     hYvsXEvtEndPQ=new TH2F
09934       ("hYvsXEvtEndPQ","hYvsXEvtEndPQ",nYvsX60,
09935        -4.3,4.3,nYvsX60,-4.3,4.3);
09936     hYvsXEvtEndPQ->SetTitle("Y vs. X");
09937     hYvsXEvtEndPQ->GetXaxis()->SetTitle("X (m)");
09938     hYvsXEvtEndPQ->GetXaxis()->CenterTitle();
09939     hYvsXEvtEndPQ->GetYaxis()->SetTitle("Y (m)");
09940     hYvsXEvtEndPQ->GetYaxis()->CenterTitle();
09941 
09942     hYvsXEvtEndPQ1=new TH2F
09943       ("hYvsXEvtEndPQ1","hYvsXEvtEndPQ1",nYvsX60,
09944        -4.3,4.3,nYvsX60,-4.3,4.3);
09945     hYvsXEvtEndPQ1->SetTitle("Y vs. X");
09946     hYvsXEvtEndPQ1->GetXaxis()->SetTitle("X (m)");
09947     hYvsXEvtEndPQ1->GetXaxis()->CenterTitle();
09948     hYvsXEvtEndPQ1->GetYaxis()->SetTitle("Y (m)");
09949     hYvsXEvtEndPQ1->GetYaxis()->CenterTitle();
09950 
09951     hYvsXEvtEndPQ2=new TH2F
09952       ("hYvsXEvtEndPQ2","hYvsXEvtEndPQ2",nYvsX60,
09953        -4.3,4.3,nYvsX60,-4.3,4.3);
09954     hYvsXEvtEndPQ2->SetTitle("Y vs. X");
09955     hYvsXEvtEndPQ2->GetXaxis()->SetTitle("X (m)");
09956     hYvsXEvtEndPQ2->GetXaxis()->CenterTitle();
09957     hYvsXEvtEndPQ2->GetYaxis()->SetTitle("Y (m)");
09958     hYvsXEvtEndPQ2->GetYaxis()->CenterTitle();
09959 
09960     hYvsXEvtEndPQ3=new TH2F
09961       ("hYvsXEvtEndPQ3","hYvsXEvtEndPQ3",nYvsX60,
09962        -4.3,4.3,nYvsX60,-4.3,4.3);
09963     hYvsXEvtEndPQ3->SetTitle("Y vs. X");
09964     hYvsXEvtEndPQ3->GetXaxis()->SetTitle("X (m)");
09965     hYvsXEvtEndPQ3->GetXaxis()->CenterTitle();
09966     hYvsXEvtEndPQ3->GetYaxis()->SetTitle("Y (m)");
09967     hYvsXEvtEndPQ3->GetYaxis()->CenterTitle();
09968 
09969     hYvsXEvtEndPQ4=new TH2F
09970       ("hYvsXEvtEndPQ4","hYvsXEvtEndPQ4",nYvsX60,
09971        -4.3,4.3,nYvsX60,-4.3,4.3);
09972     hYvsXEvtEndPQ4->SetTitle("Y vs. X");
09973     hYvsXEvtEndPQ4->GetXaxis()->SetTitle("X (m)");
09974     hYvsXEvtEndPQ4->GetXaxis()->CenterTitle();
09975     hYvsXEvtEndPQ4->GetYaxis()->SetTitle("Y (m)");
09976     hYvsXEvtEndPQ4->GetYaxis()->CenterTitle();
09977 
09978     //this is for evts with no pittFlag
09979     hYvsXEvtEndPQ0=new TH2F
09980       ("hYvsXEvtEndPQ0","hYvsXEvtEndPQ0",nYvsX60,
09981        -4.3,4.3,nYvsX60,-4.3,4.3);
09982     hYvsXEvtEndPQ0->SetTitle("Y vs. X");
09983     hYvsXEvtEndPQ0->GetXaxis()->SetTitle("X (m)");
09984     hYvsXEvtEndPQ0->GetXaxis()->CenterTitle();
09985     hYvsXEvtEndPQ0->GetYaxis()->SetTitle("Y (m)");
09986     hYvsXEvtEndPQ0->GetYaxis()->CenterTitle();
09987 
09988 
09989 
09990     hYvsXTrkVtxPQ=new TH2F
09991       ("hYvsXTrkVtxPQ","hYvsXTrkVtxPQ",
09992        nYvsX60,-4.3,4.3,nYvsX60,-4.3,4.3);
09993     hYvsXTrkVtxPQ->SetTitle("Y vs. X");
09994     hYvsXTrkVtxPQ->GetXaxis()->SetTitle("X (m)");
09995     hYvsXTrkVtxPQ->GetXaxis()->CenterTitle();
09996     hYvsXTrkVtxPQ->GetYaxis()->SetTitle("Y (m)");
09997     hYvsXTrkVtxPQ->GetYaxis()->CenterTitle();
09998 
09999     hYvsXTrkEndPQ=new TH2F
10000       ("hYvsXTrkEndPQ","hYvsXTrkEndPQ",nYvsX60,
10001        -4.3,4.3,nYvsX60,-4.3,4.3);
10002     hYvsXTrkEndPQ->SetTitle("Y vs. X");
10003     hYvsXTrkEndPQ->GetXaxis()->SetTitle("X (m)");
10004     hYvsXTrkEndPQ->GetXaxis()->CenterTitle();
10005     hYvsXTrkEndPQ->GetYaxis()->SetTitle("Y (m)");
10006     hYvsXTrkEndPQ->GetYaxis()->CenterTitle();
10007 
10008     hYvsXTrkEndPQ1=new TH2F
10009       ("hYvsXTrkEndPQ1","hYvsXTrkEndPQ1",nYvsX60,
10010        -4.3,4.3,nYvsX60,-4.3,4.3);
10011     hYvsXTrkEndPQ1->SetTitle("Y vs. X");
10012     hYvsXTrkEndPQ1->GetXaxis()->SetTitle("X (m)");
10013     hYvsXTrkEndPQ1->GetXaxis()->CenterTitle();
10014     hYvsXTrkEndPQ1->GetYaxis()->SetTitle("Y (m)");
10015     hYvsXTrkEndPQ1->GetYaxis()->CenterTitle();
10016 
10017     hYvsXTrkEndPQ2=new TH2F
10018       ("hYvsXTrkEndPQ2","hYvsXTrkEndPQ2",nYvsX60,
10019        -4.3,4.3,nYvsX60,-4.3,4.3);
10020     hYvsXTrkEndPQ2->SetTitle("Y vs. X");
10021     hYvsXTrkEndPQ2->GetXaxis()->SetTitle("X (m)");
10022     hYvsXTrkEndPQ2->GetXaxis()->CenterTitle();
10023     hYvsXTrkEndPQ2->GetYaxis()->SetTitle("Y (m)");
10024     hYvsXTrkEndPQ2->GetYaxis()->CenterTitle();
10025 
10026     hYvsXTrkEndPQ3=new TH2F
10027       ("hYvsXTrkEndPQ3","hYvsXTrkEndPQ3",nYvsX60,
10028        -4.3,4.3,nYvsX60,-4.3,4.3);
10029     hYvsXTrkEndPQ3->SetTitle("Y vs. X");
10030     hYvsXTrkEndPQ3->GetXaxis()->SetTitle("X (m)");
10031     hYvsXTrkEndPQ3->GetXaxis()->CenterTitle();
10032     hYvsXTrkEndPQ3->GetYaxis()->SetTitle("Y (m)");
10033     hYvsXTrkEndPQ3->GetYaxis()->CenterTitle();
10034 
10035     hYvsXTrkEndPQ4=new TH2F
10036       ("hYvsXTrkEndPQ4","hYvsXTrkEndPQ4",nYvsX60,
10037        -4.3,4.3,nYvsX60,-4.3,4.3);
10038     hYvsXTrkEndPQ4->SetTitle("Y vs. X");
10039     hYvsXTrkEndPQ4->GetXaxis()->SetTitle("X (m)");
10040     hYvsXTrkEndPQ4->GetXaxis()->CenterTitle();
10041     hYvsXTrkEndPQ4->GetYaxis()->SetTitle("Y (m)");
10042     hYvsXTrkEndPQ4->GetYaxis()->CenterTitle();
10043 
10044     //this is for evts with no pittFlag
10045     hYvsXTrkEndPQ0=new TH2F
10046       ("hYvsXTrkEndPQ0","hYvsXTrkEndPQ0",nYvsX60,
10047        -4.3,4.3,nYvsX60,-4.3,4.3);
10048     hYvsXTrkEndPQ0->SetTitle("Y vs. X");
10049     hYvsXTrkEndPQ0->GetXaxis()->SetTitle("X (m)");
10050     hYvsXTrkEndPQ0->GetXaxis()->CenterTitle();
10051     hYvsXTrkEndPQ0->GetYaxis()->SetTitle("Y (m)");
10052     hYvsXTrkEndPQ0->GetYaxis()->CenterTitle();
10053 
10054 
10055     hXEvtVtxPQ=new TH1F("hXEvtVtxPQ","hXEvtVtxPQ",
10056                         1000,-5,5);
10057     hXEvtVtxPQ->GetXaxis()->SetTitle("EvtVtx X Position (m)");
10058     hXEvtVtxPQ->GetXaxis()->CenterTitle();
10059     hXEvtVtxPQ->GetYaxis()->SetTitle("");
10060     hXEvtVtxPQ->GetYaxis()->CenterTitle();
10061     hXEvtVtxPQ->SetLineWidth(2);
10062     //hXEvtVtxPQ->SetBit(TH1::kCanRebin);
10063 
10064     hYEvtVtxPQ=new TH1F("hYEvtVtxPQ","hYEvtVtxPQ",
10065                         1000,-5,5);
10066     hYEvtVtxPQ->GetXaxis()->SetTitle("EvtVtx Y Position (m)");
10067     hYEvtVtxPQ->GetXaxis()->CenterTitle();
10068     hYEvtVtxPQ->GetYaxis()->SetTitle("");
10069     hYEvtVtxPQ->GetYaxis()->CenterTitle();
10070     hYEvtVtxPQ->SetLineWidth(2);
10071     //hYEvtVtxPQ->SetBit(TH1::kCanRebin);
10072 
10073     hZEvtVtxPQ=new TH1F("hZEvtVtxPQ","hZEvtVtxPQ",
10074                         4000,-1,39);
10075     hZEvtVtxPQ->GetXaxis()->SetTitle("EvtVtx Z Position (m)");
10076     hZEvtVtxPQ->GetXaxis()->CenterTitle();
10077     hZEvtVtxPQ->GetYaxis()->SetTitle("");
10078     hZEvtVtxPQ->GetYaxis()->CenterTitle();
10079     hZEvtVtxPQ->SetLineWidth(2);
10080     //hZEvtVtxPQ->SetBit(TH1::kCanRebin);
10081 
10082     hZEvtVtxPQ_CoarseBin=new TH1F("hZEvtVtxPQ_CoarseBin","hZEvtVtxPQ_CoarseBin",nbinsZ,zbins);
10083     hZEvtVtxPQ_CoarseBin->GetXaxis()->SetTitle("EvtVtx Z Position (m)");
10084     hZEvtVtxPQ_CoarseBin->GetXaxis()->CenterTitle();
10085     hZEvtVtxPQ_CoarseBin->GetYaxis()->SetTitle("");
10086     hZEvtVtxPQ_CoarseBin->GetYaxis()->CenterTitle();
10087     hZEvtVtxPQ_CoarseBin->SetLineWidth(2);
10088     //hZEvtVtxPQ_CoarseBin->SetBit(TH1::kCanRebin);
10089 
10090 
10091     hREvtVtxPQ=new TH1F("hREvtVtxPQ","hREvtVtxPQ",
10092                         700,-2,5);
10093     hREvtVtxPQ->GetXaxis()->SetTitle("EvtVtx Radius (m)");
10094     hREvtVtxPQ->GetXaxis()->CenterTitle();
10095     hREvtVtxPQ->GetYaxis()->SetTitle("");
10096     hREvtVtxPQ->GetYaxis()->CenterTitle();
10097     hREvtVtxPQ->SetLineWidth(2);
10098     //hREvtVtxPQ->SetBit(TH1::kCanRebin);
10099 
10100     hXEvtEndPQ=new TH1F("hXEvtEndPQ","hXEvtEndPQ",
10101                         1000,-5,5);
10102     hXEvtEndPQ->GetXaxis()->SetTitle("EvtEnd X Position (m)");
10103     hXEvtEndPQ->GetXaxis()->CenterTitle();
10104     hXEvtEndPQ->GetYaxis()->SetTitle("");
10105     hXEvtEndPQ->GetYaxis()->CenterTitle();
10106     hXEvtEndPQ->SetLineWidth(2);
10107     //hXEvtEndPQ->SetBit(TH1::kCanRebin);
10108 
10109     hYEvtEndPQ=new TH1F("hYEvtEndPQ","hYEvtEndPQ",
10110                         1000,-5,5);
10111     hYEvtEndPQ->GetXaxis()->SetTitle("EvtEnd Y Position (m)");
10112     hYEvtEndPQ->GetXaxis()->CenterTitle();
10113     hYEvtEndPQ->GetYaxis()->SetTitle("");
10114     hYEvtEndPQ->GetYaxis()->CenterTitle();
10115     hYEvtEndPQ->SetLineWidth(2);
10116     //hYEvtEndPQ->SetBit(TH1::kCanRebin);
10117 
10118     hZEvtEndPQ=new TH1F("hZEvtEndPQ","hZEvtEndPQ",
10119                         4000,-1,39);
10120     hZEvtEndPQ->GetXaxis()->SetTitle("EvtEnd Z Position (m)");
10121     hZEvtEndPQ->GetXaxis()->CenterTitle();
10122     hZEvtEndPQ->GetYaxis()->SetTitle("");
10123     hZEvtEndPQ->GetYaxis()->CenterTitle();
10124     hZEvtEndPQ->SetLineWidth(2);
10125     //hZEvtEndPQ->SetBit(TH1::kCanRebin);
10126 
10127     hZEvtEndPQ_CoarseBin=new TH1F("hZEvtEndPQ_CoarseBin","hZEvtEndPQ_CoarseBin",nbinsZ, zbins);
10128     hZEvtEndPQ_CoarseBin->GetXaxis()->SetTitle("EvtEnd Z Position (m)");
10129     hZEvtEndPQ_CoarseBin->GetXaxis()->CenterTitle();
10130     hZEvtEndPQ_CoarseBin->GetYaxis()->SetTitle("");
10131     hZEvtEndPQ_CoarseBin->GetYaxis()->CenterTitle();
10132     hZEvtEndPQ_CoarseBin->SetLineWidth(2);
10133     //hZEvtEndPQ_CoarseBin->SetBit(TH1::kCanRebin);
10134 
10135 
10136     hREvtEndPQ=new TH1F("hREvtEndPQ","hREvtEndPQ",
10137                         700,-2,5);
10138     hREvtEndPQ->GetXaxis()->SetTitle("EvtVtx Radius (m)");
10139     hREvtEndPQ->GetXaxis()->CenterTitle();
10140     hREvtEndPQ->GetYaxis()->SetTitle("");
10141     hREvtEndPQ->GetYaxis()->CenterTitle();
10142     hREvtEndPQ->SetLineWidth(2);
10143     //hREvtEndPQ->SetBit(TH1::kCanRebin);
10144 
10145 
10146 
10147     hXTrkVtxPQ=new TH1F("hXTrkVtxPQ","hXTrkVtxPQ",
10148                         1000,-5,5);
10149     hXTrkVtxPQ->GetXaxis()->SetTitle("TrkVtx X Position (m)");
10150     hXTrkVtxPQ->GetXaxis()->CenterTitle();
10151     hXTrkVtxPQ->GetYaxis()->SetTitle("");
10152     hXTrkVtxPQ->GetYaxis()->CenterTitle();
10153     hXTrkVtxPQ->SetLineWidth(2);
10154     //hXTrkVtxPQ->SetBit(TH1::kCanRebin);
10155 
10156     hYTrkVtxPQ=new TH1F("hYTrkVtxPQ","hYTrkVtxPQ",
10157                         1000,-5,5);
10158     hYTrkVtxPQ->GetXaxis()->SetTitle("TrkVtx Y Position (m)");
10159     hYTrkVtxPQ->GetXaxis()->CenterTitle();
10160     hYTrkVtxPQ->GetYaxis()->SetTitle("");
10161     hYTrkVtxPQ->GetYaxis()->CenterTitle();
10162     hYTrkVtxPQ->SetLineWidth(2);
10163     //hYTrkVtxPQ->SetBit(TH1::kCanRebin);
10164 
10165     hZTrkVtxPQ=new TH1F("hZTrkVtxPQ","hZTrkVtxPQ",
10166                         4000,-1,39);
10167     hZTrkVtxPQ->GetXaxis()->SetTitle("TrkVtx Z Position (m)");
10168     hZTrkVtxPQ->GetXaxis()->CenterTitle();
10169     hZTrkVtxPQ->GetYaxis()->SetTitle("");
10170     hZTrkVtxPQ->GetYaxis()->CenterTitle();
10171     hZTrkVtxPQ->SetLineWidth(2);
10172     //hZTrkVtxPQ->SetBit(TH1::kCanRebin);
10173 
10174     hXTrkVtxNoRwPQ=new TH1F("hXTrkVtxNoRwPQ","hXTrkVtxNoRwPQ",
10175                         1000,-5,5);
10176     hXTrkVtxNoRwPQ->GetXaxis()->SetTitle("TrkVtx X Position (m)");
10177     hXTrkVtxNoRwPQ->GetXaxis()->CenterTitle();
10178     hXTrkVtxNoRwPQ->GetYaxis()->SetTitle("");
10179     hXTrkVtxNoRwPQ->GetYaxis()->CenterTitle();
10180     hXTrkVtxNoRwPQ->SetLineWidth(2);
10181     //hXTrkVtxNoRwPQ->SetBit(TH1::kCanRebin);
10182 
10183     hYTrkVtxNoRwPQ=new TH1F("hYTrkVtxNoRwPQ","hYTrkVtxNoRwPQ",
10184                         1000,-5,5);
10185     hYTrkVtxNoRwPQ->GetXaxis()->SetTitle("TrkVtx Y Position (m)");
10186     hYTrkVtxNoRwPQ->GetXaxis()->CenterTitle();
10187     hYTrkVtxNoRwPQ->GetYaxis()->SetTitle("");
10188     hYTrkVtxNoRwPQ->GetYaxis()->CenterTitle();
10189     hYTrkVtxNoRwPQ->SetLineWidth(2);
10190     //hYTrkVtxNoRwPQ->SetBit(TH1::kCanRebin);
10191 
10192     hZTrkVtxNoRwPQ=new TH1F("hZTrkVtxNoRwPQ","hZTrkVtxNoRwPQ",
10193                         4000,-1,39);
10194     hZTrkVtxNoRwPQ->GetXaxis()->SetTitle("TrkVtx Z Position (m)");
10195     hZTrkVtxNoRwPQ->GetXaxis()->CenterTitle();
10196     hZTrkVtxNoRwPQ->GetYaxis()->SetTitle("");
10197     hZTrkVtxNoRwPQ->GetYaxis()->CenterTitle();
10198     hZTrkVtxNoRwPQ->SetLineWidth(2);
10199     //hZTrkVtxNoRwPQ->SetBit(TH1::kCanRebin);
10200 
10201     hZTrkVtxPQ_CoarseBin=new TH1F("hZTrkVtxPQ_CoarseBin","hZTrkVtxPQ_CoarseBin",
10202                                   nbinsZ,zbins);
10203     hZTrkVtxPQ_CoarseBin->GetXaxis()->SetTitle("TrkVtx Z Position (m)");
10204     hZTrkVtxPQ_CoarseBin->GetXaxis()->CenterTitle();
10205     hZTrkVtxPQ_CoarseBin->GetYaxis()->SetTitle("");
10206     hZTrkVtxPQ_CoarseBin->GetYaxis()->CenterTitle();
10207     hZTrkVtxPQ_CoarseBin->SetLineWidth(2);
10208     //hZTrkVtxPQ_CoarseBin->SetBit(TH1::kCanRebin);
10209 
10210 
10211     hRTrkVtxPQ=new TH1F("hRTrkVtxPQ","hRTrkVtxPQ",
10212                         700,-2,5);
10213     hRTrkVtxPQ->GetXaxis()->SetTitle("TrkVtx Radius (m)");
10214     hRTrkVtxPQ->GetXaxis()->CenterTitle();
10215     hRTrkVtxPQ->GetYaxis()->SetTitle("");
10216     hRTrkVtxPQ->GetYaxis()->CenterTitle();
10217     hRTrkVtxPQ->SetLineWidth(2);
10218     //hRTrkVtxPQ->SetBit(TH1::kCanRebin);
10219 
10220     hR2TrkVtxPQ=new TH1F("hR2TrkVtxPQ","hR2TrkVtxPQ",
10221                         700,-2,25);
10222     hR2TrkVtxPQ->GetXaxis()->SetTitle("TrkVtx R^{2} (m^{2})");
10223     hR2TrkVtxPQ->GetXaxis()->CenterTitle();
10224     hR2TrkVtxPQ->GetYaxis()->SetTitle("");
10225     hR2TrkVtxPQ->GetYaxis()->CenterTitle();
10226     hR2TrkVtxPQ->SetLineWidth(2);
10227     //hR2TrkVtxPQ->SetBit(TH1::kCanRebin);
10228 
10229     hRTrkVtxNoRwPQ=new TH1F("hRTrkVtxNoRwPQ","hRTrkVtxNoRwPQ",
10230                         700,-2,5);
10231     hRTrkVtxNoRwPQ->GetXaxis()->SetTitle("TrkVtx Radius (m)");
10232     hRTrkVtxNoRwPQ->GetXaxis()->CenterTitle();
10233     hRTrkVtxNoRwPQ->GetYaxis()->SetTitle("");
10234     hRTrkVtxNoRwPQ->GetYaxis()->CenterTitle();
10235     hRTrkVtxNoRwPQ->SetLineWidth(2);
10236     //hRTrkVtxNoRwPQ->SetBit(TH1::kCanRebin);
10237 
10238     hXTrkEndPQ=new TH1F("hXTrkEndPQ","hXTrkEndPQ",
10239                         1000,-5,5);
10240     hXTrkEndPQ->GetXaxis()->SetTitle("TrkEnd X Position (m)");
10241     hXTrkEndPQ->GetXaxis()->CenterTitle();
10242     hXTrkEndPQ->GetYaxis()->SetTitle("");
10243     hXTrkEndPQ->GetYaxis()->CenterTitle();
10244     hXTrkEndPQ->SetLineWidth(2);
10245     //hXTrkEndPQ->SetBit(TH1::kCanRebin);
10246 
10247     hYTrkEndPQ=new TH1F("hYTrkEndPQ","hYTrkEndPQ",
10248                         1000,-5,5);
10249     hYTrkEndPQ->GetXaxis()->SetTitle("TrkEnd Y Position (m)");
10250     hYTrkEndPQ->GetXaxis()->CenterTitle();
10251     hYTrkEndPQ->GetYaxis()->SetTitle("");
10252     hYTrkEndPQ->GetYaxis()->CenterTitle();
10253     hYTrkEndPQ->SetLineWidth(2);
10254     //hYTrkEndPQ->SetBit(TH1::kCanRebin);
10255 
10256     hZTrkEndPQ=new TH1F("hZTrkEndPQ","hZTrkEndPQ",
10257                         4000,-1,39);
10258     hZTrkEndPQ->GetXaxis()->SetTitle("TrkEnd Z Position (m)");
10259     hZTrkEndPQ->GetXaxis()->CenterTitle();
10260     hZTrkEndPQ->GetYaxis()->SetTitle("");
10261     hZTrkEndPQ->GetYaxis()->CenterTitle();
10262     hZTrkEndPQ->SetLineWidth(2);
10263     //hZTrkEndPQ->SetBit(TH1::kCanRebin);
10264 
10265     hZTrkEndPQ_CoarseBin=new TH1F("hZTrkEndPQ_CoarseBin","hZTrkEndPQ_CoarseBin",
10266                                   nbinsZ,zbins);
10267     hZTrkEndPQ_CoarseBin->GetXaxis()->SetTitle("TrkEnd Z Position (m)");
10268     hZTrkEndPQ_CoarseBin->GetXaxis()->CenterTitle();
10269     hZTrkEndPQ_CoarseBin->GetYaxis()->SetTitle("");
10270     hZTrkEndPQ_CoarseBin->GetYaxis()->CenterTitle();
10271     hZTrkEndPQ_CoarseBin->SetLineWidth(2);
10272     //hZTrkEndPQ_CoarseBin->SetBit(TH1::kCanRebin);
10273 
10274     hXTrkEndNoRwPQ=new TH1F("hXTrkEndNoRwPQ","hXTrkEndNoRwPQ",
10275                         1000,-5,5);
10276     hXTrkEndNoRwPQ->GetXaxis()->SetTitle("TrkEnd X Position (m)");
10277     hXTrkEndNoRwPQ->GetXaxis()->CenterTitle();
10278     hXTrkEndNoRwPQ->GetYaxis()->SetTitle("");
10279     hXTrkEndNoRwPQ->GetYaxis()->CenterTitle();
10280     hXTrkEndNoRwPQ->SetLineWidth(2);
10281     //hXTrkEndNoRwPQ->SetBit(TH1::kCanRebin);
10282 
10283     hYTrkEndNoRwPQ=new TH1F("hYTrkEndNoRwPQ","hYTrkEndNoRwPQ",
10284                         1000,-5,5);
10285     hYTrkEndNoRwPQ->GetXaxis()->SetTitle("TrkEnd Y Position (m)");
10286     hYTrkEndNoRwPQ->GetXaxis()->CenterTitle();
10287     hYTrkEndNoRwPQ->GetYaxis()->SetTitle("");
10288     hYTrkEndNoRwPQ->GetYaxis()->CenterTitle();
10289     hYTrkEndNoRwPQ->SetLineWidth(2);
10290     //hYTrkEndNoRwPQ->SetBit(TH1::kCanRebin);
10291 
10292     hZTrkEndNoRwPQ=new TH1F("hZTrkEndNoRwPQ","hZTrkEndNoRwPQ",
10293                         4000,-1,39);
10294     hZTrkEndNoRwPQ->GetXaxis()->SetTitle("TrkEnd Z Position (m)");
10295     hZTrkEndNoRwPQ->GetXaxis()->CenterTitle();
10296     hZTrkEndNoRwPQ->GetYaxis()->SetTitle("");
10297     hZTrkEndNoRwPQ->GetYaxis()->CenterTitle();
10298     hZTrkEndNoRwPQ->SetLineWidth(2);
10299     //hZTrkEndNoRwPQ->SetBit(TH1::kCanRebin);
10300 
10301     hRTrkEndPQ=new TH1F("hRTrkEndPQ","hRTrkEndPQ",
10302                         700,-2,5);
10303     hRTrkEndPQ->GetXaxis()->SetTitle("TrkVtx Radius (m)");
10304     hRTrkEndPQ->GetXaxis()->CenterTitle();
10305     hRTrkEndPQ->GetYaxis()->SetTitle("");
10306     hRTrkEndPQ->GetYaxis()->CenterTitle();
10307     hRTrkEndPQ->SetLineWidth(2);
10308     //hRTrkEndPQ->SetBit(TH1::kCanRebin);
10309 
10310     hR2TrkEndPQ=new TH1F("hR2TrkEndPQ","hR2TrkEndPQ",
10311                         700,-2,25);
10312     hR2TrkEndPQ->GetXaxis()->SetTitle("TrkVtx R^{2} (m^{2})");
10313     hR2TrkEndPQ->GetXaxis()->CenterTitle();
10314     hR2TrkEndPQ->GetYaxis()->SetTitle("");
10315     hR2TrkEndPQ->GetYaxis()->CenterTitle();
10316     hR2TrkEndPQ->SetLineWidth(2);
10317     //hR2TrkEndPQ->SetBit(TH1::kCanRebin);
10318 
10319 
10320     hRTrkEndNoRwPQ=new TH1F("hRTrkEndNoRwPQ","hRTrkEndNoRwPQ",
10321                         700,-2,5);
10322     hRTrkEndNoRwPQ->GetXaxis()->SetTitle("TrkVtx Radius (m)");
10323     hRTrkEndNoRwPQ->GetXaxis()->CenterTitle();
10324     hRTrkEndNoRwPQ->GetYaxis()->SetTitle("");
10325     hRTrkEndNoRwPQ->GetYaxis()->CenterTitle();
10326     hRTrkEndNoRwPQ->SetLineWidth(2);
10327     //hRTrkEndNoRwPQ->SetBit(TH1::kCanRebin);
10328 
10329     hZEvtEndPQ1=new TH1F("hZEvtEndPQ1","hZEvtEndPQ1",4000,-1,39);
10330     hZEvtEndPQ1->GetXaxis()->SetTitle("Z (m)");
10331     hZEvtEndPQ1->GetXaxis()->CenterTitle();
10332     hZEvtEndPQ1->GetYaxis()->SetTitle("");
10333     hZEvtEndPQ1->GetYaxis()->CenterTitle();
10334     //hZEvtEndPQ1->SetBit(TH1::kCanRebin);
10335 
10336     hZEvtEndPQ2=new TH1F("hZEvtEndPQ2","hZEvtEndPQ2",4000,-1,39);
10337     hZEvtEndPQ2->GetXaxis()->SetTitle("Z (m)");
10338     hZEvtEndPQ2->GetXaxis()->CenterTitle();
10339     hZEvtEndPQ2->GetYaxis()->SetTitle("");
10340     hZEvtEndPQ2->GetYaxis()->CenterTitle();
10341     //hZEvtEndPQ2->SetBit(TH1::kCanRebin);
10342 
10343     hZEvtEndPQ3=new TH1F("hZEvtEndPQ3","hZEvtEndPQ3",4000,-1,39);
10344     hZEvtEndPQ3->GetXaxis()->SetTitle("Z (m)");
10345     hZEvtEndPQ3->GetXaxis()->CenterTitle();
10346     hZEvtEndPQ3->GetYaxis()->SetTitle("");
10347     hZEvtEndPQ3->GetYaxis()->CenterTitle();
10348     //hZEvtEndPQ3->SetBit(TH1::kCanRebin);
10349 
10350     hZEvtEndPQ4=new TH1F("hZEvtEndPQ4","hZEvtEndPQ4",4000,-1,39);
10351     hZEvtEndPQ4->GetXaxis()->SetTitle("Z (m)");
10352     hZEvtEndPQ4->GetXaxis()->CenterTitle();
10353     hZEvtEndPQ4->GetYaxis()->SetTitle("");
10354     hZEvtEndPQ4->GetYaxis()->CenterTitle();
10355     //hZEvtEndPQ4->SetBit(TH1::kCanRebin);
10356 
10357 
10358     hZTrkEndPQ1=new TH1F("hZTrkEndPQ1","hZTrkEndPQ1",4000,-1,39);
10359     hZTrkEndPQ1->GetXaxis()->SetTitle("Z (m)");
10360     hZTrkEndPQ1->GetXaxis()->CenterTitle();
10361     hZTrkEndPQ1->GetYaxis()->SetTitle("");
10362     hZTrkEndPQ1->GetYaxis()->CenterTitle();
10363     //hZTrkEndPQ1->SetBit(TH1::kCanRebin);
10364 
10365     hZTrkEndPQ2=new TH1F("hZTrkEndPQ2","hZTrkEndPQ2",4000,-1,39);
10366     hZTrkEndPQ2->GetXaxis()->SetTitle("Z (m)");
10367     hZTrkEndPQ2->GetXaxis()->CenterTitle();
10368     hZTrkEndPQ2->GetYaxis()->SetTitle("");
10369     hZTrkEndPQ2->GetYaxis()->CenterTitle();
10370     //hZTrkEndPQ2->SetBit(TH1::kCanRebin);
10371 
10372     hZTrkEndPQ3=new TH1F("hZTrkEndPQ3","hZTrkEndPQ3",4000,-1,39);
10373     hZTrkEndPQ3->GetXaxis()->SetTitle("Z (m)");
10374     hZTrkEndPQ3->GetXaxis()->CenterTitle();
10375     hZTrkEndPQ3->GetYaxis()->SetTitle("");
10376     hZTrkEndPQ3->GetYaxis()->CenterTitle();
10377     //hZTrkEndPQ3->SetBit(TH1::kCanRebin);
10378 
10379     hZTrkEndPQ4=new TH1F("hZTrkEndPQ4","hZTrkEndPQ4",4000,-1,39);
10380     hZTrkEndPQ4->GetXaxis()->SetTitle("Z (m)");
10381     hZTrkEndPQ4->GetXaxis()->CenterTitle();
10382     hZTrkEndPQ4->GetYaxis()->SetTitle("");
10383     hZTrkEndPQ4->GetYaxis()->CenterTitle();
10384     //hZTrkEndPQ4->SetBit(TH1::kCanRebin);
10385 
10386 
10387 
10388     hdrTrkFidallPQ=new TH1F("hdrTrkFidallPQ","hdrTrkFidallPQ",
10389                             1000,-1,9);
10390     hdrTrkFidallPQ->GetXaxis()->SetTitle("trk.fidall.dr (m)");
10391     hdrTrkFidallPQ->GetXaxis()->CenterTitle();
10392     hdrTrkFidallPQ->GetYaxis()->SetTitle("");
10393     hdrTrkFidallPQ->GetYaxis()->CenterTitle();
10394     hdrTrkFidallPQ->SetLineWidth(2);
10395     //hdrTrkFidallPQ->SetBit(TH1::kCanRebin);
10396 
10397     hdzTrkFidallPQ=new TH1F("hdzTrkFidallPQ","hdzTrkFidallPQ",
10398                             3600,-2,34);
10399     hdzTrkFidallPQ->GetXaxis()->SetTitle("trk.fidall.dz (m)");
10400     hdzTrkFidallPQ->GetXaxis()->CenterTitle();
10401     hdzTrkFidallPQ->GetYaxis()->SetTitle("");
10402     hdzTrkFidallPQ->GetYaxis()->CenterTitle();
10403     hdzTrkFidallPQ->SetLineWidth(2);
10404     //hdzTrkFidallPQ->SetBit(TH1::kCanRebin);
10405 
10406     hdrTrkFidvtxPQ=new TH1F("hdrTrkFidvtxPQ","hdrTrkFidvtxPQ",
10407                             1000,-1,9);
10408     hdrTrkFidvtxPQ->GetXaxis()->SetTitle("trk.fidvtx.dr (m)");
10409     hdrTrkFidvtxPQ->GetXaxis()->CenterTitle();
10410     hdrTrkFidvtxPQ->GetYaxis()->SetTitle("");
10411     hdrTrkFidvtxPQ->GetYaxis()->CenterTitle();
10412     hdrTrkFidvtxPQ->SetLineWidth(2);
10413     //hdrTrkFidvtxPQ->SetBit(TH1::kCanRebin);
10414 
10415     hdzTrkFidvtxPQ=new TH1F("hdzTrkFidvtxPQ","hdzTrkFidvtxPQ",
10416                             3600,-2,34);
10417     hdzTrkFidvtxPQ->GetXaxis()->SetTitle("trk.fidvtx.dz (m)");
10418     hdzTrkFidvtxPQ->GetXaxis()->CenterTitle();
10419     hdzTrkFidvtxPQ->GetYaxis()->SetTitle("");
10420     hdzTrkFidvtxPQ->GetYaxis()->CenterTitle();
10421     hdzTrkFidvtxPQ->SetLineWidth(2);
10422     //hdzTrkFidvtxPQ->SetBit(TH1::kCanRebin);
10423 
10424     hdrTrkFidendPQ=new TH1F("hdrTrkFidendPQ","hdrTrkFidendPQ",
10425                             1000,-1,9);
10426     hdrTrkFidendPQ->GetXaxis()->SetTitle("trk.fidend.dr (m)");
10427     hdrTrkFidendPQ->GetXaxis()->CenterTitle();
10428     hdrTrkFidendPQ->GetYaxis()->SetTitle("");
10429     hdrTrkFidendPQ->GetYaxis()->CenterTitle();
10430     hdrTrkFidendPQ->SetLineWidth(2);
10431     //hdrTrkFidendPQ->SetBit(TH1::kCanRebin);
10432 
10433     hdzTrkFidendPQ=new TH1F("hdzTrkFidendPQ","hdzTrkFidendPQ",
10434                             3600,-2,34);
10435     hdzTrkFidendPQ->GetXaxis()->SetTitle("trk.fidend.dz (m)");
10436     hdzTrkFidendPQ->GetXaxis()->CenterTitle();
10437     hdzTrkFidendPQ->GetYaxis()->SetTitle("");
10438     hdzTrkFidendPQ->GetYaxis()->CenterTitle();
10439     hdzTrkFidendPQ->SetLineWidth(2);
10440     //hdzTrkFidendPQ->SetBit(TH1::kCanRebin);
10441 
10442     // Trace track variables
10443     htraceTrkFidallPQ = CreateHist("htraceTrkFidallPQ", "htraceTrkFidallPQ", 202, -1, 100, "trk.fidall.trace (m)");
10444     htraceTrkFidvtxPQ = CreateHist("htraceTrkFidvtxPQ", "htraceTrkFidvtxPQ", 202, -1, 100, "trk.fidvtx.trace (m)");
10445     htraceTrkFidendPQ = CreateHist("htraceTrkFidendPQ", "htraceTrkFidendPQ", 202, -1, 100, "trk.fidend.trace (m)");
10446     
10447     hcosPrTrkVtxPQ = CreateHist("hcosPrTrkVtxPQ", "hcosPrTrkVtxPQ", 202, -1, 1, "Cos of angle between P_r and #theta");
10448     
10449 
10450 
10451     hPlaneEvtVtxPQ=new TH1F("hPlaneEvtVtxPQ","hPlaneEvtVtxPQ",
10452                             500,-10,490);
10453     hPlaneEvtVtxPQ->GetXaxis()->SetTitle("Plane");
10454     hPlaneEvtVtxPQ->GetXaxis()->CenterTitle();
10455     hPlaneEvtVtxPQ->GetYaxis()->SetTitle("");
10456     hPlaneEvtVtxPQ->GetYaxis()->CenterTitle();
10457     hPlaneEvtVtxPQ->SetLineWidth(2);
10458     //hPlaneEvtVtxPQ->SetBit(TH1::kCanRebin);
10459 
10460     hPlaneEvtBegPQ=new TH1F("hPlaneEvtBegPQ","hPlaneEvtBegPQ",
10461                             500,-10,490);
10462     hPlaneEvtBegPQ->GetXaxis()->SetTitle("Plane");
10463     hPlaneEvtBegPQ->GetXaxis()->CenterTitle();
10464     hPlaneEvtBegPQ->GetYaxis()->SetTitle("");
10465     hPlaneEvtBegPQ->GetYaxis()->CenterTitle();
10466     hPlaneEvtBegPQ->SetLineWidth(2);
10467     //hPlaneEvtBegPQ->SetBit(TH1::kCanRebin);
10468 
10469     hPlaneEvtEndPQ=new TH1F("hPlaneEvtEndPQ","hPlaneEvtEndPQ",
10470                             500,-10,490);
10471     hPlaneEvtEndPQ->GetXaxis()->SetTitle("Plane");
10472     hPlaneEvtEndPQ->GetXaxis()->CenterTitle();
10473     hPlaneEvtEndPQ->GetYaxis()->SetTitle("");
10474     hPlaneEvtEndPQ->GetYaxis()->CenterTitle();
10475     hPlaneEvtEndPQ->SetLineWidth(2);
10476     //hPlaneEvtEndPQ->SetBit(TH1::kCanRebin);
10477 
10478     hPlaneTrkBeguPQ=new TH1F("hPlaneTrkBeguPQ","hPlaneTrkBeguPQ",
10479                             500,-10,490);
10480     hPlaneTrkBeguPQ->GetXaxis()->SetTitle("Plane U");
10481     hPlaneTrkBeguPQ->GetXaxis()->CenterTitle();
10482     hPlaneTrkBeguPQ->GetYaxis()->SetTitle("");
10483     hPlaneTrkBeguPQ->GetYaxis()->CenterTitle();
10484     hPlaneTrkBeguPQ->SetLineWidth(2);
10485     //hPlaneTrkBeguPQ->SetBit(TH1::kCanRebin);
10486 
10487     hPlaneTrkEnduPQ=new TH1F("hPlaneTrkEnduPQ","hPlaneTrkEnduPQ",
10488                             500,-10,490);
10489     hPlaneTrkEnduPQ->GetXaxis()->SetTitle("Plane U");
10490     hPlaneTrkEnduPQ->GetXaxis()->CenterTitle();
10491     hPlaneTrkEnduPQ->GetYaxis()->SetTitle("");
10492     hPlaneTrkEnduPQ->GetYaxis()->CenterTitle();
10493     hPlaneTrkEnduPQ->SetLineWidth(2);
10494     //hPlaneTrkEnduPQ->SetBit(TH1::kCanRebin);
10495 
10496     hPlaneTrkBegvPQ=new TH1F("hPlaneTrkBegvPQ","hPlaneTrkBegvPQ",
10497                             500,-10,490);
10498     hPlaneTrkBegvPQ->GetXaxis()->SetTitle("Plane V");
10499     hPlaneTrkBegvPQ->GetXaxis()->CenterTitle();
10500     hPlaneTrkBegvPQ->GetYaxis()->SetTitle("");
10501     hPlaneTrkBegvPQ->GetYaxis()->CenterTitle();
10502     hPlaneTrkBegvPQ->SetLineWidth(2);
10503     //hPlaneTrkBegvPQ->SetBit(TH1::kCanRebin);
10504 
10505     hPlaneTrkEndvPQ=new TH1F("hPlaneTrkEndvPQ","hPlaneTrkEndvPQ",
10506                             500,-10,490);
10507     hPlaneTrkEndvPQ->GetXaxis()->SetTitle("Plane V");
10508     hPlaneTrkEndvPQ->GetXaxis()->CenterTitle();
10509     hPlaneTrkEndvPQ->GetYaxis()->SetTitle("");
10510     hPlaneTrkEndvPQ->GetYaxis()->CenterTitle();
10511     hPlaneTrkEndvPQ->SetLineWidth(2);
10512     //hPlaneTrkEndvPQ->SetBit(TH1::kCanRebin);
10513 
10514     hPlaneTrkVtxPQ=new TH1F("hPlaneTrkVtxPQ","hPlaneTrkVtxPQ",
10515                             500,-10,490);
10516     hPlaneTrkVtxPQ->GetXaxis()->SetTitle("Plane");
10517     hPlaneTrkVtxPQ->GetXaxis()->CenterTitle();
10518     hPlaneTrkVtxPQ->GetYaxis()->SetTitle("");
10519     hPlaneTrkVtxPQ->GetYaxis()->CenterTitle();
10520     hPlaneTrkVtxPQ->SetLineWidth(2);
10521     //hPlaneTrkVtxPQ->SetBit(TH1::kCanRebin);
10522 
10523     hPlaneTrkBegPQ=new TH1F("hPlaneTrkBegPQ","hPlaneTrkBegPQ",
10524                             500,-10,490);
10525     hPlaneTrkBegPQ->GetXaxis()->SetTitle("Plane");
10526     hPlaneTrkBegPQ->GetXaxis()->CenterTitle();
10527     hPlaneTrkBegPQ->GetYaxis()->SetTitle("");
10528     hPlaneTrkBegPQ->GetYaxis()->CenterTitle();
10529     hPlaneTrkBegPQ->SetLineWidth(2);
10530     //hPlaneTrkBegPQ->SetBit(TH1::kCanRebin);
10531 
10532     hPlaneTrkEndPQ=new TH1F("hPlaneTrkEndPQ","hPlaneTrkEndPQ",
10533                             500,-10,490);
10534     hPlaneTrkEndPQ->GetXaxis()->SetTitle("Plane");
10535     hPlaneTrkEndPQ->GetXaxis()->CenterTitle();
10536     hPlaneTrkEndPQ->GetYaxis()->SetTitle("");
10537     hPlaneTrkEndPQ->GetYaxis()->CenterTitle();
10538     hPlaneTrkEndPQ->SetLineWidth(2);
10539     //hPlaneTrkEndPQ->SetBit(TH1::kCanRebin);
10540 
10541 
10542     hPlaneTrkLenPQ=new TH1F("hPlaneTrkLenPQ","hPlaneTrkLenPQ",
10543                             500,-10,490);
10544     hPlaneTrkLenPQ->GetXaxis()->SetTitle("Trk Length (planes)");
10545     hPlaneTrkLenPQ->GetXaxis()->CenterTitle();
10546     hPlaneTrkLenPQ->GetYaxis()->SetTitle("");
10547     hPlaneTrkLenPQ->GetYaxis()->CenterTitle();
10548     hPlaneTrkLenPQ->SetLineWidth(2);
10549     //hPlaneTrkLenPQ->SetBit(TH1::kCanRebin);
10550 
10551     hPlaneTrkLenNoRwPQ=new TH1F("hPlaneTrkLenNoRwPQ","hPlaneTrkLenNoRwPQ",
10552                             500,-10,490);
10553     hPlaneTrkLenNoRwPQ->GetXaxis()->SetTitle("Trk Length (planes)");
10554     hPlaneTrkLenNoRwPQ->GetXaxis()->CenterTitle();
10555     hPlaneTrkLenNoRwPQ->GetYaxis()->SetTitle("");
10556     hPlaneTrkLenNoRwPQ->GetYaxis()->CenterTitle();
10557     hPlaneTrkLenNoRwPQ->SetLineWidth(2);
10558     //hPlaneTrkLenNoRwPQ->SetBit(TH1::kCanRebin);
10559 
10560     hPlaneTrkLenPQ1=new TH1F("hPlaneTrkLenPQ1","hPlaneTrkLenPQ1",
10561                             500,-10,490);
10562     hPlaneTrkLenPQ1->GetXaxis()->SetTitle("Trk Length (planes), Cont1");
10563     hPlaneTrkLenPQ1->GetXaxis()->CenterTitle();
10564     hPlaneTrkLenPQ1->GetYaxis()->SetTitle("");
10565     hPlaneTrkLenPQ1->GetYaxis()->CenterTitle();
10566     hPlaneTrkLenPQ1->SetLineWidth(2);
10567     //hPlaneTrkLenPQ1->SetBit(TH1::kCanRebin);
10568 
10569     hPlaneTrkLenPQ2=new TH1F("hPlaneTrkLenPQ2","hPlaneTrkLenPQ2",
10570                              500,-10,490);
10571     hPlaneTrkLenPQ2->GetXaxis()->SetTitle("Trk Length (planes), Cont2");
10572     hPlaneTrkLenPQ2->GetXaxis()->CenterTitle();
10573     hPlaneTrkLenPQ2->GetYaxis()->SetTitle("");
10574     hPlaneTrkLenPQ2->GetYaxis()->CenterTitle();
10575     hPlaneTrkLenPQ2->SetLineWidth(2);
10576     //hPlaneTrkLenPQ2->SetBit(TH1::kCanRebin);    
10577 
10578     hPlaneTrkLenPQ3=new TH1F("hPlaneTrkLenPQ3","hPlaneTrkLenPQ3",
10579     500,-10,490);
10580     hPlaneTrkLenPQ3->GetXaxis()->SetTitle("Trk Length (planes), Cont3");
10581     hPlaneTrkLenPQ3->GetXaxis()->CenterTitle();
10582     hPlaneTrkLenPQ3->GetYaxis()->SetTitle("");
10583     hPlaneTrkLenPQ3->GetYaxis()->CenterTitle();
10584     hPlaneTrkLenPQ3->SetLineWidth(2);
10585     //hPlaneTrkLenPQ3->SetBit(TH1::kCanRebin);
10586 
10587     hPlaneTrkLenPQ4=new TH1F("hPlaneTrkLenPQ4","hPlaneTrkLenPQ4",
10588                              500,-10,490);
10589     hPlaneTrkLenPQ4->GetXaxis()->SetTitle("Trk Length (planes), Cont4");
10590     hPlaneTrkLenPQ4->GetXaxis()->CenterTitle();
10591     hPlaneTrkLenPQ4->GetYaxis()->SetTitle("");
10592     hPlaneTrkLenPQ4->GetYaxis()->CenterTitle();
10593     hPlaneTrkLenPQ4->SetLineWidth(2);
10594     //hPlaneTrkLenPQ4->SetBit(TH1::kCanRebin);
10595 
10596     hPlaneTrkLenNotNMBCCPQ=new TH1F
10597       ("hPlaneTrkLenNotNMBCCPQ","hPlaneTrkLenNotNMBCCPQ",
10598        500,-10,490);
10599     hPlaneTrkLenNotNMBCCPQ->GetXaxis()->SetTitle("Trk Length (planes)");
10600     hPlaneTrkLenNotNMBCCPQ->GetXaxis()->CenterTitle();
10601     hPlaneTrkLenNotNMBCCPQ->GetYaxis()->SetTitle("");
10602     hPlaneTrkLenNotNMBCCPQ->GetYaxis()->CenterTitle();
10603     hPlaneTrkLenNotNMBCCPQ->SetLineWidth(2);
10604     //hPlaneTrkLenNotNMBCCPQ->SetBit(TH1::kCanRebin);
10605 
10606     hnTrkPQ = new TH1F("hnTrkPQ", "hnTrkPQ", 1000, -10, 990);
10607     hnTrkPQ->GetXaxis()->SetTitle("nTracks");
10608     hnTrkPQ->GetXaxis()->CenterTitle();
10609     hnTrkPQ->GetYaxis()->SetTitle("");
10610     hnTrkPQ->GetYaxis()->CenterTitle();
10611     hnTrkPQ->SetFillColor(0);
10612     hnTrkPQ->SetLineColor(1);
10613 
10614     hnTrkNotNMBCCPQ = new TH1F("hnTrkNotNMBCCPQ", "hnTrkNotNMBCCPQ", 1000, -10, 990);
10615     hnTrkNotNMBCCPQ->GetXaxis()->SetTitle("nTracks");
10616     hnTrkNotNMBCCPQ->GetXaxis()->CenterTitle();
10617     hnTrkNotNMBCCPQ->GetYaxis()->SetTitle("");
10618     hnTrkNotNMBCCPQ->GetYaxis()->CenterTitle();
10619     hnTrkNotNMBCCPQ->SetFillColor(0);
10620     hnTrkNotNMBCCPQ->SetLineColor(1);
10621 
10622     hnTrkLikePQ = new TH1F("hnTrkLikePQ", "hnTrkLikePQ", 2000, 0, 600);
10623     hnTrkLikePQ->GetXaxis()->SetTitle("no. track like planes");
10624     hnTrkLikePQ->GetXaxis()->CenterTitle();
10625     hnTrkLikePQ->GetYaxis()->SetTitle("");
10626     hnTrkLikePQ->GetYaxis()->CenterTitle();
10627     hnTrkLikePQ->SetFillColor(0);
10628     hnTrkLikePQ->SetLineColor(1);
10629 
10630     hTrknPlanePQ = new TH1F("hTrknPlanePQ", "hTrknPlanePQ", 2000, 0, 600);
10631     hTrknPlanePQ->GetXaxis()->SetTitle("no. track like planes");
10632     hTrknPlanePQ->GetXaxis()->CenterTitle();
10633     hTrknPlanePQ->GetYaxis()->SetTitle("");
10634     hTrknPlanePQ->GetYaxis()->CenterTitle();
10635     hTrknPlanePQ->SetFillColor(0);
10636     hTrknPlanePQ->SetLineColor(1);
10637 
10638 
10639     hPlaneTrkNuPQ = new TH1F("hPlaneTrkNuPQ", "hPlaneTrkNuPQ", 2000, 0, 600);
10640     hPlaneTrkNuPQ->GetXaxis()->SetTitle("no. U planes");
10641     hPlaneTrkNuPQ->GetXaxis()->CenterTitle();
10642     hPlaneTrkNuPQ->GetYaxis()->SetTitle("");
10643     hPlaneTrkNuPQ->GetYaxis()->CenterTitle();
10644     hPlaneTrkNuPQ->SetFillColor(0);
10645     hPlaneTrkNuPQ->SetLineColor(1);
10646 
10647     hPlaneTrkNuNotNMBCCPQ = new TH1F("hPlaneTrkNuNotNMBCCPQ", "hPlaneTrkNuNotNMBCCPQ", 2000, 0, 600);
10648     hPlaneTrkNuNotNMBCCPQ->GetXaxis()->SetTitle("no. U planes");
10649     hPlaneTrkNuNotNMBCCPQ->GetXaxis()->CenterTitle();
10650     hPlaneTrkNuNotNMBCCPQ->GetYaxis()->SetTitle("");
10651     hPlaneTrkNuNotNMBCCPQ->GetYaxis()->CenterTitle();
10652     hPlaneTrkNuNotNMBCCPQ->SetFillColor(0);
10653     hPlaneTrkNuNotNMBCCPQ->SetLineColor(1);
10654 
10655     hPlaneTrkNvPQ = new TH1F("hPlaneTrkNvPQ", "hPlaneTrkNvPQ", 2000, 0, 600);
10656     hPlaneTrkNvPQ->GetXaxis()->SetTitle("no. V planes");
10657     hPlaneTrkNvPQ->GetXaxis()->CenterTitle();
10658     hPlaneTrkNvPQ->GetYaxis()->SetTitle("");
10659     hPlaneTrkNvPQ->GetYaxis()->CenterTitle();
10660     hPlaneTrkNvPQ->SetFillColor(0);
10661     hPlaneTrkNvPQ->SetLineColor(1);
10662 
10663     hPlaneTrkNvNotNMBCCPQ = new TH1F("hPlaneTrkNvNotNMBCCPQ", "hPlaneTrkNvNotNMBCCPQ", 2000, 0, 600);
10664     hPlaneTrkNvNotNMBCCPQ->GetXaxis()->SetTitle("no. V planes");
10665     hPlaneTrkNvNotNMBCCPQ->GetXaxis()->CenterTitle();
10666     hPlaneTrkNvNotNMBCCPQ->GetYaxis()->SetTitle("");
10667     hPlaneTrkNvNotNMBCCPQ->GetYaxis()->CenterTitle();
10668     hPlaneTrkNvNotNMBCCPQ->SetFillColor(0);
10669     hPlaneTrkNvNotNMBCCPQ->SetLineColor(1);
10670 
10671     hknn10TrkMeanPhEvtPQ = new TH1F("hknn10TrkMeanPhEvtPQ", "hknn10TrkMeanPhEvtPQ", 2000, 0, 600);
10672     hknn10TrkMeanPhEvtPQ->GetXaxis()->SetTitle("average k ph per plane in track");
10673     hknn10TrkMeanPhEvtPQ->GetXaxis()->CenterTitle();
10674     hknn10TrkMeanPhEvtPQ->GetYaxis()->SetTitle("");
10675     hknn10TrkMeanPhEvtPQ->GetYaxis()->CenterTitle();
10676     hknn10TrkMeanPhEvtPQ->SetFillColor(0);
10677     hknn10TrkMeanPhEvtPQ->SetLineColor(1);
10678     //ph per plane in trk
10679 
10680     hknn10TrkMeanPhEvtNotNMBCCPQ = new TH1F("hknn10TrkMeanPhEvtNotNMBCCPQ", "hknn10TrkMeanPhEvtNotNMBCCPQ", 2000, 0, 600);
10681     hknn10TrkMeanPhEvtNotNMBCCPQ->GetXaxis()->SetTitle("average k ph per plane in track");
10682     hknn10TrkMeanPhEvtNotNMBCCPQ->GetXaxis()->CenterTitle();
10683     hknn10TrkMeanPhEvtNotNMBCCPQ->GetYaxis()->SetTitle("");
10684     hknn10TrkMeanPhEvtNotNMBCCPQ->GetYaxis()->CenterTitle();
10685     hknn10TrkMeanPhEvtNotNMBCCPQ->SetFillColor(0);
10686     hknn10TrkMeanPhEvtNotNMBCCPQ->SetLineColor(1);
10687     //ph per plane in trk
10688                                                                                                                     
10689 
10690     hknn40TrkPhFracEvtPQ = new TH1F("hknn40TrkPhFracEvtPQ", "hknn40TrkPhFracEvtPQ", 200, 0, 2);
10691     hknn40TrkPhFracEvtPQ->GetXaxis()->SetTitle("fraction of ph  in track");
10692     hknn40TrkPhFracEvtPQ->GetXaxis()->CenterTitle();
10693     hknn40TrkPhFracEvtPQ->GetYaxis()->SetTitle("");
10694     hknn40TrkPhFracEvtPQ->GetYaxis()->CenterTitle();
10695     hknn40TrkPhFracEvtPQ->SetFillColor(0);
10696     hknn40TrkPhFracEvtPQ->SetLineColor(1);
10697     //fraction of ph in track                      
10698     
10699     hknn40TrkPhFracEvtNotNMBCCPQ = new TH1F("hknn40TrkPhFracEvtNotNMBCCPQ", "hknn40TrkPhFracEvtNotNMBCCPQ", 200, 0, 2);
10700     hknn40TrkPhFracEvtNotNMBCCPQ->GetXaxis()->SetTitle("fraction of ph  in track");
10701     hknn40TrkPhFracEvtNotNMBCCPQ->GetXaxis()->CenterTitle();
10702     hknn40TrkPhFracEvtNotNMBCCPQ->GetYaxis()->SetTitle("");
10703     hknn40TrkPhFracEvtNotNMBCCPQ->GetYaxis()->CenterTitle();
10704     hknn40TrkPhFracEvtNotNMBCCPQ->SetFillColor(0);
10705     hknn40TrkPhFracEvtNotNMBCCPQ->SetLineColor(1);
10706     //fraction of ph in track
10707 
10708     hnShwPQ = new TH1F("hnShwPQ", "hnShwPQ", 600, 0, 600);
10709     hnShwPQ->GetXaxis()->SetTitle("Number of showers");
10710     hnShwPQ->GetXaxis()->CenterTitle();
10711     hnShwPQ->GetYaxis()->SetTitle("");
10712     hnShwPQ->GetYaxis()->CenterTitle();
10713     hnShwPQ->SetFillColor(0);
10714     hnShwPQ->SetLineColor(1);
10715     
10716     hnShwNotNMBCCPQ = new TH1F("hnShwNotNMBCCPQ", "hnShwNotNMBCCPQ", 600, 0, 600);
10717     hnShwNotNMBCCPQ->GetXaxis()->SetTitle("Number of showers");
10718     hnShwNotNMBCCPQ->GetXaxis()->CenterTitle();
10719     hnShwNotNMBCCPQ->GetYaxis()->SetTitle("");
10720     hnShwNotNMBCCPQ->GetYaxis()->CenterTitle();
10721     hnShwNotNMBCCPQ->SetFillColor(0);
10722     hnShwNotNMBCCPQ->SetLineColor(1);
10723 
10724     hnStripShwPQ = new TH1F("hnStripShwPQ", "hnStripShwPQ", 600, -1, 599);
10725     hnStripShwPQ->GetXaxis()->SetTitle("