BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtFlatQ2.cc
Go to the documentation of this file.
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: EvtFlatQ2.cc
12//
13// Description: B->Xu l nu with flat q2 distribution
14//
15// Modification history:
16//
17// David Cote, U. de Montreal, 11/02/2003 Module created
18//
19//------------------------------------------------------------------------
20//
21#include "EvtFlatQ2.hh"
23
31#include <fstream>
32#include <stdio.h>
33#include <stdlib.h>
34#include <string>
35using std::fstream;
36
38
39void EvtFlatQ2::getName( std::string& model_name ) { model_name = "FLATQ2"; }
40
42
44
46
47 // check that there are 0 arguments
48 checkNArg( 0 );
49 checkNDaug( 3 );
50
51 // We expect B->X l nu events
55}
56
58
60
61 EvtVector4R p4Xu = p->getDaug( 0 )->getP4();
62 double pXu_x2 = p4Xu.get( 1 ) * p4Xu.get( 1 );
63 double pXu_y2 = p4Xu.get( 2 ) * p4Xu.get( 2 );
64 double pXu_z2 = p4Xu.get( 3 ) * p4Xu.get( 3 );
65 double pXu = sqrt( pXu_x2 + pXu_y2 + pXu_z2 );
66 double prob = 1 / pXu;
67
68 if ( pXu > 0.01 ) setProb( prob );
69
70 return;
71}
void checkSpinDaughter(int d1, EvtSpinType::spintype sp)
void checkSpinParent(EvtSpinType::spintype sp)
void setProbMax(double prbmx)
void checkNDaug(int d1, int d2=-1)
EvtId * getDaugs()
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
void setProb(double prob)
void getName(std::string &name)
Definition EvtFlatQ2.cc:39
void decay(EvtParticle *p)
Definition EvtFlatQ2.cc:57
void initProbMax()
Definition EvtFlatQ2.cc:43
void init()
Definition EvtFlatQ2.cc:45
EvtDecayBase * clone()
Definition EvtFlatQ2.cc:41
virtual ~EvtFlatQ2()
Definition EvtFlatQ2.cc:37
const EvtVector4R & getP4() const
EvtParticle * getDaug(int i)
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
double get(int i) const