File indexing completed on 2026-08-06 09:20:05
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021 #ifndef EvtBsMuMuKK_HH
0022 #define EvtBsMuMuKK_HH
0023
0024 #include "EvtGenBase/EvtComplex.hh"
0025 #include "EvtGenBase/EvtDecayAmp.hh"
0026
0027 #include <string>
0028
0029 class EvtParticle;
0030
0031
0032
0033 class EvtBsMuMuKK : public EvtDecayAmp {
0034 public:
0035 std::string getName() override;
0036 EvtDecayBase* clone() override;
0037
0038 void init() override;
0039 void initProbMax() override;
0040
0041 void decay( EvtParticle* p ) override;
0042
0043 protected:
0044 EvtComplex Flatte( const double m0, const double m ) const;
0045
0046 EvtComplex GetRho( const double m0, const double m ) const;
0047
0048 EvtComplex Breit_Wigner( const double Gamma0, const double m0,
0049 const double m, const int J, const double q0,
0050 const double q ) const;
0051
0052 double Integral( const double Gamma0, const double m0, const int JR,
0053 const int JB, const double q0, const double M_KK_ll,
0054 const double M_KK_ul, const int fcntype ) const;
0055
0056 double X_J( const int J, const double q, const int isB ) const;
0057
0058 double Wignerd( int J, int l, int alpha, double theta ) const;
0059
0060 EvtComplex AngularDist( int J, int l, int alpha, double cK, double cL,
0061 double chi ) const;
0062
0063 EvtComplex AmpTime( const int q, const EvtComplex& gplus,
0064 const EvtComplex& gminus, const double delta,
0065 const double lambda_abs, const double Amp,
0066 const double phis, const int eta ) const;
0067
0068 private:
0069 double MBs, MJpsi, Mf0, Mphi, Mf2p, MKp, MKm, MK0, Mpip, Mpi0, Mmu;
0070 double Gamma0phi, Gamma0f2p;
0071 double kin_lower_limit, kin_upper_limit, kin_middle;
0072 double p30Kp_mid_CMS, p30Kp_ll_CMS, p30Kp_phi_CMS, p30Kp_f2p_CMS;
0073 double p30Jpsi_mid_CMS, p30Jpsi_ll_CMS, p30Jpsi_phi_CMS, p30Jpsi_f2p_CMS;
0074 double int_const_NR, int_Flatte_f0, int_BW_phi, int_BW_f2p;
0075 double f_S_NR, f_f0, f_phi, f_f2p, f_phi_0, f_phi_perp, f_f2p_0, f_f2p_perp;
0076 double A_S_NR, A_f0, A_phi_0, A_phi_perp, A_phi_par, A_f2p_0, A_f2p_perp;
0077 double A_f2p_par;
0078 double delta_S_NR, delta_f0, delta_phi_0, delta_phi_perp, delta_phi_par;
0079 double delta_f2p_0, delta_f2p_perp, delta_f2p_par;
0080 double phis_S_NR, phis_f0, phis_phi_0, phis_phi_perp, phis_phi_par;
0081 double phis_f2p_0, phis_f2p_perp, phis_f2p_par;
0082 double lambda_S_NR_abs, lambda_f0_abs, lambda_phi_0_abs, lambda_phi_perp_abs;
0083 double lambda_phi_par_abs, lambda_f2p_0_abs, lambda_f2p_perp_abs;
0084 double lambda_f2p_par_abs;
0085 double Gamma, deltaGamma, ctau, deltaMs;
0086 };
0087
0088 #endif