YAP
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
BreitWigner.h
Go to the documentation of this file.
1 /* YAP - Yet another PWA toolkit
2  Copyright 2015, Technische Universitaet Muenchen,
3  Authors: Daniel Greenwald, Johannes Rauch
4 
5  This program is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License, or
8  (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17  */
18 
20 
21 #ifndef yap_BreitWigner_h
22 #define yap_BreitWigner_h
23 
24 #include "fwd/DataPartition.h"
25 #include "fwd/DataPoint.h"
26 #include "fwd/ParticleCombination.h"
27 #include "fwd/StatusManager.h"
28 
30 
31 #include <complex>
32 #include <memory>
33 
34 namespace yap {
35 
42 
44 {
45 public:
46 
50  BreitWigner(double mass = -1, double w = -1);
51 
54  virtual void setParameters(const ParticleTableEntry& entry) override;
55 
57  std::shared_ptr<RealParameter> width()
58  { return Width_; }
59 
61  const std::shared_ptr<RealParameter> width() const
62  { return const_cast<BreitWigner*>(this)->width(); }
63 
64  virtual bool consistent() const override;
65 
66 protected:
67 
72  virtual void calculateT(DataPartition& D, const std::shared_ptr<ParticleCombination>& pc, unsigned si) const override;
73 
74 private:
75 
77  std::shared_ptr<RealParameter> Width_;
78 
79 };
80 
81 }
82 
83 #endif
std::shared_ptr< RealParameter > mass()
Get mass.
Definition: MassShapeWithNominalMass.h:52
BreitWigner(double mass=-1, double w=-1)
Definition: BreitWigner.cxx:17
virtual void setParameters(const ParticleTableEntry &entry) override
Definition: BreitWigner.cxx:25
Data container for storing particle information in database.
Definition: ParticleFactory.h:43
std::shared_ptr< RealParameter > Width_
Width [GeV].
Definition: BreitWigner.h:77
const std::shared_ptr< RealParameter > width() const
Get width (const)
Definition: BreitWigner.h:61
virtual void calculateT(DataPartition &D, const std::shared_ptr< ParticleCombination > &pc, unsigned si) const override
Definition: BreitWigner.cxx:37
Class defining a partition of the DataSet.
Definition: DataPartition.h:158
std::shared_ptr< RealParameter > width()
Get width.
Definition: BreitWigner.h:57
Class for MassShape that gets its nominal mass from its owning resonance.
Definition: MassShapeWithNominalMass.h:39
virtual bool consistent() const override
Check consistency of object.
Definition: BreitWigner.cxx:48
Class for Breit-Wigner resonance shape.
Definition: BreitWigner.h:43