IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.

IG::Num::IRealFunction Interface Reference

Interface for real functions. More...

Inheritance diagram for IG::Num::IRealFunction:

List of all members.

Public Member Functions

double Value (double x)
 Returns the value of this function at the specified parameter.
double Derivative (double x)
 Returns the first derivative of this function at the specified parameter.
double Derivative (double x, int order)
 Returns the derivative of the given order of this function at the specified parameter.
bool HigherDerivativeDefined (int order)
 Tells whether the derivative of the given order is defined for this function (by implementation, not mathematically)
double SecondDerivative (double x)
 Returns the second derivative of the given order of this function at the specified arameter.
double Integral (double x)
 Returns integral from 0 to x of the function. Throws an exception if the integral is not defined.
double Inverse (double y)
 Returns Inverse of the current function applied to function argument. Throws an exception if the inverse function is not defined.
void Tabulate (double from, double to, int numPoints)
 Tabulates the current function and its first and second derivatives (when available) on the specified interval, in the specified number of points.
void Tabulate (double from, double to, int numPoints, bool printDerivatives)
 Tabulates the current function and its first and eventually second derivatives (when available) on the specified interval, in the specified number of points.
void Tabulate (double from, double to, int numPoints, bool printDerivatives, bool printSecondDerivatives)
 Tabulates the current function and eventually its first and second derivatives (when available) on the specified interval, in the specified number of points.
double NumericalIntegral (double from, double to, int numintervals)
 Calculates numerical integral of this function. Simpson's formula is usually used.
double NumericalDerivative (double x, double stepsize)
 Calculates numerical derivative of this function. Central difference formula is used.
double NumericalSecondDerivative (double x, double stepsize)
 Calculates numerical second order derivative of this function. Central difference formula is used.

Properties

string Name [get]
 Returns a short name of the function.
string Description [get]
 Returns a short description of the function.
bool ValueDefined [get]
 Tells whether value of the function is defined by implementation.
bool DerivativeDefined [get]
 Tells whether the first derivative is defined for this function (by implementation, not mathematically)
bool SecondDerivativeDefined [get]
 Tells whether the second derivative is defined for this function (by implementation, not mathematically)
bool IntegralDefined [get]
 Tells whether analytical itegral of the function is defined or not.
bool InverseDefined [get]
 Tells whether analytical inverse function is defined or not.

Detailed Description

Interface for real functions.

$A Igor xx;


Member Function Documentation

double IG::Num::IRealFunction::Value ( double  x)
double IG::Num::IRealFunction::Derivative ( double  x)

Returns the first derivative of this function at the specified parameter.

Implemented in IG::Num::RealFunctionBase, and IG::Num::RealFunction.

double IG::Num::IRealFunction::Derivative ( double  x,
int  order 
)

Returns the derivative of the given order of this function at the specified parameter.

Implemented in IG::Num::RealFunctionBase, IG::Num::RealFunction, IG::Num::Func::Identity, and IG::Num::Func::Constant.

double IG::Num::IRealFunction::SecondDerivative ( double  x)

Returns the second derivative of the given order of this function at the specified arameter.

Implemented in IG::Num::RealFunctionBase, and IG::Num::RealFunction.

double IG::Num::IRealFunction::Integral ( double  x)

Returns integral from 0 to x of the function. Throws an exception if the integral is not defined.

Parameters:
xUpper bound of the integral.

Implemented in IG::Num::RealFunctionBase, and IG::Num::RealFunction.

double IG::Num::IRealFunction::Inverse ( double  y)

Returns Inverse of the current function applied to function argument. Throws an exception if the inverse function is not defined.

Implemented in IG::Num::RealFunctionBase, and IG::Num::RealFunction.

void IG::Num::IRealFunction::Tabulate ( double  from,
double  to,
int  numPoints 
)

Tabulates the current function and its first and second derivatives (when available) on the specified interval, in the specified number of points.

Parameters:
fromLeft interval bound.
toRight interval bound.
numPointsNumber of points in which the function is calculated.

Implemented in IG::Num::RealFunctionBase.

void IG::Num::IRealFunction::Tabulate ( double  from,
double  to,
int  numPoints,
bool  printDerivatives 
)

Tabulates the current function and its first and eventually second derivatives (when available) on the specified interval, in the specified number of points.

Parameters:
fromLeft interval bound.
toRight interval bound.
numPointsNumber of points in which the function is calculated.
printSecondDerivativesWhether to print the second derivatives.

Implemented in IG::Num::RealFunctionBase.

void IG::Num::IRealFunction::Tabulate ( double  from,
double  to,
int  numPoints,
bool  printDerivatives,
bool  printSecondDerivatives 
)

Tabulates the current function and eventually its first and second derivatives (when available) on the specified interval, in the specified number of points.

Parameters:
fromLeft interval bound.
toRight interval bound.
numPointsNumber of points in which the function is calculated.
printDerivativesWhether to print the derivatives.
printSecondDerivativesWhether to print the second derivatives.

Implemented in IG::Num::RealFunctionBase.

double IG::Num::IRealFunction::NumericalIntegral ( double  from,
double  to,
int  numintervals 
)

Calculates numerical integral of this function. Simpson's formula is usually used.

Parameters:
fromLower integral limit.
toUpper integral limit.
numintervalsNumber of subintervals (1 less thatn the number of evaluation points)
Returns:
Numerical integral.

Implemented in IG::Num::RealFunctionBase.

double IG::Num::IRealFunction::NumericalDerivative ( double  x,
double  stepsize 
)

Calculates numerical derivative of this function. Central difference formula is used.

Parameters:
xPoint at which derivative is calculated.
stepsizeStep size.
Returns:
Numerical derivative.

Implemented in IG::Num::RealFunctionBase.

double IG::Num::IRealFunction::NumericalSecondDerivative ( double  x,
double  stepsize 
)

Calculates numerical second order derivative of this function. Central difference formula is used.

Parameters:
xPoint at which second order derivative is calculated.
stepsizeStep size.
Returns:
Numerical derivative.

Implemented in IG::Num::RealFunctionBase.


Property Documentation

string IG::Num::IRealFunction::Name [get]

Returns a short name of the function.

Implemented in IG::Lib::LoadableRealFunctionBase, IG::Num::RealFunctionBase, and IG::Num::RealFunction.

string IG::Num::IRealFunction::Description [get]

Returns a short description of the function.

Implemented in IG::Lib::LoadableRealFunctionBase, IG::Num::RealFunctionBase, and IG::Num::RealFunction.


The documentation for this interface was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties Events