KSPGLTR#

Code to run conjugate gradient method subject to a constraint on the solution norm, used within trust region methods [GLRT99]

Options Database Keys#

  • -ksp_cg_radius radius - Trust Region Radius

  • -ksp_cg_tr_norm_type (preconditioned|unpreconditioned) - Norm used for the trust-region constraint

Notes#

Uses preconditioned conjugate gradient to compute an approximate minimizer of the quadratic function

\[ q(s) = g^T * s + .5 * s^T * H * s \]

subject to the trust region constraint

\[ || s || \le delta, \]

where

     delta is the trust region radius,
     g is the gradient vector,
     H is the Hessian approximation,

KSPConvergedReason may have the additional values

The operator and the preconditioner supplied must be symmetric and positive definite.

This is rarely used directly, it is used in Trust Region methods for nonlinear equations, SNESNEWTONTR

References#

[GLRT99]

Nicholas IM Gould, Stefano Lucidi, Massimo Roma, and Philippe L Toint. Solving the trust-region subproblem using the lanczos method. SIAM Journal on Optimization, 9(2):504–525, 1999.

See Also#

KSP: Linear System Solvers, KSPQCG, KSPNASH, KSPSTCG, KSPCreate(), KSPSetType(), KSPType, KSP, KSPCGSetRadius(), KSPCGSetTRNormType(), KSPCGGetTRSolutionNorm(), KSPCGGetObjFcn(), KSPGLTRGetMinEig(), KSPGLTRGetLambda(), KSPCG

Level#

developer

Location#

src/ksp/ksp/impls/cg/gltr/gltr.c


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