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.
EvtPropBreitWigner.cpp
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 
22 
23 #include "EvtGenBase/EvtConst.hh"
24 #include "EvtGenBase/EvtPatches.hh"
25 
26 #include <math.h>
27 
28 EvtPropBreitWigner::EvtPropBreitWigner( double m0, double g0 ) :
29  EvtPropagator( m0, g0 )
30 {
31 }
32 
34 {
35  return new EvtPropBreitWigner( *this );
36 }
37 
39 {
40  double m = x.value();
41  EvtComplex value = sqrt( _g0 / EvtConst::twoPi ) /
42  ( m - _m0 - EvtComplex( 0.0, _g0 / 2. ) );
43  return value;
44 }
EvtAmplitude< EvtPoint1D > * clone() const override
double value() const
Definition: EvtPoint1D.hh:35
EvtComplex amplitude(const EvtPoint1D &m) const override
static const double twoPi
Definition: EvtConst.hh:27
EvtPropBreitWigner(double m0, double g0)