StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
EvtIncoherentMixing.hh
1 // $Id: EvtIncoherentMixing.hh,v 1.1 2016/09/23 18:37:30 jwebb Exp $
2 #ifndef EVTINCOHERENTMIXING_HH
3 #define EVTINCOHERENTMIXING_HH 1
4 
5 // Include files
6 
7 #include "EvtGenBase/EvtParticle.hh"
8 
16 public:
19 
21 
22  // activate or desactivate the Bs mixing
23  static void setB0Mixing() ;
24  static void unsetB0Mixing() ;
25 
26  // activate or desactivate the B0 mixing
27  static void setBsMixing() ;
28  static void unsetBsMixing() ;
29 
30  // is mixing activated ?
31  static bool doB0Mixing() ;
32  static bool doBsMixing() ;
33 
34  // set values for the mixing
35  static void setdGammad( double value ) ;
36  static void setdeltamd( double value ) ;
37  static void setdGammas( double value ) ;
38  static void setdeltams( double value ) ;
39 
40  // get parameters for mixing
41  static double getdGammad() ;
42  static double getdeltamd() ;
43  static double getdGammas() ;
44  static double getdeltams() ;
45 
46  // Functions to obtain time and type of the mixing ( 1 mix, 0 unmix )
47  static void incoherentB0Mix( const EvtId id, double &t, int &mix ) ;
48  static void incoherentBsMix( const EvtId id, double &t, int &mix ) ;
49 
50  // Functions to check if a B has mixed (comes from a B)
51  static bool isB0Mixed( EvtParticle * ) ;
52  static bool isBsMixed( EvtParticle * ) ;
53 
54  // Functions for CP models
55  // returns for particle p the decay time t , the flavour of the tag
56  // side (B0, anti-B0, B_s0, anti-B_s0). The flavour of p can flip
57  // with probability probB
58  static void OtherB( EvtParticle * p , double & t , EvtId & otherb ,
59  double probB ) ;
60  static void OtherB( EvtParticle * p , double & t , EvtId & otherb ) ;
61 
62  static bool flipIsEnabled() ;
63  static void enableFlip() ;
64  static void disableFlip() ;
65 
66 protected:
67 
68 private:
69 
70  static bool _doB0Mixing ;
71  static bool _doBsMixing ;
72  static double _dGammad ;
73  static double _deltamd ;
74  static double _dGammas ;
75  static double _deltams ;
76  static bool _enableFlip ;
77 };
78 #endif // EVTGENBASE_EVTINCOHERENTMIXING_HH
EvtIncoherentMixing()
Standard constructor.
Definition: EvtId.hh:27
~EvtIncoherentMixing()
Destructor.