Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
A newer version of this document is available. Customers should click here to go to the newest version.
?jacobix
Alternative interface for ?jacobi function for passing additional data into the objective function.
Syntax
res = sjacobix ( fcn , n , m , fjac , x , eps , user_data )
res = djacobix ( fcn , n , m , fjac , x , eps , user_data )
Include Files
Fortran: mkl_rci.fi , mkl_rci.f90
Description
The ?jacobix routine presents an alternative interface for the ?jacobi function that enables you to pass additional data into the objective function fcn .
See calling and usage examples in the examplessolverfsourceexamplessolvercsource folderof your Intel® oneAPI Math Kernel Library (oneMKL) directory. Specifically, see ex_nlsqp_f90_x.f90 and ex_nlsqp_bc_f90_x.f90 ex_nlsqp_c_x.c and ex_nlsqp_bc_c_x.c .
Input Parameters
fcn
User-supplied subroutine to evaluate the function that defines the least squares problem. Called as fcn ( m , n , x , f , user_data ) with the following parameters:
Parameter |
Type |
Description |
|---|---|---|
Input Parameters |
||
m |
INTEGER |
Length of f . |
n |
INTEGER |
Length of x . |
x |
REAL for sjacobix DOUBLE PRECISION for djacobix |
Array of size n . Vector, at which the function is evaluated. The fcn function should not change this parameter. |
user_data |
INTEGER(C_INTPTR_T) , for Fortran |
Reference to your additional data, if any, passed by value: user_data=%VAL(LOC(data)) . Otherwise, a dummy argument. |
Output Parameters |
||
f |
REAL for sjacobix DOUBLE PRECISION for djacobix |
Array of size m ; contains the function values at x . |
You need to declare fcn as EXTERNAL extern in the calling program.
n
INTEGER . Length of X .
m
INTEGER . Length of F .
x
REAL for sjacobix
DOUBLE PRECISION for djacobix
Array of size n . Vector at which the function is evaluated.
eps
REAL for sjacobix
DOUBLE PRECISION for djacobix
Precision of the Jacobian matrix calculation.
user_data
INTEGER(C_INTPTR_T) . Reference to your additional data, passed by value: user_data=%VAL(LOC(data)) . Otherwise, a dummy argument.
Output Parameters
fjac
REAL for sjacobix
DOUBLE PRECISION for djacobix
Array of size m by n ). Contains the Jacobian matrix of the function.
res
INTEGER . Indicates task completion status.
res = TR_SUCCESS - the routine completed the task normally.
res = TR_INVALID_OPTION - there was an error in the input parameters.
res = TR_OUT_OF_MEMORY - there was a memory error.
TR_SUCCESS , TR_INVALID_OPTION , and TR_OUT_OF_MEMORY are defined in the mkl_rci.fimkl_rci.h include file.