Organization and Implementation

The Intel MKL Trust-Region solvers have reverse communication interfaces (RCI). RCI means that you need to provide certain information (or perform operations) to the solver, for example, the values of the objective function or a corresponding Jacobi matrix. This makes the solver independent of specific implementation of the operations. However, this approach requires some additional work from you.

Typical order for invoking RCI solver routines
Typical order for invoking RCI solver routines

The Trust-Region solvers are implemented with the OpenMP* support. To use the multiprocessing mode, set the number of threads in the environment variable MKL_NUM_THREADS.

Memory Allocation and Handles

To make the routines easy to use, you are not required to allocate temporary working storage. The solver allocates any required memory. To allow multiple users to access the solver simultaneously, the solver keeps track of the storage allocated for a particular application by using a data object called a handle. Each RCI TR solver routine creates, uses, or deletes a handle.

C and C++ programmers should declare a handle as:

#include "mkl_rci.h"
_TRNSP_HANDLE_t handle;

or

_TRNSPBC_HANDLE_t handle;

Fortran programmers using compilers that support eight byte integers should declare a handle as:

INCLUDE "mkl_rci.fi"
INTEGER*8 handle

In addition to the necessary definition, for the correct declaration of a handle, the include file also defines the following:


Submit feedback on this help topic

Copyright © 1994 - 2010, Intel Corporation. All rights reserved.