From 27e444252223895bb85510da3de31262fcb9aa98 Mon Sep 17 00:00:00 2001 From: Dominique Date: Mon, 16 Mar 2026 15:37:41 -0400 Subject: [PATCH 1/2] Define generic neval_hprod for QuasiNewtonModels supsersedes #102 --- Project.toml | 2 +- src/quasi-newton.jl | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Project.toml b/Project.toml index d3ffd7f..328e3b5 100644 --- a/Project.toml +++ b/Project.toml @@ -14,7 +14,7 @@ SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" FastClosures = "0.3.0" LinearAlgebra = "1.10" LinearOperators = "^2.7" -NLPModels = "0.21.6" +NLPModels = "0.21" Printf = "1.10" SparseArrays = "1.10" julia = "1.10" diff --git a/src/quasi-newton.jl b/src/quasi-newton.jl index 6b6ecb0..57d981a 100644 --- a/src/quasi-newton.jl +++ b/src/quasi-newton.jl @@ -29,6 +29,9 @@ function get_op(nlp::QuasiNewtonModel) error("get_op is not implemented for $(typeof(nlp)).") end +# Redefine hprod for all QuasiNewtonModels. +NLPModels.neval_hprod(nlp::QuasiNewtonModel) = get_op(nlp).nprod + mutable struct LBFGSModel{ T, S, @@ -45,7 +48,6 @@ end get_model(nlp::LBFGSModel) = nlp.model get_op(nlp::LBFGSModel) = nlp.op @default_counters LBFGSModel model (neval_hprod,) -NLPModels.neval_hprod(nlp::LBFGSModel) = get_op(nlp).nprod mutable struct LSR1Model{ T, @@ -63,7 +65,6 @@ end get_model(nlp::LSR1Model) = nlp.model get_op(nlp::LSR1Model) = nlp.op @default_counters LSR1Model model (neval_hprod,) -NLPModels.neval_hprod(nlp::LSR1Model) = get_op(nlp).nprod mutable struct DiagonalQNModel{ T, @@ -80,7 +81,6 @@ end get_model(nlp::DiagonalQNModel) = nlp.model get_op(nlp::DiagonalQNModel) = nlp.op @default_counters DiagonalQNModel model (neval_hprod,) -NLPModels.neval_hprod(nlp::DiagonalQNModel) = get_op(nlp).nprod "Construct a `LBFGSModel` from another type of model." function LBFGSModel(nlp::AbstractNLPModel{T, S}; kwargs...) where {T, S} From cd04d3b2d4f01498b83a0fc02acf32e8954f1f7f Mon Sep 17 00:00:00 2001 From: Dominique Date: Mon, 16 Mar 2026 18:31:13 -0400 Subject: [PATCH 2/2] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- src/quasi-newton.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/quasi-newton.jl b/src/quasi-newton.jl index 57d981a..6e305ee 100644 --- a/src/quasi-newton.jl +++ b/src/quasi-newton.jl @@ -29,7 +29,7 @@ function get_op(nlp::QuasiNewtonModel) error("get_op is not implemented for $(typeof(nlp)).") end -# Redefine hprod for all QuasiNewtonModels. +# Redefine neval_hprod for all QuasiNewtonModels. NLPModels.neval_hprod(nlp::QuasiNewtonModel) = get_op(nlp).nprod mutable struct LBFGSModel{