NuMMRunNDOsc Class Reference

#include <NuMMRunNDOsc.h>

Inheritance diagram for NuMMRunNDOsc:
NuMMRun

List of all members.

Public Member Functions

 NuMMRunNDOsc (NuMMHelperPRL *helper, NuMatrixSpectrum *ndCCData, NuMatrixSpectrum *fdCCData)
virtual Double_t ComparePredWithData (const NuMMParameters &pars)
virtual vector< NuMatrixSpectrumMakeFDPred (const NuMMParameters &pars)
virtual std::vector< TH1D > WriteFDPredHistos (const NuMMParameters &pars) const
virtual void PrecalculateWSFlux (NuMMHelperPRL *helper, const NuMatrixSpectrum *ndOtherData)
virtual void SetFDData (NuMatrixSpectrum *fdData)

Private Member Functions

virtual vector< NuMatrixSpectrumCalculateFDFlux (const NuMMParameters &pars) const
virtual vector< NuMatrixSpectrumCalculateFDTauFlux (const NuMMParameters &pars) const
virtual vector< NuMatrixSpectrumCalculateFDNCBackground (const NuMMParameters &pars) const
void OscillateFD (NuMatrixSpectrum &pred, const NuMMParameters &pars) const
 Helper. Oscillates, decays or decoheres a true energy numu spectrum.
void UnoscillateND (NuMatrixSpectrum &pred, const NuMMParameters &pars) const
virtual void SanityCheckSpecialWSFiles (NuMMHelperPRL *helper, const NuMatrixSpectrum *ndOtherData) const
virtual void WriteToJess (NuMatrixSpectrum spectrum, const std::string name, bool osc)

Private Attributes

Bool_t fSpecialWSMode
NuMatrixSpectrumfNDCCData
NuMatrixSpectrumfFDCCData
vector< NuMatrixSpectrumfFDFlux
vector< NuMatrixSpectrumfFDTauFlux
vector< NuMatrixSpectrumfFDNCBackground
vector< NuMatrixSpectrumfSpecialWSBackgroundFlux
NuMMHelperPRLfHelper

Detailed Description

Definition at line 13 of file NuMMRunNDOsc.h.


Constructor & Destructor Documentation

NuMMRunNDOsc::NuMMRunNDOsc ( NuMMHelperPRL helper,
NuMatrixSpectrum ndCCData,
NuMatrixSpectrum fdCCData 
)

Definition at line 20 of file NuMMRunNDOsc.cxx.

00023   : NuMMRun(),
00024     fSpecialWSMode(false),
00025     fNDCCData(ndCCData),
00026     fFDCCData(fdCCData),
00027     fHelper(helper)
00028 {
00029   assert(helper);
00030   assert(ndCCData);
00031   assert(fdCCData);
00032 }


Member Function Documentation

vector< NuMatrixSpectrum > NuMMRunNDOsc::CalculateFDFlux ( const NuMMParameters pars  )  const [private, virtual]

Definition at line 97 of file NuMMRunNDOsc.cxx.

References NuMMHelperPRL::BeamMatrixNuMuCCXSec(), NuMatrixSpectrum::Divide(), NuMatrixSpectrum::ExtrapolateNDToFD(), fFDCCData, NuMMRun::fFDFidMass, fHelper, fNDCCData, NuMMRun::fNDFidMass, NuMatrix::GetPOT(), NuMatrixSpectrum::Multiply(), NuMMParameters::NCBackgroundScale(), NuMMHelperPRL::NDCCContamination(), NuMMHelperPRL::NDEfficiency(), NuMMHelperPRL::NDPurity(), NuMMHelperPRL::NDRecoVsTrue(), NuMatrixSpectrum::RecoToTrue(), NuMatrix1D::Subtract(), and UnoscillateND().

Referenced by MakeFDPred().

00098 {
00099   
00100   Double_t ncScale = pars.NCBackgroundScale();
00101   
00102   NuMatrixSpectrum prediction(*fNDCCData);
00103   NuMatrixSpectrum wsBackground(prediction);
00104   
00105   NuMatrixSpectrum signal(prediction);
00106   signal.Multiply(fHelper->NDPurity());
00107   NuMatrixSpectrum ncBackground(prediction);
00108   ncBackground.Subtract(signal);
00109   ncBackground.Multiply(ncScale);
00110   prediction.Subtract(ncBackground);
00111   //    prediction.Multiply(fHelper->NDPurity());
00112   
00113   wsBackground.Multiply(fHelper->NDCCContamination());
00114   prediction.Subtract(wsBackground);
00115   
00116   prediction.RecoToTrue(fHelper->NDRecoVsTrue());
00117   prediction.Divide(fHelper->NDEfficiency());
00118   UnoscillateND(prediction, pars);
00119   prediction.Divide(fNDCCData->GetPOT());
00120   prediction.Divide(fNDFidMass);
00121   prediction.ExtrapolateNDToFD(fHelper->BeamMatrixNuMuCCXSec());
00122   prediction.Multiply(fFDFidMass);
00123   prediction.Multiply(fFDCCData->GetPOT());
00124   
00125   vector<NuMatrixSpectrum> predictions;
00126   predictions.push_back(prediction);
00127   return predictions;
00128 }

vector< NuMatrixSpectrum > NuMMRunNDOsc::CalculateFDNCBackground ( const NuMMParameters pars  )  const [private, virtual]

Definition at line 166 of file NuMMRunNDOsc.cxx.

References NuMatrix1D::Add(), NuMMHelperPRL::BeamMatrixNuMuCCXSec(), NuMatrixSpectrum::Divide(), NuMatrixSpectrum::ExtrapolateNDToFD(), NuMMHelperPRL::FDCCContamination(), NuMMHelperPRL::FDCCContaminationRecoVsTrue(), NuMMHelperPRL::FDEfficiency(), NuMMHelperPRL::FDPurity(), NuMMHelperPRL::FDRecoVsTrue(), fFDCCData, NuMMRun::fFDFidMass, fHelper, fNDCCData, NuMMRun::fNDFidMass, NuMatrix::GetPOT(), NuMatrixSpectrum::Multiply(), NuMMParameters::NCBackgroundScale(), NuMMHelperPRL::NDCCContamination(), NuMMHelperPRL::NDEfficiency(), NuMMHelperPRL::NDPurity(), NuMMHelperPRL::NDRecoVsTrue(), NuMatrixSpectrum::RecoToTrue(), NuMatrix1D::Subtract(), NuMatrixSpectrum::TrueToReco(), and UnoscillateND().

Referenced by MakeFDPred().

00167 {
00168   Double_t ncScale = pars.NCBackgroundScale();
00169   
00170   NuMatrixSpectrum prediction(*fNDCCData);
00171   NuMatrixSpectrum wsBackground(prediction);
00172   
00173   NuMatrixSpectrum signal(prediction);
00174   signal.Multiply(fHelper->NDPurity());
00175   NuMatrixSpectrum ndncBackground(prediction);
00176   ndncBackground.Subtract(signal);
00177   ndncBackground.Multiply(ncScale);
00178   prediction.Subtract(ndncBackground);
00179   //    prediction.Multiply(fHelper->NDPurity());
00180   
00181   wsBackground.Multiply(fHelper->NDCCContamination());
00182   prediction.Subtract(wsBackground);
00183   
00184   prediction.RecoToTrue(fHelper->NDRecoVsTrue());
00185   prediction.Divide(fHelper->NDEfficiency());
00186   UnoscillateND(prediction, pars);
00187   prediction.Divide(fNDCCData->GetPOT());
00188   prediction.Divide(fNDFidMass);
00189   prediction.ExtrapolateNDToFD(fHelper->BeamMatrixNuMuCCXSec());
00190   prediction.Multiply(fFDFidMass);
00191   prediction.Multiply(fFDCCData->GetPOT());
00192   
00193   NuMatrixSpectrum unoscWsBackground(prediction);
00194   unoscWsBackground.Multiply(fHelper->FDCCContamination());
00195   unoscWsBackground.TrueToReco(fHelper->FDCCContaminationRecoVsTrue());
00196   
00197   prediction.Multiply(fHelper->FDEfficiency());
00198   
00199   NuMatrixSpectrum unoscTrueSpectrum(prediction);
00200   unoscTrueSpectrum.TrueToReco(fHelper->FDRecoVsTrue());
00201   unoscTrueSpectrum.Add(unoscWsBackground);
00202   
00203   NuMatrixSpectrum ncBackground(unoscTrueSpectrum);
00204   ncBackground.Divide(fHelper->FDPurity());
00205   ncBackground.Subtract(unoscTrueSpectrum);
00206   
00207   vector<NuMatrixSpectrum> predictions;
00208   predictions.push_back(ncBackground);
00209   return predictions;
00210 }

vector< NuMatrixSpectrum > NuMMRunNDOsc::CalculateFDTauFlux ( const NuMMParameters pars  )  const [private, virtual]

Definition at line 132 of file NuMMRunNDOsc.cxx.

References NuMMHelperPRL::BeamMatrixTauCCXSec(), NuMatrixSpectrum::Divide(), NuMatrixSpectrum::ExtrapolateNDToFD(), fFDCCData, NuMMRun::fFDFidMass, fHelper, fNDCCData, NuMMRun::fNDFidMass, NuMatrix::GetPOT(), NuMatrixSpectrum::Multiply(), NuMMParameters::NCBackgroundScale(), NuMMHelperPRL::NDCCContamination(), NuMMHelperPRL::NDEfficiency(), NuMMHelperPRL::NDPurity(), NuMMHelperPRL::NDRecoVsTrue(), NuMatrixSpectrum::RecoToTrue(), NuMatrix1D::Subtract(), and UnoscillateND().

00133 {  
00134   Double_t ncScale = pars.NCBackgroundScale();
00135   
00136   NuMatrixSpectrum prediction(*fNDCCData);
00137   NuMatrixSpectrum wsBackground(prediction);
00138   
00139   NuMatrixSpectrum signal(prediction);
00140   signal.Multiply(fHelper->NDPurity());
00141   NuMatrixSpectrum ncBackground(prediction);
00142   ncBackground.Subtract(signal);
00143   ncBackground.Multiply(ncScale);
00144   prediction.Subtract(ncBackground);
00145   //    prediction.Multiply(fHelper->NDPurity());
00146   
00147   wsBackground.Multiply(fHelper->NDCCContamination());
00148   prediction.Subtract(wsBackground);
00149   
00150   prediction.RecoToTrue(fHelper->NDRecoVsTrue());
00151   prediction.Divide(fHelper->NDEfficiency());
00152   UnoscillateND(prediction, pars);
00153   prediction.Divide(fNDCCData->GetPOT());
00154   prediction.Divide(fNDFidMass);
00155   prediction.ExtrapolateNDToFD(fHelper->BeamMatrixTauCCXSec());
00156   prediction.Multiply(fFDFidMass);
00157   prediction.Multiply(fFDCCData->GetPOT());
00158   
00159   vector<NuMatrixSpectrum> predictions;
00160   predictions.push_back(prediction);
00161   return predictions;
00162 }

Double_t NuMMRunNDOsc::ComparePredWithData ( const NuMMParameters pars  )  [virtual]

Implements NuMMRun.

Definition at line 355 of file NuMMRunNDOsc.cxx.

00356 {
00357   const vector<NuMatrixSpectrum> predictions =
00358     this->MakeFDPred(pars);
00359   Double_t like = 0.0;
00360   
00361   like += this->StatsLikelihood(predictions[0].Spectrum(),
00362                                 fFDCCData->Spectrum());
00363 
00364   return like;
00365 }

vector< NuMatrixSpectrum > NuMMRunNDOsc::MakeFDPred ( const NuMMParameters pars  )  [virtual]

Definition at line 214 of file NuMMRunNDOsc.cxx.

References NuMatrix1D::Add(), CalculateFDFlux(), CalculateFDNCBackground(), NuMMParameters::Dm2(), NuMMHelperPRL::FDCCContamination(), NuMMHelperPRL::FDCCContaminationRecoVsTrue(), NuMMHelperPRL::FDEfficiency(), NuMMHelperPRL::FDRecoVsTrue(), fFDFlux, fFDNCBackground, fHelper, NuMMRun::fQuietMode, fSpecialWSBackgroundFlux, fSpecialWSMode, NuMatrixSpectrum::Multiply(), NuMMParameters::NCBackgroundScale(), NuMMParameters::Normalisation(), OscillateFD(), NuMatrixSpectrum::RemoveErrors(), NuMatrixSpectrum::SetName(), NuMatrixSpectrum::SetTitle(), NuMMParameters::ShwEnScale(), NuMMParameters::Theta23(), NuMatrixSpectrum::TrueToReco(), and WriteToJess().

00215 {
00216   if (!fQuietMode) {
00217     cout << "theta23: " << pars.Theta23() << "; dm232: " << pars.Dm2() 
00218          << endl
00219          << "; norm: " << pars.Normalisation() 
00220          << "; NCBack: " << pars.NCBackgroundScale()
00221          << "; ShwEn: " << pars.ShwEnScale() << endl;
00222   }
00223 
00224   fFDFlux = this->CalculateFDFlux(pars);
00225   fFDNCBackground = this->CalculateFDNCBackground(pars);
00226   
00227   //Pick up the pre-calculated stuff
00228   // TODO CJB - the destruction of these histograms takes ages
00229   NuMatrixSpectrum nuPrediction = fFDFlux[0];
00230   NuMatrixSpectrum wsBackground = fFDFlux[0];
00231   NuMatrixSpectrum ncBackground = fFDNCBackground[0];
00232   
00233   wsBackground.Multiply(fHelper->FDCCContamination());
00234   if (fSpecialWSMode){
00235     wsBackground = fSpecialWSBackgroundFlux[0];
00236   }
00237 
00238   WriteToJess(wsBackground, "wsBackground", false);
00239   OscillateFD(wsBackground, pars);
00240   wsBackground.TrueToReco(fHelper->FDCCContaminationRecoVsTrue());
00241 
00242   nuPrediction.Multiply(fHelper->FDEfficiency());
00243   
00244   WriteToJess(nuPrediction, "nuPrediction", false);
00245   OscillateFD(nuPrediction, pars);
00246 
00247   nuPrediction.TrueToReco(fHelper->FDRecoVsTrue());
00248 
00249   ncBackground.Multiply(pars.NCBackgroundScale());
00250   WriteToJess(ncBackground, "ncBackground", false);
00251   // We don't oscillate the NC background. Which means it doesn't get
00252   // decayed or decohered either. Probably OK since it's a tiny component,
00253   // but not exactly ideal.
00254 
00255   nuPrediction.Add(ncBackground);
00256   nuPrediction.Add(wsBackground);
00257 
00258   nuPrediction.Multiply(pars.Normalisation());
00259 
00260   //Prediction is done. Now fix the stupid error bars and give it a
00261   //better name
00262   nuPrediction.RemoveErrors();
00263   nuPrediction.SetName("fdPred");  
00264   nuPrediction.SetTitle("fdPred");  
00265   vector<NuMatrixSpectrum> ccPredictions;
00266   ccPredictions.push_back(nuPrediction);
00267   return ccPredictions;
00268 }

void NuMMRunNDOsc::OscillateFD ( NuMatrixSpectrum pred,
const NuMMParameters pars 
) const [private]

Helper. Oscillates, decays or decoheres a true energy numu spectrum.

Definition at line 384 of file NuMMRunNDOsc.cxx.

References NuMMParameters::Delta1(), NuMMParameters::Delta2(), NuMMParameters::Delta3(), NuMMParameters::Dm2(), NuMMParameters::Dm221(), NuMMParameters::Dm243(), Munits::km, NuMatrixSpectrum::OscillateFourFlavourAverage(), NuMMParameters::Theta12(), NuMMParameters::Theta13(), NuMMParameters::Theta14(), NuMMParameters::Theta23(), NuMMParameters::Theta24(), and NuMMParameters::Theta34().

Referenced by MakeFDPred().

00386 {
00387   Double_t baseline = 735.0 * Munits::km;
00388 
00389   pred.OscillateFourFlavourAverage(pars.Dm2(), pars.Theta23(),
00390                      pars.Dm221(), pars.Dm243(),
00391                      pars.Theta12(),
00392                      pars.Theta13(), pars.Theta14(),
00393                      pars.Theta24(), pars.Theta34(),
00394                      pars.Delta1(), pars.Delta2(),
00395                      pars.Delta3(),
00396                      baseline);
00397 }

void NuMMRunNDOsc::PrecalculateWSFlux ( NuMMHelperPRL helper,
const NuMatrixSpectrum ndOtherData 
) [virtual]

Definition at line 327 of file NuMMRunNDOsc.cxx.

References NuMMHelperPRL::BeamMatrixNuMuCCXSec(), NuMatrixSpectrum::Divide(), NuMatrixSpectrum::ExtrapolateNDToFD(), NuMMHelperPRL::FDEfficiencyOtherChargeWS(), fFDCCData, NuMMRun::fFDFidMass, NuMMRun::fNDFidMass, fSpecialWSBackgroundFlux, fSpecialWSMode, NuMatrix::GetPOT(), NuMatrixSpectrum::Multiply(), NuMMHelperPRL::NDCCContamination(), NuMMHelperPRL::NDEfficiency(), NuMMHelperPRL::NDPurity(), NuMMHelperPRL::NDRecoVsTrue(), NuMatrixSpectrum::RecoToTrue(), SanityCheckSpecialWSFiles(), and NuMatrix1D::Subtract().

00329 {
00330   cout << "Running PrecalculateWSFlux" << endl;
00331   this->SanityCheckSpecialWSFiles(helper,ndOtherData);
00332   fSpecialWSMode = true;
00333   fSpecialWSBackgroundFlux.clear();
00334   NuMatrixSpectrum prediction(*ndOtherData);
00335   NuMatrixSpectrum wsBackground(prediction);
00336   prediction.Multiply(helper->NDPurity());
00337   
00338   wsBackground.Multiply(helper->NDCCContamination());
00339   prediction.Subtract(wsBackground);
00340   
00341   prediction.RecoToTrue(helper->NDRecoVsTrue());
00342   prediction.Divide(helper->NDEfficiency());
00343   prediction.Divide(ndOtherData->GetPOT());
00344   prediction.Divide(fNDFidMass);
00345   prediction.ExtrapolateNDToFD(helper->BeamMatrixNuMuCCXSec());
00346   prediction.Multiply(fFDFidMass);
00347   prediction.Multiply(fFDCCData->GetPOT());
00348   prediction.Multiply(helper->FDEfficiencyOtherChargeWS());
00349   
00350   fSpecialWSBackgroundFlux.push_back(prediction);
00351 }

void NuMMRunNDOsc::SanityCheckSpecialWSFiles ( NuMMHelperPRL helper,
const NuMatrixSpectrum ndOtherData 
) const [private, virtual]

Definition at line 272 of file NuMMRunNDOsc.cxx.

References NuMMHelperPRL::NDEfficiency(), and NuMatrixSpectrum::Spectrum().

Referenced by PrecalculateWSFlux().

00274 {
00275 
00276   string dataName = fNDCCData->Spectrum()->GetName();
00277   string otherDataName = ndOtherData->Spectrum()->GetName();
00278   string helperEffName = helper->NDEfficiency()->GetName();
00279 
00280   if ("RecoEnergy_ND" == dataName){
00281     if ("RecoEnergyPQ_ND" == otherDataName){
00282       cout << "You are extrapolating NuMu data. "
00283            << "WS histograms sanity checked as OK."
00284            << endl;
00285     }
00286     else{
00287       cout << "You are extrapolating NuMu data. "
00288            << "WS histograms failing sanity check."
00289            << endl;
00290       assert(false);
00291     }
00292     if ("EfficiencyPQ_ND" == helperEffName){
00293       cout << "WS helper sanity checked as OK."
00294            << endl;
00295     }
00296     else{
00297       cout << "WS helper failing sanity check."
00298            << endl;
00299       assert(false);
00300     }
00301   }
00302   else if ("RecoEnergyPQ_ND" == dataName){
00303     if ("RecoEnergy_ND" == otherDataName){
00304       cout << "You are extrapolating NuMu data. "
00305            << "WS histograms sanity checked as OK."
00306            << endl;
00307     }
00308     else{
00309       cout << "You are extrapolating NuMu data. "
00310            << "WS histograms failing sanity check."
00311            << endl;
00312       assert(false);
00313     }
00314     if ("Efficiency_ND" == helperEffName){
00315       cout << "WS helper sanity checked as OK."
00316            << endl;
00317     }
00318     else{
00319       cout << "WS helper failing sanity check."
00320            << endl;
00321       assert(false);
00322     }
00323   }
00324 }

virtual void NuMMRunNDOsc::SetFDData ( NuMatrixSpectrum fdData  )  [inline, virtual]

Definition at line 32 of file NuMMRunNDOsc.h.

References fFDCCData.

00032 {fFDCCData = fdData;}

void NuMMRunNDOsc::UnoscillateND ( NuMatrixSpectrum pred,
const NuMMParameters pars 
) const [private]
std::vector< TH1D > NuMMRunNDOsc::WriteFDPredHistos ( const NuMMParameters pars  )  const [virtual]

Implements NuMMRun.

Definition at line 36 of file NuMMRunNDOsc.cxx.

References NuMatrix1D::Add(), NuMatrixSpectrum::Multiply(), NuMatrixSpectrum::Spectrum(), and NuMatrixSpectrum::TrueToReco().

00037 {
00038   vector<TH1D> vHistos;
00039 
00040   NuMatrixSpectrum nuPrediction = fFDFlux[0];
00041   
00042   TH1D hNDData(*(fNDCCData->Spectrum()));
00043   hNDData.SetName("ndData");
00044   hNDData.SetTitle("ndData");
00045   vHistos.push_back(*(new TH1D(hNDData)));
00046   
00047   nuPrediction.Multiply(fHelper->FDEfficiency());
00048 
00049   NuMatrixSpectrum ncBackground = fFDNCBackground[0];
00050   
00051   OscillateFD(nuPrediction, pars);
00052   
00053   //Output the prediction in true energy
00054   TH1D hTrueFDPrediction(*(nuPrediction.Spectrum()));
00055   hTrueFDPrediction.SetName("fdTruePrediction");
00056   vHistos.push_back(hTrueFDPrediction);
00057   
00058   nuPrediction.TrueToReco(fHelper->FDRecoVsTrue());
00059   
00060   //Get the prediction in reco energy
00061   TH1D hBaseFDPrediction(*(nuPrediction.Spectrum()));
00062   hBaseFDPrediction.SetName("fdBasePrediction");
00063   vHistos.push_back(hBaseFDPrediction);
00064   
00065   // Add in the backgrounds: NC
00066   nuPrediction.Add(ncBackground);
00067   // WS
00068   NuMatrixSpectrum wsBackground = fFDFlux[0];
00069   wsBackground.Multiply(fHelper->FDCCContamination());
00070   if(fSpecialWSMode) wsBackground = fSpecialWSBackgroundFlux[0];
00071   OscillateFD(wsBackground, pars);
00072   wsBackground.TrueToReco(fHelper->FDCCContaminationRecoVsTrue());
00073   nuPrediction.Add(wsBackground);
00074   
00075   //Get the prediction with backgrounds
00076   TH1D hFDPrediction(*(nuPrediction.Spectrum()));  
00077   hFDPrediction.SetName("fdPrediction");
00078   vHistos.push_back(hFDPrediction);
00079   
00080   TH1D hFDNCBackground(*(ncBackground.Spectrum()));
00081   hFDNCBackground.SetName("fdNCBackground");
00082   vHistos.push_back(hFDNCBackground);
00083 
00084   TH1D hFDWSBackground(*(wsBackground.Spectrum()));
00085   hFDWSBackground.SetName("fdWSBackground");
00086   vHistos.push_back(hFDWSBackground);
00087   
00088   TH1D hfdData(*(fFDCCData->Spectrum()));
00089   hfdData.SetName("fdData");
00090   vHistos.push_back(hfdData);
00091 
00092   return vHistos;
00093 }

void NuMMRunNDOsc::WriteToJess ( NuMatrixSpectrum  spectrum,
const std::string  name,
bool  osc 
) [private, virtual]

Definition at line 400 of file NuMMRunNDOsc.cxx.

References NuMMHelperPRL::FDCCContaminationRecoVsTrue(), NuMMHelperPRL::FDRecoVsTrue(), NuMMHelperPRL::FDTauRecoVsTrue(), fHelper, NuMMRun::fJessFile, Msg::kError, NuMatrixSpectrum::MakeJessTemplate(), MSG, NuMatrixSpectrum::RemoveErrors(), and NuMatrixSpectrum::Spectrum().

Referenced by MakeFDPred().

00403 {
00404   // If they don't want the plots don't try to give them
00405   if (!fJessFile) return;
00406 
00407   const string opName = osc ? (name+"_osc") : name;
00408 
00409   fJessFile->cd();
00410   if ("wsBackground" == name){
00411     TH2D jessHist =
00412       spectrum.MakeJessTemplate(fHelper->FDCCContaminationRecoVsTrue());
00413     jessHist.Write(opName.c_str());
00414   }
00415   else if ("nuPrediction" == name){
00416     TH2D jessHist =
00417       spectrum.MakeJessTemplate(fHelper->FDRecoVsTrue());
00418     jessHist.Write(opName.c_str());
00419   }
00420   else if ("potentialTaus" == name){
00421     TH2D jessHist =
00422       spectrum.MakeJessTemplate(fHelper->FDTauRecoVsTrue());
00423     jessHist.Write(opName.c_str());
00424   }
00425   else if ("ncBackground" == name){
00426     spectrum.RemoveErrors();
00427     spectrum.Spectrum()->Write(opName.c_str());
00428   }
00429   else if ("data" == name){
00430     spectrum.Spectrum()->Write(opName.c_str());
00431   }
00432   else{
00433     MSG("NuMatrixSpectrum", Msg::kError)
00434       << "You're trying to write a Jess template which has an "
00435       << "unrecognized name"
00436       << endl;
00437   }
00438 }


Member Data Documentation

Definition at line 59 of file NuMMRunNDOsc.h.

Referenced by MakeFDPred().

Definition at line 61 of file NuMMRunNDOsc.h.

Referenced by MakeFDPred().

Definition at line 60 of file NuMMRunNDOsc.h.

Reimplemented from NuMMRun.

Definition at line 63 of file NuMMRunNDOsc.h.

Referenced by CalculateFDFlux(), CalculateFDNCBackground(), CalculateFDTauFlux(), MakeFDPred(), and WriteToJess().

Definition at line 57 of file NuMMRunNDOsc.h.

Referenced by CalculateFDFlux(), CalculateFDNCBackground(), and CalculateFDTauFlux().

Definition at line 62 of file NuMMRunNDOsc.h.

Referenced by MakeFDPred(), and PrecalculateWSFlux().

Bool_t NuMMRunNDOsc::fSpecialWSMode [private]

Definition at line 55 of file NuMMRunNDOsc.h.

Referenced by MakeFDPred(), and PrecalculateWSFlux().


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

Generated on 2 Nov 2017 for loon by  doxygen 1.6.1