Adaptive integration on semi-infinite interval (a,+Infinity).
This function computes the integral of the function f over the semi-infinite interval (a,+Infinity). The integral is mapped onto the semi-open interval (0, 1] using the transformation x = a + (1 - t)/t. It is then integrated using the QAGS algorithm. The normal 21-point Gauss-Kronrod rule of QAGS is replaced by a 15-point rule, because the transformation can generate an integrable singularity at the origin. In this case a lower-order rule is more efficient.
Ref.: Gnu Scientific library reference manual ()
Constructor | Description |
Full Usage:
QagiuIntegration()
|
Creates an instance of this integration class with a default integration rule and default debug flag setting. |
Full Usage:
QagiuIntegration(debug)
Parameters:
bool
-
Setting of the debug flag for this instance. If the integration fails or the specified accuracy
is not reached, an exception is thrown if the debug flag is set to true. If set to false, the return value of the integration
function will be set to the appropriate error code (an exception will be thrown then only for serious errors).
|
Creates an instance of this integration class with a default integration rule and specified debug flag setting.
|
Full Usage:
QagiuIntegration(integrationRule, debug)
Parameters:
gsl_integration_rule
-
Integration rule used for integration.
debug : bool
-
Setting of the debug flag for this instance. If the integration fails or the specified accuracy
is not reached, an exception is thrown if the debug flag is set to true. If set to false, the return value of the integration
function will be set to the appropriate error code (an exception will be thrown then only for serious errors).
|
Creates an instance of this integration class with specified integration rule and specified debug flag setting.
|
Instance member | Description |
Full Usage:
this.Integrate
Parameters:
Func<float, float>
-
Function to integrate.
a : float
-
Lower integration limit.
epsabs : float
-
Specifies the expected absolute error of integration. Should be set to zero (0) if you specify a relative error.
epsrel : float
-
Specifies the expected relative error of integration. Should be set to zero (0) if you specify an absolute error.
limit : int
-
Maximum number of subintervals used for integration.
integrationRule : gsl_integration_rule
-
Integration rule used for integration (only for this function call).
debug : bool
-
Setting of the debug flag (only for this function call). If the integration fails or the specified accuracy
is not reached, an exception is thrown if the debug flag is set to true. If set to false, the return value of the integration
function will be set to the appropriate error code (an exception will be thrown then only for serious errors).
result : byref<float>
-
On return, contains the integration result.
abserr : byref<float>
-
On return, contains the absolute error of integration.
Returns: GSL_ERROR
Null if successfull, otherwise the appropriate error code.
|
Adaptive integration on semi-infinite interval (a,+Infinity).
|
Full Usage:
this.Integrate
Parameters:
Func<float, float>
-
Function to integrate.
a : float
-
Lower integration limit.
epsabs : float
-
Specifies the expected absolute error of integration. Should be set to zero (0) if you specify a relative error.
epsrel : float
-
Specifies the expected relative error of integration. Should be set to zero (0) if you specify an absolute error.
limit : int
-
Maximum number of subintervals used for integration.
result : byref<float>
-
On return, contains the integration result.
abserr : byref<float>
-
On return, contains the absolute error of integration.
Returns: GSL_ERROR
Null if successfull, otherwise the appropriate error code.
|
Adaptive integration on semi-infinite interval (a,+Infinity) using the integration rule and debug setting given in the constructor.
|
Static member | Description |
|
Returns the default integration rule used for this class.
|
Full Usage:
QagiuIntegration.Integration(f, a, epsabs, epsrel, limit, integrationRule, debug, result, abserr, tempStorage)
Parameters:
Func<float, float>
-
Function to integrate.
a : float
-
Lower integration limit.
epsabs : float
-
Specifies the expected absolute error of integration. Should be set to zero (0) if you specify a relative error.
epsrel : float
-
Specifies the expected relative error of integration. Should be set to zero (0) if you specify an absolute error.
limit : int
-
Maximum number of subintervals used for integration.
integrationRule : gsl_integration_rule
-
Integration rule used for integration (only for this function call).
debug : bool
-
Setting of the debug flag (only for this function call). If the integration fails or the specified accuracy
is not reached, an exception is thrown if the debug flag is set to true. If set to false, the return value of the integration
function will be set to the appropriate error code (an exception will be thrown then only for serious errors).
result : byref<float>
-
On return, contains the integration result.
abserr : byref<float>
-
On return, contains the absolute error of integration.
tempStorage : byref<obj>
-
Provides a temporary storage object that you can reuse for repeating function calls.
Returns: GSL_ERROR
Null if successfull, otherwise the appropriate error code.
|
Adaptive integration on semi-infinite interval (a,+Infinity).
|
Full Usage:
QagiuIntegration.Integration(f, a, epsabs, epsrel, limit, result, abserr, tempStorage)
Parameters:
Func<float, float>
-
Function to integrate.
a : float
-
Lower integration limit.
epsabs : float
-
Specifies the expected absolute error of integration. Should be set to zero (0) if you specify a relative error.
epsrel : float
-
Specifies the expected relative error of integration. Should be set to zero (0) if you specify an absolute error.
limit : int
-
Maximum number of subintervals used for integration.
result : byref<float>
-
On return, contains the integration result.
abserr : byref<float>
-
On return, contains the absolute error of integration.
tempStorage : byref<obj>
-
Provides a temporary storage object that you can reuse for repeating function calls.
Returns: GSL_ERROR
Null if successfull, otherwise the appropriate error code.
|
Adaptive integration on semi-infinite interval (a,+Infinity) using default settings for integration rule and debugging.
|
Full Usage:
QagiuIntegration.Integration(f, a, epsabs, epsrel, limit, integrationRule, debug, result, abserr)
Parameters:
Func<float, float>
-
Function to integrate.
a : float
-
Lower integration limit.
epsabs : float
-
Specifies the expected absolute error of integration. Should be set to zero (0) if you specify a relative error.
epsrel : float
-
Specifies the expected relative error of integration. Should be set to zero (0) if you specify an absolute error.
limit : int
-
Maximum number of subintervals used for integration.
integrationRule : gsl_integration_rule
-
Integration rule used for integration (only for this function call).
debug : bool
-
Setting of the debug flag (only for this function call). If the integration fails or the specified accuracy
is not reached, an exception is thrown if the debug flag is set to true. If set to false, the return value of the integration
function will be set to the appropriate error code (an exception will be thrown then only for serious errors).
result : byref<float>
-
On return, contains the integration result.
abserr : byref<float>
-
On return, contains the absolute error of integration.
Returns: GSL_ERROR
Null if successfull, otherwise the appropriate error code.
|
Adaptive integration on semi-infinite interval (a,+Infinity).
|
Full Usage:
QagiuIntegration.Integration(f, a, epsabs, epsrel, limit, result, abserr)
Parameters:
Func<float, float>
-
Function to integrate.
a : float
-
Lower integration limit.
epsabs : float
-
Specifies the expected absolute error of integration. Should be set to zero (0) if you specify a relative error.
epsrel : float
-
Specifies the expected relative error of integration. Should be set to zero (0) if you specify an absolute error.
limit : int
-
Maximum number of subintervals used for integration.
result : byref<float>
-
On return, contains the integration result.
abserr : byref<float>
-
On return, contains the absolute error of integration.
Returns: GSL_ERROR
Null if successfull, otherwise the appropriate error code.
|
Adaptive integration on semi-infinite interval (a,+Infinity) using default settings for integration rule and debugging.
|