BornAgain  1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
ROOT::Math::GSLDerivator Class Reference

Description

Class for computing numerical derivative of a function based on the GSL numerical algorithm This class is implemented using the numerical derivatives algorithms provided by GSL (see GSL Online Manual ).

Definition at line 62 of file GSLDerivator.h.

Collaboration diagram for ROOT::Math::GSLDerivator:
[legend]

Public Member Functions

 GSLDerivator ()
 
virtual ~GSLDerivator ()
 destructor (no operations) More...
 
double EvalBackward (double x, double h)
 
double EvalCentral (double x, double h)
 
double EvalForward (double x, double h)
 
void SetFunction (const IGenFunction &f)
 
void SetFunction (GSLFuncPointer f, void *p=0)
 

— Static methods —

int fStatus
 
double fResult
 
double fError
 
GSLFunctionWrapper fFunction
 
int Status () const
 
double Result () const
 
double Error () const
 
static double EvalCentral (const IGenFunction &f, double x, double h)
 
static double EvalForward (const IGenFunction &f, double x, double h)
 
static double EvalBackward (const IGenFunction &f, double x, double h)
 

Constructor & Destructor Documentation

◆ GSLDerivator()

ROOT::Math::GSLDerivator::GSLDerivator ( )
inline

Default Constructor of a GSLDerivator class based on GSL numerical differentiation algorithms

Definition at line 68 of file GSLDerivator.h.

◆ ~GSLDerivator()

virtual ROOT::Math::GSLDerivator::~GSLDerivator ( )
inlinevirtual

destructor (no operations)

Definition at line 71 of file GSLDerivator.h.

71 {}

Member Function Documentation

◆ Error()

double ROOT::Math::GSLDerivator::Error ( ) const

return the estimate of the absolute error of the last derivative calculation

◆ EvalBackward() [1/2]

static double ROOT::Math::GSLDerivator::EvalBackward ( const IGenFunction f,
double  x,
double  h 
)
static

Computes the numerical derivative of a function f at a point x using an adaptive backward difference algorithm with a step size h. The function is evaluated only at points less than x and at x itself

◆ EvalBackward() [2/2]

double ROOT::Math::GSLDerivator::EvalBackward ( double  x,
double  h 
)

Computes the numerical derivative at a point x using an adaptive backward difference algorithm with a step size h. The function is evaluated only at points less than x and at x itself.

◆ EvalCentral() [1/2]

static double ROOT::Math::GSLDerivator::EvalCentral ( const IGenFunction f,
double  x,
double  h 
)
static

Computes the numerical derivative of a function f at a point x using an adaptive central difference algorithm with a step size h

◆ EvalCentral() [2/2]

double ROOT::Math::GSLDerivator::EvalCentral ( double  x,
double  h 
)

Computes the numerical derivative at a point x using an adaptive central difference algorithm with a step size h.

◆ EvalForward() [1/2]

static double ROOT::Math::GSLDerivator::EvalForward ( const IGenFunction f,
double  x,
double  h 
)
static

Computes the numerical derivative of a function f at a point x using an adaptive forward difference algorithm with a step size h. The function is evaluated only at points greater than x and at x itself

◆ EvalForward() [2/2]

double ROOT::Math::GSLDerivator::EvalForward ( double  x,
double  h 
)

Computes the numerical derivative at a point x using an adaptive forward difference algorithm with a step size h. The function is evaluated only at points greater than x and at x itself.

◆ Result()

double ROOT::Math::GSLDerivator::Result ( ) const

return the result of the last derivative calculation

◆ SetFunction() [1/2]

void ROOT::Math::GSLDerivator::SetFunction ( const IGenFunction f)

Set the function for calculating the derivatives. The function must implement the ROOT::Math::IGenFunction signature

◆ SetFunction() [2/2]

void ROOT::Math::GSLDerivator::SetFunction ( GSLFuncPointer  f,
void *  p = 0 
)

Set the function f for evaluating the derivative using a GSL function pointer type

Parameters
f: free function pointer of the GSL required type
p: pointer to the object carrying the function state (for example the function object itself)

◆ Status()

int ROOT::Math::GSLDerivator::Status ( ) const

return the error status of the last integral calculation

Member Data Documentation

◆ fError

double ROOT::Math::GSLDerivator::fError
private

Definition at line 163 of file GSLDerivator.h.

◆ fFunction

GSLFunctionWrapper ROOT::Math::GSLDerivator::fFunction
private

Definition at line 165 of file GSLDerivator.h.

◆ fResult

double ROOT::Math::GSLDerivator::fResult
private

Definition at line 162 of file GSLDerivator.h.

◆ fStatus

int ROOT::Math::GSLDerivator::fStatus
private

Definition at line 161 of file GSLDerivator.h.


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