BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
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.
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) |
|
inline |
Default Constructor of a GSLDerivator class based on GSL numerical differentiation algorithms
Definition at line 68 of file GSLDerivator.h.
|
inlinevirtual |
double ROOT::Math::GSLDerivator::Error | ( | ) | const |
return the estimate of the absolute error of the last derivative calculation
|
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
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.
|
static |
Computes the numerical derivative of a function f at a point x using an adaptive central difference algorithm with a step size h
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.
|
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
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.
double ROOT::Math::GSLDerivator::Result | ( | ) | const |
return the result of the last derivative calculation
void ROOT::Math::GSLDerivator::SetFunction | ( | const IGenFunction & | f | ) |
Set the function for calculating the derivatives. The function must implement the ROOT::Math::IGenFunction signature
void ROOT::Math::GSLDerivator::SetFunction | ( | GSLFuncPointer | f, |
void * | p = 0 |
||
) |
Set the function f for evaluating the derivative using a GSL function pointer type
f | : free function pointer of the GSL required type |
p | : pointer to the object carrying the function state (for example the function object itself) |
int ROOT::Math::GSLDerivator::Status | ( | ) | const |
return the error status of the last integral calculation
|
private |
Definition at line 163 of file GSLDerivator.h.
|
private |
Definition at line 165 of file GSLDerivator.h.
|
private |
Definition at line 162 of file GSLDerivator.h.
|
private |
Definition at line 161 of file GSLDerivator.h.