|
|
|||
File indexing completed on 2026-08-06 09:20:05
0001 0002 /*********************************************************************** 0003 * Copyright 1998-2020 CERN for the benefit of the EvtGen authors * 0004 * * 0005 * This file is part of EvtGen. * 0006 * * 0007 * EvtGen is free software: you can redistribute it and/or modify * 0008 * it under the terms of the GNU General Public License as published by * 0009 * the Free Software Foundation, either version 3 of the License, or * 0010 * (at your option) any later version. * 0011 * * 0012 * EvtGen is distributed in the hope that it will be useful, * 0013 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 0014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 0015 * GNU General Public License for more details. * 0016 * * 0017 * You should have received a copy of the GNU General Public License * 0018 * along with EvtGen. If not, see <https://www.gnu.org/licenses/>. * 0019 ***********************************************************************/ 0020 0021 #ifndef EVTBTOXSGAMMAFERMIUTIL_HH 0022 #define EVTBTOXSGAMMAFERMIUTIL_HH 0023 0024 #include <vector> 0025 0026 // Description: 0027 // Class to hold various fermi functions and their helper functions. The 0028 // fermi functions are used in EvtBtoXsgammaKagan. 0029 0030 class EvtBtoXsgammaFermiUtil final { 0031 //-------------------- 0032 // Instance Members -- 0033 //-------------------- 0034 0035 public: 0036 //Exponential function 0037 static double FermiExpFunc( double var, const std::vector<double>& coeffs ); 0038 0039 //Gaussian function and its helper functions 0040 static double FermiGaussFunc( double, std::vector<double> const& coeffs ); 0041 static double FermiGaussFuncRoot( double, double, double, 0042 std::vector<double>& coeffs ); 0043 static double FermiGaussRootFcnA( double, const std::vector<double>& coeffs1, 0044 const std::vector<double>& coeffs2 ); 0045 static double FermiGaussRootFcnB( double, const std::vector<double>& coeffs1, 0046 const std::vector<double>& coeffs2 ); 0047 static double Gamma( double, const std::vector<double>& coeffs ); 0048 0049 //Roman function and its helper functions 0050 static double BesselI1( double ); 0051 static double BesselK1( double ); 0052 static double FermiRomanFuncRoot( double, double ); 0053 static double FermiRomanRootFcnA( double ); 0054 static double FermiRomanFunc( double, std::vector<double> const& coeffs ); 0055 }; 0056 0057 #endif
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|