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

NuMatrixInput Class Reference

#include <NuMatrixInput.h>

List of all members.

Public Member Functions

 NuMatrixInput ()
 NuMatrixInput (const char *filename)
 NuMatrixInput (const std::string filename)
 NuMatrixInput (const TString filename)
 NuMatrixInput (TFile *infile)
 NuMatrixInput (const NuMatrixInput &original)
void Init (TFile *inputFile)
virtual ~NuMatrixInput ()
virtual const TH2D * NuMuTrueToRecoFD () const
virtual const TH2D * NuMuTrueToRecoCCBkgFD () const
virtual const TH1D * NuMuTrueEnFD () const
virtual const TH1D * NuMuTrueEnCCBkgFD () const
virtual const TH1D * NuMuRecoEnNCBkgFD () const
virtual const TH1D * NuMuTrueEnPotentialAppearanceEffCorFD () const
virtual const TH1D * NuMuEffCorTaus_FD () const
virtual const TH2D * NuMuRecoVsTrueTaus_FD () const
virtual const TH2D * NuMuBarTrueToRecoFD () const
virtual const TH2D * NuMuBarTrueToRecoCCBkgFD () const
virtual const TH1D * NuMuBarTrueEnFD () const
virtual const TH1D * NuMuBarTrueEnCCBkgFD () const
virtual const TH1D * NuMuBarRecoEnNCBkgFD () const
virtual const TH1D * NuMuBarTrueEnPotentialAppearanceEffCorFD () const
virtual const TH2D * NoChargeCutTrueToRecoFD () const
virtual const TH2D * NoChargeCutTrueToRecoCCBkgFD () const
virtual const TH1D * NoChargeCutTrueEnFD () const
virtual const TH1D * NoChargeCutTrueEnCCBkgFD () const
virtual const TH1D * NoChargeCutRecoEnNCBkgFD () const
TH2D * M (bool NuMu) const
TH2D * Mtilde (bool NuMu) const
TH1D * T (bool NuMu) const
TH1D * K (bool NuMu) const
TH1D * Z (bool NuMu) const
TH1D * Appear (bool NuMu) const
void M (TH2D *in, bool NuMu)
void Mtilde (TH2D *in, bool NuMu)
void T (TH1D *in, bool NuMu)
void K (TH1D *in, bool NuMu)
void Z (TH1D *in, bool NuMu)
void Appear (TH1D *in, bool NuMu)
TH1D * PredictFDSpectrumNuMu (const Double_t dm2, const Double_t sn2, const Double_t dm2bar, const Double_t sn2bar)
TH1D * PredictFDSpectrumNuMuBar (const Double_t dm2, const Double_t sn2, const Double_t dm2bar, const Double_t sn2bar)
TH1D * PredictFDSpectrumTransition (const Double_t dm2, const Double_t sn2, const Double_t appearanceFraction)
TH1D * PredictFDSpectrum (const Double_t dm2, const Double_t sn2, const Double_t dm2bar, const Double_t sn2bar, const Double_t appearanceFraction, bool NuMu)
TH1D * PredictFDSpectrumNuMu (const NuXMLConfig *xml)
TH1D * PredictFDSpectrumNuMuBar (const NuXMLConfig *xml)
void Oscillate (TH1D *hist, const Double_t dm2, const Double_t sn2, bool invert=false)
void TrueToReco (TH1D *hist, TH2D *M)

Public Attributes

TH2D * fRecoVsTrueEnergyNQ_FD
TH2D * fTrueToRecoCCContaminationNQ_FD
TH1D * fTrueEnergyEffCorNQ_FD
TH1D * fSuppliedTrueUnoscCCBackgroundNQ_FD
TH1D * fRecoUnoscNCBackgroundNQ_FD
TH1D * fTrueEnPotentialAppearanceEffCorNQ_FD
TH1D * fEffCorTauNQ_FD
TH2D * fRecoVsTrueTauNQ_FD
TH2D * fRecoVsTrueEnergyPQ_FD
TH2D * fTrueToRecoCCContaminationPQ_FD
TH1D * fTrueEnergyEffCorPQ_FD
TH1D * fSuppliedTrueUnoscCCBackgroundPQ_FD
TH1D * fRecoUnoscNCBackgroundPQ_FD
TH1D * fTrueEnPotentialAppearanceEffCorPQ_FD
TH2D * fRecoVsTrueEnergyAll_FD
TH2D * fTrueToRecoCCContaminationAll_FD
TH1D * fTrueEnergyEffCorAll_FD
TH1D * fSuppliedTrueUnoscCCBackgroundAll_FD
TH1D * fRecoUnoscNCBackgroundAll_FD


Constructor & Destructor Documentation

NuMatrixInput::NuMatrixInput  )  [explicit]
 

Definition at line 109 of file NuMatrixInput.cxx.

00109                              : TObject()
00110 {
00111     cout << "Blank constructor used" << endl;
00112     
00113     //NuMu histograms
00114     fRecoVsTrueEnergyNQ_FD = 0;               //M
00115     fTrueToRecoCCContaminationNQ_FD = 0;      //M tilde
00116     fTrueEnergyEffCorNQ_FD = 0;               //T
00117     fSuppliedTrueUnoscCCBackgroundNQ_FD = 0;  //K
00118     fRecoUnoscNCBackgroundNQ_FD = 0;          //Z
00119     fTrueEnPotentialAppearanceEffCorNQ_FD = 0;//numubar->numu appearance
00120     fEffCorTauNQ_FD = 0;                      //potential taus
00121     fRecoVsTrueTauNQ_FD = 0;                  //tau reco v. true matrix
00122     
00123     //NuMuBar histograms
00124     fRecoVsTrueEnergyPQ_FD = 0;              //M
00125     fTrueToRecoCCContaminationPQ_FD = 0;     //M tilde
00126     fTrueEnergyEffCorPQ_FD = 0;              //T
00127     fSuppliedTrueUnoscCCBackgroundPQ_FD = 0; //K
00128     fRecoUnoscNCBackgroundPQ_FD = 0;         //Z
00129     fTrueEnPotentialAppearanceEffCorPQ_FD = 0;//numu->numubar appearance
00130     
00131     //No charge cut histograms
00132     fRecoVsTrueEnergyAll_FD = 0;              //M
00133     fTrueToRecoCCContaminationAll_FD = 0;     //M tilde
00134     fTrueEnergyEffCorAll_FD = 0;              //T
00135     fSuppliedTrueUnoscCCBackgroundAll_FD = 0; //K
00136     fRecoUnoscNCBackgroundAll_FD = 0;         //Z
00137     
00138 }

NuMatrixInput::NuMatrixInput const char *  filename  )  [explicit]
 

Definition at line 141 of file NuMatrixInput.cxx.

References infile, and Init().

00142 {
00143     TFile *infile = new TFile(filename,"READ");
00144     Init(infile);
00145     infile->Close();
00146 }

NuMatrixInput::NuMatrixInput const std::string  filename  )  [explicit]
 

Definition at line 149 of file NuMatrixInput.cxx.

References infile, and Init().

00150 {
00151     TFile *infile = new TFile(filename.c_str(),"READ");
00152     Init(infile);
00153     infile->Close();
00154 }

NuMatrixInput::NuMatrixInput const TString  filename  )  [explicit]
 

Definition at line 157 of file NuMatrixInput.cxx.

References infile, and Init().

00158 {
00159     TFile *infile = new TFile(filename,"READ");
00160     Init(infile);
00161     infile->Close();
00162 }

NuMatrixInput::NuMatrixInput TFile *  infile  )  [explicit]
 

Definition at line 165 of file NuMatrixInput.cxx.

References infile, and Init().

00166 {
00167     Init(infile);
00168 }

NuMatrixInput::NuMatrixInput const NuMatrixInput original  ) 
 

Definition at line 171 of file NuMatrixInput.cxx.

References fEffCorTauNQ_FD, fRecoUnoscNCBackgroundAll_FD, fRecoUnoscNCBackgroundNQ_FD, fRecoUnoscNCBackgroundPQ_FD, fRecoVsTrueEnergyAll_FD, fRecoVsTrueEnergyNQ_FD, fRecoVsTrueEnergyPQ_FD, fRecoVsTrueTauNQ_FD, fSuppliedTrueUnoscCCBackgroundAll_FD, fSuppliedTrueUnoscCCBackgroundNQ_FD, fSuppliedTrueUnoscCCBackgroundPQ_FD, fTrueEnergyEffCorAll_FD, fTrueEnergyEffCorNQ_FD, fTrueEnergyEffCorPQ_FD, fTrueEnPotentialAppearanceEffCorNQ_FD, fTrueEnPotentialAppearanceEffCorPQ_FD, fTrueToRecoCCContaminationAll_FD, fTrueToRecoCCContaminationNQ_FD, and fTrueToRecoCCContaminationPQ_FD.

00172 : TObject()
00173 {
00174     if (original.fRecoVsTrueEnergyNQ_FD){
00175         this->fRecoVsTrueEnergyNQ_FD = new TH2D(*original.fRecoVsTrueEnergyNQ_FD);
00176     }
00177     else {this->fRecoVsTrueEnergyNQ_FD = 0;}
00178     if (original.fTrueToRecoCCContaminationNQ_FD){
00179         this->fRecoVsTrueEnergyNQ_FD = new TH2D(*original.fRecoVsTrueEnergyNQ_FD);
00180     }
00181     else {this->fRecoVsTrueEnergyNQ_FD = 0;}
00182     if (original.fTrueEnergyEffCorNQ_FD){
00183         this->fTrueEnergyEffCorNQ_FD =
00184         new TH1D(*original.fTrueEnergyEffCorNQ_FD);
00185     }
00186     else {this->fTrueEnergyEffCorNQ_FD = 0;}
00187     if (original.fSuppliedTrueUnoscCCBackgroundNQ_FD){
00188         this->fSuppliedTrueUnoscCCBackgroundNQ_FD =
00189         new TH1D(*original.fSuppliedTrueUnoscCCBackgroundNQ_FD);
00190     }
00191     else {this->fSuppliedTrueUnoscCCBackgroundNQ_FD = 0;}
00192     if (original.fRecoUnoscNCBackgroundNQ_FD){
00193         this->fRecoUnoscNCBackgroundNQ_FD =
00194         new TH1D(*original.fRecoUnoscNCBackgroundNQ_FD);
00195     }
00196     else {this->fRecoUnoscNCBackgroundNQ_FD = 0;}
00197     if (original.fTrueEnPotentialAppearanceEffCorNQ_FD){
00198         this->fTrueEnPotentialAppearanceEffCorNQ_FD =
00199         new TH1D(*original.fTrueEnPotentialAppearanceEffCorNQ_FD);
00200     }
00201     else {this->fTrueEnPotentialAppearanceEffCorNQ_FD = 0;}
00202     if (original.fEffCorTauNQ_FD){
00203       this->fEffCorTauNQ_FD =
00204         new TH1D(*original.fEffCorTauNQ_FD);
00205     }
00206     else {this->fEffCorTauNQ_FD = 0;}
00207     if (original.fRecoVsTrueTauNQ_FD){
00208       this->fRecoVsTrueTauNQ_FD =
00209         new TH2D(*original.fRecoVsTrueTauNQ_FD);
00210     }
00211     else {this->fRecoVsTrueTauNQ_FD = 0;}
00212     
00213     if (original.fRecoVsTrueEnergyPQ_FD){
00214         this->fRecoVsTrueEnergyPQ_FD = new TH2D(*original.fRecoVsTrueEnergyPQ_FD);
00215     }
00216     else {this->fRecoVsTrueEnergyPQ_FD = 0;}
00217     if (original.fTrueToRecoCCContaminationPQ_FD){
00218         this->fRecoVsTrueEnergyPQ_FD = new TH2D(*original.fRecoVsTrueEnergyPQ_FD);
00219     }
00220     else {this->fRecoVsTrueEnergyPQ_FD = 0;}
00221     if (original.fTrueEnergyEffCorPQ_FD){
00222         this->fTrueEnergyEffCorPQ_FD =
00223         new TH1D(*original.fTrueEnergyEffCorPQ_FD);
00224     }
00225     else {this->fTrueEnergyEffCorPQ_FD = 0;}
00226     if (original.fSuppliedTrueUnoscCCBackgroundPQ_FD){
00227         this->fSuppliedTrueUnoscCCBackgroundPQ_FD =
00228         new TH1D(*original.fSuppliedTrueUnoscCCBackgroundPQ_FD);
00229     }
00230     else {this->fSuppliedTrueUnoscCCBackgroundPQ_FD = 0;}
00231     if (original.fRecoUnoscNCBackgroundPQ_FD){
00232         this->fRecoUnoscNCBackgroundPQ_FD =
00233         new TH1D(*original.fRecoUnoscNCBackgroundPQ_FD);
00234     }
00235     else {this->fRecoUnoscNCBackgroundPQ_FD = 0;}
00236     if (original.fTrueEnPotentialAppearanceEffCorPQ_FD){
00237         this->fTrueEnPotentialAppearanceEffCorPQ_FD =
00238         new TH1D(*original.fTrueEnPotentialAppearanceEffCorPQ_FD);
00239     }
00240     
00241     if (original.fRecoVsTrueEnergyAll_FD){
00242         this->fRecoVsTrueEnergyAll_FD = new TH2D(*original.fRecoVsTrueEnergyAll_FD);
00243     }
00244     else {this->fRecoVsTrueEnergyAll_FD = 0;}
00245     if (original.fTrueToRecoCCContaminationAll_FD){
00246         this->fRecoVsTrueEnergyAll_FD = new TH2D(*original.fRecoVsTrueEnergyAll_FD);
00247     }
00248     else {this->fRecoVsTrueEnergyAll_FD = 0;}
00249     if (original.fTrueEnergyEffCorAll_FD){
00250         this->fTrueEnergyEffCorAll_FD =
00251         new TH1D(*original.fTrueEnergyEffCorAll_FD);
00252     }
00253     else {this->fTrueEnergyEffCorAll_FD = 0;}
00254     if (original.fSuppliedTrueUnoscCCBackgroundAll_FD){
00255         this->fSuppliedTrueUnoscCCBackgroundAll_FD =
00256         new TH1D(*original.fSuppliedTrueUnoscCCBackgroundAll_FD);
00257     }
00258     else {this->fSuppliedTrueUnoscCCBackgroundAll_FD = 0;}
00259     if (original.fRecoUnoscNCBackgroundAll_FD){
00260         this->fRecoUnoscNCBackgroundAll_FD =
00261         new TH1D(*original.fRecoUnoscNCBackgroundAll_FD);
00262     }
00263 }

NuMatrixInput::~NuMatrixInput  )  [virtual]
 

Definition at line 383 of file NuMatrixInput.cxx.

References fEffCorTauNQ_FD, fRecoUnoscNCBackgroundNQ_FD, fRecoUnoscNCBackgroundPQ_FD, fRecoVsTrueEnergyNQ_FD, fRecoVsTrueEnergyPQ_FD, fRecoVsTrueTauNQ_FD, fSuppliedTrueUnoscCCBackgroundNQ_FD, fSuppliedTrueUnoscCCBackgroundPQ_FD, fTrueEnergyEffCorNQ_FD, fTrueEnergyEffCorPQ_FD, fTrueToRecoCCContaminationNQ_FD, and fTrueToRecoCCContaminationPQ_FD.

00384 {
00385     if (fRecoVsTrueEnergyNQ_FD) {
00386         delete fRecoVsTrueEnergyNQ_FD;
00387         fRecoVsTrueEnergyNQ_FD = 0;
00388     }
00389     if (fTrueToRecoCCContaminationNQ_FD){
00390         delete fTrueToRecoCCContaminationNQ_FD;
00391         fTrueToRecoCCContaminationNQ_FD = 0;
00392     }
00393     if (fTrueEnergyEffCorNQ_FD){
00394         delete fTrueEnergyEffCorNQ_FD;
00395         fTrueEnergyEffCorNQ_FD = 0;
00396     }
00397     if (fSuppliedTrueUnoscCCBackgroundNQ_FD){
00398         delete fSuppliedTrueUnoscCCBackgroundNQ_FD;
00399         fSuppliedTrueUnoscCCBackgroundNQ_FD = 0;
00400     }
00401     if (fRecoUnoscNCBackgroundNQ_FD){
00402         delete fRecoUnoscNCBackgroundNQ_FD;
00403         fRecoUnoscNCBackgroundNQ_FD = 0;        
00404     }
00405     if (fEffCorTauNQ_FD){
00406       delete fEffCorTauNQ_FD;
00407       fEffCorTauNQ_FD = 0;
00408     }
00409     if (fRecoVsTrueTauNQ_FD){
00410       delete fRecoVsTrueTauNQ_FD;
00411       fRecoVsTrueTauNQ_FD = 0;
00412     }
00413     if (fRecoVsTrueEnergyPQ_FD){
00414         delete fRecoVsTrueEnergyPQ_FD;
00415         fRecoVsTrueEnergyPQ_FD = 0;
00416     }
00417     if (fTrueToRecoCCContaminationPQ_FD){
00418         delete fTrueToRecoCCContaminationPQ_FD;
00419         fTrueToRecoCCContaminationPQ_FD = 0;
00420     }
00421     if (fTrueEnergyEffCorPQ_FD){
00422         delete fTrueEnergyEffCorPQ_FD;
00423         fTrueEnergyEffCorPQ_FD = 0;
00424     }
00425     if (fSuppliedTrueUnoscCCBackgroundPQ_FD){
00426         delete fSuppliedTrueUnoscCCBackgroundPQ_FD;
00427         fSuppliedTrueUnoscCCBackgroundPQ_FD = 0;
00428     }
00429     if (fRecoUnoscNCBackgroundPQ_FD){
00430         delete fRecoUnoscNCBackgroundPQ_FD;
00431         fRecoUnoscNCBackgroundPQ_FD = 0;
00432     }
00433 }


Member Function Documentation

void NuMatrixInput::Appear TH1D *  in,
bool  NuMu
 

Definition at line 503 of file NuMatrixInput.cxx.

References fTrueEnPotentialAppearanceEffCorNQ_FD, and fTrueEnPotentialAppearanceEffCorPQ_FD.

00503                                               {
00504     if (NuMu) fTrueEnPotentialAppearanceEffCorNQ_FD = (TH1D*)in->Clone();
00505     else fTrueEnPotentialAppearanceEffCorPQ_FD = (TH1D*)in->Clone();
00506 }

TH1D * NuMatrixInput::Appear bool  NuMu  )  const
 

Definition at line 467 of file NuMatrixInput.cxx.

Referenced by PredictFDSpectrum(), and NuMatrixMethod::WriteInputForFitter().

00467                                            {
00468     if (NuMu) return fTrueEnPotentialAppearanceEffCorNQ_FD;
00469     else return fTrueEnPotentialAppearanceEffCorPQ_FD;
00470 }

void NuMatrixInput::Init TFile *  inputFile  ) 
 

Definition at line 266 of file NuMatrixInput.cxx.

References fEffCorTauNQ_FD, fRecoUnoscNCBackgroundAll_FD, fRecoUnoscNCBackgroundNQ_FD, fRecoUnoscNCBackgroundPQ_FD, fRecoVsTrueEnergyAll_FD, fRecoVsTrueEnergyNQ_FD, fRecoVsTrueEnergyPQ_FD, fRecoVsTrueTauNQ_FD, fSuppliedTrueUnoscCCBackgroundAll_FD, fSuppliedTrueUnoscCCBackgroundNQ_FD, fSuppliedTrueUnoscCCBackgroundPQ_FD, fTrueEnergyEffCorAll_FD, fTrueEnergyEffCorNQ_FD, fTrueEnergyEffCorPQ_FD, fTrueEnPotentialAppearanceEffCorNQ_FD, fTrueEnPotentialAppearanceEffCorPQ_FD, fTrueToRecoCCContaminationAll_FD, fTrueToRecoCCContaminationNQ_FD, and fTrueToRecoCCContaminationPQ_FD.

Referenced by NuMatrixInput().

00267 {
00268     
00269     fRecoVsTrueEnergyNQ_FD = (TH2D*) inputFile->Get("NMTrueToRecoFD");
00270     if (fRecoVsTrueEnergyNQ_FD){
00271         fRecoVsTrueEnergyNQ_FD->SetDirectory(0);
00272     }
00273     
00274     fTrueToRecoCCContaminationNQ_FD =
00275       (TH2D*) inputFile->Get("NMTrueToRecoCCBkgFD");
00276     if (fTrueToRecoCCContaminationNQ_FD){
00277       fTrueToRecoCCContaminationNQ_FD->SetDirectory(0);
00278     }
00279     
00280     fTrueEnergyEffCorNQ_FD = (TH1D*) inputFile->Get("NMTrueEnFD");
00281     if (fTrueEnergyEffCorNQ_FD){
00282       fTrueEnergyEffCorNQ_FD->SetDirectory(0);
00283     }
00284     
00285     fSuppliedTrueUnoscCCBackgroundNQ_FD =
00286       (TH1D*) inputFile->Get("NMTrueEnCCBkgFD");
00287     if (fSuppliedTrueUnoscCCBackgroundNQ_FD){
00288       fSuppliedTrueUnoscCCBackgroundNQ_FD->SetDirectory(0);
00289     }
00290     
00291     fRecoUnoscNCBackgroundNQ_FD =
00292       (TH1D*) inputFile->Get("NMRecoEnNCBkgFD");
00293     if (fRecoUnoscNCBackgroundNQ_FD){
00294       fRecoUnoscNCBackgroundNQ_FD->SetDirectory(0);
00295     }
00296     
00297     fEffCorTauNQ_FD =
00298       (TH1D*) inputFile->Get("NMEffCorTau_FD");
00299     if (fEffCorTauNQ_FD){
00300       fEffCorTauNQ_FD->SetDirectory(0);
00301     }
00302 
00303     fRecoVsTrueTauNQ_FD =
00304       (TH2D*) inputFile->Get("NMRecoVsTrueEnergyTau_FD");
00305     if (fRecoVsTrueTauNQ_FD){
00306       fRecoVsTrueTauNQ_FD->SetDirectory(0);
00307     }
00308     
00309     
00310     fRecoVsTrueEnergyPQ_FD = (TH2D*) inputFile->Get("NMBTrueToRecoFD");
00311     if (fRecoVsTrueEnergyPQ_FD){
00312         fRecoVsTrueEnergyPQ_FD->SetDirectory(0);
00313     }
00314     
00315     fTrueToRecoCCContaminationPQ_FD =
00316     (TH2D*) inputFile->Get("NMBTrueToRecoCCBkgFD");
00317     if (fTrueToRecoCCContaminationPQ_FD){
00318         fTrueToRecoCCContaminationPQ_FD->SetDirectory(0);
00319     }
00320     
00321     fTrueEnergyEffCorPQ_FD = (TH1D*) inputFile->Get("NMBTrueEnFD");
00322     if (fTrueEnergyEffCorPQ_FD){
00323         fTrueEnergyEffCorPQ_FD->SetDirectory(0);
00324     }
00325     
00326     fSuppliedTrueUnoscCCBackgroundPQ_FD =
00327     (TH1D*) inputFile->Get("NMBTrueEnCCBkgFD");
00328     if (fSuppliedTrueUnoscCCBackgroundPQ_FD){
00329         fSuppliedTrueUnoscCCBackgroundPQ_FD->SetDirectory(0);
00330     }
00331     
00332     fRecoUnoscNCBackgroundPQ_FD =
00333     (TH1D*) inputFile->Get("NMBRecoEnNCBkgFD");
00334     if (fRecoUnoscNCBackgroundPQ_FD){
00335         fRecoUnoscNCBackgroundPQ_FD->SetDirectory(0);
00336     }
00337     
00338     //Appearance analysis:
00339     fTrueEnPotentialAppearanceEffCorNQ_FD = 
00340     (TH1D*) inputFile->Get("NMTrueEnPotentialAppearanceEffCor");
00341     if (fTrueEnPotentialAppearanceEffCorNQ_FD){
00342         fTrueEnPotentialAppearanceEffCorNQ_FD->SetDirectory(0);
00343     }
00344     
00345     fTrueEnPotentialAppearanceEffCorPQ_FD = 
00346     (TH1D*) inputFile->Get("NMBTrueEnPotentialAppearanceEffCor");
00347     if (fTrueEnPotentialAppearanceEffCorPQ_FD){
00348         fTrueEnPotentialAppearanceEffCorPQ_FD->SetDirectory(0);
00349     }
00350     
00351     //No charge cut
00352     fRecoVsTrueEnergyAll_FD =
00353     (TH2D*) inputFile->Get("AllTrueToRecoFD");
00354     if (fRecoVsTrueEnergyAll_FD){
00355         fRecoVsTrueEnergyAll_FD->SetDirectory(0);
00356     }
00357     
00358     fTrueToRecoCCContaminationAll_FD =
00359     (TH2D*) inputFile->Get("AllTrueToRecoCCBkgFD");
00360     if (fTrueToRecoCCContaminationAll_FD){
00361         fTrueToRecoCCContaminationAll_FD->SetDirectory(0);
00362     }
00363     
00364     fTrueEnergyEffCorAll_FD = (TH1D*) inputFile->Get("AllTrueEnFD");
00365     if (fTrueEnergyEffCorAll_FD){
00366         fTrueEnergyEffCorAll_FD->SetDirectory(0);
00367     }
00368     
00369     fSuppliedTrueUnoscCCBackgroundAll_FD =
00370     (TH1D*) inputFile->Get("AllTrueEnCCBkgFD");
00371     if (fSuppliedTrueUnoscCCBackgroundAll_FD){
00372         fSuppliedTrueUnoscCCBackgroundAll_FD->SetDirectory(0);
00373     }
00374     
00375     fRecoUnoscNCBackgroundAll_FD =
00376     (TH1D*) inputFile->Get("AllRecoEnNCBkgFD");
00377     if (fRecoUnoscNCBackgroundAll_FD){
00378         fRecoUnoscNCBackgroundAll_FD->SetDirectory(0);
00379     }
00380 }

void NuMatrixInput::K TH1D *  in,
bool  NuMu
 

Definition at line 491 of file NuMatrixInput.cxx.

References fSuppliedTrueUnoscCCBackgroundNQ_FD, and fSuppliedTrueUnoscCCBackgroundPQ_FD.

00491                                          {
00492     if (NuMu) fSuppliedTrueUnoscCCBackgroundNQ_FD = (TH1D*)in->Clone();
00493     else fSuppliedTrueUnoscCCBackgroundPQ_FD = (TH1D*)in->Clone();
00494 }

TH1D * NuMatrixInput::K bool  NuMu  )  const
 

Definition at line 455 of file NuMatrixInput.cxx.

Referenced by PredictFDSpectrum(), and NuMatrixMethod::WriteInputForFitter().

00455                                       {
00456     if (NuMu) return fSuppliedTrueUnoscCCBackgroundNQ_FD;
00457     else return fSuppliedTrueUnoscCCBackgroundPQ_FD;
00458 }

void NuMatrixInput::M TH2D *  in,
bool  NuMu
 

Definition at line 473 of file NuMatrixInput.cxx.

References fRecoVsTrueEnergyNQ_FD, and fRecoVsTrueEnergyPQ_FD.

00473                                          {
00474     if (NuMu)   fRecoVsTrueEnergyNQ_FD = new TH2D(*in);
00475     else fRecoVsTrueEnergyPQ_FD = new TH2D(*in);
00476 }

TH2D * NuMatrixInput::M bool  NuMu  )  const
 

Definition at line 437 of file NuMatrixInput.cxx.

Referenced by PredictFDSpectrum(), and NuMatrixMethod::WriteInputForFitter().

00437                                       {
00438     if (NuMu) return fRecoVsTrueEnergyNQ_FD;
00439     else return fRecoVsTrueEnergyPQ_FD;
00440 }

void NuMatrixInput::Mtilde TH2D *  in,
bool  NuMu
 

Definition at line 479 of file NuMatrixInput.cxx.

References fTrueToRecoCCContaminationNQ_FD, and fTrueToRecoCCContaminationPQ_FD.

00479                                               {
00480     if (NuMu) fTrueToRecoCCContaminationNQ_FD = (TH2D*)in->Clone();
00481     else fTrueToRecoCCContaminationPQ_FD = (TH2D*)in->Clone();
00482 }

TH2D * NuMatrixInput::Mtilde bool  NuMu  )  const
 

Definition at line 443 of file NuMatrixInput.cxx.

Referenced by PredictFDSpectrum(), and NuMatrixMethod::WriteInputForFitter().

00443                                            {
00444     if (NuMu) return  fTrueToRecoCCContaminationNQ_FD;
00445     else return  fTrueToRecoCCContaminationPQ_FD;
00446 }

virtual const TH1D* NuMatrixInput::NoChargeCutRecoEnNCBkgFD  )  const [inline, virtual]
 

Definition at line 129 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00130             {return fRecoUnoscNCBackgroundAll_FD;}

virtual const TH1D* NuMatrixInput::NoChargeCutTrueEnCCBkgFD  )  const [inline, virtual]
 

Definition at line 127 of file NuMatrixInput.h.

00128             {return fSuppliedTrueUnoscCCBackgroundAll_FD;}

virtual const TH1D* NuMatrixInput::NoChargeCutTrueEnFD  )  const [inline, virtual]
 

Definition at line 125 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00126             {return fTrueEnergyEffCorAll_FD;}

virtual const TH2D* NuMatrixInput::NoChargeCutTrueToRecoCCBkgFD  )  const [inline, virtual]
 

Definition at line 123 of file NuMatrixInput.h.

00124             {return fTrueToRecoCCContaminationAll_FD;}

virtual const TH2D* NuMatrixInput::NoChargeCutTrueToRecoFD  )  const [inline, virtual]
 

Definition at line 121 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00122             {return fRecoVsTrueEnergyAll_FD;}

virtual const TH1D* NuMatrixInput::NuMuBarRecoEnNCBkgFD  )  const [inline, virtual]
 

Definition at line 116 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00117             {return fRecoUnoscNCBackgroundPQ_FD;}

virtual const TH1D* NuMatrixInput::NuMuBarTrueEnCCBkgFD  )  const [inline, virtual]
 

Definition at line 114 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00115             {return fSuppliedTrueUnoscCCBackgroundPQ_FD;}

virtual const TH1D* NuMatrixInput::NuMuBarTrueEnFD  )  const [inline, virtual]
 

Definition at line 112 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00113             {return fTrueEnergyEffCorPQ_FD;}

virtual const TH1D* NuMatrixInput::NuMuBarTrueEnPotentialAppearanceEffCorFD  )  const [inline, virtual]
 

Definition at line 118 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00119             {return fTrueEnPotentialAppearanceEffCorPQ_FD;}

virtual const TH2D* NuMatrixInput::NuMuBarTrueToRecoCCBkgFD  )  const [inline, virtual]
 

Definition at line 110 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00111             {return fTrueToRecoCCContaminationPQ_FD;}

virtual const TH2D* NuMatrixInput::NuMuBarTrueToRecoFD  )  const [inline, virtual]
 

Definition at line 108 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00109             {return fRecoVsTrueEnergyPQ_FD;}

virtual const TH1D* NuMatrixInput::NuMuEffCorTaus_FD  )  const [inline, virtual]
 

Definition at line 103 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00104           {return fEffCorTauNQ_FD;}

virtual const TH1D* NuMatrixInput::NuMuRecoEnNCBkgFD  )  const [inline, virtual]
 

Definition at line 99 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00100             {return fRecoUnoscNCBackgroundNQ_FD;}

virtual const TH2D* NuMatrixInput::NuMuRecoVsTrueTaus_FD  )  const [inline, virtual]
 

Definition at line 105 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00106           {return fRecoVsTrueTauNQ_FD;}

virtual const TH1D* NuMatrixInput::NuMuTrueEnCCBkgFD  )  const [inline, virtual]
 

Definition at line 97 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00098             {return fSuppliedTrueUnoscCCBackgroundNQ_FD;}

virtual const TH1D* NuMatrixInput::NuMuTrueEnFD  )  const [inline, virtual]
 

Definition at line 95 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00096             {return fTrueEnergyEffCorNQ_FD;}

virtual const TH1D* NuMatrixInput::NuMuTrueEnPotentialAppearanceEffCorFD  )  const [inline, virtual]
 

Definition at line 101 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00102             {return fTrueEnPotentialAppearanceEffCorNQ_FD;}

virtual const TH2D* NuMatrixInput::NuMuTrueToRecoCCBkgFD  )  const [inline, virtual]
 

Definition at line 93 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00094             {return fTrueToRecoCCContaminationNQ_FD;}

virtual const TH2D* NuMatrixInput::NuMuTrueToRecoFD  )  const [inline, virtual]
 

Definition at line 91 of file NuMatrixInput.h.

Referenced by NuMatrixMethod::NuMatrixMethod().

00092             {return fRecoVsTrueEnergyNQ_FD;}

void NuMatrixInput::Oscillate TH1D *  hist,
const Double_t  dm2,
const Double_t  sn2,
bool  invert = false
 

Definition at line 613 of file NuMatrixInput.cxx.

References NuUtilities::OscillationWeight().

Referenced by PredictFDSpectrum().

00614 {
00615     for(int i=1; i <= hist->GetNbinsX(); i++) {
00616         Double_t energy = hist->GetBinCenter(i);
00617         Double_t oscProb = NuUtilities::OscillationWeight(energy, dm2, sn2);
00618         if (invert)
00619             oscProb = 1 - oscProb;
00620         
00621         hist->SetBinContent(i, hist->GetBinContent(i)*oscProb);
00622         hist->SetBinError(i, hist->GetBinError(i)*oscProb);
00623     }
00624 }

TH1D * NuMatrixInput::PredictFDSpectrum const Double_t  dm2,
const Double_t  sn2,
const Double_t  dm2bar,
const Double_t  sn2bar,
const Double_t  appearanceFraction,
bool  NuMu
 

Definition at line 548 of file NuMatrixInput.cxx.

References Appear(), K(), M(), Mtilde(), Oscillate(), T(), TrueToReco(), and Z().

Referenced by PredictFDSpectrumNuMu(), PredictFDSpectrumNuMuBar(), and PredictFDSpectrumTransition().

00550 {
00551     TH1D *pred = (TH1D*)T(NuMu)->Clone();
00552     TH1D *Kosc = (TH1D*)K(NuMu)->Clone();
00553     
00554     Double_t dm2Front, sn2Front, dm2Back, sn2Back;
00555     if (NuMu) {
00556         dm2Front = dm2;
00557         sn2Front = sn2;
00558         dm2Back = dm2bar;
00559         sn2Back = sn2bar;
00560     }
00561     else {
00562         dm2Front = dm2bar;
00563         sn2Front = sn2bar;
00564         dm2Back = dm2;
00565         sn2Back = sn2;
00566     }
00567     
00569     // applies osc to "T" //
00571     
00572     Oscillate(pred, dm2Front, sn2Front);
00573     Oscillate(Kosc, dm2Back, sn2Back);
00574     
00575     
00577     // does true to reco on osc true spectrum //
00579     
00580     TrueToReco(pred, M(NuMu));         // = R
00581     TrueToReco(Kosc, Mtilde(NuMu));    // = C
00582     
00583     
00585     // Add in backgrounds //
00587     
00588     pred->Add(Kosc);
00589     pred->Add(Z(NuMu));
00590 
00591     
00593     // Add in Appeared Events //
00595     
00596     if (appearanceFraction != 0) {
00597         TH1D *app = (TH1D*)Appear(NuMu)->Clone();
00598         
00599         Oscillate(app, dm2Back, sn2Back, true);
00600         TrueToReco(app, M(NuMu));
00601         app->Scale(appearanceFraction);
00602         pred->Add(app);
00603         for (int i = 1; i <= pred->GetNbinsX(); i++) {
00604             if (pred->GetBinContent(i) < 0) pred->SetBinContent(i, 0);
00605         }
00606     }
00607     
00608     return pred;
00609 }

TH1D * NuMatrixInput::PredictFDSpectrumNuMu const NuXMLConfig xml  ) 
 

Definition at line 534 of file NuMatrixInput.cxx.

References NuXMLConfig::DM2Bar(), NuXMLConfig::DM2Nu(), PredictFDSpectrum(), NuXMLConfig::SN2Bar(), NuXMLConfig::SN2Nu(), and NuXMLConfig::TransitionProb().

00535 {
00536     return PredictFDSpectrum(xml->DM2Nu(), xml->SN2Nu(), xml->DM2Bar(), xml->SN2Bar(), xml->TransitionProb(), true);
00537 }

TH1D * NuMatrixInput::PredictFDSpectrumNuMu const Double_t  dm2,
const Double_t  sn2,
const Double_t  dm2bar,
const Double_t  sn2bar
 

Definition at line 510 of file NuMatrixInput.cxx.

References PredictFDSpectrum().

Referenced by NuMatrixFitterMinuit::operator()().

00512 {
00513     return PredictFDSpectrum(dm2, sn2, dm2bar, sn2bar, 0, true);
00514 }

TH1D * NuMatrixInput::PredictFDSpectrumNuMuBar const NuXMLConfig xml  ) 
 

Definition at line 541 of file NuMatrixInput.cxx.

References NuXMLConfig::DM2Bar(), NuXMLConfig::DM2Nu(), PredictFDSpectrum(), NuXMLConfig::SN2Bar(), NuXMLConfig::SN2Nu(), and NuXMLConfig::TransitionProb().

00542 {
00543     return PredictFDSpectrum(xml->DM2Nu(), xml->SN2Nu(), xml->DM2Bar(), xml->SN2Bar(), xml->TransitionProb(), false);
00544 }

TH1D * NuMatrixInput::PredictFDSpectrumNuMuBar const Double_t  dm2,
const Double_t  sn2,
const Double_t  dm2bar,
const Double_t  sn2bar
 

Definition at line 518 of file NuMatrixInput.cxx.

References PredictFDSpectrum().

Referenced by NuMatrixFitterMinuit::DoCPTFit(), NuMatrixFitter::DoCPTFit(), and NuMatrixFitterMinuit::operator()().

00520 {
00521     return PredictFDSpectrum(dm2, sn2, dm2bar, sn2bar, 0, false);       
00522 }

TH1D * NuMatrixInput::PredictFDSpectrumTransition const Double_t  dm2,
const Double_t  sn2,
const Double_t  appearanceFraction
 

Definition at line 526 of file NuMatrixInput.cxx.

References PredictFDSpectrum().

Referenced by NuTransitionFitterMinuit::DoTransitionFit(), NuMatrixFitter::DoTransitionFit(), and NuTransitionFitterMinuit::operator()().

00528 {
00529     return PredictFDSpectrum(dm2, sn2, dm2, sn2, appearanceFraction, false);    
00530 }

void NuMatrixInput::T TH1D *  in,
bool  NuMu
 

Definition at line 485 of file NuMatrixInput.cxx.

References fTrueEnergyEffCorNQ_FD, and fTrueEnergyEffCorPQ_FD.

00485                                          {
00486     if (NuMu) fTrueEnergyEffCorNQ_FD = (TH1D*)in->Clone();
00487     else fTrueEnergyEffCorPQ_FD = (TH1D*)in->Clone();
00488 }

TH1D * NuMatrixInput::T bool  NuMu  )  const
 

Definition at line 449 of file NuMatrixInput.cxx.

Referenced by PredictFDSpectrum(), and NuMatrixMethod::WriteInputForFitter().

00449                                       {
00450     if (NuMu) return fTrueEnergyEffCorNQ_FD;
00451     else return fTrueEnergyEffCorPQ_FD;
00452 }

void NuMatrixInput::TrueToReco TH1D *  hist,
TH2D *  M
 

Definition at line 628 of file NuMatrixInput.cxx.

Referenced by PredictFDSpectrum().

00629 {
00630     const int fNbinsX = hist->GetNbinsX();
00631     
00632     //working space:
00633     Double_t *val = new Double_t[fNbinsX+1];
00634     Double_t *valerr = new Double_t[fNbinsX+1];
00635     for(int i=1;i<=fNbinsX;i++) { val[i-1] = 0; valerr[i-1] = 0; }
00636     
00637     //9: Convert to reco:
00638     for(int i=1;i<=fNbinsX;i++){ //loop over true
00639         for(int j=1;j<=fNbinsX+1;j++){ //loop over reco
00640             val[j-1] += (hist->GetBinContent(i) * M->GetBinContent(i,j));
00641             
00642             Double_t error = 0;
00643             if(hist->GetBinContent(i) > 0 && M->GetBinContent(i,j) > 0) {
00644                 error = TMath::Power(hist->GetBinError(i) / hist->GetBinContent(i), 2);
00645                 error += TMath::Power(M->GetBinError(i,j) / M->GetBinContent(i,j), 2);
00646                 error *= TMath::Power(hist->GetBinContent(i) * M->GetBinContent(i,j), 2);
00647             }
00648             valerr[j-1] += error;
00649         }
00650     }
00651     for(int i=1;i<=fNbinsX+1;i++) {
00652         hist->SetBinContent(i,val[i-1]);
00653         if(valerr[i-1]>0) hist->SetBinError(i,TMath::Sqrt(valerr[i-1]));
00654         else hist->SetBinError(i,0);
00655     }
00656 }

void NuMatrixInput::Z TH1D *  in,
bool  NuMu
 

Definition at line 497 of file NuMatrixInput.cxx.

References fRecoUnoscNCBackgroundNQ_FD, and fRecoUnoscNCBackgroundPQ_FD.

00497                                          {
00498     if (NuMu) fRecoUnoscNCBackgroundNQ_FD = (TH1D*)in->Clone();
00499     else fRecoUnoscNCBackgroundPQ_FD = (TH1D*)in->Clone();
00500 }

TH1D * NuMatrixInput::Z bool  NuMu  )  const
 

Definition at line 461 of file NuMatrixInput.cxx.

Referenced by PredictFDSpectrum(), and NuMatrixMethod::WriteInputForFitter().

00461                                       {
00462     if (NuMu) return fRecoUnoscNCBackgroundNQ_FD;
00463     else return fRecoUnoscNCBackgroundPQ_FD;
00464 }


Member Data Documentation

TH1D* NuMatrixInput::fEffCorTauNQ_FD
 

Definition at line 167 of file NuMatrixInput.h.

Referenced by Init(), NuMatrixInput(), and ~NuMatrixInput().

TH1D* NuMatrixInput::fRecoUnoscNCBackgroundAll_FD
 

Definition at line 183 of file NuMatrixInput.h.

Referenced by Init(), and NuMatrixInput().

TH1D* NuMatrixInput::fRecoUnoscNCBackgroundNQ_FD
 

Definition at line 165 of file NuMatrixInput.h.

Referenced by Init(), NuMatrixInput(), Z(), and ~NuMatrixInput().

TH1D* NuMatrixInput::fRecoUnoscNCBackgroundPQ_FD
 

Definition at line 175 of file NuMatrixInput.h.

Referenced by Init(), NuMatrixInput(), Z(), and ~NuMatrixInput().

TH2D* NuMatrixInput::fRecoVsTrueEnergyAll_FD
 

Definition at line 179 of file NuMatrixInput.h.

Referenced by Init(), and NuMatrixInput().

TH2D* NuMatrixInput::fRecoVsTrueEnergyNQ_FD
 

Definition at line 161 of file NuMatrixInput.h.

Referenced by Init(), M(), NuMatrixInput(), and ~NuMatrixInput().

TH2D* NuMatrixInput::fRecoVsTrueEnergyPQ_FD
 

Definition at line 171 of file NuMatrixInput.h.

Referenced by Init(), M(), NuMatrixInput(), and ~NuMatrixInput().

TH2D* NuMatrixInput::fRecoVsTrueTauNQ_FD
 

Definition at line 168 of file NuMatrixInput.h.

Referenced by Init(), NuMatrixInput(), and ~NuMatrixInput().

TH1D* NuMatrixInput::fSuppliedTrueUnoscCCBackgroundAll_FD
 

Definition at line 182 of file NuMatrixInput.h.

Referenced by Init(), and NuMatrixInput().

TH1D* NuMatrixInput::fSuppliedTrueUnoscCCBackgroundNQ_FD
 

Definition at line 164 of file NuMatrixInput.h.

Referenced by Init(), K(), NuMatrixInput(), and ~NuMatrixInput().

TH1D* NuMatrixInput::fSuppliedTrueUnoscCCBackgroundPQ_FD
 

Definition at line 174 of file NuMatrixInput.h.

Referenced by Init(), K(), NuMatrixInput(), and ~NuMatrixInput().

TH1D* NuMatrixInput::fTrueEnergyEffCorAll_FD
 

Definition at line 181 of file NuMatrixInput.h.

Referenced by Init(), and NuMatrixInput().

TH1D* NuMatrixInput::fTrueEnergyEffCorNQ_FD
 

Definition at line 163 of file NuMatrixInput.h.

Referenced by Init(), NuMatrixInput(), T(), and ~NuMatrixInput().

TH1D* NuMatrixInput::fTrueEnergyEffCorPQ_FD
 

Definition at line 173 of file NuMatrixInput.h.

Referenced by Init(), NuMatrixInput(), T(), and ~NuMatrixInput().

TH1D* NuMatrixInput::fTrueEnPotentialAppearanceEffCorNQ_FD
 

Definition at line 166 of file NuMatrixInput.h.

Referenced by Appear(), Init(), and NuMatrixInput().

TH1D* NuMatrixInput::fTrueEnPotentialAppearanceEffCorPQ_FD
 

Definition at line 176 of file NuMatrixInput.h.

Referenced by Appear(), Init(), and NuMatrixInput().

TH2D* NuMatrixInput::fTrueToRecoCCContaminationAll_FD
 

Definition at line 180 of file NuMatrixInput.h.

Referenced by Init(), and NuMatrixInput().

TH2D* NuMatrixInput::fTrueToRecoCCContaminationNQ_FD
 

Definition at line 162 of file NuMatrixInput.h.

Referenced by Init(), Mtilde(), NuMatrixInput(), and ~NuMatrixInput().

TH2D* NuMatrixInput::fTrueToRecoCCContaminationPQ_FD
 

Definition at line 172 of file NuMatrixInput.h.

Referenced by Init(), Mtilde(), NuMatrixInput(), and ~NuMatrixInput().


The documentation for this class was generated from the following files:
Generated on Mon Feb 15 11:09:53 2010 for loon by  doxygen 1.3.9.1