@@ -2236,8 +2236,8 @@ function test_vector_nonlinear_oracle(
22362236 )
22372237 set = MOI. VectorNonlinearOracle (;
22382238 dimension = 5 ,
2239- l = [ 0.0 , 0. 0 ],
2240- u = [ 0.0 , 0. 0 ],
2239+ l = T[ 0 , 0 ],
2240+ u = T[ 0 , 0 ],
22412241 eval_f = (ret, x) -> begin
22422242 @test length (ret) == 2
22432243 @test length (x) == 5
@@ -2249,34 +2249,34 @@ function test_vector_nonlinear_oracle(
22492249 eval_jacobian = (ret, x) -> begin
22502250 @test length (ret) == 5
22512251 @test length (x) == 5
2252- ret[1 ] = 2 * x[1 ]
2253- ret[2 ] = 2 * x[2 ]
2254- ret[3 ] = 3 * x[3 ]^ 2
2255- ret[4 ] = - 1.0
2256- ret[5 ] = - 1.0
2252+ ret[1 ] = T ( 2 ) * x[1 ]
2253+ ret[2 ] = T ( 2 ) * x[2 ]
2254+ ret[3 ] = T ( 3 ) * x[3 ]^ 2
2255+ ret[4 ] = - T ( 1 )
2256+ ret[5 ] = - T ( 1 )
22572257 return
22582258 end ,
22592259 hessian_lagrangian_structure = [(1 , 1 ), (2 , 2 ), (3 , 3 )],
22602260 eval_hessian_lagrangian = (ret, x, u) -> begin
22612261 @test length (ret) == 3
22622262 @test length (x) == 5
22632263 @test length (u) == 2
2264- ret[1 ] = 2 * u[1 ]
2265- ret[2 ] = 2 * u[2 ]
2266- ret[3 ] = 6 * x[3 ] * u[2 ]
2264+ ret[1 ] = T ( 2 ) * u[1 ]
2265+ ret[2 ] = T ( 2 ) * u[2 ]
2266+ ret[3 ] = T ( 6 ) * x[3 ] * u[2 ]
22672267 return
22682268 end ,
22692269 )
22702270 @test MOI. dimension (set) == 5
22712271 x, y = MOI. add_variables (model, 3 ), MOI. add_variables (model, 2 )
2272- MOI. add_constraints .(model, x, MOI. EqualTo .(1.0 : 3.0 ))
2272+ MOI. add_constraints .(model, x, MOI. EqualTo .(T ( 1 ) : T ( 3 ) ))
22732273 c = MOI. add_constraint (model, MOI. VectorOfVariables ([x; y]), set)
22742274 MOI. optimize! (model)
22752275 x_v = MOI. get .(model, MOI. VariablePrimal (), x)
22762276 y_v = MOI. get .(model, MOI. VariablePrimal (), y)
22772277 @test ≈ (y_v, [x_v[1 ]^ 2 , x_v[2 ]^ 2 + x_v[3 ]^ 3 ], config)
22782278 @test ≈ (MOI. get (model, MOI. ConstraintPrimal (), c), [x_v; y_v], config)
2279- @test ≈ (MOI. get (model, MOI. ConstraintDual (), c), zeros (5 ), config)
2279+ @test ≈ (MOI. get (model, MOI. ConstraintDual (), c), zeros (T, 5 ), config)
22802280 return
22812281end
22822282
@@ -2312,33 +2312,33 @@ function test_vector_nonlinear_oracle_no_hessian(
23122312 )
23132313 set = MOI. VectorNonlinearOracle (;
23142314 dimension = 5 ,
2315- l = [ 0.0 , 0. 0 ],
2316- u = [ 0.0 , 0. 0 ],
2315+ l = T[ 0 , 0 ],
2316+ u = T[ 0 , 0 ],
23172317 eval_f = (ret, x) -> begin
23182318 ret[1 ] = x[1 ]^ 2 - x[4 ]
23192319 ret[2 ] = x[2 ]^ 2 + x[3 ]^ 3 - x[5 ]
23202320 return
23212321 end ,
23222322 jacobian_structure = [(1 , 1 ), (2 , 2 ), (2 , 3 ), (1 , 4 ), (2 , 5 )],
23232323 eval_jacobian = (ret, x) -> begin
2324- ret[1 ] = 2 * x[1 ]
2325- ret[2 ] = 2 * x[2 ]
2326- ret[3 ] = 3 * x[3 ]^ 2
2327- ret[4 ] = - 1.0
2328- ret[5 ] = - 1.0
2324+ ret[1 ] = T ( 2 ) * x[1 ]
2325+ ret[2 ] = T ( 2 ) * x[2 ]
2326+ ret[3 ] = T ( 3 ) * x[3 ]^ 2
2327+ ret[4 ] = - T ( 1 )
2328+ ret[5 ] = - T ( 1 )
23292329 return
23302330 end ,
23312331 )
23322332 @test MOI. dimension (set) == 5
23332333 x, y = MOI. add_variables (model, 3 ), MOI. add_variables (model, 2 )
2334- MOI. add_constraints .(model, x, MOI. EqualTo .(1.0 : 3.0 ))
2334+ MOI. add_constraints .(model, x, MOI. EqualTo .(T ( 1 ) : T ( 3 ) ))
23352335 c = MOI. add_constraint (model, MOI. VectorOfVariables ([x; y]), set)
23362336 MOI. optimize! (model)
23372337 x_v = MOI. get .(model, MOI. VariablePrimal (), x)
23382338 y_v = MOI. get .(model, MOI. VariablePrimal (), y)
23392339 @test ≈ (y_v, [x_v[1 ]^ 2 , x_v[2 ]^ 2 + x_v[3 ]^ 3 ], config)
23402340 @test ≈ (MOI. get (model, MOI. ConstraintPrimal (), c), [x_v; y_v], config)
2341- @test ≈ (MOI. get (model, MOI. ConstraintDual (), c), zeros (5 ), config)
2341+ @test ≈ (MOI. get (model, MOI. ConstraintDual (), c), zeros (T, 5 ), config)
23422342 return
23432343end
23442344
0 commit comments