1 //--------------------------------------------------------------------------
4 // This software is part of the EvtGen package developed jointly
5 // for the BaBar and CLEO collaborations. If you use all or part
6 // of it, please give an appropriate acknowledgement.
8 // Copyright Information: See EvtGen/COPYRIGHT
9 // Copyright (C) 1998 Caltech, UCSB
11 // Module: EvtGen/EvtResonance2.hh
13 // Description:resonance-defining class
15 // Modification history:
17 // lange Nov 21, 2000 Module created
19 //------------------------------------------------------------------------
21 #ifndef EVTRESONANCE2_HH
22 #define EVTRESONANCE2_HH
24 #include "EvtGenBase/EvtVector4R.hh"
34 EvtResonance2& operator = (const EvtResonance2 &);
36 //constructor with all information about the resonance
37 // invmass_angdenom chooses whether to use the resonance mass (false)
38 // or the daughter invariant mass (true) for the denominators in
39 // angular distributions
41 EvtResonance2(const EvtVector4R& p4_p, const EvtVector4R& p4_d1,
42 const EvtVector4R& p4_d2,
43 double ampl = 0.0, double theta = 0.0, double gamma = 0.0,
44 double bwm = 0.0, int spin = 0, bool invmass_angdenom = false);
47 virtual ~EvtResonance2();
50 //return 4-momenta of the particles involved
51 inline const EvtVector4R& p4_p() { return _p4_p; }
52 inline const EvtVector4R& p4_d1() { return _p4_d1; }
53 inline const EvtVector4R& p4_d2() { return _p4_d2; }
57 inline double amplitude() { return _ampl; }
60 inline double theta() { return _theta; }
63 inline double gamma() { return _gamma; }
66 inline double bwm() { return _bwm; }
69 inline int spin() { return _spin; }
71 //calculate amplitude for this resonance
76 EvtVector4R _p4_p, _p4_d1, _p4_d2;
77 double _ampl, _theta, _gamma, _bwm;
79 bool _invmass_angdenom;