Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 7/13/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

?jacobi

Computes the Jacobian matrix of the objective function using the central difference algorithm.

Syntax

MKL_INT sjacobi (USRFCNS fcn, const MKL_INT* n, const MKL_INT* m, float* fjac, float* x, float* eps);

MKL_INT djacobi (USRFCND fcn, const MKL_INT* n, const MKL_INT* m, double* fjac, double* x, double* eps);

Include Files

  • mkl.h

Description

The ?jacobi routine computes the Jacobian matrix for function fcn using the central difference algorithm. This routine has a "Black-Box" interface, where you input the objective function via parameters. Your objective function must have a fixed interface.

See calling and usage examples in the examples\solverc\source folderof your Intel® oneAPI Math Kernel Library (oneMKL) directory. Specifically, see ex_nlsqp_c.c and ex_nlsqp_bc_c.c.

Input Parameters

fcn

User-supplied subroutine to evaluate the function that defines the least squares problem. Called as fcn (m, n, x, f) with the following parameters:

Parameter

Type

Description

Input Parameters

m

 

Pointer to the length of f.

n

 

Pointer to the length of x.

x

 

Array of size n. Vector, at which the function is evaluated. The fcn function should not change this parameter.

Output Parameters

f

 

Array of size m; contains the function values at x.

You need to declare fcn as extern in the calling program.

n

Length of X.

m

Length of F.

x

Array of size n. Vector at which the function is evaluated.

eps

Precision of the Jacobian matrix calculation.

Output Parameters

fjac

Array of size m by n. Contains the Jacobian matrix of the function.

res

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.h include file.

See Also