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, Pang Cai-Ying@IHEP 00010 // 00011 // Module: EvtLundCharm.cc 00012 // the necessary file: jetset74.F,lund_crm1_evtgen.F 00013 // fist.inc,gen.inc mix.inc stdhep.inc 00014 // Description: Modified Lund model at tau-charm energy level, see 00015 // PHYSICAL REVIEW D, VOLUME 62, 034003 00016 // Modification history: 00017 // 00018 // Ping R.-G. Octo., 2007 Module created 00019 // 00020 //------------------------------------------------------------------------ 00021 00022 #ifndef EVTLUNDCHARM_HH 00023 #define EVTLUNDCHARM_HH 00024 00025 #include "EvtGenBase/EvtDecayIncoherent.hh" 00026 00027 00028 class EvtParticle; 00029 00030 typedef EvtDecayBase* EvtDecayBasePtr; 00031 00032 #include <iosfwd> 00033 00034 class EvtLundCharm:public EvtDecayIncoherent { 00035 00036 public: 00037 00038 EvtLundCharm(); 00039 virtual ~EvtLundCharm(); 00040 00041 void getName(std::string& name); 00042 EvtDecayBase* clone(); 00043 void decay(EvtParticle *p); 00044 00045 std::string commandName(); 00046 void command(std::string cmd); 00047 00048 void init(); 00049 00050 void initProbMax(); 00051 int getTotalEvt(){return nevt;} 00052 static void LundcrmInit(int f); 00053 00054 private: 00055 00056 void store(EvtDecayBase* jsdecay); 00057 void fixPolarizations(EvtParticle* p); 00058 00059 static int nlundcharmdecays; 00060 static EvtDecayBasePtr* lundcharmdecays; 00061 static int ntable; 00062 00063 static int ncommand; 00064 static int lcommand; 00065 static std::string* commands; 00066 static int nevt; 00067 00068 }; 00069 00070 #endif 00071 00072 00073 00074