You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/cr.jl
+18-5
Original file line number
Diff line number
Diff line change
@@ -51,7 +51,9 @@ M also indicates the weighted norm in which residuals are measured.
51
51
* `M`: linear operator that models a Hermitian positive-definite matrix of size `n` used for centered preconditioning;
52
52
* `ldiv`: define whether the preconditioner uses `ldiv!` or `mul!`;
53
53
* `radius`: add the trust-region constraint ‖x‖ ≤ `radius` if `radius > 0`. Useful to compute a step in a trust-region method for optimization;
54
-
* `linesearch`: if `true`, indicate that the solution is to be used in an inexact Newton method with linesearch. If `linesearch` is true and nonpositive curvature is detected, the solution depends on the iteration: at iteration k = 0, the right-hand side is returned with `solver.npc_dir` as the preconditioned initial residual; at iteration k > 0, the solution from iteration k-1 is returned with `solver.npc_dir` as the most recent residual;
54
+
* `linesearch`: if `true` and nonpositive curvature is detected, behavior depends on the iteration.
55
+
– At k = 0, return the right-hand side with `solver.npc_dir` set to the preconditioned initial residual.
56
+
– At k > 0, return the solution from iteration k–1 with `solver.npc_dir` set to the detected nonpositive-curvature direction—either the previous search direction if the search-direction test fails, or the latest residual if the residual-curvature test fails. If both test fails, set `solver.npc_dir` to the current residual, update `solver.p` to the most recent search direction, and record the number of negative-curvature directions in `stats.num_neg_dir`;
55
57
* `γ`: tolerance to determine that the curvature of the quadratic model is nonpositive;
56
58
* `atol`: absolute stopping tolerance based on the residual norm;
57
59
* `rtol`: relative stopping tolerance based on the residual norm;
0 commit comments