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.
EvtBToDiBaryonlnupQCDFF.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 
24 #include "EvtGenBase/EvtPatches.hh"
25 
27 {
28 }
29 
30 EvtBToDiBaryonlnupQCDFF::EvtBToDiBaryonlnupQCDFF( std::vector<double>& DParameters ) :
31  DPars( DParameters ), nDPars( DParameters.size() )
32 {
33 }
34 
35 void EvtBToDiBaryonlnupQCDFF::getFF( EvtParticle*, double dibaryonMass,
37 {
38  if ( nDPars == 6 && dibaryonMass > 0.0 ) {
39  // 5/3*[1/M^2]^3
40  double t = 5.0 / ( 3.0 * pow( dibaryonMass, 6.0 ) );
41 
42  double Dp = DPars[0];
43  double Dpb = DPars[1];
44  double D2 = DPars[2];
45  double D3 = DPars[3];
46  double D4 = DPars[4];
47  double D5 = DPars[5];
48 
49  FF.F1 = ( Dp + 0.2 * Dpb ) * t;
50  FF.F2 = -D2 * t;
51  FF.F3 = -D3 * t;
52  FF.F4 = -D4 * t;
53  FF.F5 = -D5 * t;
54 
55  FF.G1 = ( Dp - 0.2 * Dpb ) * t;
56  FF.G2 = -FF.F2;
57  FF.G3 = -FF.F3;
58  FF.G4 = -FF.F4;
59  FF.G5 = -FF.F5;
60  }
61 }
62 
64  EvtParticle* parent, double dibaryonMass,
66 {
67  this->getFF( parent, dibaryonMass, FF );
68 }
69 
71  EvtParticle* parent, double dibaryonMass,
73 {
74  this->getFF( parent, dibaryonMass, FF );
75 }
void getRaritaFF(EvtParticle *parent, double dibaryonMass, EvtBToDiBaryonlnupQCDFF::FormFactors &FF) const
void getDiracFF(EvtParticle *parent, double dibaryonMass, EvtBToDiBaryonlnupQCDFF::FormFactors &FF) const
void getFF(EvtParticle *parent, double dibaryonMass, EvtBToDiBaryonlnupQCDFF::FormFactors &FF) const