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.
EvtISGW2.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 EVTISGW2_HH
22 #define EVTISGW2_HH
23 
27 
28 #include <memory>
29 class EvtParticle;
30 
31 // Description:Implementation of the ISGW2 model
32 // Class to handle semileptonic decays using the ISGW2
33 // model, as described in PRD 52 5 (1995) by
34 // Isgur and Scora. Electron, muon, and tau models
35 // are available. Form factors, q2 and lepton energy
36 // spectra checked against code from Scora.
37 
38 class EvtISGW2 : public EvtDecayAmp {
39  public:
40  std::string getName() override;
41  EvtDecayBase* clone() override;
42 
43  void decay( EvtParticle* p ) override;
44  void initProbMax() override;
45  void init() override;
46 
47  private:
48  std::unique_ptr<EvtSemiLeptonicFF> isgw2ffmodel;
49  std::unique_ptr<EvtSemiLeptonicAmp> calcamp;
50 };
51 
52 #endif
void initProbMax() override
Definition: EvtISGW2.cpp:56
EvtDecayBase * clone() override
Definition: EvtISGW2.cpp:44
void decay(EvtParticle *p) override
Definition: EvtISGW2.cpp:49
std::unique_ptr< EvtSemiLeptonicFF > isgw2ffmodel
Definition: EvtISGW2.hh:48
void init() override
Definition: EvtISGW2.cpp:705
std::unique_ptr< EvtSemiLeptonicAmp > calcamp
Definition: EvtISGW2.hh:49
std::string getName() override
Definition: EvtISGW2.cpp:39