Visible to Intel only — GUID: GUID-B8BAC64A-5BAC-4390-AD89-9F2B36B0F4B8
Visible to Intel only — GUID: GUID-B8BAC64A-5BAC-4390-AD89-9F2B36B0F4B8
df?IntegrCallBack
A callback function that you can pass into df?IntegrateEx1D to define integration computations.
Syntax
status = dfsIntegrCallBack(n, lcell, llim, rcell, rlim, r, user_params, library_params)
status = dfdIntegrCallBack(n, lcell, llim, rcell, rlim, r, user_params, library_params)
Include Files
- mkl.h
Input Parameters
Name |
Type |
Description |
---|---|---|
n |
long long* |
Number of pairs of integration limits. |
lcell |
long long* |
Array of size n with indices of the cells that contain the left-side integration limits in array llim. |
llim |
float* for dfsIntegrCallBack double* for dfdIntegrCallBack |
Array of size n that holds the left-side integration limits. |
rcell |
long long* |
Array of size n with indices of the cells that contain the right-side integration limits in array rlim. |
rlim |
float* for dfsIntegrCallBack double* for dfdIntegrCallBack |
Array of size n that holds the right-side integration limits. |
user_params |
void* |
Pointer to user-defined parameters of the callback function. |
library_params |
dfIntegrCallBackLibraryParams* |
Pointer to library-defined parameters of the callback function. |
Output Parameters
Name |
Type |
Description |
---|---|---|
status |
int |
The status returned by the callback function:
|
r |
float* for dfsIntegrCallBack double* for dfdIntegrCallBack |
Array of integration results. For packing the results in row-major format, follow the instructions described in df?Interpolate1D/df?InterpolateEx1D. |
Description
When passed into the df?IntegrateEx1D routine, this function defines integration computations. If at least one of the integration limits is outside the interpolation interval [a, b], the library decomposes the integration into sub-intervals that belong to the extrapolation range to the left of a, the extrapolation range to the right of b, and the interpolation interval [a, b], as follows:
- If the left integration limit is to the left of the interpolation interval (llim< a), the df?IntegrateEx1D routine passes llim as the left integration limit and min(rlim, a) as the right integration limit to the user-defined callback function.
- If the right integration limit is to the right of the interpolation interval (rlim> b), the df?IntegrateEx1D routine passes max(llim, b) as the left integration limit and rlim as the right integration limit to the user-defined callback function.
- If the left and the right integration limits belong to the interpolation interval, the df?IntegrateEx1D routine passes them to the user-defined callback function unchanged.
The value of the integral is the sum of integral values obtained on the sub-intervals.
The library_params parameter allows the library to provide extra parameters. Currently no parameters are provided.
Product and Performance Information |
---|
Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex. Notice revision #20201201 |