| The Gaudi Framework v29r0 (ff2e7097)

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

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
Genfun::GaudiMathImplementation::GSLSplineInteg Class Reference

`#include <GaudiMath/Splines.h>`

Inheritance diagram for Genfun::GaudiMathImplementation::GSLSplineInteg:
[legend]
Collaboration diagram for Genfun::GaudiMathImplementation::GSLSplineInteg:
[legend]

## Public Types
typedef SplineBase::Data1D | Data1D
typedef SplineBase::Data2D | Data2D

## Public Member Functions
| GSLSplineInteg (const Data1D &x, const Data1D &y, const GaudiMath::Interpolation::Type type, const double low=0)
| constructor from vectors and type More...
| GSLSplineInteg (const Data2D &data, const GaudiMath::Interpolation::Type type, const double low=0)
| constructor from data vector More...
template<class DATAX , class DATAY >
| GSLSplineInteg (const GaudiMath::Interpolation::Type type, DATAX begin_x, DATAX end_x, DATAY begin_y, const double low)
| templated constructor in the spirit of STL-algorithms More...
template<class DATA >
| GSLSplineInteg (const GaudiMath::Interpolation::Type type, DATA &&begin, DATA &&end, const double low)
| templated constructor from the sequence of pairs as sequence of pairs the class TabulatedProperty can be used More...
| GSLSplineInteg (const SplineBase &, const double low=0)
| constructor from base More...
| GSLSplineInteg (const GSLSplineInteg &)=default
| copy constructor More...
double | operator() (double a) const override
| main method: evaluate the function More...
double | operator() (const Argument &x) const override
| main method: evaluate the function More...
unsigned int | dimensionality () const override
bool | hasAnalyticDerivative () const override
| Does this function have an analytic derivative? More...
Genfun::Derivative | partial (unsigned int i) const override
| Derivatives. More...
const SplineBase & | spline () const
| acess to the spline function More...
| operator const SplineBase & () const
| cast operator to the spline function More...

## Private Member Functions
GSLSplineInteg & | operator= (const GSLSplineInteg &)=delete
| assignement operator is disabled ; More...

## Private Attributes
SplineBase | m_spline
double | m_low

## Detailed Description

Definition at line 530 of file Splines.h.

## Member Typedef Documentation

typedef SplineBase::Data1D Genfun::GaudiMathImplementation::GSLSplineInteg::Data1D

Definition at line 533 of file Splines.h.

typedef SplineBase::Data2D Genfun::GaudiMathImplementation::GSLSplineInteg::Data2D

Definition at line 534 of file Splines.h.

## Constructor & Destructor Documentation

Genfun::GaudiMathImplementation::GSLSplineInteg::GSLSplineInteg | ( | const Data1D & | x,
|  | const Data1D & | y,
|  | const GaudiMath::Interpolation::Type | type,
|  | const double | low = `0`
| ) |  |

constructor from vectors and type

Data1D x = .. ;
Data1D y = .. ;
const AbsFunction& func =
GSLSplineInteg( x , y , GaudiMath::Interpolation::Cspline , -1 ) ;
const double value = 1 ;
const double result = func( value ) ;

Parameters

  x | vector of x
  y | vector of y
  type | interpolation type
  low | low integration limit

Data1D x = .. ;
Data1D y = .. ;
const AbsFunction& func =
GSLSplineInteg( x , y , GaudiMath::Interpolation::Cspline , -1 ) ;
const double value = 1 ;
const double result = func( value ) ;

Parameters

  x | vector of x
  y | vector of y
  type | interpolation type

Definition at line 407 of file Splines.cpp.

409 : AbsFunction(), m_spline( x, y, type ), m_low( low )
410 {
411 }
gaudirun.type
type
Definition: gaudirun.py:133
Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline
SplineBase m_spline
Definition: Splines.h:660
Genfun::GaudiMathImplementation::GSLSplineInteg::m_low
double m_low
Definition: Splines.h:661

Genfun::GaudiMathImplementation::GSLSplineInteg::GSLSplineInteg | ( | const Data2D & | data,
|  | const GaudiMath::Interpolation::Type | type,
|  | const double | low = `0`
| ) |  |

constructor from data vector

Data2D data = ... ;
const AbsFunction& func =
GSLSplineInteg( data , GaudiMath::Interpolation::Cspline , -1 );
const double value = 1 ;
const double result = func( value ) ;

Parameters

  data | vector of (x,y) pairs
  type | interpolation type
  low | low integration limit

Data2D data = ... ;
const AbsFunction& func =
GSLSplineInteg( data , GaudiMath::Interpolation::Cspline , -1 );
const double value = 1 ;
const double result = func( value ) ;

Parameters

  data | vector of (x,y) pairs
  type | interpolation type

Definition at line 434 of file Splines.cpp.

436 : AbsFunction(), m_spline( data, type ), m_low( low )
437 {
438 }
gaudirun.type
type
Definition: gaudirun.py:133
Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline
SplineBase m_spline
Definition: Splines.h:660
Genfun::GaudiMathImplementation::GSLSplineInteg::m_low
double m_low
Definition: Splines.h:661
template<class DATAX , class DATAY >

Genfun::GaudiMathImplementation::GSLSplineInteg::GSLSplineInteg | ( | const GaudiMath::Interpolation::Type | type,
|  | DATAX | begin_x,
|  | DATAX | end_x,
|  | DATAY | begin_y,
|  | const double | low
| ) |  |
| inline

templated constructor in the spirit of STL-algorithms

It is assumed that vector "y" has tehlength AT LEAST as long as "x"

SEQURNCE1 x = .. ;
SEQUENCE2 y = .. ;
const AbsFunction& func =
GSLSpline( GaudiMath::Interpoaltion::Cspline ,
x.begin () ,
x.end () ,
y.begin () );
const double value = 1 ;
const double result = func( value ) ;

Parameters

  begin_x | begin of X-sequence
  end_x | end of X-sequence
  begin_Y | begin of Y-sequence
  type | interpolation type
  low | low integration limit

Definition at line 610 of file Splines.h.

612 : AbsFunction(), m_spline( type, begin_x, end_x, begin_y ), m_low( low )
613 {
614 }
gaudirun.type
type
Definition: gaudirun.py:133
Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline
SplineBase m_spline
Definition: Splines.h:660
Genfun::GaudiMathImplementation::GSLSplineInteg::m_low
double m_low
Definition: Splines.h:661
template<class DATA >

Genfun::GaudiMathImplementation::GSLSplineInteg::GSLSplineInteg | ( | const GaudiMath::Interpolation::Type | type,
|  | DATA && | begin,
|  | DATA && | end,
|  | const double | low
| ) |  |
| inline

templated constructor from the sequence of pairs as sequence of pairs the class TabulatedProperty can be used

Parameters

  begin | begin of sequence of pairs
  end | end of sequence of pairs
  type | interpolation type
  low | low integration limit

Definition at line 628 of file Splines.h.

629 : m_spline( type, std::forward<DATA>( begin ), std::forward<DATA>( end ) ), m_low( low )
630 {
631 }
begin
auto begin(reverse_wrapper< T > &w)
Definition: reverse.h:58
gaudirun.type
type
Definition: gaudirun.py:133
end
auto end(reverse_wrapper< T > &w)
Definition: reverse.h:64
Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline
SplineBase m_spline
Definition: Splines.h:660
Genfun::GaudiMathImplementation::GSLSplineInteg::m_low
double m_low
Definition: Splines.h:661

Genfun::GaudiMathImplementation::GSLSplineInteg::GSLSplineInteg | ( | const SplineBase & | right,
|  | const double | low = `0`
| ) |  |

constructor from base

constructor from SplineBase

Definition at line 444 of file Splines.cpp.

445 : AbsFunction(), m_spline( right ), m_low( low )
446 {
447 }
Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline
SplineBase m_spline
Definition: Splines.h:660
Genfun::GaudiMathImplementation::GSLSplineInteg::m_low
double m_low
Definition: Splines.h:661

Genfun::GaudiMathImplementation::GSLSplineInteg::GSLSplineInteg | ( | const GSLSplineInteg & |  | ) |
| default

copy constructor

## Member Function Documentation

unsigned int Genfun::GaudiMathImplementation::GSLSplineInteg::dimensionality | ( |  | ) | const
| inline override

Definition at line 642 of file Splines.h.

642 { return 1; }

bool Genfun::GaudiMathImplementation::GSLSplineInteg::hasAnalyticDerivative | ( |  | ) | const
| inline override

Does this function have an analytic derivative?

Definition at line 644 of file Splines.h.

644 { return true; }

Genfun::GaudiMathImplementation::GSLSplineInteg::operator const SplineBase & | ( |  | ) | const
| inline

cast operator to the spline function

Definition at line 652 of file Splines.h.

652 { return spline(); }
Genfun::GaudiMathImplementation::GSLSplineInteg::spline
const SplineBase & spline() const
acess to the spline function
Definition: Splines.h:650

double Genfun::GaudiMathImplementation::GSLSplineInteg::operator() | ( | double | a | ) | const
| override

main method: evaluate the function

Definition at line 451 of file Splines.cpp.

451 { return m_spline.integ( m_low, x ); }
Genfun::GaudiMathImplementation::SplineBase::integ
double integ(const double a, const double b) const
evaluate the integral on [a,b]
Definition: Splines.cpp:127
Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline
SplineBase m_spline
Definition: Splines.h:660
Genfun::GaudiMathImplementation::GSLSplineInteg::m_low
double m_low
Definition: Splines.h:661

double Genfun::GaudiMathImplementation::GSLSplineInteg::operator() | ( | const Argument & | x | ) | const
| override

main method: evaluate the function

Definition at line 453 of file Splines.cpp.

453 { return m_spline.integ( m_low, x[0] ); }
Genfun::GaudiMathImplementation::SplineBase::integ
double integ(const double a, const double b) const
evaluate the integral on [a,b]
Definition: Splines.cpp:127
Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline
SplineBase m_spline
Definition: Splines.h:660
Genfun::GaudiMathImplementation::GSLSplineInteg::m_low
double m_low
Definition: Splines.h:661

GSLSplineInteg& Genfun::GaudiMathImplementation::GSLSplineInteg::operator= | ( | const GSLSplineInteg & |  | ) |
| private delete

assignement operator is disabled ;

Genfun::Derivative Genfun::GaudiMathImplementation::GSLSplineInteg::partial | ( | unsigned int | i | ) | const
| override

Derivatives.

Definition at line 459 of file Splines.cpp.

460 {
461 if ( i >= 1 ) {
462 const AbsFunction& aux = GaudiMath::Constant( 0.0, 1 );
463 return Genfun::FunctionNoop( &aux );
464 }
465 const AbsFunction& aux = GSLSpline( *this );
466 return Genfun::FunctionNoop( &aux );
467 }
GaudiMath::Constant
Genfun::GaudiMathImplementation::Constant Constant
Definition: GaudiMath.h:26

const SplineBase& Genfun::GaudiMathImplementation::GSLSplineInteg::spline | ( |  | ) | const
| inline

acess to the spline function

Definition at line 650 of file Splines.h.

650 { return m_spline; }
Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline
SplineBase m_spline
Definition: Splines.h:660

## Member Data Documentation

double Genfun::GaudiMathImplementation::GSLSplineInteg::m_low
| private

Definition at line 661 of file Splines.h.

SplineBase Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline
| private

Definition at line 660 of file Splines.h.

The documentation for this class was generated from the following files:

- GaudiGSL/GaudiMath/Splines.h
- GaudiGSL/src/Lib/Splines.cpp