TaoGetTerminationReason

Gets the reason the TAO_SOLVER iteration was stopped.

Synopsis

#include "tao_solver.h"  
int TaoGetTerminationReason(TAO_SOLVER tao,TaoTerminateReason *reason)
Not Collective

Input Parameter

tao -the TAO_SOLVER solver context

Output Parameter

reason -one of

   TAO_CONVERGED_ATOL (2),        (res <= atol)  
   TAO_CONVERGED_RTOL (3),        (res/res0 <= rtol) 
   TAO_CONVERGED_TRTOL (4),       (xdiff <= trtol) 
   TAO_CONVERGED_MINF (5),        (f <= fmin)
   TAO_CONVERGED_USER (6),        (user defined)

   TAO_DIVERGED_MAXITS (-2),      (its>maxits)
   TAO_DIVERGED_NAN (-4),         (Numerical problems)
   TAO_DIVERGED_MAXFCN (-5),      (nfunc > maxnfuncts)
   TAO_DIVERGED_LS_FAILURE (-6),  (line search failure)
   TAO_DIVERGED_TR_REDUCTION (-7),
   TAO_DIVERGED_USER (-8),        (user defined)

   TAO_CONTINUE_ITERATING  (0)

where

res - residual of optimality conditions
res0 - initial residual of optimality conditions
xdiff - current trust region size
f - function value
atol - absolute tolerance
rtol - relative tolerance
its - current iterate number
maxits - maximum number of iterates
nfunc - number of function evaluations
maxnfuncts - maximum number of function evaluations

Keywords

convergence, View

See Also

TaoSetConvergenceTest(), TaoSetTolerances()

Level:intermediate
Location:src/interface/tao.c
TAO Solver Index
Table of Contents

Examples

src/bound/examples/tutorials/jbearing2.c.html
src/unconstrained/examples/tutorials/rosenbrock1.c.html
src/unconstrained/examples/tutorials/rosenbrock1f.F.html