All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
GaudiMath Namespace Reference

GaudiMath.h GaudiMath/GaudiMath.h. More...

Namespaces

namespace  Integration
 
namespace  Interpolation
 

Typedefs

typedef
Genfun::GaudiMathImplementation::AdapterIFunction 
AIDAFunction
 
typedef
Genfun::GaudiMathImplementation::Adapter2DoubleFunction 
Function2D
 
typedef
Genfun::GaudiMathImplementation::Adapter3DoubleFunction 
Function3D
 
typedef
Genfun::GaudiMathImplementation::SimpleFunction 
SimpleFunction
 
typedef
Genfun::GaudiMathImplementation::GSLFunctionWithMode 
GSLFunctionWithMode
 
typedef
Genfun::GaudiMathImplementation::GSLFunctionWithError 
GSLFunctionWithError
 
typedef
Genfun::GaudiMathImplementation::GSLFunctionWithModeAndError 
GSLFunctionWithModeAndError
 
typedef Genfun::AbsFunction Function
 
typedef
Genfun::GaudiMathImplementation::Constant 
Constant
 
typedef
Genfun::GaudiMathImplementation::NumericalDerivative 
Derivative
 
typedef
Genfun::GaudiMathImplementation::SimpleFunction 
SimpleFun
 
typedef
Genfun::GaudiMathImplementation::NumericalIndefiniteIntegral 
IndIntegral
 
typedef
Genfun::GaudiMathImplementation::NumericalDefiniteIntegral 
DefIntegral
 
typedef
Genfun::GaudiMathImplementation::SplineBase 
SimpleSpline
 
typedef
Genfun::GaudiMathImplementation::GSLSpline 
Spline
 
typedef
Genfun::GaudiMathImplementation::GSLSplineDeriv 
SplineDeriv
 
typedef
Genfun::GaudiMathImplementation::GSLSplineDeriv2 
SplineDeriv2
 
typedef
Genfun::GaudiMathImplementation::GSLSplineInteg 
SplineInteg
 

Functions

GAUDI_API AIDAFunction adapter (const AIDA::IFunction &function)
 
GAUDI_API Function2D adapter (Function2D::Function function)
 
GAUDI_API Function3D adapter (Function3D::Function function)
 
GAUDI_API SimpleFunction adapter (SimpleFunction::Function1 function)
 
GAUDI_API SimpleFunction adapter (const size_t dim, SimpleFunction::Function2 function)
 
GAUDI_API SimpleFunction adapter (const size_t dim, SimpleFunction::Function3 function)
 
GAUDI_API GSLFunctionWithMode adapter (GSLFunctionWithMode::Function function, const gsl_mode_t &mode)
 
GAUDI_API GSLFunctionWithError adapter (GSLFunctionWithError::Function function)
 
GAUDI_API
GSLFunctionWithModeAndError 
adapter (GSLFunctionWithModeAndError::Function function, const gsl_mode_t &mode)
 
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)
 
GAUDI_API double Integral (const Genfun::AbsFunction &function, const double a, const double b, const std::vector< double > &points, const double epsabs=1e-9, const double epsrel=1.e-6, const size_t size=1000)
 
GAUDI_API double Integral (const Genfun::AbsFunction &function, const double a, const GaudiMath::Integration::Inf b=GaudiMath::Integration::Infinity, const double epsabs=1e-9, const double epsrel=1.e-6, const size_t size=1000)
 
GAUDI_API double Integral (const Genfun::AbsFunction &function, const GaudiMath::Integration::Inf a, const double b, const double epsabs=1e-9, const double epsrel=1.e-6, const size_t size=1000)
 
GAUDI_API double Integral (const Genfun::AbsFunction &function, const GaudiMath::Integration::Inf a=GaudiMath::Integration::Infinity, const GaudiMath::Integration::Inf b=GaudiMath::Integration::Infinity, const double epsabs=1e-9, const double epsrel=1.e-6, const size_t size=1000)
 

Detailed Description

GaudiMath.h GaudiMath/GaudiMath.h.

Author
Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@i.nosp@m.tep..nosp@m.ru
Date
2003-08-31

Typedef Documentation

typedef Genfun::AbsFunction GaudiMath::Function

Definition at line 26 of file GaudiMath.h.

Function Documentation

GAUDI_API AIDAFunction GaudiMath::adapter ( const AIDA::IFunction &  function)

Definition at line 28 of file Adapters.cpp.

{ return AIDAFunction( function ) ; }
GAUDI_API Function2D GaudiMath::adapter ( Function2D::Function  function)

Definition at line 32 of file Adapters.cpp.

{ return Function2D ( function ) ; }
GAUDI_API Function3D GaudiMath::adapter ( Function3D::Function  function)

Definition at line 36 of file Adapters.cpp.

{ return Function3D ( function ) ; }
GAUDI_API SimpleFunction GaudiMath::adapter ( SimpleFunction::Function1  function)

Definition at line 40 of file Adapters.cpp.

{ return SimpleFunction ( function ) ; }
GAUDI_API SimpleFunction GaudiMath::adapter ( const size_t  dim,
SimpleFunction::Function2  function 
)

Definition at line 44 of file Adapters.cpp.

{ return SimpleFunction ( function , dim ) ; }
GAUDI_API SimpleFunction GaudiMath::adapter ( const size_t  dim,
SimpleFunction::Function3  function 
)

Definition at line 49 of file Adapters.cpp.

{ return SimpleFunction ( function , dim ) ; }
GAUDI_API GSLFunctionWithMode GaudiMath::adapter ( GSLFunctionWithMode::Function  function,
const gsl_mode_t &  mode 
)

Definition at line 54 of file Adapters.cpp.

{ return GSLFunctionWithMode ( function , mode ) ; }
GAUDI_API GSLFunctionWithError GaudiMath::adapter ( GSLFunctionWithError::Function  function)

Definition at line 59 of file Adapters.cpp.

{ return GSLFunctionWithError ( function ) ; }
GAUDI_API GSLFunctionWithModeAndError GaudiMath::adapter ( GSLFunctionWithModeAndError::Function  function,
const gsl_mode_t &  mode 
)

Definition at line 63 of file Adapters.cpp.

{ return GSLFunctionWithModeAndError ( function , mode ) ; }
GAUDI_API double GaudiMath::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 at line 28 of file Integral.cpp.

{
if ( 1 != function.dimensionality() )
("GaudiMath::Integral: illegal function dimension" ,
"*GaudiMath*" , StatusCode::FAILURE ); }
const Genfun::AbsFunction& one =
const Genfun::AbsFunction& cross =
Genfun::FunctionDirectProduct (&one , &function ) ;
const Genfun::AbsFunction& result =
( cross , 1 , a , b, type , rule , epsabs , epsrel , size ) ;
return result( Genfun::Argument(1) ) ;
}
GAUDI_API double GaudiMath::Integral ( const Genfun::AbsFunction &  function,
const double  a,
const double  b,
const std::vector< double > &  points,
const double  epsabs = 1e-9,
const double  epsrel = 1.e-6,
const size_t  size = 1000 
)

Definition at line 56 of file Integral.cpp.

{
if ( 1 != function.dimensionality() )
("GaudiMath::Integral: illegal function dimension" ,
"*GaudiMath*" , StatusCode::FAILURE ); }
const Genfun::AbsFunction& one =
const Genfun::AbsFunction& cross =
Genfun::FunctionDirectProduct (&one , &function ) ;
const Genfun::AbsFunction& result =
( cross , 1 , a , b, points , epsabs , epsrel , size ) ;
return result( Genfun::Argument(1) ) ;
}
GAUDI_API double GaudiMath::Integral ( const Genfun::AbsFunction &  function,
const double  a,
const GaudiMath::Integration::Inf  b = GaudiMath::Integration::Infinity,
const double  epsabs = 1e-9,
const double  epsrel = 1.e-6,
const size_t  size = 1000 
)

Definition at line 84 of file Integral.cpp.

{
if ( 1 != function.dimensionality() )
("GaudiMath::Integral: illegal function dimension" ,
"*GaudiMath*" , StatusCode::FAILURE ); }
const Genfun::AbsFunction& one =
const Genfun::AbsFunction& cross =
Genfun::FunctionDirectProduct (&one , &function ) ;
const Genfun::AbsFunction& result =
( cross , 1 , a , b , epsabs , epsrel , size ) ;
return result( Genfun::Argument(1) ) ;
}
GAUDI_API double GaudiMath::Integral ( const Genfun::AbsFunction &  function,
const GaudiMath::Integration::Inf  a,
const double  b,
const double  epsabs = 1e-9,
const double  epsrel = 1.e-6,
const size_t  size = 1000 
)

Definition at line 110 of file Integral.cpp.

{
if ( 1 != function.dimensionality() )
("GaudiMath::Integral: illegal function dimension" ,
"*GaudiMath*" , StatusCode::FAILURE ); }
const Genfun::AbsFunction& one =
const Genfun::AbsFunction& cross =
Genfun::FunctionDirectProduct (&one , &function ) ;
const Genfun::AbsFunction& result =
( cross , 1 , a , b , epsabs , epsrel , size ) ;
return result( Genfun::Argument(1) ) ;
}
GAUDI_API double GaudiMath::Integral ( const Genfun::AbsFunction &  function,
const GaudiMath::Integration::Inf  a = GaudiMath::Integration::Infinity,
const GaudiMath::Integration::Inf  b = GaudiMath::Integration::Infinity,
const double  epsabs = 1e-9,
const double  epsrel = 1.e-6,
const size_t  size = 1000 
)

Definition at line 138 of file Integral.cpp.

{
if ( 1 != function.dimensionality() )
("GaudiMath::Integral: illegal function dimension" ,
"*GaudiMath*" , StatusCode::FAILURE ); }
const Genfun::AbsFunction& one =
const Genfun::AbsFunction& cross =
Genfun::FunctionDirectProduct (&one , &function ) ;
// FIXME: (MCl) the static_cast below are needed to avoid warnings and to
// match the signature in NumericalDefiniteIntegral.h (around line 288).
const Genfun::AbsFunction& result =
( cross , 1 , static_cast<float>(epsabs) , static_cast<float>(epsrel) , size ) ;
return result( Genfun::Argument(1) ) ;
}