18 return _gK_by_gPi * gPi();
26 _pi0Mass = pdgMass(111);
31 if (_piPlusMass <= 0){
32 _piPlusMass = pdgMass(211);
38 _K0Mass = pdgMass(311);
44 _KPlusMass = pdgMass(321);
51 double a2 = 1.0 - (2*m0/
m)*(2*m0/
m);
52 std::complex<double> a;
56 cout <<
"WARNING in FocusFlatte::aSqrtTerm()" 57 <<
" sqrt( 1.0 - (2m0/m)^2 ) imaginary" 58 <<
" (returning an imaginary number)." 61 std::complex<double> i(0.0, 1.0);
64 std::complex<double> unit(1.0, 0.0);
65 a = ((std::complex<double>) sqrt(a2)) * unit;
75 std::complex<double> Gpipi = (1./3.) * aSqrtTerm( mPi0(),
m )
76 + (2./3.) * aSqrtTerm( mPiPlus(),
m );
79 std::complex<double> GKK = (1./2.) * aSqrtTerm( mK0(),
m )
80 + (1./2.) * aSqrtTerm( mKPlus(),
m );
82 std::complex<double> FlatteWidth = gPi() * Gpipi + gK() * GKK;
84 cout <<
"LAURENS CLASS FocusFlatte: compare Flatte Width = " << FlatteWidth
92 cout <<
"ERROR FocusFlatte::GofM() called should not have happenned!" <<endl;
93 std::complex<double> val = complexGofM();
99 double mpdg = mumsMass();
100 std::complex<double> i(0.0, 1.0);
101 std::complex<double> invBW = (((std::complex<double>) mpdg*mpdg -
102 mumsRecoMass2()) - i * mpdg * complexGofM());
static std::complex< double > aSqrtTerm(double a, double b)
static double pdgMass(int PDG_ID)
virtual std::complex< double > BreitWigner()
virtual double mumsRecoMass() const
static double mass(const std::string &name)
std::complex< double > complexGofM()