-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBROYDN3D.SIF
128 lines (85 loc) · 2.36 KB
/
BROYDN3D.SIF
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
***************************
* SET UP THE INITIAL DATA *
***************************
NAME BROYDN3D
* Problem :
* *********
* Broyden tridiagonal system on nonlinear equations in the least
* square sense.
* Source: problem 30 in
* J.J. More', B.S. Garbow and K.E. Hillstrom,
* "Testing Unconstrained Optimization Software",
* ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981.
* See also Toint#17 and Buckley#78.
* SIF input: Ph. Toint, Dec 1989.
* classification NQR2-AN-V-V
* N is the number of variables (variable).
*IE N 10 $-PARAMETER original value
*IE N 50 $-PARAMETER
*IE N 100 $-PARAMETER
*IE N 500 $-PARAMETER
*IE N 1000 $-PARAMETER
IE N 5000 $-PARAMETER
*IE N 10000 $-PARAMETER
* Other parameters
RE KAPPA1 2.0 $-PARAMETER
RE KAPPA2 1.0 $-PARAMETER
* Constants
IE 1 1
IE 2 2
* Computed parameters
RM -K2 KAPPA2 -1.0
IA N-1 N -1
VARIABLES
DO I 1 N
X X(I)
ND
GROUPS
XE E1 X(2) -2.0
DO I 2 N-1
IA I-1 I -1
IA I+1 I 1
XE E(I) X(I-1) -1.0 X(I+1) -2.0
ND
XE E(N) X(N-1) -1.0
CONSTANTS
DO I 1 N
Z BROYDN3D E(I) -K2
ND
BOUNDS
FR BRO3D 'DEFAULT'
START POINT
XV BROYDN3D 'DEFAULT' -1.0
ELEMENT TYPE
EV BROY V1
EP BROY K1
ELEMENT USES
DO I 1 N
XT B(I) BROY
ZV B(I) V1 X(I)
ZP B(I) K1 KAPPA1
ND
GROUP USES
DO I 1 N
XE E(I) B(I)
ND
OBJECT BOUND
* Solution
*LO SOLTN 0.0
ENDATA
***********************
* SET UP THE FUNCTION *
* AND RANGE ROUTINES *
***********************
ELEMENTS BROYDN3D
TEMPORARIES
R TEMP1
R TEMP2
INDIVIDUALS
T BROY
A TEMP1 - K1 * V1
A TEMP2 3.0 + TEMP1
F TEMP2 * V1
G V1 TEMP2 + TEMP1
H V1 V1 - K1 - K1
ENDATA