00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #include "EvtGenBase/EvtPatches.hh"
00023 #include <stdlib.h>
00024 #include "EvtGenBase/EvtParticle.hh"
00025 #include "EvtGenBase/EvtGenKine.hh"
00026 #include "EvtGenBase/EvtPDL.hh"
00027 #include "EvtGenBase/EvtReport.hh"
00028 #include "EvtGenModels/EvtKKLambdaC.hh"
00029 #include "EvtGenModels/EvtKKLambdaCFF.hh"
00030 #include "EvtGenBase/EvtSemiLeptonicBaryonAmp.hh"
00031 #include <string>
00032
00033 EvtKKLambdaC::~EvtKKLambdaC() {}
00034
00035 void EvtKKLambdaC::getName(std::string& model_name){
00036
00037 model_name="KK_LAMBDAC_SL";
00038
00039 }
00040
00041
00042 EvtDecayBase* EvtKKLambdaC::clone(){
00043
00044 return new EvtKKLambdaC;
00045
00046 }
00047
00048 void EvtKKLambdaC::decay( EvtParticle *p ){
00049
00050 p->initializePhaseSpace(getNDaug(),getDaugs());
00051
00052 _calcamp->CalcAmp(p,_amp2,_ffmodel);
00053 return;
00054 }
00055
00056 void EvtKKLambdaC::initProbMax(){
00057
00058 EvtId parnum,mesnum,lnum,nunum;
00059
00060 parnum = getParentId();
00061 mesnum = getDaug(0);
00062 lnum = getDaug(1);
00063 nunum = getDaug(2);
00064
00065
00066
00067 double mymaxprob=100.;
00068 setProbMax(mymaxprob);
00069
00070 }
00071
00072
00073 void EvtKKLambdaC::init(){
00074
00075 checkNDaug(3);
00076
00077
00078
00079
00080 checkSpinParent(EvtSpinType::DIRAC);
00081 checkSpinDaughter(0,EvtSpinType::DIRAC);
00082 checkSpinDaughter(1,EvtSpinType::DIRAC);
00083 checkSpinDaughter(2,EvtSpinType::NEUTRINO);
00084
00085 _ffmodel = new EvtKKLambdaCFF(getNArg(),getArgs());
00086
00087 _calcamp = new EvtSemiLeptonicBaryonAmp;
00088
00089 }
00090