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.
EvtRelBreitWignerBarrierFact.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 EVTRELBREITWIGNERBARRIERFACT_HH
22 #define EVTRELBREITWIGNERBARRIERFACT_HH
23 
25 
27  public:
28  EvtRelBreitWignerBarrierFact() = default;
29  EvtRelBreitWignerBarrierFact( double mass, double width, double maxRange,
31  //figure the m1 and l on the fly
32  // double mDaug1, double mDaug2, int l);
35 
36  EvtAbsLineShape* clone() override;
37 
38  double getMassProb( double mass, double massPar, int nDaug,
39  double* massDau ) override;
40  // othDaugId is the other daughter of the parent in the case of a two body decay (only!)
41  // ie B->rho K rho->pipi, othDaugId = K
42  double getRandMass( EvtId* parId, int nDaug, EvtId* dauId, EvtId* othDaugId,
43  double maxMass, double* dauMasses ) override;
44 
45  void reSetBlatt( double blatt ) override { _blattDecay = blatt; }
46  void reSetBlattBirth( double blatt ) override { _blattBirth = blatt; }
47 
48  protected:
49  double _blattDecay;
50  double _blattBirth;
51  bool _errorCond;
52 };
53 
54 #endif
double getRandMass(EvtId *parId, int nDaug, EvtId *dauId, EvtId *othDaugId, double maxMass, double *dauMasses) override
EvtRelBreitWignerBarrierFact & operator=(const EvtRelBreitWignerBarrierFact &x)
Definition: EvtId.hh:27
void reSetBlattBirth(double blatt) override
double getMassProb(double mass, double massPar, int nDaug, double *massDau) override
void reSetBlatt(double blatt) override