Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
?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.