KSPNASH#
Code to run conjugate gradient method subject to a constraint on the solution norm.
Options Database Keys#
-ksp_cg_radius
- Trust Region Radius
Notes#
This is rarely used directly, it is used in Trust Region methods for nonlinear equations, SNESNEWTONTR
Uses preconditioned conjugate gradient to compute an approximate minimizer of the quadratic function
q(s) = g^T * s + 0.5 * s^T * H * s
subject to the trust region constraint
|| s || <= delta,
where
delta is the trust region radius, g is the gradient vector, H is the Hessian approximation, and M is the positive definite preconditioner matrix.
KSPConvergedReason
may be
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,
other KSP
converged/diverged reasons
The preconditioner supplied should be symmetric and positive definite.
Reference#
Nash, Stephen G. Newton-type minimization via the Lanczos method. SIAM Journal on Numerical Analysis 21, no. 4 (1984): 770-788.
See Also#
KSP: Linear System Solvers, KSPQCG
, KSPGLTR
, KSPSTCG
, KSPCreate()
, KSPSetType()
, KSPType
, KSP
, KSPCGSetRadius()
, KSPCGGetNormD()
, KSPCGGetObjFcn()
Level#
developer
Location#
src/ksp/ksp/impls/cg/nash/nash.c
Index of all KSP routines
Table of Contents for all manual pages
Index of all manual pages