MINT2
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Bugg_BW Class Reference

#include <Bugg_BW.h>

Inheritance diagram for Bugg_BW:
BW_BW ILineshape ILineshape MINT::FitParDependent MINT::IFitParDependent MINT::IFitParDependent MINT::IFitParRegister MINT::PolymorphVector< FitParRef > MINT::IFitParDependent

Public Member Functions

 Bugg_BW (const AssociatedDecayTree &tree, const std::string &namePrefix="")
 
virtual std::string name () const
 
virtual ~Bugg_BW ()
 
- Public Member Functions inherited from BW_BW
virtual double prSq () const
 
virtual double prSqForGofM () const
 
virtual double pABSq ()
 
virtual double prSqMax () const
 
 BW_BW (const AssociatedDecayTree &decay, const std::string &lineshapePrefix="", MINT::MinuitParameterSet *mps=0)
 
 BW_BW (const BW_BW &other)
 
virtual ~BW_BW ()
 
virtual std::complex< double > getVal (IDalitzEvent &evt)
 
virtual void print (IDalitzEvent &evt, std::ostream &out=std::cout)
 
virtual void print (std::ostream &out=std::cout) const
 
virtual DalitzCoordinate getDalitzCoordinate (double nSigma=3) const
 
virtual MINT::counted_ptr< IGenFctgeneratingFunction () const
 
virtual void setGenerationLimits (double mi, double ma)
 
virtual int twoLPlusOne () const
 
virtual std::complex< double > EvtGenValue (IDalitzEvent &evt)
 
- Public Member Functions inherited from ILineshape
virtual ~ILineshape ()
 
- Public Member Functions inherited from MINT::FitParDependent
virtual unsigned int size () const
 
virtual const FitParRefoperator[] (unsigned int i) const
 
virtual FitParRefoperator[] (unsigned int i)
 
virtual bool changedSinceLastCall () const
 
virtual void rememberFitParValues ()
 
virtual bool registerFitParDependence (const IFitParDependent &fpd)
 
bool registerFitParDependence (const FitParRef &fpr)
 
void removeAllFitParDependencies ()
 
 FitParDependent (IFitParRegister *daddy=0)
 
 FitParDependent (const FitParDependent &other, IFitParRegister *newDaddy=0)
 
void listFitParDependencies (std::ostream &os=std::cout) const
 
- Public Member Functions inherited from MINT::PolymorphVector< FitParRef >
 PolymorphVector ()
 
 PolymorphVector (unsigned int N)
 
 PolymorphVector (unsigned int N, const FitParRef &c)
 
 PolymorphVector (const PolymorphVector &other)
 
 PolymorphVector (const typename std::vector< FitParRef > &other)
 
virtual ~PolymorphVector ()
 
std::vector< FitParRef > & theVector ()
 
const std::vector< FitParRef > & theVector () const
 
FitParRefoperator[] (unsigned int i)
 
const FitParRefoperator[] (unsigned int i) const
 
FitParRefat (unsigned int i)
 
const FitParRefat (unsigned int i) const
 
std::vector< FitParRef >::iterator begin ()
 
std::vector< FitParRef >::const_iterator begin () const
 
std::vector< FitParRef >::iterator end ()
 
std::vector< FitParRef >::const_iterator end () const
 
std::vector< FitParRef >::iterator find (const FitParRef &c)
 
std::vector< FitParRef >::const_iterator find (const FitParRef &c) const
 
FitParReffront ()
 
const FitParReffront () const
 
FitParRefback ()
 
const FitParRefback () const
 
unsigned int size () const
 
bool empty () const
 
void push_back (const FitParRef &c)
 
void pop_back ()
 
void erase (typename std::vector< FitParRef >::iterator pos)
 
void erase (typename std::vector< FitParRef >::iterator first, typename std::vector< FitParRef >::iterator last)
 
PolymorphVector< FitParRef > & operator= (const PolymorphVector< FitParRef > &other)
 
void clear ()
 
void resize (unsigned int N)
 
void resize (unsigned int N, const FitParRef &c)
 
 operator const typename std::vector< FitParRef > & () const
 
 operator typename std::vector< FitParRef > & ()
 
bool operator== (const MINT::PolymorphVector< FitParRef > &v2) const
 
bool operator!= (const MINT::PolymorphVector< FitParRef > &v2) const
 
bool operator< (const MINT::PolymorphVector< FitParRef > &v2) const
 
bool operator> (const MINT::PolymorphVector< FitParRef > &v2) const
 

Protected Member Functions

double M () const
 
double b1 () const
 
double b2 () const
 
double A () const
 
double g_4pi () const
 
double g_KK () const
 
double g_etaeta () const
 
double alpha () const
 
double sA () const
 
double lambda () const
 
double s0 () const
 
virtual std::complex< double > BreitWigner ()
 
double Gamma_2pi (double s)
 
std::complex< double > Gamma_2K (double s)
 
std::complex< double > Gamma_2eta (double s)
 
double Gamma_4pi (double s)
 
std::complex< double > Gamma_tot (double s)
 
std::complex< double > rho_2 (double s, double m)
 
double rho_4 (double s)
 
double g_1_square (double s)
 
double j1 (double s)
 
double z (double s)
 
- Protected Member Functions inherited from BW_BW
const MINT::MinuitParameterSetgetMinuitParameterSet () const
 
MINT::MinuitParameterSetgetMinuitParameterSet ()
 
const std::string & prefix () const
 
bool substitutePDGForReco () const
 
virtual double twoBody_dgtPsq_in_MumsFrame (double mumsMass, double mA, double mB) const
 
virtual double twoBody_dgtPsq_in_MumsPDGFrame () const
 
virtual double twoBody_recodgtPsq_in_MumsPDGFrame () const
 
virtual double twoBody_dgtPsq_in_MumsRecoFrame ()
 
bool setEventPtr (IDalitzEvent &evt) const
 
IDalitzEventgetEvent () const
 
bool setAllFitParameters ()
 
ResonancePropertiesListresonancePropertiesList () const
 
const ResonancePropertiesresonanceProperties () const
 
virtual const ParticlePropertiesmumsProperties () const
 
virtual ResonancePropertiesFitRefmumsFittableProperties () const
 
virtual int mumsPID () const
 
virtual double mumsMass () const
 
virtual double mumsWidth () const
 
virtual double mumsRadius () const
 
virtual double globalRadius () const
 
virtual double Radius () const
 
double GetAlpha () const
 
virtual int lowestPossibleTwoLPlusOne () const
 
virtual int maxDaughterSpinSum () const
 
virtual int minDaughterSpinSum () const
 
virtual int minDaughterSpinSum2 () const
 
virtual int minDaughterSpinSum3 () const
 
virtual int minDaughterSpinSum4 () const
 
virtual int maxDaughterPairSpinSum (int i, int j) const
 
virtual int minDaughterPairSpinSum (int i, int j) const
 
virtual std::string mumsSpin () const
 
virtual int mumsSpinValue () const
 
virtual int mumsParity () const
 
virtual bool startOfDecayChain () const
 
virtual bool parityConservingL (int L) const
 
virtual double mumsRecoMass2 () const
 
virtual double mumsRecoMass () const
 
virtual MultiQuarkContent mumsQuarkContent () const
 
bool nonResonant () const
 
virtual int numDaughters () const
 
virtual TLorentzVector daughterP4 (int i) const
 
virtual double daughterPDGMass (const int &i) const
 
virtual double daughterWidth (int i) const
 
virtual double daughterRecoMass2 (int i) const
 
virtual double daughterRecoMass (int i) const
 
virtual std::string daughterSpin (int i) const
 
virtual int daughterSpinValue (int i) const
 
virtual MultiQuarkContent daughterQuarkContent (int i) const
 
virtual int daughterP (int i) const
 
virtual int dgtrsInternalParity () const
 
virtual MultiQuarkContent dgtrsQuarkContent () const
 
virtual bool isWeakDecay () const
 
virtual double Fr_PDG_BL ()
 
virtual double Fr_BELLE (double prSquared)
 
virtual double Fr_BELLE_Max ()
 
virtual double Fr ()
 
virtual double FrForGofM ()
 
virtual double FrMax ()
 
virtual double GofM ()
 
virtual void resetInternals ()
 
virtual void resetPDG ()
 

Protected Attributes

const double _m_pi
 
const double _m_K
 
const double _m_eta
 
- Protected Attributes inherited from BW_BW
MINT::MinuitParameterSet_mps
 
std::string _prefix
 
MINT::NamedParameter< int > _normBF
 
bool _useGlobalRadius
 
const AssociatedDecayTree_theDecay
 
double _gen_s_mi
 
double _gen_s_ma
 
ResonancePropertiesList_RPL
 
ResonancePropertiesFitRef_fittableResonancePropertiesPtr
 
MINT::FitParRef_fittableGlobalRadiusPtr
 
- Protected Attributes inherited from MINT::PolymorphVector< FitParRef >
std::vector< FitParRef_vec
 

Detailed Description

Definition at line 20 of file Bugg_BW.h.

Constructor & Destructor Documentation

◆ Bugg_BW()

Bugg_BW::Bugg_BW ( const AssociatedDecayTree tree,
const std::string &  namePrefix = "" 
)
inline

Definition at line 23 of file Bugg_BW.h.

23  :
24  BW_BW(tree, namePrefix)
28  {
29  }
const double _m_pi
Definition: Bugg_BW.h:38
BW_BW(const AssociatedDecayTree &decay, const std::string &lineshapePrefix="", MINT::MinuitParameterSet *mps=0)
Definition: BW_BW.cpp:26
static const double GeV
const double _m_K
Definition: Bugg_BW.h:39
const double _m_eta
Definition: Bugg_BW.h:40
static double mass(const std::string &name)

◆ ~Bugg_BW()

virtual Bugg_BW::~Bugg_BW ( )
inlinevirtual

Definition at line 35 of file Bugg_BW.h.

35 {}

Member Function Documentation

◆ A()

double Bugg_BW::A ( ) const
inlineprotected

Definition at line 45 of file Bugg_BW.h.

45 {return mumsFittableProperties().fitBugg_A() ;}
virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ alpha()

double Bugg_BW::alpha ( ) const
inlineprotected

Definition at line 49 of file Bugg_BW.h.

virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ b1()

double Bugg_BW::b1 ( ) const
inlineprotected

Definition at line 43 of file Bugg_BW.h.

virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ b2()

double Bugg_BW::b2 ( ) const
inlineprotected

Definition at line 44 of file Bugg_BW.h.

virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ BreitWigner()

std::complex< double > Bugg_BW::BreitWigner ( )
protectedvirtual

Reimplemented from BW_BW.

Definition at line 15 of file Bugg_BW.cpp.

15  {
16 
17  double s= mumsRecoMass2()/(GeV*GeV);
18 
19  // double num = M() * Gamma_2pi(s); //only for elastic scattering, not production
20  complex<double> den = M() * M() - s
21  - g_1_square(s) * (s - sA() * _m_pi * _m_pi)/(M() * M() - sA() * _m_pi * _m_pi)*z(s)- complex<double>(0,1) * M() * Gamma_tot(s);
22 
23  return 1./den;
24 }
const double _m_pi
Definition: Bugg_BW.h:38
static const double s
std::complex< double > Gamma_tot(double s)
Definition: Bugg_BW.h:59
double M() const
Definition: Bugg_BW.h:42
virtual double mumsRecoMass2() const
Definition: BW_BW.cpp:548
static const double GeV
double sA() const
Definition: Bugg_BW.h:50
double z(double s)
Definition: Bugg_BW.cpp:43
double g_1_square(double s)
Definition: Bugg_BW.cpp:30

◆ g_1_square()

double Bugg_BW::g_1_square ( double  s)
protected

Definition at line 30 of file Bugg_BW.cpp.

30  {
31  return M()*(b1()+b2()*s)*exp(-(s-M()*M())/A());
32 }
static const double s
double M() const
Definition: Bugg_BW.h:42
double b2() const
Definition: Bugg_BW.h:44
double b1() const
Definition: Bugg_BW.h:43
double A() const
Definition: Bugg_BW.h:45

◆ g_4pi()

double Bugg_BW::g_4pi ( ) const
inlineprotected

Definition at line 46 of file Bugg_BW.h.

virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ g_etaeta()

double Bugg_BW::g_etaeta ( ) const
inlineprotected

Definition at line 48 of file Bugg_BW.h.

virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ g_KK()

double Bugg_BW::g_KK ( ) const
inlineprotected

Definition at line 47 of file Bugg_BW.h.

virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ Gamma_2eta()

std::complex< double > Bugg_BW::Gamma_2eta ( double  s)
protected

Definition at line 52 of file Bugg_BW.cpp.

52  {
53  return g_etaeta() *g_1_square(s)*s/(M()*M()*M())*exp(-alpha()*sqrt((s-4.*_m_eta*_m_eta)*(s-4.*_m_eta*_m_eta))) * rho_2(s,_m_eta);
54 }
double alpha() const
Definition: Bugg_BW.h:49
std::complex< double > rho_2(double s, double m)
Definition: Bugg_BW.cpp:61
static const double s
double g_etaeta() const
Definition: Bugg_BW.h:48
double M() const
Definition: Bugg_BW.h:42
const double _m_eta
Definition: Bugg_BW.h:40
double g_1_square(double s)
Definition: Bugg_BW.cpp:30

◆ Gamma_2K()

std::complex< double > Bugg_BW::Gamma_2K ( double  s)
protected

Definition at line 48 of file Bugg_BW.cpp.

48  {
49  return g_KK()*g_1_square(s)*s/(M()*M()*M())*exp(-alpha()*sqrt((s-4.*_m_K*_m_K)*(s-4.*_m_K*_m_K))) * rho_2(s,_m_K);
50 }
double alpha() const
Definition: Bugg_BW.h:49
std::complex< double > rho_2(double s, double m)
Definition: Bugg_BW.cpp:61
static const double s
double M() const
Definition: Bugg_BW.h:42
const double _m_K
Definition: Bugg_BW.h:39
double g_1_square(double s)
Definition: Bugg_BW.cpp:30
double g_KK() const
Definition: Bugg_BW.h:47

◆ Gamma_2pi()

double Bugg_BW::Gamma_2pi ( double  s)
protected

Definition at line 26 of file Bugg_BW.cpp.

26  {
27  return g_1_square(s)/M() * (s -sA()*_m_pi*_m_pi)/(M()*M() -sA()*_m_pi*_m_pi)*rho_2(s,_m_pi).real();
28 }
const double _m_pi
Definition: Bugg_BW.h:38
std::complex< double > rho_2(double s, double m)
Definition: Bugg_BW.cpp:61
static const double s
double M() const
Definition: Bugg_BW.h:42
double sA() const
Definition: Bugg_BW.h:50
double g_1_square(double s)
Definition: Bugg_BW.cpp:30

◆ Gamma_4pi()

double Bugg_BW::Gamma_4pi ( double  s)
protected

Definition at line 56 of file Bugg_BW.cpp.

56  {
57  if(s < 16. * _m_pi*_m_pi) return 0;
58  return g_4pi() * rho_4(s)/rho_4(M()*M());
59 }
const double _m_pi
Definition: Bugg_BW.h:38
double rho_4(double s)
Definition: Bugg_BW.cpp:67
static const double s
double M() const
Definition: Bugg_BW.h:42
double g_4pi() const
Definition: Bugg_BW.h:46

◆ Gamma_tot()

std::complex<double> Bugg_BW::Gamma_tot ( double  s)
inlineprotected

Definition at line 59 of file Bugg_BW.h.

59  {
61  }
double Gamma_4pi(double s)
Definition: Bugg_BW.cpp:56
std::complex< double > Gamma_2K(double s)
Definition: Bugg_BW.cpp:48
std::complex< double > Gamma_2eta(double s)
Definition: Bugg_BW.cpp:52
static const double s
double Gamma_2pi(double s)
Definition: Bugg_BW.cpp:26

◆ j1()

double Bugg_BW::j1 ( double  s)
protected

Definition at line 34 of file Bugg_BW.cpp.

34  {
35 
36  double rho_pipi = rho_2(s,_m_pi).real();
37  double returnVal = 2.;
38  if(rho_pipi>0.)returnVal += rho_pipi * log((1.-rho_pipi)/(1.+rho_pipi));
39 
40  return returnVal/TMath::Pi();
41 }
const double _m_pi
Definition: Bugg_BW.h:38
std::complex< double > rho_2(double s, double m)
Definition: Bugg_BW.cpp:61
static const double s

◆ lambda()

double Bugg_BW::lambda ( ) const
inlineprotected

Definition at line 51 of file Bugg_BW.h.

virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ M()

double Bugg_BW::M ( ) const
inlineprotected

Definition at line 42 of file Bugg_BW.h.

42 {return mumsFittableProperties().fitBugg_M() ;}
virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ name()

virtual std::string Bugg_BW::name ( ) const
inlinevirtual

Reimplemented from BW_BW.

Definition at line 31 of file Bugg_BW.h.

31  {
32  return "Bugg_BW("+_theDecay.oneLiner() +")";
33  }
const AssociatedDecayTree & _theDecay
Definition: BW_BW.h:69
void oneLiner(std::stringstream &seam, int generation=0) const
Definition: DDTree.h:375

◆ rho_2()

std::complex< double > Bugg_BW::rho_2 ( double  s,
double  m 
)
protected

Definition at line 61 of file Bugg_BW.cpp.

61  {
62  double rho_squared = 1.- 4. * m*m /s;
63  if(rho_squared >= 0)return sqrt(rho_squared);
64  else return complex<double>(0,1)*sqrt(-rho_squared);
65 }
static const double s
static const double m

◆ rho_4()

double Bugg_BW::rho_4 ( double  s)
protected

Definition at line 67 of file Bugg_BW.cpp.

67  {
68  return 1./(1.+exp(lambda()*(s0()-s)));
69 }
static const double s
double s0() const
Definition: Bugg_BW.h:52
double lambda() const
Definition: Bugg_BW.h:51

◆ s0()

double Bugg_BW::s0 ( ) const
inlineprotected

Definition at line 52 of file Bugg_BW.h.

virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ sA()

double Bugg_BW::sA ( ) const
inlineprotected

Definition at line 50 of file Bugg_BW.h.

virtual ResonancePropertiesFitRef & mumsFittableProperties() const
Definition: BW_BW.cpp:414

◆ z()

double Bugg_BW::z ( double  s)
protected

Definition at line 43 of file Bugg_BW.cpp.

43  {
44  return j1(s)-j1(M()*M());
45 }
static const double s
double M() const
Definition: Bugg_BW.h:42
double j1(double s)
Definition: Bugg_BW.cpp:34

Member Data Documentation

◆ _m_eta

const double Bugg_BW::_m_eta
protected

Definition at line 40 of file Bugg_BW.h.

◆ _m_K

const double Bugg_BW::_m_K
protected

Definition at line 39 of file Bugg_BW.h.

◆ _m_pi

const double Bugg_BW::_m_pi
protected

Definition at line 38 of file Bugg_BW.h.


The documentation for this class was generated from the following files: