11export hs117
22
33function hs117 (; n:: Int = default_nvar, type:: Type{T} = Float64, kwargs... ) where {T}
4- a = Array {Rational{Int}} (undef, 10 , 5 )
5- a[1 , :] = [- 16 , 2 , 0 , 1 , 0 ]
6- a[2 , :] = [0 , - 2 , 0 , 4 , 2 ]
7- a[3 , :] = [- 35 // 10 , 0 , 2 , 0 , 0 ]
8- a[4 , :] = [0 , - 2 , 0 , - 4 , - 1 ]
9- a[5 , :] = [0 , - 9 , - 2 , 1 , - 2.8 ]
10- a[6 , :] = [2 , 0 , - 4 , 0 , 0 ]
11- a[7 , :] = [- 1 , - 1 , - 1 , - 1 , - 1 ]
12- a[8 , :] = [- 1 , - 2 , - 3 , - 2 , - 1 ]
13- a[9 , :] = [1 , 2 , 3 , 4 , 5 ]
14- a[10 , :] = [1 , 1 , 1 , 1 , 1 ]
4+ a = Rational{Int}[- 16 2 0 1 0 ;
5+ 0 - 2 0 4 2 ;
6+ - 7 // 2 0 2 0 0 ;
7+ 0 - 2 0 - 4 - 1 ;
8+ 0 - 9 - 2 1 - 14 // 5 ;
9+ 2 0 - 4 0 0 ;
10+ - 1 - 1 - 1 - 1 - 1 ;
11+ - 1 - 2 - 3 - 2 - 1 ;
12+ 1 2 3 4 5 ;
13+ 1 1 1 1 1 ]
1514
1615 b = [- 40 , - 2 , - 25 // 100 , - 4 , - 4 , - 1 , - 40 , - 60 , 5 , 1 ]
1716
18- ci = Array {Int} (undef, 5 , 5 )
19- ci[1 , :] = [30 , - 20 , - 10 , 32 , - 10 ]
20- ci[2 , :] = [- 20 , 39 , - 6 , - 31 , 32 ]
21- ci[3 , :] = [- 10 , - 6 , 10 , - 6 , - 10 ]
22- ci[4 , :] = [32 , - 31 , - 6 , 39 , - 20 ]
23- ci[5 , :] = [- 10 , 32 , - 10 , - 20 , 30 ]
17+ c = [ 30 - 20 - 10 32 - 10 ;
18+ - 20 39 - 6 - 31 32 ;
19+ - 10 - 6 10 - 6 - 10 ;
20+ 32 - 31 - 6 39 - 20 ;
21+ - 10 32 - 10 - 20 30 ]
2422
2523 d = [4 , 8 , 10 , 6 , 2 ]
2624
2725 e = T[- 15 , - 27 , - 36 , - 18 , - 12 ]
28- function f (x; b = b, ci = ci , d = d)
26+ function f (x; b = b, c = c , d = d)
2927 return - sum (b[j] * x[j] for j = 1 : 10 ) +
30- sum (sum (ci [k, j] * x[10 + k] * x[10 + j] for k = 1 : 5 ) for j = 1 : 5 ) +
28+ sum (sum (c [k, j] * x[10 + k] * x[10 + j] for k = 1 : 5 ) for j = 1 : 5 ) +
3129 2 * sum (d[j] * x[10 + j]^ 3 for j = 1 : 5 )
3230 end
3331 x0 = T (0.001 ) * [1 , 1 , 1 , 1 , 1 , 1 , 60000 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ]
@@ -36,7 +34,7 @@ function hs117(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) wher
3634 function c! (cx, x)
3735 for j = 1 : 5
3836 cx[j] =
39- 2 * sum (ci [k, j] * x[10 + k] + 3 * d[j] * x[10 + j]^ 2 for k = 1 : 5 ) -
37+ 2 * sum (c [k, j] * x[10 + k] + 3 * d[j] * x[10 + j]^ 2 for k = 1 : 5 ) -
4038 sum (a[k, j] * x[k] for k = 1 : 10 )
4139 end
4240 return cx
0 commit comments