00001 //-------------------------------------------------------------------------- 00002 // 00003 // Environment: 00004 // This software is part of models developed at BES collaboration 00005 // based on the EvtGen framework. If you use all or part 00006 // of it, please give an appropriate acknowledgement. 00007 // 00008 // Copyright Information: See EvtGen/BesCopyright 00009 // Copyright (A) 2006 Ping Rong-Gang @IHEP 00010 // 00011 // Module: EvtBody3.cc //Modified Body3 model 00012 // 00013 // usage: 00014 // Users need to provide the MC and data file in NTuple style. The decays are described as 00015 // A-> x1 + x2 + x3 00016 //angular distribution: costheta1, costheta2 ,costheta3 00017 // mass distribution: m12, m13, and m23, here, m12 ==> mass of x1 and x2, etc. 00018 // these variables are defined as double type, the tree name is mc and data, repectively 00019 // Modification history: 00020 // 00021 // Ping R.-G. Aug., 2010 Module created 00022 // 00023 //------------------------------------------------------------------------ 00024 00025 #ifndef EVTMBODY3_HH 00026 #define EVTMBODY3_HH 00027 #include "TH1.h" 00028 #include "TAxis.h" 00029 #include "TH2.h" 00030 #include "TH3.h" 00031 #include "TFile.h" 00032 #include "TApplication.h" 00033 #include "TROOT.h" 00034 #include "TChain.h" 00035 #include "EvtGenBase/EvtDecayIncoherent.hh" 00036 #include "EvtGenBase/EvtNT3.hh" 00037 00038 class EvtParticle; 00039 class EvtMBody3:public EvtDecayIncoherent { 00040 00041 public: 00042 00043 EvtMBody3() {} 00044 virtual ~EvtMBody3(); 00045 00046 void getName(std::string& name); 00047 00048 EvtDecayBase* clone(); 00049 00050 void initProbMax(); 00051 00052 void init(); 00053 00054 void decay(EvtParticle *p); 00055 00056 const char* setFileName(int i ); //Defined by user to specify the root file name 00057 00058 private: 00059 00060 }; 00061 00062 #endif 00063