evtgen is hosted by Hepforge, IPPP Durham
EvtGen  2.0.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
EvtDalitzDecayInfo.hh
Go to the documentation of this file.
1 
2 /***********************************************************************
3 * Copyright 1998-2020 CERN for the benefit of the EvtGen authors *
4 * *
5 * This file is part of EvtGen. *
6 * *
7 * EvtGen is free software: you can redistribute it and/or modify *
8 * it under the terms of the GNU General Public License as published by *
9 * the Free Software Foundation, either version 3 of the License, or *
10 * (at your option) any later version. *
11 * *
12 * EvtGen is distributed in the hope that it will be useful, *
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15 * GNU General Public License for more details. *
16 * *
17 * You should have received a copy of the GNU General Public License *
18 * along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
19 ***********************************************************************/
20 
21 #ifndef EVTDALITZDECAYINFO_HH
22 #define EVTDALITZDECAYINFO_HH
23 
24 #include "EvtGenBase/EvtComplex.hh"
26 #include "EvtGenBase/EvtId.hh"
27 
28 #include <vector>
29 
30 // Description: Model to describe a generic dalitz decay
31 
32 class EvtDalitzDecayInfo final {
33  public:
35  _d1( d1 ), _d2( d2 ), _d3( d3 ), _probMax( 0. )
36  {
37  }
38 
40  {
41  _resonances.push_back( std::pair<EvtComplex, EvtDalitzReso>( amp, res ) );
42  }
43  void addResonance( std::pair<EvtComplex, EvtDalitzReso> res )
44  {
45  _resonances.push_back( res );
46  }
47  void setProbMax( double probMax ) { _probMax = probMax; }
48 
49  const std::vector<std::pair<EvtComplex, EvtDalitzReso>>& getResonances() const
50  {
51  return _resonances;
52  }
53  double getProbMax() const { return _probMax; }
54 
55  inline const EvtId& daughter1() const { return _d1; }
56  inline const EvtId& daughter2() const { return _d2; }
57  inline const EvtId& daughter3() const { return _d3; }
58 
59  private:
61  std::vector<std::pair<EvtComplex, EvtDalitzReso>> _resonances;
62  double _probMax;
63 };
64 
65 #endif
double getProbMax() const
const EvtId & daughter1() const
void setProbMax(double probMax)
std::vector< std::pair< EvtComplex, EvtDalitzReso > > _resonances
Definition: EvtId.hh:27
void addResonance(EvtComplex amp, EvtDalitzReso res)
const std::vector< std::pair< EvtComplex, EvtDalitzReso > > & getResonances() const
EvtDalitzDecayInfo(EvtId d1, EvtId d2, EvtId d3)
const EvtId & daughter3() const
void addResonance(std::pair< EvtComplex, EvtDalitzReso > res)
const EvtId & daughter2() const