Visible to Intel only — GUID: GUID-A14FCB10-5DED-4B73-A503-71D3903E35C8
Visible to Intel only — GUID: GUID-A14FCB10-5DED-4B73-A503-71D3903E35C8
?trnlspbc_solve
Solves a nonlinear least squares problem with linear (bound) constraints using the Trust-Region algorithm.
Syntax
res = strnlspbc_solve(handle, fvec, fjac, RCI_Request)
res = dtrnlspbc_solve(handle, fvec, fjac, RCI_Request)
Include Files
- Fortran: mkl_rci.fi, mkl_rci.f90
Description
The ?trnlspbc_solve routine, based on RCI, uses the Trust-Region algorithm to solve nonlinear least squares problems with linear (bound) constraints. The problem is stated as follows:
where
li≤xi≤ui
i = 1, ..., n.
The RCI_Request parameter provides additional information:
RCI_Request Value |
Description |
---|---|
2 |
Request to calculate the Jacobian matrix and put the result into fjac |
1 |
Request to recalculate the function at vector X and put the result into fvec |
0 |
One successful iteration step on the current trust-region radius (that does not mean that the value of x has changed) |
-1 |
The algorithm has exceeded the maximum number of iterations |
-2 |
Δ < eps(1) |
-3 |
||F(x)||2 < eps(2) |
-4 |
The Jacobian matrix is singular. ||J(x)(1:m,j)||2 < eps(3), j = 1, ..., n |
-5 |
||s||2 < eps(4) |
-6 |
||F(x)||2 - ||F(x) - J(x)s||2 < |eps(5)| |
Note:
J(x) is the Jacobian matrix.
Δ is the trust-region area.
F(x) is the value of the functional.
s is the trial step.
Input Parameters
- handle
-
Type INTEGER*8.
- fvec
-
REAL for strnlspbc_solve
DOUBLE PRECISION for dtrnlspbc_solve
Array of size m. Contains the function values at X, where fvec(i) = (yi – fi(x)).
- fjac
-
REAL for strnlspbc_solve
DOUBLE PRECISION for dtrnlspbc_solve
Array of size m by n. Contains the Jacobian matrix of the function.
Output Parameters
- fvec
-
REAL for strnlspbc_solve
DOUBLE PRECISION for dtrnlspbc_solve
Array of size m. Updated function evaluated at x.
- RCI_Request
-
INTEGER. Informs about the task stage.
See the Description section for the parameter values and their meaning.
- res
-
INTEGER. Informs about the task completion.
res = TR_SUCCESS means the routine completed the task normally.
TR_SUCCESS is defined in the mkl_rci.fi include file.