EvtGen
2.2.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
Toggle main menu visibility
Loading...
Searching...
No Matches
EvtGenModels
EvtBtoXsgammaFermiUtil.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 EVTBTOXSGAMMAFERMIUTIL_HH
22
#define EVTBTOXSGAMMAFERMIUTIL_HH
23
24
#include <vector>
25
26
// Description:
27
// Class to hold various fermi functions and their helper functions. The
28
// fermi functions are used in EvtBtoXsgammaKagan.
29
30
class
EvtBtoXsgammaFermiUtil
final {
31
//--------------------
32
// Instance Members --
33
//--------------------
34
35
public
:
36
//Exponential function
37
static
double
FermiExpFunc
(
double
var,
const
std::vector<double>& coeffs );
38
39
//Gaussian function and its helper functions
40
static
double
FermiGaussFunc
(
double
, std::vector<double>
const
& coeffs );
41
static
double
FermiGaussFuncRoot
(
double
,
double
,
double
,
42
std::vector<double>& coeffs );
43
static
double
FermiGaussRootFcnA
(
double
,
const
std::vector<double>& coeffs1,
44
const
std::vector<double>& coeffs2 );
45
static
double
FermiGaussRootFcnB
(
double
,
const
std::vector<double>& coeffs1,
46
const
std::vector<double>& coeffs2 );
47
static
double
Gamma
(
double
,
const
std::vector<double>& coeffs );
48
49
//Roman function and its helper functions
50
static
double
BesselI1
(
double
);
51
static
double
BesselK1
(
double
);
52
static
double
FermiRomanFuncRoot
(
double
,
double
);
53
static
double
FermiRomanRootFcnA
(
double
);
54
static
double
FermiRomanFunc
(
double
, std::vector<double>
const
& coeffs );
55
};
56
57
#endif
EvtBtoXsgammaFermiUtil
Definition
EvtBtoXsgammaFermiUtil.hh:30
EvtBtoXsgammaFermiUtil::FermiGaussFunc
static double FermiGaussFunc(double, std::vector< double > const &coeffs)
Definition
EvtBtoXsgammaFermiUtil.cpp:44
EvtBtoXsgammaFermiUtil::FermiGaussRootFcnB
static double FermiGaussRootFcnB(double, const std::vector< double > &coeffs1, const std::vector< double > &coeffs2)
Definition
EvtBtoXsgammaFermiUtil.cpp:82
EvtBtoXsgammaFermiUtil::BesselK1
static double BesselK1(double)
Definition
EvtBtoXsgammaFermiUtil.cpp:114
EvtBtoXsgammaFermiUtil::BesselI1
static double BesselI1(double)
Definition
EvtBtoXsgammaFermiUtil.cpp:148
EvtBtoXsgammaFermiUtil::FermiRomanRootFcnA
static double FermiRomanRootFcnA(double)
Definition
EvtBtoXsgammaFermiUtil.cpp:199
EvtBtoXsgammaFermiUtil::FermiGaussRootFcnA
static double FermiGaussRootFcnA(double, const std::vector< double > &coeffs1, const std::vector< double > &coeffs2)
Definition
EvtBtoXsgammaFermiUtil.cpp:70
EvtBtoXsgammaFermiUtil::FermiRomanFunc
static double FermiRomanFunc(double, std::vector< double > const &coeffs)
Definition
EvtBtoXsgammaFermiUtil.cpp:204
EvtBtoXsgammaFermiUtil::FermiRomanFuncRoot
static double FermiRomanFuncRoot(double, double)
Definition
EvtBtoXsgammaFermiUtil.cpp:180
EvtBtoXsgammaFermiUtil::FermiGaussFuncRoot
static double FermiGaussFuncRoot(double, double, double, std::vector< double > &coeffs)
Definition
EvtBtoXsgammaFermiUtil.cpp:53
EvtBtoXsgammaFermiUtil::FermiExpFunc
static double FermiExpFunc(double var, const std::vector< double > &coeffs)
Definition
EvtBtoXsgammaFermiUtil.cpp:34
EvtBtoXsgammaFermiUtil::Gamma
static double Gamma(double, const std::vector< double > &coeffs)
Definition
EvtBtoXsgammaFermiUtil.cpp:93
Generated by
1.17.0