Skip to content

Commit 754feea

Browse files
Fix R2Solver maxIter constructor
1 parent abf9043 commit 754feea

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

src/R2_alg.jl

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,9 @@ function R2Solver(
4040
l_bound_m_x = similar(xk, 0)
4141
u_bound_m_x = similar(xk, 0)
4242
end
43-
Fobj_hist = zeros(R, maxIter)
44-
Hobj_hist = zeros(R, maxIter)
45-
Complex_hist = zeros(Int, maxIter)
43+
Fobj_hist = zeros(R, maxIter+2)
44+
Hobj_hist = zeros(R, maxIter+2)
45+
Complex_hist = zeros(Int, maxIter+2)
4646
return R2Solver(
4747
xk,
4848
∇fk,
@@ -84,9 +84,9 @@ function R2Solver(
8484
l_bound_m_x = similar(xk, 0)
8585
u_bound_m_x = similar(xk, 0)
8686
end
87-
Fobj_hist = zeros(T, max_iter)
88-
Hobj_hist = zeros(T, max_iter)
89-
Complex_hist = zeros(Int, max_iter)
87+
Fobj_hist = zeros(T, max_iter+2)
88+
Hobj_hist = zeros(T, max_iter+2)
89+
Complex_hist = zeros(Int, max_iter+2)
9090

9191
ψ = has_bnds ? shifted(reg_nlp.h, x0, l_bound_m_x, u_bound_m_x, reg_nlp.selected) : shifted(reg_nlp.h, x0)
9292
return R2Solver(
@@ -285,7 +285,9 @@ end
285285

286286

287287
function R2(reg_nlp::AbstractRegularizedNLPModel; kwargs...)
288-
solver = R2Solver(reg_nlp)
288+
kwargs_dict = Dict(kwargs...)
289+
max_iter = pop!(kwargs_dict, :max_iter, 10000)
290+
solver = R2Solver(reg_nlp,max_iter = max_iter)
289291
stats = GenericExecutionStats(reg_nlp.model)
290292
cb = (nlp, solver, stats) -> begin
291293
solver.Fobj_hist[stats.iter+1] = stats.solver_specific[:smooth_obj]
@@ -297,6 +299,7 @@ function R2(reg_nlp::AbstractRegularizedNLPModel; kwargs...)
297299
reg_nlp,
298300
stats;
299301
callback = cb,
302+
max_iter = max_iter,
300303
kwargs...
301304
)
302305
set_solver_specific!(stats, :Fhist, solver.Fobj_hist[1:stats.iter+1])

0 commit comments

Comments
 (0)