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

MadCluAnalysis.h

Go to the documentation of this file.
00001 #ifndef madcluanalysis_h
00002 #define madcluanalysis_h
00003 #include "MadAnalysis.h"
00004 #include "TMultiLayerPerceptron.h"
00005 
00006 using namespace std;
00007 
00008 class MadCluAnalysis : public MadAnalysis
00009 {
00010 
00011  protected:
00012 
00013   //from MadAnalysis:
00014   Bool_t PassTruthSignal(Int_t mcevent=0);//defines events which oscillate 
00015   Bool_t PassAnalysisCuts(Int_t event=0);//put cuts here for analysis
00016   Bool_t PassBasicCuts(Int_t event=0);//put basic track quality etc cuts here
00017   Float_t PID(Int_t event=0,Int_t method=0);//define PID parameter
00018   Float_t RecoAnalysisEnergy(Int_t event=0);//get reconstructed energy for anal
00019   Float_t GetWeight(Int_t event=0);//get event weight
00020   Bool_t AddUserBranches(TTree *);
00021   void CallUserFunctions(Int_t);
00022   
00023  public:
00024 
00025   MadCluAnalysis(TChain *chainSR=0,TChain *chainMC=0,TChain *chainTH=0,TChain *chainEM=0);
00026   MadCluAnalysis(JobC *,string,int);
00027   ~MadCluAnalysis();
00028 
00029   void Plot(char *fileName,Int_t startEnt=0);
00030   void Plotter(char *fileName);
00031   Double_t FOM();
00032   
00033   void DataDistributions(char *filename);
00034   void DataMCComp(char *,char *);
00035   Bool_t PassDataCleaningCuts(Int_t shower);
00036   Bool_t IsTrackInSlice(Int_t slice);
00037   Bool_t IsNueFidVtxEvt(Int_t event);
00038 
00039   Double_t *PHWProbEM(Int_t event);
00040   Double_t *PHWCluID(Int_t event);
00041   Double_t *PHWAvgDev(Int_t event);
00042   Double_t *ChargeFracRMS(Int_t event,Int_t method=0);
00043   Double_t *AveNumSSPlane(Int_t event);
00044 
00045   Bool_t FillPHWProbEM(Int_t event);
00046   Bool_t FillPHWCluID(Int_t event);
00047   Bool_t FillPHWAvgDev(Int_t event);
00048   Bool_t FillChargeFracRMS(Int_t event,Int_t method=0);
00049   Bool_t FillAveNumSSPlane(Int_t event);
00050   Bool_t FillNCluster(Int_t event);
00051   Bool_t FillBestProbEM(Int_t event);
00052 
00053   Bool_t ReadPIDFile(char *filename);
00054   Bool_t ReadNNFile(char *filename);
00055 
00056   Double_t PAN_PHWCluIDU;
00057   Double_t PAN_PHWCluIDV;
00058   Double_t PAN_PHWCluIDBest;
00059 
00060   Double_t PAN_PHWProbEMU;
00061   Double_t PAN_PHWProbEMV;
00062   Double_t PAN_PHWProbEMBest;
00063 
00064   Double_t PAN_PHWAvgDevU;
00065   Double_t PAN_PHWAvgDevV;
00066   Double_t PAN_PHWAvgDevBest;
00067 
00068   Double_t PAN_ChargeFracRMSU;
00069   Double_t PAN_ChargeFracRMSV;
00070   Double_t PAN_ChargeFracRMSBest;
00071 
00072   Double_t PAN_AveNumSSPlaneU;
00073   Double_t PAN_AveNumSSPlaneV;
00074   Double_t PAN_AveNumSSPlaneBest;
00075 
00076   Int_t PAN_NShowerStripU;
00077   Int_t PAN_NShowerStripV;
00078   Int_t PAN_NShowerStripBest;
00079 
00080   Int_t PAN_NPhysShowerStripU;
00081   Int_t PAN_NPhysShowerStripV;
00082 
00083   Double_t PAN_BestProbEM;
00084   Double_t PAN_RatioProbEM;
00085   Double_t PAN_Weight;
00086 
00087   Float_t fPID3;
00088   Float_t fPID4;
00089   Float_t fPID5;
00090 
00091   Int_t fis_nue_pid;
00092 
00093   Int_t PAN_NClusterU;
00094   Int_t PAN_NClusterV;
00095   Int_t PAN_NPhysClusterU;
00096   Int_t PAN_NPhysClusterV;
00097 
00098   TH1F *flikelihoodDists[12];
00099   TMultiLayerPerceptron *fneuralNet;
00100 
00101 };
00102 #endif // #ifdef madcluanalysis_h

Generated on Mon Feb 15 11:06:55 2010 for loon by  doxygen 1.3.9.1