| # Gaudi Framework, version v21r7p1 |

Home |  | Generated: 15 Feb 2010

# Genfun::GaudiMathImplementation::GSLSplineInteg Class Reference

`#include <Splines.h>`

Collaboration diagram for Genfun::GaudiMathImplementation::GSLSplineInteg:

[legend]

List of all members.

## Public Types
typedef SplineBase::Data1D | Data1D
typedef SplineBase::Data2D | Data2D
## Public Member Functions
| FUNCTION_OBJECT_DEF (GSLSplineInteg)
| mandatory macro from CLHEP/GenericFunctions
| GSLSplineInteg (const Data1D &x, const Data1D &y, const GaudiMath::Interpolation::Type type, const double low=0)
| constructor from vectors and type
| GSLSplineInteg (const Data2D &data, const GaudiMath::Interpolation::Type type, const double low=0)
| constructor from data vector
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
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
| GSLSplineInteg (const SplineBase &, const double low=0)
| constructor from base
| GSLSplineInteg (const GSLSplineInteg &)
| copy constructor
virtual | ~GSLSplineInteg ()
| destructor
virtual double | operator() (double a) const
| main method: evaluate the function
virtual double | operator() (const Argument &x) const
| main method: evaluate the function
virtual unsigned int | dimensionality () const
virtual bool | hasAnalyticDerivative () const
| Does this function have an analytic derivative?
virtual Genfun::Derivative | partial (unsigned int i) const
| Derivatives.
const SplineBase & | spline () const
| acess to the spline function
| operator const SplineBase & () const
| cast operator to the spline function
## Private Member Functions
| GSLSplineInteg ()
| default construtor is desabled ;
GSLSplineInteg & | operator= (const GSLSplineInteg &)
| assignement operator is desabled ;
## Private Attributes
SplineBase | m_spline
double | m_low

## Detailed Description

Definition at line 558 of file Splines.h.

## Member Typedef Documentation

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

Definition at line 561 of file Splines.h.

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

Definition at line 562 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 540 of file Splines.cpp.

    00544       : AbsFunction (      )
    00545       , m_spline    ( x    , y , type )
    00546       , m_low       ( low  )
    00547     {}

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 571 of file Splines.cpp.

    00574       : AbsFunction ()
    00575       , m_spline    ( data , type )
    00576       , m_low       ( low  )
    00577     {}

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 644 of file Splines.h.

    00649         : AbsFunction (      )
    00650         , m_spline    ( type , begin_x , end_x , begin_y )
    00651         , m_low       ( low  )
    00652       {};

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 667 of file Splines.h.

    00671         : AbsFunction (      )
    00672         , m_spline    ( type , begin , end )
    00673         , m_low       ( low  )
    00674       {};

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

constructor from base

constructor from SplineBase

Definition at line 584 of file Splines.cpp.

    00586       : AbsFunction ()
    00587       , m_spline    ( right )
    00588       , m_low       ( low   )
    00589     {}

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

copy constructor

Definition at line 596 of file Splines.cpp.

    00597       : AbsFunction ()
    00598       , m_spline    ( right       )
    00599       , m_low       ( right.m_low )
    00600     {}

Genfun::GaudiMathImplementation::GSLSplineInteg::~GSLSplineInteg | ( |  | ) | `[virtual]`

destructor

Definition at line 606 of file Splines.cpp.

    00606 {}

Genfun::GaudiMathImplementation::GSLSplineInteg::GSLSplineInteg | ( |  | ) | `[private]`

default construtor is desabled ;

## Member Function Documentation

Genfun::GaudiMathImplementation::GSLSplineInteg::FUNCTION_OBJECT_DEF | ( | GSLSplineInteg |  | ) |

mandatory macro from CLHEP/GenericFunctions

double Genfun::GaudiMathImplementation::GSLSplineInteg::operator() | ( | double | a | ) | const`[virtual]`

main method: evaluate the function

Definition at line 610 of file Splines.cpp.

    00611     { return m_spline.integ ( m_low , x    ) ; }

double Genfun::GaudiMathImplementation::GSLSplineInteg::operator() | ( | const Argument & | x | ) | const`[virtual]`

main method: evaluate the function

Definition at line 613 of file Splines.cpp.

    00614     { return m_spline.integ ( m_low , x[0] ) ; }

virtual unsigned int Genfun::GaudiMathImplementation::GSLSplineInteg::dimensionality | ( |  | ) | const`[inline, virtual]`

Definition at line 687 of file Splines.h.

    00687 { return 1   ; }

virtual bool Genfun::GaudiMathImplementation::GSLSplineInteg::hasAnalyticDerivative | ( |  | ) | const`[inline, virtual]`

Does this function have an analytic derivative?

Definition at line 689 of file Splines.h.

    00689 { return true ; }

Genfun::Derivative Genfun::GaudiMathImplementation::GSLSplineInteg::partial | ( | unsigned int | i | ) | const`[virtual]`

Derivatives.

Definition at line 620 of file Splines.cpp.

    00621     {
    00622       if ( i >= 1 )
    00623       {
    00624         const AbsFunction& aux = GaudiMath::Constant( 0.0 , 1 ) ;
    00625         return Genfun::FunctionNoop( &aux ) ;
    00626       }
    00627       const AbsFunction& aux = GSLSpline( *this ) ;
    00628       return Genfun::FunctionNoop( &aux ) ;
    00629     };

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

acess to the spline function

Definition at line 694 of file Splines.h.

    00694 { return m_spline ; }

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

cast operator to the spline function

Definition at line 696 of file Splines.h.

    00696 { return spline() ; }

GSLSplineInteg& Genfun::GaudiMathImplementation::GSLSplineInteg::operator= | ( | const GSLSplineInteg & |  | ) | `[private]`

assignement operator is desabled ;

## Member Data Documentation

SplineBase Genfun::GaudiMathImplementation::GSLSplineInteg::m_spline`[private]`

Definition at line 704 of file Splines.h.

double Genfun::GaudiMathImplementation::GSLSplineInteg::m_low`[private]`

Definition at line 705 of file Splines.h.

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

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v21r7p1/GaudiGSL/GaudiMath/Splines.h
- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v21r7p1/GaudiGSL/src/Lib/Splines.cpp