Genfun::GaudiMathImplementation::GSLSplineDeriv2 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::GSLSplineDeriv2:
Collaboration diagram for Genfun::GaudiMathImplementation::GSLSplineDeriv2:

Public Types

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

Public Member Functions

 GSLSplineDeriv2 (const Data1D &x, const Data1D &y, const GaudiMath::Interpolation::Type type)
 mandatory macro from CLHEP/GenericFunctions More...
 
 GSLSplineDeriv2 (const Data2D &data, const GaudiMath::Interpolation::Type type)
 constructor from data vector More...
 
template<class DATAX , class DATAY >
 GSLSplineDeriv2 (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 >
 GSLSplineDeriv2 (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...
 
 GSLSplineDeriv2 (const SplineBase &)
 constructor from base More...
 
 GSLSplineDeriv2 (const GSLSplineDeriv2 &)
 copy constructor More...
 
 ~GSLSplineDeriv2 () 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...
 
 GSLSplineDeriv2 (const Data1D &x, const Data1D &y, const GaudiMath::Interpolation::Type type)
 mandatory macro from CLHEP/GenericFunctions More...
 
 GSLSplineDeriv2 (const Data2D &data, const GaudiMath::Interpolation::Type type)
 constructor from data vector More...
 
template<class DATAX , class DATAY >
 GSLSplineDeriv2 (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 >
 GSLSplineDeriv2 (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...
 
 GSLSplineDeriv2 (const SplineBase &)
 constructor from base More...
 
 GSLSplineDeriv2 (const GSLSplineDeriv2 &)
 copy constructor More...
 
 ~GSLSplineDeriv2 () 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

 GSLSplineDeriv2 ()=delete
 default construtor is disabled ; More...
 
GSLSplineDeriv2operator= (const GSLSplineDeriv2 &)=delete
 assignement operator is disabled ; More...
 
 GSLSplineDeriv2 ()=delete
 default construtor is disabled ; More...
 
GSLSplineDeriv2operator= (const GSLSplineDeriv2 &)=delete
 assignement operator is disabled ; More...
 

Private Attributes

SplineBase m_spline
 

Detailed Description

Definition at line 411 of file Splines.h.

Member Typedef Documentation

Constructor & Destructor Documentation

Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( 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 =
GSLSplineDeriv( x , y , GaudiMath::Interpolation::Cspline ) ;
const double value = 1 ;
const double result = func( value ) ;
Parameters
xvector of x
yvector of y
typeinterpolation type

Definition at line 435 of file Splines.cpp.

438  : AbsFunction ()
439  , m_spline ( x , y , type )
440  {}
string type
Definition: gaudirun.py:151
Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( const Data2D data,
const GaudiMath::Interpolation::Type  type 
)

constructor from data vector

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

Definition at line 464 of file Splines.cpp.

466  : AbsFunction ()
467  , m_spline ( data , type )
468  {}
string type
Definition: gaudirun.py:151
template<class DATAX , class DATAY >
Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( 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 493 of file Splines.h.

497  : AbsFunction ( )
498  , m_spline( type , begin_x , end_x , begin_y )
499  {}
string type
Definition: gaudirun.py:151
template<class DATA >
Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( 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 513 of file Splines.h.

516  : AbsFunction ( )
517  , m_spline( type , begin , end )
518  {}
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::GSLSplineDeriv2::GSLSplineDeriv2 ( const SplineBase right)

constructor from base

constructor from SplineBase

Definition at line 475 of file Splines.cpp.

476  : AbsFunction ()
477  , m_spline ( right )
478  {}
Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( const GSLSplineDeriv2 right)

copy constructor

Definition at line 485 of file Splines.cpp.

486  : AbsFunction ()
487  , m_spline ( right )
488  {}
Genfun::GaudiMathImplementation::GSLSplineDeriv2::~GSLSplineDeriv2 ( )
override

destructor

Definition at line 494 of file Splines.cpp.

494 {}
Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( )
privatedelete

default construtor is disabled ;

Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( 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::GSLSplineDeriv2::GSLSplineDeriv2 ( const Data2D data,
const GaudiMath::Interpolation::Type  type 
)

constructor from data vector

Data2D data = ... ;
const AbsFunction& func =
const double value = 1 ;
const double result = func( value ) ;
Parameters
datavector of (x,y) pairs
typeinterpolation type
template<class DATAX , class DATAY >
Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( 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 493 of file Splines.h.

497  : AbsFunction ( )
498  , m_spline( type , begin_x , end_x , begin_y )
499  {}
string type
Definition: gaudirun.py:151
template<class DATA >
Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( 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 513 of file Splines.h.

516  : AbsFunction ( )
517  , m_spline( type , begin , end )
518  {}
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::GSLSplineDeriv2::GSLSplineDeriv2 ( const SplineBase )

constructor from base

Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( const GSLSplineDeriv2 )

copy constructor

Genfun::GaudiMathImplementation::GSLSplineDeriv2::~GSLSplineDeriv2 ( )
override

destructor

Genfun::GaudiMathImplementation::GSLSplineDeriv2::GSLSplineDeriv2 ( )
privatedelete

default construtor is disabled ;

Member Function Documentation

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

Definition at line 530 of file Splines.h.

530 { return 1 ; }
unsigned int Genfun::GaudiMathImplementation::GSLSplineDeriv2::dimensionality ( ) const
inlineoverride

Definition at line 530 of file Splines.h.

530 { return 1 ; }
bool Genfun::GaudiMathImplementation::GSLSplineDeriv2::hasAnalyticDerivative ( ) const
inlineoverride

Does this function have an analytic derivative?

Definition at line 532 of file Splines.h.

532 { return true ; }
bool Genfun::GaudiMathImplementation::GSLSplineDeriv2::hasAnalyticDerivative ( ) const
inlineoverride

Does this function have an analytic derivative?

Definition at line 532 of file Splines.h.

532 { return true ; }
Genfun::GaudiMathImplementation::GSLSplineDeriv2::operator const SplineBase & ( ) const
inline

cast operator to the spline function

Definition at line 539 of file Splines.h.

539 { return spline() ; }
const SplineBase & spline() const
acess to the spline function
Definition: Splines.h:537
Genfun::GaudiMathImplementation::GSLSplineDeriv2::operator const SplineBase & ( ) const
inline

cast operator to the spline function

Definition at line 539 of file Splines.h.

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

main method: evaluate the function

Definition at line 498 of file Splines.cpp.

499  { return m_spline.deriv2 ( x ) ; }
double deriv2(const double x) const
evaluate the second derivative
Definition: Splines.cpp:167
double Genfun::GaudiMathImplementation::GSLSplineDeriv2::operator() ( double  a) const
override

main method: evaluate the function

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

main method: evaluate the function

Definition at line 501 of file Splines.cpp.

502  { return m_spline.deriv2 ( x[0] ) ; }
double deriv2(const double x) const
evaluate the second derivative
Definition: Splines.cpp:167
double Genfun::GaudiMathImplementation::GSLSplineDeriv2::operator() ( const Argument &  x) const
override

main method: evaluate the function

GSLSplineDeriv2& Genfun::GaudiMathImplementation::GSLSplineDeriv2::operator= ( const GSLSplineDeriv2 )
privatedelete

assignement operator is disabled ;

GSLSplineDeriv2& Genfun::GaudiMathImplementation::GSLSplineDeriv2::operator= ( const GSLSplineDeriv2 )
privatedelete

assignement operator is disabled ;

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

Derivatives.

Definition at line 508 of file Splines.cpp.

509  {
510  if ( i >= 1 )
511  {
512  const AbsFunction& aux = GaudiMath::Constant( 0.0 , 1 ) ;
513  return Genfun::FunctionNoop( &aux ) ;
514  }
515  const AbsFunction& aux = GaudiMath::Derivative( *this , i ) ;
516  return Genfun::FunctionNoop( &aux ) ;
517  }
Genfun::GaudiMathImplementation::NumericalDerivative Derivative
Definition: GaudiMath.h:29
list i
Definition: ana.py:128
Genfun::GaudiMathImplementation::Constant Constant
Definition: GaudiMath.h:27
Genfun::Derivative Genfun::GaudiMathImplementation::GSLSplineDeriv2::partial ( unsigned int  i) const
override

Derivatives.

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

acess to the spline function

Definition at line 537 of file Splines.h.

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

acess to the spline function

Definition at line 537 of file Splines.h.

Member Data Documentation

SplineBase Genfun::GaudiMathImplementation::GSLSplineDeriv2::m_spline
private

Definition at line 547 of file Splines.h.


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