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
EvtD0gammaDalitz.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 __EVTD0GAMMADALITZ_HH__
22#define __EVTD0GAMMADALITZ_HH__
23
29
30#include <vector>
31
32class EvtParticle;
33
35 private:
36 int m_d1;
37 int m_d2;
38 int m_d3;
39
41
42 // Useful constants.
46
49
53
54 static const EvtCyclic3::Pair& m_AB;
55 static const EvtCyclic3::Pair& m_AC;
56 static const EvtCyclic3::Pair& m_BC;
57
58 // Values to be read or computed based on values in the evt.pdl file.
59 // IDs of the relevant particles.
74
75 // Flavor of the B mother.
77
78 // Masses of the relevant particles.
79 double m_mD0;
80 double m_mKs;
81 double m_mPi;
82 double m_mK;
83
84 void readPDGValues();
85 void reportInvalidAndExit() const;
86
87 EvtComplex dalitzKsPiPi( const EvtDalitzPoint& point ) const;
88 EvtComplex dalitzKsKK( const EvtDalitzPoint& point ) const;
89
90 public:
91 std::string getName() const override;
92 EvtDecayBase* clone() const override;
93
94 void init() override;
95 void initProbMax() override;
96
97 void decay( EvtParticle* p ) override;
98};
99
100#endif
std::string getName() const override
static const EvtCyclic3::Pair & m_AC
void decay(EvtParticle *p) override
void reportInvalidAndExit() const
EvtComplex dalitzKsKK(const EvtDalitzPoint &point) const
static const EvtSpinType::spintype & m_SCALAR
static const EvtDalitzReso::NumType & m_RBW
static const EvtDalitzReso::NumType & m_GS
static const EvtCyclic3::Pair & m_AB
EvtComplex dalitzKsPiPi(const EvtDalitzPoint &point) const
static const EvtSpinType::spintype & m_TENSOR
static const EvtDalitzReso::CouplingType & m_PicPicKK
static const EvtDalitzReso::NumType & m_KMAT
void initProbMax() override
static const EvtCyclic3::Pair & m_BC
static const EvtSpinType::spintype & m_VECTOR
EvtDecayBase * clone() const override
void init() override
static const EvtDalitzReso::CouplingType & m_EtaPic
EvtDecayBase()=default
Definition EvtId.hh:27