petsc-3.14.5 2021-03-03
Report Typos and Errors

# TAOBNK

Shared base-type for Bounded Newton-Krylov type algorithms. At each iteration, the BNK methods solve the symmetric system of equations to obtain the step diretion dk: Hk dk = -gk for free variables only. The step can be globalized either through trust-region methods, or a line search, or a heuristic mixture of both.

### Options Database Keys

| -max_cg_its | - maximum number of bounded conjugate-gradient iterations taken in each Newton loop
| -init_type | - trust radius initialization method ("constant", "direction", "interpolation")
| -update_type | - trust radius update method ("step", "direction", "interpolation")
| -as_type | - active-set estimation method ("none", "bertsekas")
| -as_tol | - (developer) initial tolerance used in estimating bounded active variables (-as_type bertsekas)
| -as_step | - (developer) trial step length used in estimating bounded active variables (-as_type bertsekas)
| -sval | - (developer) Hessian perturbation starting value
| -imin | - (developer) minimum initial Hessian perturbation
| -imax | - (developer) maximum initial Hessian perturbation
| -pmin | - (developer) minimum Hessian perturbation
| -pmax | - (developer) aximum Hessian perturbation
| -pgfac | - (developer) Hessian perturbation growth factor
| -psfac | - (developer) Hessian perturbation shrink factor
| -imfac | - (developer) initial merit factor for Hessian perturbation
| -pmgfac | - (developer) merit growth factor for Hessian perturbation
| -pmsfac | - (developer) merit shrink factor for Hessian perturbation
| -eta1 | - (developer) threshold for rejecting step (-update_type reduction)
| -eta2 | - (developer) threshold for accepting marginal step (-update_type reduction)
| -eta3 | - (developer) threshold for accepting reasonable step (-update_type reduction)
| -eta4 | - (developer) threshold for accepting good step (-update_type reduction)
| -alpha1 | - (developer) radius reduction factor for rejected step (-update_type reduction)
| -alpha2 | - (developer) radius reduction factor for marginally accepted bad step (-update_type reduction)
| -alpha3 | - (developer) radius increase factor for reasonable accepted step (-update_type reduction)
| -alpha4 | - (developer) radius increase factor for good accepted step (-update_type reduction)
| -alpha5 | - (developer) radius increase factor for very good accepted step (-update_type reduction)
| -epsilon | - (developer) tolerance for small pred/actual ratios that trigger automatic step acceptance (-update_type reduction)
| -mu1 | - (developer) threshold for accepting very good step (-update_type interpolation)
| -mu2 | - (developer) threshold for accepting good step (-update_type interpolation)
| -gamma1 | - (developer) radius reduction factor for rejected very bad step (-update_type interpolation)
| -gamma2 | - (developer) radius reduction factor for rejected bad step (-update_type interpolation)
| -gamma3 | - (developer) radius increase factor for accepted good step (-update_type interpolation)
| -gamma4 | - (developer) radius increase factor for accepted very good step (-update_type interpolation)
| -theta | - (developer) trust region interpolation factor (-update_type interpolation)
| -nu1 | - (developer) threshold for small line-search step length (-update_type step)
| -nu2 | - (developer) threshold for reasonable line-search step length (-update_type step)
| -nu3 | - (developer) threshold for large line-search step length (-update_type step)
| -nu4 | - (developer) threshold for very large line-search step length (-update_type step)
| -omega1 | - (developer) radius reduction factor for very small line-search step length (-update_type step)
| -omega2 | - (developer) radius reduction factor for small line-search step length (-update_type step)
| -omega3 | - (developer) radius factor for decent line-search step length (-update_type step)
| -omega4 | - (developer) radius increase factor for large line-search step length (-update_type step)
| -omega5 | - (developer) radius increase factor for very large line-search step length (-update_type step)
| -mu1_i | - (developer) threshold for accepting very good step (-init_type interpolation)
| -mu2_i | - (developer) threshold for accepting good step (-init_type interpolation)
| -gamma1_i | - (developer) radius reduction factor for rejected very bad step (-init_type interpolation)
| -gamma2_i | - (developer) radius reduction factor for rejected bad step (-init_type interpolation)
| -gamma3_i | - (developer) radius increase factor for accepted good step (-init_type interpolation)
| -gamma4_i | - (developer) radius increase factor for accepted very good step (-init_type interpolation)
| -theta_i | - (developer) trust region interpolation factor (-init_type interpolation)

### Level

beginner

### Location

src/tao/bound/impls/bnk/bnk.c
Index of all Tao routines
Table of Contents for all manual pages
Index of all manual pages