EvtGen 2.2.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
Loading...
Searching...
No Matches
EvtItgPtrFunction.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//-------------
24// C Headers --
25//-------------
26extern "C" {
27}
28
29//----------------
30// Constructors --
31//----------------
33 double ( *theFunction )( double, const std::vector<double>& ),
34 double lowerRange, double upperRange, const std::vector<double>& coeffs1 ) :
36 m_myFunction( theFunction ),
37 m_coeffs1( coeffs1 )
38{
39}
40
41double EvtItgPtrFunction::myFunction( double x ) const
42{
43 return m_myFunction( x, m_coeffs1 );
44}
45
46void EvtItgPtrFunction::setCoeff( int vect, int which, double value )
47{
48 if ( vect == 1 )
49 m_coeffs1[which] = value;
50}
51
52double EvtItgPtrFunction::getCoeff( int vect, int which )
53{
54 if ( vect == 1 )
55 return m_coeffs1[which];
56 else {
57 return 0;
58 }
59}
EvtItgAbsFunction(double lowerRange, double upperRange)
double lowerRange() const
double upperRange() const
virtual double value(double x) const
double myFunction(double x) const override
void setCoeff(int, int, double) override
std::vector< double > m_coeffs1
double getCoeff(int, int) override
double(* m_myFunction)(double x, const std::vector< double > &coeffs1)
EvtItgPtrFunction(double(*theFunction)(double, const std::vector< double > &), double lowerRange, double upperRange, const std::vector< double > &coeffs1)