Genfun::GaudiMathImplementation::GSLSplineDeriv Class Reference

#include </scratch/z5/marcocle/GaudiDocs/lhcb-release/996/GAUDI/GAUDI_v26r4/InstallArea/x86_64-slc6-gcc48-opt/include/GaudiMath/Splines.h>

Inheritance diagram for Genfun::GaudiMathImplementation::GSLSplineDeriv:
Collaboration diagram for Genfun::GaudiMathImplementation::GSLSplineDeriv:

Public Types

typedef SplineBase::Data1D Data1D
 
typedef SplineBase::Data2D Data2D
 
typedef SplineBase::Data1D Data1D
 
typedef SplineBase::Data2D Data2D
 

Public Member Functions

 GSLSplineDeriv (const Data1D &x, const Data1D &y, const GaudiMath::Interpolation::Type type)
 mandatory macro from CLHEP/GenericFunctions More...
 
 GSLSplineDeriv (const Data2D &data, const GaudiMath::Interpolation::Type type)
 constructor from data vector More...
 
template<class DATAX , class DATAY >
 GSLSplineDeriv (const GaudiMath::Interpolation::Type type, DATAX begin_x, DATAX end_x, DATAY begin_y)
 templated constructor in the spirit of STL-algorithms More...
 
template<class DATA >
 GSLSplineDeriv (const GaudiMath::Interpolation::Type type, DATA begin, DATA end)
 templated constructor from the sequence of pairs as sequence of pairs the class TabulatedProperty can be used More...
 
 GSLSplineDeriv (const SplineBase &)
 constructor from base More...
 
 GSLSplineDeriv (const GSLSplineDeriv &)
 copy constructor More...
 
 ~GSLSplineDeriv () override
 destructor 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 SplineBasespline () const
 acess to the spline function More...
 
 operator const SplineBase & () const
 cast operator to the spline function More...
 
 GSLSplineDeriv (const Data1D &x, const Data1D &y, const GaudiMath::Interpolation::Type type)
 mandatory macro from CLHEP/GenericFunctions More...
 
 GSLSplineDeriv (const Data2D &data, const GaudiMath::Interpolation::Type type)
 constructor from data vector More...
 
template<class DATAX , class DATAY >
 GSLSplineDeriv (const GaudiMath::Interpolation::Type type, DATAX begin_x, DATAX end_x, DATAY begin_y)
 templated constructor in the spirit of STL-algorithms More...
 
template<class DATA >
 GSLSplineDeriv (const GaudiMath::Interpolation::Type type, DATA begin, DATA end)
 templated constructor from the sequence of pairs as sequence of pairs the class TabulatedProperty can be used More...
 
 GSLSplineDeriv (const SplineBase &)
 constructor from base More...
 
 GSLSplineDeriv (const GSLSplineDeriv &)
 copy constructor More...
 
 ~GSLSplineDeriv () override
 destructor 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 SplineBasespline () const
 acess to the spline function More...
 
 operator const SplineBase & () const
 cast operator to the spline function More...
 

Private Member Functions

 GSLSplineDeriv ()
 default construtor is desabled ; More...
 
GSLSplineDerivoperator= (const GSLSplineDeriv &)
 assignement operator is desabled ; More...
 
 GSLSplineDeriv ()
 default construtor is desabled ; More...
 
GSLSplineDerivoperator= (const GSLSplineDeriv &)
 assignement operator is desabled ; More...
 

Private Attributes

SplineBase m_spline
 

Detailed Description

Definition at line 272 of file Splines.h.

Member Typedef Documentation

Constructor & Destructor Documentation

Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const Data1D x,
const Data1D y,
const GaudiMath::Interpolation::Type  type 
)

mandatory macro from CLHEP/GenericFunctions

constructor from vectors and type

constructor from vectors and type

Data1D x = .. ;
Data1D y = .. ;
const AbsFunction& func =
const double value = 1 ;
const double result = func( value ) ;
Parameters
xvector of x
yvector of y
typeinterpolation type
Data1D x = .. ;
Data1D y = .. ;
const AbsFunction& func =
const double value = 1 ;
const double result = func( value ) ;
Parameters
xvector of x
yvector of y
typeinterpolation type

Definition at line 323 of file Splines.cpp.

326  : AbsFunction ()
327  , m_spline ( x , y , type )
328  {}
string type
Definition: gaudirun.py:151
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const Data2D data,
const GaudiMath::Interpolation::Type  type 
)

constructor from data vector

Data2D data = ... ;
const AbsFunction& func =
GSLSpline( data , GaudiMath::Interpolation::Cspline );
const double value = 1 ;
const double result = func( value ) ;
Parameters
datavector of (x,y) pairs
typeinterpolation type

Definition at line 352 of file Splines.cpp.

354  : AbsFunction ()
355  , m_spline ( data , type )
356  {}
string type
Definition: gaudirun.py:151
template<class DATAX , class DATAY >
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const GaudiMath::Interpolation::Type  type,
DATAX  begin_x,
DATAX  end_x,
DATAY  begin_y 
)
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 =
x.begin () ,
x.end () ,
y.begin () );
const double value = 1 ;
const double result = func( value ) ;
Parameters
begin_xbegin of X-sequence
end_xend of X-sequence
begin_Ybegin of Y-sequence
typeinterpolation type

Definition at line 354 of file Splines.h.

358  : AbsFunction ( )
359  , m_spline( type , begin_x , end_x , begin_y )
360  {}
string type
Definition: gaudirun.py:151
template<class DATA >
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const GaudiMath::Interpolation::Type  type,
DATA  begin,
DATA  end 
)
inline

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

Parameters
beginbegin of sequence of pairs
endend of sequence of pairs
typeinterpolation type

Definition at line 374 of file Splines.h.

377  : AbsFunction ( )
378  , m_spline( type , begin , end )
379  {}
auto begin(reverse_wrapper< T > &w)
Definition: reverse.h:45
auto end(reverse_wrapper< T > &w)
Definition: reverse.h:47
string type
Definition: gaudirun.py:151
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const SplineBase right)

constructor from base

constructor from SplineBase

Definition at line 363 of file Splines.cpp.

364  : AbsFunction ()
365  , m_spline ( right )
366  {}
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const GSLSplineDeriv right)

copy constructor

Definition at line 373 of file Splines.cpp.

374  : AbsFunction ()
375  , m_spline ( right )
376  {}
Genfun::GaudiMathImplementation::GSLSplineDeriv::~GSLSplineDeriv ( )
override

destructor

Definition at line 382 of file Splines.cpp.

382 {}
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( )
private

default construtor is desabled ;

Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const Data1D x,
const Data1D y,
const GaudiMath::Interpolation::Type  type 
)

mandatory macro from CLHEP/GenericFunctions

constructor from vectors and type

Data1D x = .. ;
Data1D y = .. ;
const AbsFunction& func =
const double value = 1 ;
const double result = func( value ) ;
Parameters
xvector of x
yvector of y
typeinterpolation type
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const Data2D data,
const GaudiMath::Interpolation::Type  type 
)

constructor from data vector

Data2D data = ... ;
const AbsFunction& func =
GSLSpline( data , GaudiMath::Interpolation::Cspline );
const double value = 1 ;
const double result = func( value ) ;
Parameters
datavector of (x,y) pairs
typeinterpolation type
template<class DATAX , class DATAY >
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const GaudiMath::Interpolation::Type  type,
DATAX  begin_x,
DATAX  end_x,
DATAY  begin_y 
)
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 =
x.begin () ,
x.end () ,
y.begin () );
const double value = 1 ;
const double result = func( value ) ;
Parameters
begin_xbegin of X-sequence
end_xend of X-sequence
begin_Ybegin of Y-sequence
typeinterpolation type

Definition at line 354 of file Splines.h.

358  : AbsFunction ( )
359  , m_spline( type , begin_x , end_x , begin_y )
360  {}
string type
Definition: gaudirun.py:151
template<class DATA >
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const GaudiMath::Interpolation::Type  type,
DATA  begin,
DATA  end 
)
inline

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

Parameters
beginbegin of sequence of pairs
endend of sequence of pairs
typeinterpolation type

Definition at line 374 of file Splines.h.

377  : AbsFunction ( )
378  , m_spline( type , begin , end )
379  {}
auto begin(reverse_wrapper< T > &w)
Definition: reverse.h:45
auto end(reverse_wrapper< T > &w)
Definition: reverse.h:47
string type
Definition: gaudirun.py:151
Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const SplineBase )

constructor from base

Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( const GSLSplineDeriv )

copy constructor

Genfun::GaudiMathImplementation::GSLSplineDeriv::~GSLSplineDeriv ( )
override

destructor

Genfun::GaudiMathImplementation::GSLSplineDeriv::GSLSplineDeriv ( )
private

default construtor is desabled ;

Member Function Documentation

unsigned int Genfun::GaudiMathImplementation::GSLSplineDeriv::dimensionality ( ) const
inlineoverride

Definition at line 391 of file Splines.h.

391 { return 1 ; }
unsigned int Genfun::GaudiMathImplementation::GSLSplineDeriv::dimensionality ( ) const
inlineoverride

Definition at line 391 of file Splines.h.

391 { return 1 ; }
bool Genfun::GaudiMathImplementation::GSLSplineDeriv::hasAnalyticDerivative ( ) const
inlineoverride

Does this function have an analytic derivative?

Definition at line 393 of file Splines.h.

393 { return true ; }
bool Genfun::GaudiMathImplementation::GSLSplineDeriv::hasAnalyticDerivative ( ) const
inlineoverride

Does this function have an analytic derivative?

Definition at line 393 of file Splines.h.

393 { return true ; }
Genfun::GaudiMathImplementation::GSLSplineDeriv::operator const SplineBase & ( ) const
inline

cast operator to the spline function

Definition at line 400 of file Splines.h.

400 { return spline() ; }
const SplineBase & spline() const
acess to the spline function
Definition: Splines.h:398
Genfun::GaudiMathImplementation::GSLSplineDeriv::operator const SplineBase & ( ) const
inline

cast operator to the spline function

Definition at line 400 of file Splines.h.

400 { return spline() ; }
const SplineBase & spline() const
acess to the spline function
Definition: Splines.h:398
double Genfun::GaudiMathImplementation::GSLSplineDeriv::operator() ( double  a) const
override

main method: evaluate the function

Definition at line 386 of file Splines.cpp.

387  { return m_spline.deriv ( x ) ; }
double deriv(const double x) const
evaluate the first derivative
Definition: Splines.cpp:159
double Genfun::GaudiMathImplementation::GSLSplineDeriv::operator() ( double  a) const
override

main method: evaluate the function

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

main method: evaluate the function

Definition at line 389 of file Splines.cpp.

390  { return m_spline.deriv ( x[0] ) ; }
double deriv(const double x) const
evaluate the first derivative
Definition: Splines.cpp:159
double Genfun::GaudiMathImplementation::GSLSplineDeriv::operator() ( const Argument &  x) const
override

main method: evaluate the function

GSLSplineDeriv& Genfun::GaudiMathImplementation::GSLSplineDeriv::operator= ( const GSLSplineDeriv )
private

assignement operator is desabled ;

GSLSplineDeriv& Genfun::GaudiMathImplementation::GSLSplineDeriv::operator= ( const GSLSplineDeriv )
private

assignement operator is desabled ;

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

Derivatives.

Definition at line 396 of file Splines.cpp.

397  {
398  if ( i >= 1 )
399  {
400  const AbsFunction& aux = GaudiMath::Constant( 0.0 , 1 ) ;
401  return Genfun::FunctionNoop( &aux ) ;
402  }
403  const AbsFunction& aux = GSLSplineDeriv2( *this ) ;
404  return Genfun::FunctionNoop( &aux ) ;
405  }
list i
Definition: ana.py:128
Genfun::GaudiMathImplementation::Constant Constant
Definition: GaudiMath.h:27
Genfun::Derivative Genfun::GaudiMathImplementation::GSLSplineDeriv::partial ( unsigned int  i) const
override

Derivatives.

const SplineBase& Genfun::GaudiMathImplementation::GSLSplineDeriv::spline ( ) const
inline

acess to the spline function

Definition at line 398 of file Splines.h.

398 { return m_spline ; }
const SplineBase& Genfun::GaudiMathImplementation::GSLSplineDeriv::spline ( ) const
inline

acess to the spline function

Definition at line 398 of file Splines.h.

398 { return m_spline ; }

Member Data Documentation

SplineBase Genfun::GaudiMathImplementation::GSLSplineDeriv::m_spline
private

Definition at line 408 of file Splines.h.


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