]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/EvtGenModels/EvtBtoKD3P.hh
added a histogram
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenModels / EvtBtoKD3P.hh
CommitLineData
da0e9ce3 1//-----------------------------------------------------------------------
2// File and Version Information:
3// $Id: EvtBtoKD3P.hh,v 1.4 2006/10/02 01:07:45 lange Exp $
4//
5// Environment:
6// This software is part of the EvtGen package developed jointly
7// for the BaBar and CLEO collaborations. If you use all or part
8// of it, please give an appropriate acknowledgement.
9//
10// Copyright Information:
11// Copyright (C) 2003, Colorado State University
12//
13// Module creator:
14// Abi soffer, CSU, 2003
15//-----------------------------------------------------------------------
16
17// Decay model that does the decay B+ -> K+ D , D -> 3 psudoscalars.
18//
19// The B- daughters specified in the decay file should be K-, D0, D0,
20// where the first D0 is produced via b->c decay and the second via b->u.
21// In reality, only one D daughter exists, so the first two
22// daughters must be defined to decay to the same final state using
23// the EvtPto3P model, but with CP-conjugate amplitudes.
24//
25// For a given point in the Pto3P Dalitz plot,
26// the total amplitude is \propto [A1 + A2 r exp(i(phase))], where
27//
28// A1 & A2 are the amplitudes of the D0 and D0bar to decay into that
29// Dalitz plot point,
30//
31// r is the (positive) ratio between the A(B->B0bar K) and A(B->D0 K)
32// B decay amplitudes,
33//
34// phase is the total phase difference (weak phase + strong phase) between
35// A(B->D0bar K) and A(B->B0 K).
36//
37// Note that this model knows nothing about your convention for the
38// sign of the phase, so when specifying the decay of a B- you need to
39// change the order of D0 and D0bar and change the total phase so that
40// the sign of the weak phase flips with respect to the parameters of B+.
41//
42
43#ifndef EVT_BTOKD3P
44#define EVT_BTOKD3P
45
46class EvtParticle;
47#include "EvtGenBase/EvtDecayAmp.hh"
48#include "EvtGenBase/EvtComplex.hh"
49
50
51class EvtBtoKD3P : public EvtDecayAmp {
52
53public:
54 EvtBtoKD3P();
55 EvtBtoKD3P(const EvtBtoKD3P & other);
56 virtual ~EvtBtoKD3P();
57 EvtDecayBase* clone();
58
59 // Initialize model
60 virtual void init();
61 virtual void initProbMax();
62 virtual void decay(EvtParticle *p);
63
64 // we really have two daughters, although three are listed in the .dec file:
65 virtual int nRealDaughters() { return 2;}
66
67 std::string getName();
68
69protected:
70 // parameters:
71 double _r;
72 EvtComplex _exp;
73
74 // other:
75 const EvtDecayBase * _model1;
76 const EvtDecayBase * _model2;
77 bool _decayedOnce;
78
79};
80
81
82#endif
83
84
85
86
87