NuMMHelperCPT Class Reference

#include <NuMMHelperCPT.h>

List of all members.

Public Member Functions

 NuMMHelperCPT ()
 NuMMHelperCPT (const char *helperFilename, const char *xSecFilename)
 NuMMHelperCPT (const std::string helperFilename, const std::string xSecFilename)
 NuMMHelperCPT (const TString helperFilename, const TString xSecFilename)
virtual ~NuMMHelperCPT ()
void Construct (const char *helperFilename, const char *xSecFilename)
virtual const TH1D * NDNuPurity ()
virtual const TH2D * NDNuRecoVsTrue ()
virtual const TH1D * NDNuEfficiency ()
virtual const TGraph * NuXSecGraph ()
virtual const TH2D * NuBeamMatrix ()
virtual const TH2D * NuBeamMatrixNuMuCCXSec ()
virtual const TH2D * NuBeamMatrixTauCCXSec ()
virtual const TGraph * XSecGraphNuTaus ()
virtual const TH1D * FDNuTauEfficiency ()
virtual const TH1D * FDNuEfficiency ()
virtual const TH2D * FDNuRecoVsTrue ()
virtual const TH1D * FDNuNCContamination ()
virtual const TH2D * FDNuTauRecoVsTrue ()
virtual const TH1D * FDWrongSignNuEfficiency ()
virtual const TH2D * FDWrongSignNuRecoVsTrue ()
virtual const TH1D * FDNuPurity ()
virtual const TH1D * NDBarPurity ()
virtual const TH2D * NDBarRecoVsTrue ()
virtual const TH1D * NDBarEfficiency ()
virtual const TGraph * BarXSecGraph ()
virtual const TH2D * BarBeamMatrix ()
virtual const TH2D * BarBeamMatrixNuMuCCXSec ()
virtual const TH2D * BarBeamMatrixTauCCXSec ()
virtual const TGraph * XSecGraphTauBars ()
virtual const TH1D * FDTauBarEfficiency ()
virtual const TH1D * FDBarEfficiency ()
virtual const TH2D * FDBarRecoVsTrue ()
virtual const TH1D * FDBarNCContamination ()
virtual const TH2D * FDTauBarRecoVsTrue ()
virtual const TH1D * FDWrongSignBarEfficiency ()
virtual const TH2D * FDWrongSignBarRecoVsTrue ()
virtual const TH1D * FDBarPurity ()
virtual void OverrideNuBeamMatrix (const TH2D *beamMatrix)
virtual void OverrideBarBeamMatrix (const TH2D *beamMatrix)
virtual void ShiftBarXSecGraph (double scale)
virtual void ResetBarXSecGraph ()
virtual bool DoTaus ()

Private Attributes

TH1D * fPurity_ND
TH2D * fRecoVsTrueEnergy_ND
TH1D * fEfficiency_ND
TGraph * fXSec_CC_Graph
TGraph * fTau_XSec_CC_Graph
TH2D * fFDVsNDMatrixRW
TH2D * fFDVsNDMatrixXSecRW
TH2D * fFDVsNDMatrixTauXSecRW
TH1D * fEfficiency_FD
TH2D * fRecoVsTrueEnergy_FD
TH2D * fRecoVsTrueCCContamination_FD
TH1D * fOtherEfficiency_FD
TH1D * fNCContamination_FD
TH1D * fPurity_FD
TH1D * fEfficiencyTau_FD
TH2D * fRecoVsTrueEnergyTau_FD
TH1D * fPurityPQ_ND
TH2D * fRecoVsTrueEnergyPQ_ND
TH1D * fEfficiencyPQ_ND
TGraph * fXSec_CCBar_Graph
TGraph * fTauBar_XSec_CC_Graph
TH2D * fFDVsNDMatrixRWBar
TH2D * fFDVsNDMatrixXSecRWBar
TH2D * fFDVsNDMatrixTauXSecRWBar
TH1D * fEfficiencyPQ_FD
TH2D * fRecoVsTrueEnergyPQ_FD
TH2D * fRecoVsTrueCCContaminationPQ_FD
TH1D * fOtherEfficiencyPQ_FD
TH1D * fNCContaminationPQ_FD
TH1D * fPurityPQ_FD
TH1D * fEfficiencyTauPQ_FD
TH2D * fRecoVsTrueEnergyTauPQ_FD
TF1 * xsec_func
TGraph * fXSec_CCBar_Graph_orig
bool doTaus

Friends

class NuMMHelperCPTpair

Detailed Description

Definition at line 9 of file NuMMHelperCPT.h.


Constructor & Destructor Documentation

NuMMHelperCPT::NuMMHelperCPT (  ) 

Definition at line 19 of file NuMMHelperCPT.cxx.

00019                              : doTaus(false)
00020 {
00021 }

NuMMHelperCPT::NuMMHelperCPT ( const char *  helperFilename,
const char *  xSecFilename 
) [explicit]

Definition at line 24 of file NuMMHelperCPT.cxx.

References Construct().

00026 {
00027   Construct(helperFilename, xSecFilename);
00028 }

NuMMHelperCPT::NuMMHelperCPT ( const std::string  helperFilename,
const std::string  xSecFilename 
) [explicit]

Definition at line 31 of file NuMMHelperCPT.cxx.

References Construct().

00033 {
00034   Construct(helperFilename.c_str(), xSecFilename.c_str());
00035 }

NuMMHelperCPT::NuMMHelperCPT ( const TString  helperFilename,
const TString  xSecFilename 
) [explicit]

Definition at line 38 of file NuMMHelperCPT.cxx.

References Construct().

00040 {
00041   Construct(helperFilename.Data(), xSecFilename.Data());
00042 }

virtual NuMMHelperCPT::~NuMMHelperCPT (  )  [inline, virtual]

Definition at line 21 of file NuMMHelperCPT.h.

00021 {};


Member Function Documentation

virtual const TH2D* NuMMHelperCPT::BarBeamMatrix (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::BarBeamMatrixNuMuCCXSec (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::BarBeamMatrixTauCCXSec (  )  [inline, virtual]
virtual const TGraph* NuMMHelperCPT::BarXSecGraph (  )  [inline, virtual]
void NuMMHelperCPT::Construct ( const char *  helperFilename,
const char *  xSecFilename 
)

Definition at line 52 of file NuMMHelperCPT.cxx.

References doTaus, MuELoss::e, fEfficiency_FD, fEfficiency_ND, fEfficiencyPQ_FD, fEfficiencyPQ_ND, fEfficiencyTau_FD, fEfficiencyTauPQ_FD, fFDVsNDMatrixRW, fFDVsNDMatrixRWBar, fFDVsNDMatrixTauXSecRW, fFDVsNDMatrixTauXSecRWBar, fFDVsNDMatrixXSecRW, fFDVsNDMatrixXSecRWBar, fNCContamination_FD, fNCContaminationPQ_FD, fOtherEfficiency_FD, fOtherEfficiencyPQ_FD, fPurity_FD, fPurity_ND, fPurityPQ_FD, fPurityPQ_ND, fRecoVsTrueCCContamination_FD, fRecoVsTrueCCContaminationPQ_FD, fRecoVsTrueEnergy_FD, fRecoVsTrueEnergy_ND, fRecoVsTrueEnergyPQ_FD, fRecoVsTrueEnergyPQ_ND, fRecoVsTrueEnergyTau_FD, fRecoVsTrueEnergyTauPQ_FD, fTau_XSec_CC_Graph, fTauBar_XSec_CC_Graph, fXSec_CC_Graph, fXSec_CCBar_Graph, fXSec_CCBar_Graph_orig, missinghisto(), and xsec_func.

Referenced by NuMMHelperCPT().

00054 {
00055   TFile helperFile(helperFilename,"READ");
00056   assert(helperFile.IsOpen());
00057 
00058   fRecoVsTrueEnergy_ND = (TH2D*) helperFile.Get("RecoVsTrueEnergy_ND");
00059   if(!fRecoVsTrueEnergy_ND) missinghisto(helperFilename, "RecoVsTrueEnergy_ND");
00060   fRecoVsTrueEnergy_ND->SetDirectory(0);
00061 
00062   fRecoVsTrueEnergy_FD = (TH2D*) helperFile.Get("RecoVsTrueEnergy_FD");
00063   if(!fRecoVsTrueEnergy_FD) missinghisto(helperFilename, "RecoVsTrueEnergy_FD");
00064   fRecoVsTrueEnergy_FD->SetDirectory(0);
00065   
00066   fFDVsNDMatrixRW = (TH2D*) helperFile.Get("FDVsNDMatrixRW");
00067   if(fFDVsNDMatrixRW) fFDVsNDMatrixRW->SetDirectory(0);
00068 
00069   fFDVsNDMatrixXSecRW = (TH2D*) helperFile.Get("FDVsNDMatrixXSecRW");
00070   if(fFDVsNDMatrixXSecRW) fFDVsNDMatrixXSecRW->SetDirectory(0);
00071 
00072   fFDVsNDMatrixTauXSecRW = (TH2D*) helperFile.Get("FDVsNDMatrixTauXSecRW");
00073   if(fFDVsNDMatrixTauXSecRW) fFDVsNDMatrixTauXSecRW->SetDirectory(0);
00074   
00075   fEfficiency_ND = (TH1D*) helperFile.Get("Efficiency_ND");
00076   if(!fEfficiency_ND) missinghisto(helperFilename, "Efficiency_ND");
00077   fEfficiency_ND->SetDirectory(0);
00078 
00079   fEfficiency_FD = (TH1D*) helperFile.Get("Efficiency_FD");
00080   if(!fEfficiency_FD) missinghisto(helperFilename, "Efficiency_FD");
00081   fEfficiency_FD->SetDirectory(0);
00082 
00083   //Purity histograms remove both the NC and wrong-sign CC backgrounds
00084   fPurity_ND = (TH1D*) helperFile.Get("Purity_ND");
00085   if(!fPurity_ND) missinghisto(helperFilename, "Purity_ND");
00086   fPurity_ND->SetDirectory(0);
00087 
00088   fPurity_FD = (TH1D*) helperFile.Get("Purity_FD");
00089   if(!fPurity_FD) missinghisto(helperFilename, "Purity_FD");
00090   fPurity_FD->SetDirectory(0);
00091   
00092   fNCContamination_FD = (TH1D*) helperFile.Get("NCContamination_FD");
00093   if(!fNCContamination_FD) missinghisto(helperFilename, "NCContamination_FD");
00094   fNCContamination_FD->SetDirectory(0);
00095 
00096   fRecoVsTrueCCContamination_FD = 
00097     (TH2D*)helperFile.Get("CCContaminationRecoVsTrue_FD");
00098   if(!fRecoVsTrueCCContamination_FD)
00099     missinghisto(helperFilename, "CCContaminationRecoVsTrue_FD");
00100   fRecoVsTrueCCContamination_FD->SetDirectory(0);
00101 
00102   fOtherEfficiency_FD = (TH1D*)helperFile.Get("OtherEfficiency_FD");
00103   if(!fOtherEfficiency_FD) missinghisto(helperFilename, "OtherEfficiency_FD");
00104   fOtherEfficiency_FD->SetDirectory(0);
00105 
00106   //Antineutrinos:
00107   fRecoVsTrueEnergyPQ_ND = (TH2D*) helperFile.Get("RecoVsTrueEnergyPQ_ND");
00108   if(!fRecoVsTrueEnergyPQ_ND)
00109     missinghisto(helperFilename, "RecoVsTrueEnergyPQ_ND");
00110   fRecoVsTrueEnergyPQ_ND->SetDirectory(0);
00111 
00112   fRecoVsTrueEnergyPQ_FD = (TH2D*) helperFile.Get("RecoVsTrueEnergyPQ_FD");
00113   if(!fRecoVsTrueEnergyPQ_FD)
00114     missinghisto(helperFilename, "RecoVsTrueEnergyPQ_FD");
00115   fRecoVsTrueEnergyPQ_FD->SetDirectory(0);
00116   
00117   fFDVsNDMatrixRWBar = (TH2D*) helperFile.Get("FDVsNDMatrixRWPQ");
00118   if(fFDVsNDMatrixRWBar) fFDVsNDMatrixRWBar->SetDirectory(0);
00119 
00120   fFDVsNDMatrixXSecRWBar = (TH2D*) helperFile.Get("FDVsNDMatrixXSecRWPQ");
00121   if(fFDVsNDMatrixXSecRWBar) fFDVsNDMatrixXSecRWBar->SetDirectory(0);
00122 
00123   fFDVsNDMatrixTauXSecRWBar = (TH2D*) helperFile.Get("FDVsNDMatrixTauXSecRWPQ");
00124   if(fFDVsNDMatrixTauXSecRWBar) fFDVsNDMatrixTauXSecRWBar->SetDirectory(0);
00125   
00126   fEfficiencyPQ_ND = (TH1D*) helperFile.Get("EfficiencyPQ_ND");
00127   if(!fEfficiencyPQ_ND) missinghisto(helperFilename, "EfficiencyPQ_ND");
00128   fEfficiencyPQ_ND->SetDirectory(0);
00129 
00130   fEfficiencyPQ_FD = (TH1D*) helperFile.Get("EfficiencyPQ_FD");
00131   if(!fEfficiencyPQ_FD) missinghisto(helperFilename, "EfficiencyPQ_FD");
00132   fEfficiencyPQ_FD->SetDirectory(0);
00133 
00134   //Purity histograms remove both the NC and wrong-sign CC backgrounds
00135   fPurityPQ_ND = (TH1D*) helperFile.Get("PurityPQ_ND");
00136   if(!fPurityPQ_ND) missinghisto(helperFilename, "PurityPQ_ND");
00137   fPurityPQ_ND->SetDirectory(0);
00138 
00139   fPurityPQ_FD = (TH1D*) helperFile.Get("PurityPQ_FD");
00140   if(!fPurityPQ_FD) missinghisto(helperFilename, "PurityPQ_FD");
00141   fPurityPQ_FD->SetDirectory(0);
00142   
00143   fNCContaminationPQ_FD = (TH1D*) helperFile.Get("NCContaminationPQ_FD");
00144   if(!fNCContaminationPQ_FD)
00145     missinghisto(helperFilename, "NCContaminationPQ_FD");
00146   fNCContaminationPQ_FD->SetDirectory(0);
00147 
00148   fRecoVsTrueCCContaminationPQ_FD = (TH2D*)
00149     helperFile.Get("CCContaminationRecoVsTruePQ_FD");
00150   if(!fRecoVsTrueCCContaminationPQ_FD)
00151     missinghisto(helperFilename, "CCContaminationRecoVsTruePQ_FD");
00152   fRecoVsTrueCCContaminationPQ_FD->SetDirectory(0);
00153 
00154   fOtherEfficiencyPQ_FD = (TH1D*)
00155     helperFile.Get("OtherEfficiencyPQ_FD");
00156   if(!fOtherEfficiencyPQ_FD)
00157     missinghisto(helperFilename, "OtherEfficiencyPQ_FD");
00158   fOtherEfficiencyPQ_FD->SetDirectory(0);
00159 
00160   //Tau helpers
00161   fEfficiencyTau_FD = (TH1D*) helperFile.Get("EfficiencyTau_FD");
00162   if (!fEfficiencyTau_FD)  doTaus = false;
00163   else                     doTaus = true;
00164 
00165   if (doTaus) {
00166     fEfficiencyTau_FD->SetDirectory(0);
00167     fRecoVsTrueEnergyTau_FD = (TH2D*)
00168     helperFile.Get("RecoVsTrueEnergyTau_FD");
00169     if(!fRecoVsTrueEnergyTau_FD)
00170       missinghisto(helperFilename, "RecoVsTrueEnergyTau_FD");
00171     fRecoVsTrueEnergyTau_FD->SetDirectory(0);
00172     
00173     //TauBar helpers
00174     fEfficiencyTauPQ_FD = (TH1D*) helperFile.Get("EfficiencyTauPQ_FD");
00175     if(!fEfficiencyTauPQ_FD)
00176       missinghisto(helperFilename, "EfficiencyTauPQ_FD");
00177     fEfficiencyTauPQ_FD->SetDirectory(0);
00178 
00179     fRecoVsTrueEnergyTauPQ_FD = (TH2D*)
00180     helperFile.Get("RecoVsTrueEnergyTauPQ_FD");
00181     if(!fRecoVsTrueEnergyTauPQ_FD)
00182       missinghisto(helperFilename, "RecoVsTrueEnergyTauPQ_FD");
00183     fRecoVsTrueEnergyTauPQ_FD->SetDirectory(0);
00184   }
00185   
00186   helperFile.Close();
00187   
00188   //Get cross-sections (numu)
00189   TFile *xsecfile = new TFile(xSecFilename,"READ");
00190   assert(xsecfile->IsOpen());
00191   TH1F* XSec_CC = (TH1F*) xsecfile->Get("h_numu_cc_tot");
00192   XSec_CC->SetDirectory(0);
00193   xsecfile->Close();
00194   if (xsecfile){delete xsecfile; xsecfile = 0;}
00195   Float_t *x = new Float_t[XSec_CC->GetNbinsX()];
00196   Float_t *y = new Float_t[XSec_CC->GetNbinsX()];
00197   for(int i=0;i<XSec_CC->GetNbinsX();i++) {
00198     x[i] = XSec_CC->GetBinCenter(i+1);
00199     y[i] = XSec_CC->GetBinContent(i+1);
00200   }
00201   fXSec_CC_Graph = new TGraph(XSec_CC->GetNbinsX(),x,y);
00202   if (x) {delete[] x; x = 0;}
00203   if (y) {delete[] y; y = 0;}
00204   
00205   //Get cross-sections (numubar)
00206   xsecfile = new TFile(xSecFilename,"READ");
00207   TH1F* XSec_CCBar = (TH1F*) xsecfile->Get("h_numubar_cc_tot");
00208   XSec_CCBar->SetDirectory(0);
00209   xsecfile->Close();
00210   if (xsecfile){delete xsecfile; xsecfile = 0;}
00211   x = new Float_t[XSec_CCBar->GetNbinsX()];
00212   y = new Float_t[XSec_CCBar->GetNbinsX()];
00213   for(int i=0;i<XSec_CCBar->GetNbinsX();i++) {
00214     x[i] = XSec_CCBar->GetBinCenter(i+1);
00215     y[i] = XSec_CCBar->GetBinContent(i+1);
00216   }
00217   fXSec_CCBar_Graph = new TGraph(XSec_CCBar->GetNbinsX(),x,y);
00218   if (x) {delete[] x; x = 0;}
00219   if (y) {delete[] y; y = 0;}
00220   
00221   if (doTaus) {
00222     //Get cross-sections (tau)
00223     xsecfile = new TFile(xSecFilename,"READ");
00224     TH1F* tau_XSec_CC = (TH1F*) xsecfile->Get("h_nutau_cc_tot");
00225     tau_XSec_CC->SetDirectory(0);
00226     xsecfile->Close();
00227     if (xsecfile){delete xsecfile; xsecfile = 0;}
00228     x = new Float_t[tau_XSec_CC->GetNbinsX()];
00229     y = new Float_t[tau_XSec_CC->GetNbinsX()];
00230     for(int i=0;i<tau_XSec_CC->GetNbinsX();i++) {
00231       x[i] = tau_XSec_CC->GetBinCenter(i+1);
00232       y[i] = tau_XSec_CC->GetBinContent(i+1);
00233     }
00234     fTau_XSec_CC_Graph = new TGraph(tau_XSec_CC->GetNbinsX(),x,y);
00235     if (x) {delete[] x; x = 0;}
00236     if (y) {delete[] y; y = 0;}
00237     
00238     //Get cross-sections (taubar)
00239     xsecfile = new TFile(xSecFilename,"READ");
00240     TH1F* taubar_XSec_CC = (TH1F*) xsecfile->Get("h_nutaubar_cc_tot");
00241     taubar_XSec_CC->SetDirectory(0);
00242     xsecfile->Close();
00243     if (xsecfile){delete xsecfile; xsecfile = 0;}
00244     x = new Float_t[taubar_XSec_CC->GetNbinsX()];
00245     y = new Float_t[taubar_XSec_CC->GetNbinsX()];
00246     for(int i=0;i<taubar_XSec_CC->GetNbinsX();i++) {
00247       x[i] = taubar_XSec_CC->GetBinCenter(i+1);
00248       y[i] = taubar_XSec_CC->GetBinContent(i+1);
00249     }
00250     fTauBar_XSec_CC_Graph = new TGraph(taubar_XSec_CC->GetNbinsX(),x,y);
00251     if (x) {delete[] x; x = 0;}
00252     if (y) {delete[] y; y = 0;}
00253   }
00254   
00255   if (fRecoVsTrueCCContamination_FD){ 
00256     //Normalise the FD CC contamination true to reco CC matrix
00257     //First loop over reco axis:
00258     for (Int_t i=1; i<=fRecoVsTrueCCContamination_FD->GetNbinsX()+1; ++i){
00259       //Find out the total number of true events in this column:
00260       Double_t trueEvents = 0.0;
00261       for (Int_t j=1; j<=fRecoVsTrueCCContamination_FD->GetNbinsY()+1; ++j){
00262         trueEvents += fRecoVsTrueCCContamination_FD->GetBinContent(i,j);
00263       }
00264       //Loop again, this time normalise.
00265       for (Int_t j=1; j<=fRecoVsTrueCCContamination_FD->GetNbinsY()+1; ++j){
00266         if (trueEvents>0){
00267           Double_t oldContent =
00268             fRecoVsTrueCCContamination_FD->GetBinContent(i,j);
00269           Double_t oldError =
00270             fRecoVsTrueCCContamination_FD->GetBinError(i,j);
00271           fRecoVsTrueCCContamination_FD->SetBinContent
00272             (i,j,oldContent/trueEvents);
00273           fRecoVsTrueCCContamination_FD->SetBinError
00274             (i,j,oldError/trueEvents);
00275         }
00276         else{
00277           fRecoVsTrueCCContamination_FD->SetBinContent(i,j,0);
00278           
00279           fRecoVsTrueCCContamination_FD->SetBinError(i,j,0);
00280         }
00281       }
00282     }
00283   }
00284   
00285   if (fRecoVsTrueCCContaminationPQ_FD){ 
00286     //Normalise the FD CC contamination true to reco CC matrix
00287     //First loop over reco axis:
00288     for (Int_t i=1; i<=fRecoVsTrueCCContaminationPQ_FD->GetNbinsX()+1; ++i){
00289       //Find out the total number of true events in this column:
00290       Double_t trueEvents = 0.0;
00291       for (Int_t j=1; j<=fRecoVsTrueCCContaminationPQ_FD->GetNbinsY()+1; ++j){
00292         trueEvents += fRecoVsTrueCCContaminationPQ_FD->GetBinContent(i,j);
00293       }
00294       //Loop again, this time normalise.
00295       for (Int_t j=1; j<=fRecoVsTrueCCContaminationPQ_FD->GetNbinsY()+1; ++j){
00296         if (trueEvents>0){
00297           Double_t oldContent =
00298             fRecoVsTrueCCContaminationPQ_FD->GetBinContent(i,j);
00299           Double_t oldError =
00300             fRecoVsTrueCCContaminationPQ_FD->GetBinError(i,j);
00301           fRecoVsTrueCCContaminationPQ_FD->SetBinContent
00302             (i,j,oldContent/trueEvents);
00303           fRecoVsTrueCCContaminationPQ_FD->SetBinError
00304             (i,j,oldError/trueEvents);
00305         }
00306         else{
00307           fRecoVsTrueCCContaminationPQ_FD->SetBinContent(i,j,0);
00308           
00309           fRecoVsTrueCCContaminationPQ_FD->SetBinError(i,j,0);
00310         }
00311       }
00312     }
00313   }
00314   
00315   TF1 *xsec_func = new TF1("xsec_func","[5]*(-[1]+([0]-1.+2.*(1.-[0])*x/25+([0]-1.)*x*x/(25*25))*(x<25)+([4]*([2]-x)^3+[3]*([2]-x)^2)*(x<[2]))",0,50);
00316   xsec_func->SetParameter(0, 0.895);
00317   xsec_func->SetParameter(1, 0.0617);
00318   
00319   xsec_func->SetParameter(2, 4.0);
00320   xsec_func->SetParameter(3, 7.59e-3);
00321   xsec_func->SetParameter(4, -8.05e-4);
00322   
00323   xsec_func->SetParameter(5, 0);
00324   fXSec_CCBar_Graph_orig = 0;
00325 }

virtual bool NuMMHelperCPT::DoTaus (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDBarEfficiency (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDBarNCContamination (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDBarPurity (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::FDBarRecoVsTrue (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDNuEfficiency (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDNuNCContamination (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDNuPurity (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::FDNuRecoVsTrue (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDNuTauEfficiency (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::FDNuTauRecoVsTrue (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDTauBarEfficiency (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::FDTauBarRecoVsTrue (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDWrongSignBarEfficiency (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::FDWrongSignBarRecoVsTrue (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::FDWrongSignNuEfficiency (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::FDWrongSignNuRecoVsTrue (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::NDBarEfficiency (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::NDBarPurity (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::NDBarRecoVsTrue (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::NDNuEfficiency (  )  [inline, virtual]
virtual const TH1D* NuMMHelperCPT::NDNuPurity (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::NDNuRecoVsTrue (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::NuBeamMatrix (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::NuBeamMatrixNuMuCCXSec (  )  [inline, virtual]
virtual const TH2D* NuMMHelperCPT::NuBeamMatrixTauCCXSec (  )  [inline, virtual]
virtual const TGraph* NuMMHelperCPT::NuXSecGraph (  )  [inline, virtual]
void NuMMHelperCPT::OverrideBarBeamMatrix ( const TH2D *  beamMatrix  )  [virtual]

Definition at line 335 of file NuMMHelperCPT.cxx.

References fFDVsNDMatrixRWBar.

00336 {
00337   if (fFDVsNDMatrixRWBar)
00338     {delete fFDVsNDMatrixRWBar; fFDVsNDMatrixRWBar=0;}
00339   fFDVsNDMatrixRWBar = new TH2D(*beamMatrix);
00340 }

void NuMMHelperCPT::OverrideNuBeamMatrix ( const TH2D *  beamMatrix  )  [virtual]

Definition at line 328 of file NuMMHelperCPT.cxx.

References fFDVsNDMatrixRW.

00329 {
00330   if (fFDVsNDMatrixRW){delete fFDVsNDMatrixRW; fFDVsNDMatrixRW=0;}
00331   fFDVsNDMatrixRW = new TH2D(*beamMatrix);
00332 }

void NuMMHelperCPT::ResetBarXSecGraph (  )  [virtual]

Definition at line 371 of file NuMMHelperCPT.cxx.

References fXSec_CCBar_Graph, fXSec_CCBar_Graph_orig, Msg::kInfo, Msg::kWarning, and MAXMSG.

Referenced by ShiftBarXSecGraph().

00372 {
00373   if (fXSec_CCBar_Graph_orig) {
00374     MAXMSG("NuMMHelperCPT",Msg::kInfo, 1) << "Reverting Bar to backup copy." << endl;
00375     
00376     delete fXSec_CCBar_Graph;
00377     fXSec_CCBar_Graph = fXSec_CCBar_Graph_orig;
00378     fXSec_CCBar_Graph_orig = 0;
00379   }
00380   else {
00381     MAXMSG("NuMMHelperCPT",Msg::kWarning, 1) << "Resetting unmodified Bars data.  Not harmful, just superfluous." << endl;
00382   }
00383 }

void NuMMHelperCPT::ShiftBarXSecGraph ( double  scale  )  [virtual]

Definition at line 345 of file NuMMHelperCPT.cxx.

References fXSec_CCBar_Graph, fXSec_CCBar_Graph_orig, Msg::kInfo, Msg::kWarning, MAXMSG, ResetBarXSecGraph(), and xsec_func.

00346 {
00347   if (fXSec_CCBar_Graph_orig) {
00348     MAXMSG("NuMMHelperCPT",Msg::kWarning, 1) << "You did not reset the Bar xsec after modifying it.  Doing so now." << endl;
00349     ResetBarXSecGraph();
00350   }
00351   
00352   MAXMSG("NuMMHelperCPT",Msg::kInfo, 1) << "Making a Bar xsec backup copy." << endl;
00353   
00354   // Backup the original object, create a new one for modifying
00355   fXSec_CCBar_Graph_orig = fXSec_CCBar_Graph;
00356   fXSec_CCBar_Graph = new TGraph(*fXSec_CCBar_Graph);
00357   
00358   // Set the scale of the xsec shift
00359   xsec_func->SetParameter(5, scale);
00360   
00361   Double_t x, y;
00362   for (int i = 0; i < fXSec_CCBar_Graph->GetN(); ++i) {
00363     fXSec_CCBar_Graph->GetPoint(i, x, y);
00364     y *= xsec_func->Eval(x);
00365     fXSec_CCBar_Graph->SetPoint(i, x, y);    
00366   }
00367 }

virtual const TGraph* NuMMHelperCPT::XSecGraphNuTaus (  )  [inline, virtual]
virtual const TGraph* NuMMHelperCPT::XSecGraphTauBars (  )  [inline, virtual]

Friends And Related Function Documentation

friend class NuMMHelperCPTpair [friend]

Definition at line 11 of file NuMMHelperCPT.h.


Member Data Documentation

bool NuMMHelperCPT::doTaus [private]

Definition at line 110 of file NuMMHelperCPT.h.

Referenced by Construct(), and DoTaus().

Definition at line 79 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDNuEfficiency().

Definition at line 73 of file NuMMHelperCPT.h.

Referenced by Construct(), and NDNuEfficiency().

Definition at line 97 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDBarEfficiency().

Definition at line 91 of file NuMMHelperCPT.h.

Referenced by Construct(), and NDBarEfficiency().

Definition at line 86 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDNuTauEfficiency().

Definition at line 104 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDTauBarEfficiency().

Definition at line 76 of file NuMMHelperCPT.h.

Referenced by Construct(), NuBeamMatrix(), and OverrideNuBeamMatrix().

Definition at line 94 of file NuMMHelperCPT.h.

Referenced by BarBeamMatrix(), Construct(), and OverrideBarBeamMatrix().

Definition at line 78 of file NuMMHelperCPT.h.

Referenced by Construct(), and NuBeamMatrixTauCCXSec().

Definition at line 96 of file NuMMHelperCPT.h.

Referenced by BarBeamMatrixTauCCXSec(), and Construct().

Definition at line 77 of file NuMMHelperCPT.h.

Referenced by Construct(), and NuBeamMatrixNuMuCCXSec().

Definition at line 95 of file NuMMHelperCPT.h.

Referenced by BarBeamMatrixNuMuCCXSec(), and Construct().

Definition at line 83 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDNuNCContamination().

Definition at line 101 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDBarNCContamination().

Definition at line 82 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDWrongSignNuEfficiency().

Definition at line 100 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDWrongSignBarEfficiency().

TH1D* NuMMHelperCPT::fPurity_FD [private]

Definition at line 84 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDNuPurity().

TH1D* NuMMHelperCPT::fPurity_ND [private]

Definition at line 71 of file NuMMHelperCPT.h.

Referenced by Construct(), and NDNuPurity().

TH1D* NuMMHelperCPT::fPurityPQ_FD [private]

Definition at line 102 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDBarPurity().

TH1D* NuMMHelperCPT::fPurityPQ_ND [private]

Definition at line 89 of file NuMMHelperCPT.h.

Referenced by Construct(), and NDBarPurity().

Definition at line 81 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDWrongSignBarRecoVsTrue().

Definition at line 99 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDWrongSignNuRecoVsTrue().

Definition at line 80 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDNuRecoVsTrue().

Definition at line 72 of file NuMMHelperCPT.h.

Referenced by Construct(), and NDNuRecoVsTrue().

Definition at line 98 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDBarRecoVsTrue().

Definition at line 90 of file NuMMHelperCPT.h.

Referenced by Construct(), and NDBarRecoVsTrue().

Definition at line 87 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDNuTauRecoVsTrue().

Definition at line 105 of file NuMMHelperCPT.h.

Referenced by Construct(), and FDTauBarRecoVsTrue().

Definition at line 75 of file NuMMHelperCPT.h.

Referenced by Construct(), and XSecGraphNuTaus().

Definition at line 93 of file NuMMHelperCPT.h.

Referenced by Construct(), and XSecGraphTauBars().

TGraph* NuMMHelperCPT::fXSec_CC_Graph [private]

Definition at line 74 of file NuMMHelperCPT.h.

Referenced by Construct(), and NuXSecGraph().

Definition at line 92 of file NuMMHelperCPT.h.

Referenced by BarXSecGraph(), Construct(), ResetBarXSecGraph(), and ShiftBarXSecGraph().

Definition at line 108 of file NuMMHelperCPT.h.

Referenced by Construct(), ResetBarXSecGraph(), and ShiftBarXSecGraph().

TF1* NuMMHelperCPT::xsec_func [private]

Definition at line 107 of file NuMMHelperCPT.h.

Referenced by Construct(), and ShiftBarXSecGraph().


The documentation for this class was generated from the following files:

Generated on 22 Nov 2017 for loon by  doxygen 1.6.1