Skip to main content
`Ctrl`+`K`

# TaoLineSearchConvergedReason

reason a `TaoLineSearch` completed

## Synopsis

    typedef enum {
      TAOLINESEARCH_FAILED_INFORNAN     = -1,
      TAOLINESEARCH_FAILED_BADPARAMETER = -2,
      TAOLINESEARCH_FAILED_ASCENT       = -3,
      TAOLINESEARCH_CONTINUE_ITERATING  = 0,
      TAOLINESEARCH_SUCCESS             = 1,
      TAOLINESEARCH_SUCCESS_USER        = 2,
      TAOLINESEARCH_HALTED_OTHER        = 3,
      TAOLINESEARCH_HALTED_MAXFCN       = 4,
      TAOLINESEARCH_HALTED_UPPERBOUND   = 5,
      TAOLINESEARCH_HALTED_LOWERBOUND   = 6,
      TAOLINESEARCH_HALTED_RTOL         = 7,
      TAOLINESEARCH_HALTED_USER         = 8
    } TaoLineSearchConvergedReason;

## Values

- `TAOLINESEARCH_FAILED_ASCENT` - initial line search step * g is not descent direction

- `TAOLINESEARCH_FAILED_INFORNAN` - function evaluation gives `Inf` or `Nan` value

- `TAOLINESEARCH_FAILED_BADPARAMETER` - negative value set as parameter

- `TAOLINESEARCH_HALTED_MAXFCN` - maximum number of function evaluation reached

- `TAOLINESEARCH_HALTED_UPPERBOUND` - step is at upper bound

- `TAOLINESEARCH_HALTED_LOWERBOUND` - step is at lower bound

- `TAOLINESEARCH_HALTED_RTOL` - range of uncertainty is smaller than given tolerance

- `TAOLINESEARCH_HALTED_USER` - user can set this reason to stop line search

- `TAOLINESEARCH_HALTED_OTHER` - any other reason

- `TAOLINESEARCH_SUCCESS` - successful line search

## See Also

TAO: Optimization Solvers, `Tao`, `TaoLineSearch`, `TaoSolve()`, `TaoGetConvergedReason()`, `KSPConvergedReason`, `SNESConvergedReason`

## Level

beginner

## Location

include/petsctaolinesearch.h

Index of all Tao routines
Table of Contents for all manual pages
Index of all manual pages