LOGO

RestFrames  v1.0.1
RestFrames HEP Event Analysis Software Library
ResonanceGenFrame.hh
Go to the documentation of this file.
1 // RestFrames: particle physics event analysis library
3 // --------------------------------------------------------------------
4 // Copyright (c) 2014-2016, Christopher Rogan
14 // This file is part of RestFrames.
15 //
16 // RestFrames is free software; you can redistribute it and/or modify
17 // it under the terms of the GNU General Public License as published by
18 // the Free Software Foundation; either version 2 of the License, or
19 // (at your option) any later version.
20 //
21 // RestFrames is distributed in the hope that it will be useful,
22 // but WITHOUT ANY WARRANTY; without even the implied warranty of
23 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 // GNU General Public License for more details.
25 //
26 // You should have received a copy of the GNU General Public License
27 // along with RestFrames. If not, see <http://www.gnu.org/licenses/>.
29 
30 #ifndef ResonanceGenFrame_HH
31 #define ResonanceGenFrame_HH
32 
34 
35 namespace RestFrames {
36 
38  // ResonanceGenFrame class
41  public:
42 
47  ResonanceGenFrame(const std::string& sname, const std::string& stitle);
48 
51  virtual ~ResonanceGenFrame();
52 
58  virtual void SetMass(double mass);
59 
65  virtual void SetWidth(double w);
66 
71  virtual void SetVariableMass(bool varymass = true);
72 
76  virtual double GetPoleMass() const;
77 
81  virtual double GetWidth() const;
82 
83 
92 
94  virtual double GetProbMCMC(double mass = -1.) const;
95 
97  virtual void GenerateMassMCMC(double& mass, double& prob,
98  double max = -1.) const;
99 
101 
105  static ResonanceGenFrame& Empty();
106 
107  private:
108  double m_PoleMass;
109  double m_Width;
110 
111  static ResonanceGenFrame m_Empty;
112  };
113 
114 }
115 
116 #endif
DecayGenFrame.hh
RestFrames::ResonanceGenFrame::Empty
static ResonanceGenFrame & Empty()
Returns empty ResonanceGenFrame.
Definition: ResonanceGenFrame.cc:55
RestFrames::ResonanceGenFrame::ResonanceGenFrame
ResonanceGenFrame()
Empty constructor.
Definition: ResonanceGenFrame.cc:47
RestFrames::DecayGenFrame
Definition: DecayGenFrame.hh:43
RestFrames::ResonanceGenFrame
Definition: ResonanceGenFrame.hh:40
RestFrames::ResonanceGenFrame::SetWidth
virtual void SetWidth(double w)
Sets width of current frame.
Definition: ResonanceGenFrame.cc:74
RestFrames::ResonanceGenFrame::SetMass
virtual void SetMass(double mass)
Sets mass of current frame.
Definition: ResonanceGenFrame.cc:59
RestFrames::ResonanceGenFrame::GetPoleMass
virtual double GetPoleMass() const
Returns pole mass of current frame.
Definition: ResonanceGenFrame.cc:108
RestFrames::ResonanceGenFrame::SetVariableMass
virtual void SetVariableMass(bool varymass=true)
Determines who sets mass of current frame.
Definition: ResonanceGenFrame.cc:89
RestFrames::ResonanceGenFrame::GetWidth
virtual double GetWidth() const
Returns width of current frame.
Definition: ResonanceGenFrame.cc:112
RestFrames::ResonanceGenFrame::GetProbMCMC
virtual double GetProbMCMC(double mass=-1.) const
Evaluates probability of the state is in right now or the probablility of a state it could go in.
Definition: ResonanceGenFrame.cc:116
RestFrames::ResonanceGenFrame::GenerateMassMCMC
virtual void GenerateMassMCMC(double &mass, double &prob, double max=-1.) const
Generates mass for Markov Chain MonteCarlo event generation.
Definition: ResonanceGenFrame.cc:130