@@ -67,7 +67,7 @@ The slack variables are implicitly ordered as linear and then nonlinear, and
67
67
``c_L ≤ c(x) < ∞``, ``-∞ < c(x) ≤ c_U`` and
68
68
``c_L ≤ c(x) ≤ c_U``, respectively.
69
69
"""
70
- mutable struct SlackModel{T, S, M <: AbstractNLPModel{T} } <: AbstractNLPModel{T, S}
70
+ mutable struct SlackModel{T, S, M <: AbstractNLPModel{T, S } } <: AbstractNLPModel{T, S}
71
71
meta:: NLPModelMeta{T, S}
72
72
model:: M
73
73
90
90
91
91
""" Like `SlackModel`, this model converts inequalities into equalities and bounds.
92
92
"""
93
- mutable struct SlackNLSModel{T, S, M <: AbstractNLPModel{T} } <: AbstractNLSModel{T, S}
93
+ mutable struct SlackNLSModel{T, S, M <: AbstractNLPModel{T, S } } <: AbstractNLSModel{T, S}
94
94
meta:: NLPModelMeta{T, S}
95
95
nls_meta:: NLSMeta{T, S}
96
96
model:: M
@@ -131,7 +131,7 @@ function slack_meta(meta::AbstractNLPModelMeta{T, S}; name = meta.name * "-slack
131
131
x0 = similar (meta. x0, meta. nvar + ns)
132
132
x0[1 : (meta. nvar)] .= meta. x0
133
133
x0[(meta. nvar + 1 ): end ] .= zero (T)
134
- return NLPModelMeta (
134
+ return NLPModelMeta {T, S} (
135
135
meta. nvar + ns,
136
136
x0 = x0,
137
137
lvar = lvar,
@@ -177,7 +177,7 @@ function SlackNLSModel(
177
177
x0 = similar (model. meta. x0, model. meta. nvar + ns)
178
178
x0[(model. meta. nvar + 1 ): end ] .= zero (T)
179
179
x0[1 : (model. meta. nvar)] .= model. meta. x0
180
- nls_meta = NLSMeta {T, typeof(meta.x0)} ( # might differ from S
180
+ nls_meta = NLSMeta {T, S} (
181
181
model. nls_meta. nequ,
182
182
model. meta. nvar + ns,
183
183
x0 = x0,
0 commit comments