]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/EvtGenModels/EvtVSS.cxx
Not needed.
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenModels / EvtVSS.cxx
CommitLineData
da0e9ce3 1//--------------------------------------------------------------------------
2//
3// Environment:
4// This software is part of the EvtGen package developed jointly
5// for the BaBar and CLEO collaborations. If you use all or part
6// of it, please give an appropriate acknowledgement.
7//
8// Copyright Information: See EvtGen/COPYRIGHT
9// Copyright (C) 1998 Caltech, UCSB
10//
11// Module: EvtVSS.cc
12//
13// Description: Routine to decay vector-> scalar scalar
14//
15// Modification history:
16//
17// RYD November 24, 1996 Module created
18//
19//------------------------------------------------------------------------
20//
21#include "EvtGenBase/EvtPatches.hh"
22#include <stdlib.h>
23#include "EvtGenBase/EvtParticle.hh"
24#include "EvtGenBase/EvtGenKine.hh"
25#include "EvtGenBase/EvtPDL.hh"
26#include "EvtGenBase/EvtVector4C.hh"
27#include "EvtGenBase/EvtVector4R.hh"
28#include "EvtGenBase/EvtReport.hh"
29#include "EvtGenModels/EvtVSS.hh"
30#include <string>
31
32EvtVSS::~EvtVSS() {}
33
34std::string EvtVSS::getName(){
35
36 return "VSS";
37
38}
39
40
41EvtDecayBase* EvtVSS::clone(){
42
43 return new EvtVSS;
44
45}
46
47void EvtVSS::init(){
48
49 // check that there are 0 arguments
50 checkNArg(0);
51
52 // check that there are 2 daughters
53 checkNDaug(2);
54
55 // check the parent and daughter spins
56 checkSpinParent(EvtSpinType::VECTOR);
57 checkSpinDaughter(0,EvtSpinType::SCALAR);
58 checkSpinDaughter(1,EvtSpinType::SCALAR);
59}
60
61void EvtVSS::initProbMax() {
62
63 setProbMax(1.0);
64
65}
66
67void EvtVSS::decay( EvtParticle *p){
68
69 p->initializePhaseSpace(getNDaug(),getDaugs());
70
71 EvtVector4R pDaug = p->getDaug(0)->getP4();
72
73 double norm=1.0/pDaug.d3mag();
74
75 for (int i=0; i<3; i++) vertex(i,norm*pDaug*(p->eps(i)));
76
77 return;
78}
79