EvtGen 2.2.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
Loading...
Searching...
No Matches
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
26#include "EvtGenBase/EvtId.hh"
27
28#include <vector>
29
30// Description: Model to describe a generic dalitz decay
31
32class EvtDalitzDecayInfo final {
33 public:
35 m_d1( d1 ), m_d2( d2 ), m_d3( d3 ), m_probMax( 0. )
36 {
37 }
38
40 {
41 m_resonances.push_back( std::pair<EvtComplex, EvtDalitzReso>( amp, res ) );
42 }
43 void addResonance( std::pair<EvtComplex, EvtDalitzReso> res )
44 {
45 m_resonances.push_back( res );
46 }
47 void setProbMax( double probMax ) { m_probMax = probMax; }
48
49 const std::vector<std::pair<EvtComplex, EvtDalitzReso>>& getResonances() const
50 {
51 return m_resonances;
52 }
53 double getProbMax() const { return m_probMax; }
54
55 inline const EvtId& daughter1() const { return m_d1; }
56 inline const EvtId& daughter2() const { return m_d2; }
57 inline const EvtId& daughter3() const { return m_d3; }
58
59 private:
61 std::vector<std::pair<EvtComplex, EvtDalitzReso>> m_resonances;
62 double m_probMax;
63};
64
65#endif
const EvtId & daughter2() const
const std::vector< std::pair< EvtComplex, EvtDalitzReso > > & getResonances() const
void addResonance(EvtComplex amp, EvtDalitzReso res)
void addResonance(std::pair< EvtComplex, EvtDalitzReso > res)
void setProbMax(double probMax)
EvtDalitzDecayInfo(EvtId d1, EvtId d2, EvtId d3)
const EvtId & daughter3() const
double getProbMax() const
std::vector< std::pair< EvtComplex, EvtDalitzReso > > m_resonances
const EvtId & daughter1() const
Definition EvtId.hh:27