KSPGLTR#
Code to run conjugate gradient method subject to a constraint on the solution norm, used within trust region methods [GLRT99]
Options Database Key#
-ksp_cg_radius
- Trust Region Radius
Notes#
Uses preconditioned conjugate gradient to compute an approximate minimizer of the quadratic function
subject to the trust region constraint
where
delta is the trust region radius,
g is the gradient vector,
H is the Hessian approximation,
M is the positive definite preconditioner matrix.
KSPConvergedReason
may have the additional values
KSP_CONVERGED_NEG_CURVE
- if convergence is reached along a negative curvature direction,KSP_CONVERGED_STEP_LENGTH
- if convergence is reached along a constrained step.
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()
, KSPCGGetNormD()
, 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