diff --git a/src/RegularizedOptimization.jl b/src/RegularizedOptimization.jl index c5bf37aa..50586a5b 100644 --- a/src/RegularizedOptimization.jl +++ b/src/RegularizedOptimization.jl @@ -8,7 +8,12 @@ using Arpack, ProximalOperators # dependencies from us using LinearOperators, - ManualNLPModels, NLPModels, NLPModelsModifiers, RegularizedProblems, ShiftedProximalOperators, SolverCore + ManualNLPModels, + NLPModels, + NLPModelsModifiers, + RegularizedProblems, + ShiftedProximalOperators, + SolverCore using Percival: AugLagModel, update_y!, update_μ! const callback_docstring = " diff --git a/src/TRDH_alg.jl b/src/TRDH_alg.jl index f0a3f37f..3cfc287f 100644 --- a/src/TRDH_alg.jl +++ b/src/TRDH_alg.jl @@ -190,7 +190,7 @@ function TRDH( selected::AbstractVector{<:Integer} = 1:length(x0), kwargs..., ) where {R <: Real, F, G, H, DQN <: AbstractDiagonalQuasiNewtonOperator, X} - nlp = NLPModel(x0, f, grad=∇f!) + nlp = NLPModel(x0, f, grad = ∇f!) reg_nlp = RegularizedNLPModel(nlp, h, selected) stats = TRDH( reg_nlp; diff --git a/src/TR_alg.jl b/src/TR_alg.jl index 6818a731..47c87d3c 100644 --- a/src/TR_alg.jl +++ b/src/TR_alg.jl @@ -59,7 +59,9 @@ function TRSolver( shifted(reg_nlp.h, xk, l_bound_m_x, u_bound_m_x, reg_nlp.selected) : shifted(reg_nlp.h, xk, T(1), χ) - Bk = isa(reg_nlp.model, QuasiNewtonModel) ? hess_op(reg_nlp.model, xk) : hess_op!(reg_nlp.model, xk, similar(xk)) + Bk = + isa(reg_nlp.model, QuasiNewtonModel) ? hess_op(reg_nlp.model, xk) : + hess_op!(reg_nlp.model, xk, similar(xk)) sub_nlp = R2NModel(Bk, ∇fk, zero(T), x0) #FIXME subpb = RegularizedNLPModel(sub_nlp, ψ) substats = RegularizedExecutionStats(subpb) @@ -341,7 +343,7 @@ function SolverCore.solve!( set_radius!(solver.subsolver.ψ, ∆_effective) set_radius!(ψ, ∆_effective) end - with_logger(subsolver_logger) do + with_logger(subsolver_logger) do if isa(solver.subsolver, TRDHSolver) #FIXME solver.subsolver.D.d[1] = 1/ν₁ solve!( diff --git a/test/test_allocs.jl b/test/test_allocs.jl index 90d67499..dbd641a5 100644 --- a/test/test_allocs.jl +++ b/test/test_allocs.jl @@ -42,21 +42,26 @@ end # Test non allocating solve! @testset "allocs" begin for (h, h_name) ∈ ((NormL0(λ), "l0"),) - for (solver, solver_name) ∈ ((:R2Solver, "R2"), (:R2DHSolver, "R2DH"), (:R2NSolver, "R2N"), (:TRDHSolver, "TRDH"), (:TRSolver, "TR")) + for (solver, solver_name) ∈ ( + (:R2Solver, "R2"), + (:R2DHSolver, "R2DH"), + (:R2NSolver, "R2N"), + (:TRDHSolver, "TRDH"), + (:TRSolver, "TR"), + ) @testset "$(solver_name)" begin (solver_name == "R2N" || solver_name == "TR") && continue #FIXME reg_nlp = RegularizedNLPModel(LBFGSModel(bpdn), h) solver = eval(solver)(reg_nlp) stats = RegularizedExecutionStats(reg_nlp) - solver_name == "R2" && @test @wrappedallocs( - solve!(solver, reg_nlp, stats, ν = 1.0, atol = 1e-6, rtol = 1e-6) - ) == 0 + solver_name == "R2" && + @test @wrappedallocs(solve!(solver, reg_nlp, stats, ν = 1.0, atol = 1e-6, rtol = 1e-6)) == + 0 solver_name == "R2DH" && @test @wrappedallocs( solve!(solver, reg_nlp, stats, σk = 1.0, atol = 1e-6, rtol = 1e-6) ) == 0 - solver_name == "TRDH" && @test @wrappedallocs( - solve!(solver, reg_nlp, stats, atol = 1e-6, rtol = 1e-6) - ) == 0 + solver_name == "TRDH" && + @test @wrappedallocs(solve!(solver, reg_nlp, stats, atol = 1e-6, rtol = 1e-6)) == 0 @test stats.status == :first_order end end