From bdd2c076007270a77c3caf1f46bf35cf63530124 Mon Sep 17 00:00:00 2001 From: Alexis Montoison <35051714+amontoison@users.noreply.github.com> Date: Fri, 21 Nov 2025 00:00:40 -0600 Subject: [PATCH] Refactor lincon to simplify constraints --- src/ADNLPProblems/lincon.jl | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/src/ADNLPProblems/lincon.jl b/src/ADNLPProblems/lincon.jl index 1e2b136e..178371b4 100644 --- a/src/ADNLPProblems/lincon.jl +++ b/src/ADNLPProblems/lincon.jl @@ -1,22 +1,15 @@ export lincon function lincon(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - A = [1 2; 3 4] - b = [5; 6] - B = LinearAlgebra.diagm([3 * i for i = 3:5]) - c = [1; 2; 3] - C = [0 -2; 4 0] - d = [1; -1] - x0 = zeros(T, 15) f(x) = sum(i + x[i]^4 for i = 1:15) - clinvals = vcat(T[15], C[1, :], C[2, :], c, A[1, :], A[2, :], d, T[3 * i for i = 3:5], b) - clincols = - vcat([15], [6; 7], [6; 7], [10; 11; 12], [1; 2], [1; 2], [13; 14], [3], [4], [5], [8; 9]) - clinrows = vcat([1], [2; 2], [3; 3], [4; 4; 4], [5; 5], [6; 6], [7; 7], [8], [9], [10], [11; 11]) - lcon = T[22; -d; 1; -b; -Inf; -Inf * ones(3); -11] - ucon = T[22; -d; Inf; Inf * ones(2); 16; c; 9] + clinrows = [5, 6, 5, 6, 8, 9, 10, 3, 2, 11, 11, 4, 4, 4, 7, 7, 1] + clincols = [1, 1, 2, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15] + clinvals = T[1.0, 3.0, 2.0, 4.0, 9.0, 12.0, 15.0, 4.0, -2.0, 5.0, 6.0, 1.0, 2.0, 3.0, 1.0, -1.0, 15.0] + + lcon = T[22.0, -1.0, 1.0, 1.0, -5.0, -6.0, -Inf, -Inf, -Inf, -Inf, -11.0] + ucon = T[22.0, -1.0, 1.0, Inf, Inf, Inf, 16.0, 1.0, 2.0, 3.0, 9.0] return ADNLPModels.ADNLPModel( f,