| The Gaudi Framework v28r2p1 (f1a77ff4)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

Namespaces | Functions
Integral1Test.cpp File Reference

Test file for the class NumericalDefiniteIntregral and Integral. More...

`#include <math.h>`
`#include <stdio.h>`
`#include "GaudiMath/Integral.h"`
`#include "GaudiMath/GaudiMath.h"`
`#include "GaudiKernel/SystemOfUnits.h"`
`#include "CLHEP/GenericFunctions/Sin.hh"`
`#include "CLHEP/GenericFunctions/Cos.hh"`
`#include "CLHEP/GenericFunctions/Gaussian.hh"`
Include dependency graph for Integral1Test.cpp:

Go to the source code of this file.

## Namespaces
| CLHEP

## Functions
int | main ()

## Detailed Description

Test file for the class NumericalDefiniteIntregral and Integral.

Date
  2003-08-31

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@i.nosp@m.tep..nosp@m.ru

Definition in file Integral1Test.cpp.

## Function Documentation

int main | ( |  | ) |

Definition at line 35 of file Integral1Test.cpp.

36 {
37
38 std::cout <<
39 " Test for numerical integration of Genfun::Sin(x) " << std::endl ;
40
41 const GaudiMath::Function& mysin = Genfun::Sin();
42
43
44 for( double x = 0 * Gaudi::Units::degree ;
45 x <= 360 * Gaudi::Units::degree ;
46 x += 15 * Gaudi::Units::degree ) {
47 double value = GaudiMath::Integral ( mysin , 0. , x ) ;
48 printf( "x=%8.3f deg; I(Sin)=%+.19f; ActErr=%+.19f;\n",
49 x / Gaudi::Units::degree , value , value-(1-cos(x)) );
50 }
51
52
53 const GaudiMath::Function& myfun = Genfun::Gaussian();
54
55 std::cout
56 << " integral from gauss1 = "
57 << GaudiMath::Integral( myfun , 0.0 , GaudiMath::Integration::Infinity )
58 << std::endl << " integral from gauss2 = "
59 << GaudiMath::Integral( myfun , GaudiMath::Integration::Infinity ,0.0 )
60 << std::endl << " integral from gauss3 = "
61 << GaudiMath::Integral( myfun ,
62 GaudiMath::Integration::Infinity ,
63 GaudiMath::Integration::Infinity )
64 << std::endl << " integral from gauss4 = "
65 << GaudiMath::Integral( myfun , GaudiMath::Integration::Infinity , 1.0 )
66 << std::endl << " integral from gauss5 = "
67 << GaudiMath::Integral( myfun , GaudiMath::Integration::Infinity , 4.0 )
68 << std::endl << " integral from gauss6 = "
69 << GaudiMath::Integral( myfun , GaudiMath::Integration::Infinity , 9.0 )
70 << std::endl << " integral from gauss7 = "
71 << GaudiMath::Integral( myfun , GaudiMath::Integration::Infinity , 16.0 )
72 << std::endl << " integral from gauss8 = "
73 << GaudiMath::Integral( myfun , GaudiMath::Integration::Infinity , 25.0 )
74 << std::endl ;
75
76
77 exit(0);
78 }
Gaudi::Units::degree
constexpr double degree
Definition: SystemOfUnits.h:108
std::endl
T endl(T...args)
GaudiMath::Integration::Infinity
Definition: Integration.h:20
GaudiMath::Function
Genfun::AbsFunction Function
Definition: GaudiMath.h:24
std::exit
T exit(T...args)
std::cos
T cos(T...args)
GaudiMath::Integral
GAUDI_API double Integral(const Genfun::AbsFunction &function, const double a, const double b, const GaudiMath::Integration::Type type=GaudiMath::Integration::Adaptive, const GaudiMath::Integration::KronrodRule rule=GaudiMath::Integration::Default, const double epsabs=1.e-10, const double epsrel=1.e-7, const size_t size=1000)
Definition: Integral.cpp:27
std::printf
T printf(T...args)
std::cout