1// ============================================================================= 2// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab 3// Copyright (C) 2008 - INRIA - Michael Baudin 4// Copyright (C) 2009 - INRIA - Michael Baudin 5// Copyright (C) 2011 - DIGITEO - Michael Baudin 6// 7// This file is distributed under the same license as the Scilab package. 8// ============================================================================= 9// <-- CLI SHELL MODE --> 10// <-- ENGLISH IMPOSED --> 11// <-- NO CHECK REF --> 12// 13// Do not check ref, because iprint option create output messages 14// which contains lots of floating point values which may 15// be slightly different across platforms, without being bugs. 16// 17// optim_script.tst -- 18// Test the optim command with the Rosenbrock test case 19// in the case where the cost function is a Scilab function. 20// The expected solution is x=(1,...,1) where f(x)=0 21// 22Leps=1.e-3; 23bs=[5 5]; 24bi=-bs; 25x0=[-1.2 1]; 26xopt=[1 1]; 27fopt = 0.0; 28gopt = [0.0 0.0]; 29function [ f , g , ind ] = rosenbrock ( x , ind ) 30 if ind == 2 | ind == 4 then 31 f = 100.0 *(x(2)-x(1)^2)^2 + (1-x(1))^2; 32 end 33 if ind == 2 | ind == 4 then 34 g(1) = - 400. * ( x(2) - x(1)**2 ) * x(1) -2. * ( 1. - x(1) ) 35 g(2) = 200. * ( x(2) - x(1)**2 ) 36 end 37endfunction 38// 39// Configure the test so that verbose message do not interrupt the test. 40lines(0); 41// 42// 1. Test unconstrained BFGS 43// Test without arguments 44[f,x,g,tr]=optim(rosenbrock,x0); 45assert_checkalmostequal ( x , xopt , Leps ); 46assert_checkalmostequal ( f , fopt , [] , Leps ); 47assert_checkalmostequal ( g , gopt , [] , Leps ); 48// Test with maximum number of call to cost function 49[f,x,g]=optim(rosenbrock,x0,"qn","ar",50); 50assert_checkalmostequal ( x , xopt , Leps ); 51assert_checkalmostequal ( f , fopt , [] , Leps ); 52assert_checkalmostequal ( g , gopt , [] , Leps ); 53// Test with hot-restart array tr 54[f,x,g,tr]=optim(rosenbrock,x0,"qn","ar",50); 55[f,x,g]=optim(rosenbrock,x0,tr); 56assert_checkalmostequal ( x , xopt , Leps ); 57assert_checkalmostequal ( f , fopt , [] , Leps ); 58assert_checkalmostequal ( g , gopt , [] , Leps ); 59// Test with maximum number of call to cost function, maximum number of iterations 60[f,x,g]=optim(rosenbrock,x0,"qn","ar", 50 , 100 ); 61assert_checkalmostequal ( x , xopt , Leps ); 62assert_checkalmostequal ( f , fopt , [] , Leps ); 63assert_checkalmostequal ( g , gopt , [] , Leps ); 64// Test with various iprint levels 65// iprint = 0 : No messages 66[f,x,g]=optim(rosenbrock,x0,"qn",iprint=0); 67// iprint = 1 : one line at start, one line at end 68[f,x,g]=optim(rosenbrock,x0,"qn",iprint=1); 69***** enters -qn code- (without bound cstr) 70dimension= 2, epsq= 0.2220446049250313E-15, verbosity level: iprint= 1 71max number of iterations allowed: iter= 100 72max number of calls to costf allowed: nap= 100 73------------------------------------------------ 74 iter num 38, nb calls= 46, f= 0.000 75***** leaves -qn code-, gradient norm= 0.0000000000000000E+00 76optim: Norm of projected gradient lower than 0. 77// iprint = 2 : one line by iteration 78[f,x,g]=optim(rosenbrock,x0,"qn",iprint=2); 79***** enters -qn code- (without bound cstr) 80dimension= 2, epsq= 0.2220446049250313E-15, verbosity level: iprint= 2 81max number of iterations allowed: iter= 100 82max number of calls to costf allowed: nap= 100 83------------------------------------------------ 84 iter num 1, nb calls= 1, f= 24.20 85 iter num 2, nb calls= 2, f= 7.272 86 iter num 3, nb calls= 3, f= 4.350 87 iter num 4, nb calls= 5, f= 3.417 88 iter num 5, nb calls= 6, f= 3.109 89 iter num 6, nb calls= 8, f= 2.888 90 iter num 7, nb calls= 9, f= 2.528 91 iter num 8, nb calls= 10, f= 2.079 92 iter num 9, nb calls= 11, f= 1.684 93 iter num 10, nb calls= 13, f= 1.487 94 iter num 11, nb calls= 14, f= 1.331 95 iter num 12, nb calls= 15, f= 1.094 96 iter num 13, nb calls= 17, f= 0.9515 97 iter num 14, nb calls= 18, f= 0.7438 98 iter num 15, nb calls= 19, f= 0.5691 99 iter num 16, nb calls= 21, f= 0.4953 100 iter num 17, nb calls= 22, f= 0.4021 101 iter num 18, nb calls= 23, f= 0.2856 102 iter num 19, nb calls= 25, f= 0.2208 103 iter num 20, nb calls= 26, f= 0.1793 104 iter num 21, nb calls= 27, f= 0.1226 105 iter num 22, nb calls= 29, f= 0.8763E-01 106 iter num 23, nb calls= 30, f= 0.6050E-01 107 iter num 24, nb calls= 31, f= 0.3408E-01 108 iter num 25, nb calls= 33, f= 0.1690E-01 109 iter num 26, nb calls= 34, f= 0.1151E-01 110 iter num 27, nb calls= 35, f= 0.4470E-02 111 iter num 28, nb calls= 36, f= 0.1802E-02 112 iter num 29, nb calls= 37, f= 0.4269E-03 113 iter num 30, nb calls= 38, f= 0.4499E-04 114 iter num 31, nb calls= 39, f= 0.1626E-05 115 iter num 32, nb calls= 40, f= 0.1849E-07 116 iter num 33, nb calls= 41, f= 0.8950E-10 117 iter num 34, nb calls= 42, f= 0.2801E-15 118 iter num 35, nb calls= 43, f= 0.4239E-20 119 iter num 36, nb calls= 44, f= 0.2642E-25 120 iter num 37, nb calls= 45, f= 0.4980E-29 121 iter num 38, nb calls= 46, f= 0.000 122***** leaves -qn code-, gradient norm= 0.0000000000000000E+00 123optim: Norm of projected gradient lower than 0. 124// iprint = 3 : one line by iteration + one line by line search 125[f,x,g]=optim(rosenbrock,x0,"qn",iprint=3); 126***** enters -qn code- (without bound cstr) 127dimension= 2, epsq= 0.2220446049250313E-15, verbosity level: iprint= 3 128max number of iterations allowed: iter= 100 129max number of calls to costf allowed: nap= 100 130------------------------------------------------ 131 iter num 1, nb calls= 1, f= 24.20 132 linear search: initial derivative= -232.9 133 step length= 0.1000E-01, df= -16.93 , derivative= -85.60 134 iter num 2, nb calls= 2, f= 7.272 135 linear search: initial derivative= -42.24 136 step length= 1.000 , df= -2.923 , derivative= -1.329 137 iter num 3, nb calls= 3, f= 4.350 138 linear search: initial derivative= -1.898 139 step length= 1.000 , df=-0.1237 , derivative= -1.824 140 step length= 10.00 , df=-0.9331 , derivative= 0.2202 141 iter num 4, nb calls= 5, f= 3.417 142 linear search: initial derivative= -5.550 143 step length= 1.000 , df=-0.3079 , derivative= -3.790 144 iter num 5, nb calls= 6, f= 3.109 145 linear search: initial derivative= -1.647 146 step length= 0.4722 , df=-0.4528E-01, derivative= 2.629 147 step length= 0.2798 , df=-0.2206 , derivative=-0.3888E-01 148 iter num 6, nb calls= 8, f= 2.888 149 linear search: initial derivative= -4.438 150 step length= 0.6098 , df=-0.3600 , derivative= -2.968 151 iter num 7, nb calls= 9, f= 2.528 152 linear search: initial derivative= -3.266 153 step length= 1.000 , df=-0.4494 , derivative= -1.801 154 iter num 8, nb calls= 10, f= 2.079 155 linear search: initial derivative= -4.375 156 step length= 1.000 , df=-0.3951 , derivative= -2.224 157 iter num 9, nb calls= 11, f= 1.684 158 linear search: initial derivative= -2.203 159 step length= 0.2673 , df= 1.009 , derivative= 13.78 160 step length= 0.1089 , df=-0.1964 , derivative= 0.1570 161 iter num 10, nb calls= 13, f= 1.487 162 linear search: initial derivative= -2.478 163 step length= 1.000 , df=-0.1558 , derivative= -1.410 164 iter num 11, nb calls= 14, f= 1.331 165 linear search: initial derivative= -4.524 166 step length= 0.5294 , df=-0.2371 , derivative= -2.628 167 iter num 12, nb calls= 15, f= 1.094 168 linear search: initial derivative= -1.940 169 step length= 1.000 , df= 0.5590E-01, derivative= 4.817 170 step length= 0.5465 , df=-0.1427 , derivative=-0.4464E-01 171 iter num 13, nb calls= 17, f= 0.9515 172 linear search: initial derivative= -2.968 173 step length= 1.000 , df=-0.2076 , derivative= -1.697 174 iter num 14, nb calls= 18, f= 0.7438 175 linear search: initial derivative= -2.579 176 step length= 1.000 , df=-0.1747 , derivative= -1.324 177 iter num 15, nb calls= 19, f= 0.5691 178 linear search: initial derivative= -1.362 179 step length= 0.5720 , df= 0.6117 , derivative= 10.41 180 step length= 0.2117 , df=-0.7377E-01, derivative= 0.1629 181 iter num 16, nb calls= 21, f= 0.4953 182 linear search: initial derivative= -1.489 183 step length= 1.000 , df=-0.9325E-01, derivative=-0.9504 184 iter num 17, nb calls= 22, f= 0.4021 185 linear search: initial derivative= -1.740 186 step length= 0.9187 , df=-0.1165 , derivative=-0.6277 187 iter num 18, nb calls= 23, f= 0.2856 188 linear search: initial derivative=-0.8565 189 step length= 0.7197 , df= 0.2244 , derivative= 4.627 190 step length= 0.3184 , df=-0.6478E-01, derivative= 0.4025E-01 191 iter num 19, nb calls= 25, f= 0.2208 192 linear search: initial derivative=-0.6915 193 step length= 1.000 , df=-0.4156E-01, derivative=-0.4294 194 iter num 20, nb calls= 26, f= 0.1793 195 linear search: initial derivative= -1.024 196 step length= 0.5978 , df=-0.5666E-01, derivative=-0.4359 197 iter num 21, nb calls= 27, f= 0.1226 198 linear search: initial derivative=-0.4236 199 step length= 1.000 , df= 0.2045E-01, derivative= 1.162 200 step length= 0.5356 , df=-0.3498E-01, derivative=-0.7704E-02 201 iter num 22, nb calls= 29, f= 0.8763E-01 202 linear search: initial derivative=-0.4234 203 step length= 1.000 , df=-0.2712E-01, derivative=-0.2548 204 iter num 23, nb calls= 30, f= 0.6050E-01 205 linear search: initial derivative=-0.5418 206 step length= 1.000 , df=-0.2643E-01, derivative=-0.8204E-01 207 iter num 24, nb calls= 31, f= 0.3408E-01 208 linear search: initial derivative=-0.2244 209 step length= 0.8549 , df= 0.1962E-01, derivative= 0.7472 210 step length= 0.4325 , df=-0.1717E-01, derivative=-0.6534E-03 211 iter num 25, nb calls= 33, f= 0.1690E-01 212 linear search: initial derivative=-0.1257 213 step length= 1.000 , df=-0.5392E-02, derivative=-0.6886E-01 214 iter num 26, nb calls= 34, f= 0.1151E-01 215 linear search: initial derivative=-0.1993 216 step length= 0.6643 , df=-0.7042E-02, derivative=-0.7138E-01 217 iter num 27, nb calls= 35, f= 0.4470E-02 218 linear search: initial derivative=-0.6177E-01 219 step length= 1.000 , df=-0.2669E-02, derivative= 0.1873E-01 220 iter num 28, nb calls= 36, f= 0.1802E-02 221 linear search: initial derivative=-0.5318 222 step length= 1.000 , df=-0.1375E-02, derivative=-0.7452E-01 223 iter num 29, nb calls= 37, f= 0.4269E-03 224 linear search: initial derivative=-0.1952E-01 225 step length= 1.000 , df=-0.3819E-03, derivative=-0.5887E-02 226 iter num 30, nb calls= 38, f= 0.4499E-04 227 linear search: initial derivative=-0.6081E-02 228 step length= 1.000 , df=-0.4337E-04, derivative=-0.6785E-03 229 iter num 31, nb calls= 39, f= 0.1626E-05 230 linear search: initial derivative=-0.2438E-02 231 step length= 1.000 , df=-0.1608E-05, derivative= 0.7953E-04 232 iter num 32, nb calls= 40, f= 0.1849E-07 233 linear search: initial derivative=-0.1711E-03 234 step length= 1.000 , df=-0.1840E-07, derivative= 0.1167E-04 235 iter num 33, nb calls= 41, f= 0.8950E-10 236 linear search: initial derivative=-0.1010E-04 237 step length= 1.000 , df=-0.8950E-10, derivative= 0.1344E-07 238 iter num 34, nb calls= 42, f= 0.2801E-15 239 linear search: initial derivative=-0.5481E-07 240 step length= 1.000 , df=-0.2801E-15, derivative=-0.1438E-09 241 iter num 35, nb calls= 43, f= 0.4239E-20 242 linear search: initial derivative=-0.1106E-09 243 step length= 1.000 , df=-0.4239E-20, derivative=-0.2044E-12 244 iter num 36, nb calls= 44, f= 0.2642E-25 245 linear search: initial derivative=-0.1512E-12 246 step length= 1.000 , df=-0.2642E-25, derivative= 0.4543E-15 247 iter num 37, nb calls= 45, f= 0.4980E-29 248 linear search: initial derivative=-0.2682E-13 249 step length= 1.000 , df=-0.4980E-29, derivative= 0.000 250 iter num 38, nb calls= 46, f= 0.000 251***** leaves -qn code-, gradient norm= 0.0000000000000000E+00 252optim: Norm of projected gradient lower than 0. 253// Negative iprint : call back the cost function with ind = 0 each -iprint iteration 254[f,x,g]=optim(rosenbrock,x0,"qn",iprint=-5); 255optim: Norm of projected gradient lower than 0. 256// 257// 2. Test unconstrained Limited Memory BFGS 258[f,x,g]=optim(rosenbrock,x0,"gc"); 259assert_checkalmostequal ( x , xopt , Leps ); 260assert_checkalmostequal ( f , fopt , [] , Leps ); 261assert_checkalmostequal ( g , gopt , [] , Leps ); 262[f,x,g]=optim(rosenbrock,x0,"gc","ar",50); 263assert_checkalmostequal ( x , xopt , Leps ); 264assert_checkalmostequal ( f , fopt , [] , Leps ); 265assert_checkalmostequal ( g , gopt , [] , Leps ); 266// Test with various iprint levels 267// iprint = 0 : No messages 268[f,x,g]=optim(rosenbrock,x0,"gc",iprint=0); 269// iprint = 1,2 : one line at start, one line at end 270[f,x,g]=optim(rosenbrock,x0,"gc",iprint=1); 271 n1qn3: entry point 272 dimension of the problem (n): 2 273 absolute precision on x (dxmin): 0.22D-15 274 expected decrease for f (df1): 0.10D+01 275 relative precision on g (epsg): 0.95D-18 276 maximal number of iterations (niter): 100 277 maximal number of simulations (nsim): 100 278 printing level (iprint): 1 279 allocated memory (nrz) : 58 280 used memory : 58 281 number of updates : 10 282 f = 0.24200000D+02 283 norm of g = 0.23286769D+03 284 ------------------------------------------------------------------------------- 285 n1qn3: output mode is 1 286 number of iterations: 41 287 number of simulations: 52 288 realized relative precision on g: 0.00D+00 289 norm of x = 0.14142136D+01 290 f = 0.00000000D+00 291 norm of x = 0.00000000D+00 292optim: Norm of projected gradient lower than 0. 293// iprint = 3 : one line by iteration 294[f,x,g]=optim(rosenbrock,x0,"gc",iprint=2); 295 n1qn3: entry point 296 dimension of the problem (n): 2 297 absolute precision on x (dxmin): 0.22D-15 298 expected decrease for f (df1): 0.10D+01 299 relative precision on g (epsg): 0.95D-18 300 maximal number of iterations (niter): 100 301 maximal number of simulations (nsim): 100 302 printing level (iprint): 2 303 allocated memory (nrz) : 58 304 used memory : 58 305 number of updates : 10 306 f = 0.24200000D+02 307 norm of g = 0.23286769D+03 308 n1qn3: iter 1, simul 1, f= 0.24200000D+02, h'(0)=-0.20000D+01 309 n1qn3: iter 2, simul 3, f= 0.94705115D+01, h'(0)=-0.92378D+01 310 n1qn3: iter 3, simul 4, f= 0.42678391D+01, h'(0)=-0.24478D+00 311 n1qn3: iter 4, simul 5, f= 0.41332370D+01, h'(0)=-0.58072D-02 312 n1qn3: iter 5, simul 6, f= 0.41288855D+01, h'(0)=-0.83281D-02 313 n1qn3: iter 6, simul 7, f= 0.41219818D+01, h'(0)=-0.27767D-01 314 n1qn3: iter 7, simul 8, f= 0.40992137D+01, h'(0)=-0.82808D-01 315 n1qn3: iter 8, simul 9, f= 0.40279192D+01, h'(0)=-0.40499D+00 316 n1qn3: iter 9, simul 13, f= 0.26255752D+01, h'(0)=-0.16053D+00 317 n1qn3: iter 10, simul 15, f= 0.26148282D+01, h'(0)=-0.38378D-01 318 n1qn3: iter 11, simul 17, f= 0.22964498D+01, h'(0)=-0.62657D+00 319 n1qn3: iter 12, simul 18, f= 0.19818830D+01, h'(0)=-0.70680D+00 320 n1qn3: iter 13, simul 19, f= 0.15797116D+01, h'(0)=-0.49943D+00 321 n1qn3: iter 14, simul 20, f= 0.13542803D+01, h'(0)=-0.33867D+00 322 n1qn3: iter 15, simul 21, f= 0.12033040D+01, h'(0)=-0.20678D+00 323 n1qn3: iter 16, simul 22, f= 0.10169710D+01, h'(0)=-0.64958D+00 324 n1qn3: iter 17, simul 24, f= 0.88479939D+00, h'(0)=-0.18657D+00 325 n1qn3: iter 18, simul 25, f= 0.73594988D+00, h'(0)=-0.31085D+00 326 n1qn3: iter 19, simul 26, f= 0.63444380D+00, h'(0)=-0.42075D+00 327 n1qn3: iter 20, simul 27, f= 0.45317910D+00, h'(0)=-0.12594D+00 328 n1qn3: iter 21, simul 28, f= 0.34356270D+00, h'(0)=-0.22838D+00 329 n1qn3: iter 22, simul 30, f= 0.30624971D+00, h'(0)=-0.55446D-01 330 n1qn3: iter 23, simul 31, f= 0.25851790D+00, h'(0)=-0.14344D+00 331 n1qn3: iter 24, simul 32, f= 0.17073487D+00, h'(0)=-0.12793D+00 332 n1qn3: iter 25, simul 33, f= 0.10886882D+00, h'(0)=-0.10034D+00 333 n1qn3: iter 26, simul 34, f= 0.93394350D-01, h'(0)=-0.12026D+00 334 n1qn3: iter 27, simul 35, f= 0.68247280D-01, h'(0)=-0.20762D-01 335 n1qn3: iter 28, simul 36, f= 0.49926731D-01, h'(0)=-0.55493D-01 336 n1qn3: iter 29, simul 38, f= 0.36769034D-01, h'(0)=-0.91754D-02 337 n1qn3: iter 30, simul 39, f= 0.28635889D-01, h'(0)=-0.25872D-01 338 n1qn3: iter 31, simul 40, f= 0.11210346D-01, h'(0)=-0.94861D-02 339 n1qn3: iter 32, simul 41, f= 0.47312611D-02, h'(0)=-0.12658D-01 340 n1qn3: iter 33, simul 43, f= 0.27115703D-02, h'(0)=-0.27047D-02 341 n1qn3: iter 34, simul 44, f= 0.78629249D-03, h'(0)=-0.10616D-02 342 n1qn3: iter 35, simul 45, f= 0.10596409D-03, h'(0)=-0.16467D-03 343 n1qn3: iter 36, simul 46, f= 0.65779244D-05, h'(0)=-0.12836D-04 344 n1qn3: iter 37, simul 47, f= 0.65335854D-06, h'(0)=-0.24142D-05 345 n1qn3: iter 38, simul 48, f= 0.48517342D-06, h'(0)=-0.97016D-06 346 n1qn3: iter 39, simul 49, f= 0.72461377D-12, h'(0)=-0.14375D-11 347 n1qn3: iter 40, simul 50, f= 0.49419780D-16, h'(0)=-0.98838D-16 348 n1qn3: iter 41, simul 51, f= 0.23045863D-24, h'(0)=-0.46082D-24 349 ------------------------------------------------------------------------------- 350 n1qn3: output mode is 1 351 number of iterations: 41 352 number of simulations: 52 353 realized relative precision on g: 0.00D+00 354 norm of x = 0.14142136D+01 355 f = 0.00000000D+00 356 norm of x = 0.00000000D+00 357optim: Norm of projected gradient lower than 0. 358// iprint = 4 : one line by iteration + one line by line search 359[f,x,g]=optim(rosenbrock,x0,"gc",iprint=3); 360 n1qn3: entry point 361 dimension of the problem (n): 2 362 absolute precision on x (dxmin): 0.22D-15 363 expected decrease for f (df1): 0.10D+01 364 relative precision on g (epsg): 0.95D-18 365 maximal number of iterations (niter): 100 366 maximal number of simulations (nsim): 100 367 printing level (iprint): 3 368 allocated memory (nrz) : 58 369 used memory : 58 370 number of updates : 10 371 f = 0.24200000D+02 372 norm of g = 0.23286769D+03 373 ------------------------------------------------------------------------------- 374 n1qn3: iter 1, simul 1, f= 0.24200000D+02, h'(0)=-0.20000D+01 375 nlis0 fpn=-0.200D+01 d2= 0.74D-04 tmin= 0.28D-13 tmax= 0.10D+21 376 nlis0 0.100D+01 -0.194D+01 -0.189D+01 377 nlis0 0.100D+02 -0.147D+02 -0.973D+00 378 n1qn3: iter 2, simul 3, f= 0.94705115D+01, h'(0)=-0.92378D+01 379 nlis0 fpn=-0.924D+01 d2= 0.66D-02 tmin= 0.30D-14 tmax= 0.10D+21 380 nlis0 0.100D+01 -0.520D+01 -0.138D+01 381 n1qn3: iter 3, simul 4, f= 0.42678391D+01, h'(0)=-0.24478D+00 382 nlis0 fpn=-0.245D+00 d2= 0.21D-03 tmin= 0.16D-13 tmax= 0.10D+21 383 nlis0 0.100D+01 -0.135D+00 -0.256D-01 384 n1qn3: iter 4, simul 5, f= 0.41332370D+01, h'(0)=-0.58072D-02 385 nlis0 fpn=-0.581D-02 d2= 0.59D-05 tmin= 0.98D-13 tmax= 0.10D+21 386 nlis0 0.100D+01 -0.435D-02 -0.290D-02 387 n1qn3: iter 5, simul 6, f= 0.41288855D+01, h'(0)=-0.83281D-02 388 nlis0 fpn=-0.833D-02 d2= 0.26D-04 tmin= 0.61D-13 tmax= 0.10D+21 389 nlis0 0.100D+01 -0.690D-02 -0.549D-02 390 n1qn3: iter 6, simul 7, f= 0.41219818D+01, h'(0)=-0.27767D-01 391 nlis0 fpn=-0.278D-01 d2= 0.37D-03 tmin= 0.14D-13 tmax= 0.10D+21 392 nlis0 0.100D+01 -0.228D-01 -0.180D-01 393 n1qn3: iter 7, simul 8, f= 0.40992137D+01, h'(0)=-0.82808D-01 394 nlis0 fpn=-0.828D-01 d2= 0.40D-02 tmin= 0.41D-14 tmax= 0.10D+21 395 nlis0 0.100D+01 -0.713D-01 -0.624D-01 396 n1qn3: iter 8, simul 9, f= 0.40279192D+01, h'(0)=-0.40499D+00 397 nlis0 fpn=-0.405D+00 d2= 0.11D+00 tmin= 0.79D-15 tmax= 0.10D+21 398 nlis0 0.100D+01 -0.531D+00 -0.721D+00 399 nlis0 0.100D+02 0.500D+03 0.222D+03 400 nlis0 0.398D+01 0.333D+01 0.774D+01 401 nlis0 0.249D+01 -0.140D+01 0.190D+00 402 n1qn3: iter 9, simul 13, f= 0.26255752D+01, h'(0)=-0.16053D+00 403 nlis0 fpn=-0.161D+00 d2= 0.57D-01 tmin= 0.11D-14 tmax= 0.10D+21 404 nlis0 0.100D+01 0.285D+00 0.571D+00 405 nlis0 0.140D+00 -0.107D-01 0.342D-02 406 n1qn3: iter 10, simul 15, f= 0.26148282D+01, h'(0)=-0.38378D-01 407 nlis0 fpn=-0.384D-01 d2= 0.21D-03 tmin= 0.21D-13 tmax= 0.10D+21 408 nlis0 0.100D+01 -0.376D-01 -0.369D-01 409 nlis0 0.100D+02 -0.318D+00 -0.257D-01 410 n1qn3: iter 11, simul 17, f= 0.22964498D+01, h'(0)=-0.62657D+00 411 nlis0 fpn=-0.627D+00 d2= 0.71D-01 tmin= 0.11D-14 tmax= 0.10D+21 412 nlis0 0.100D+01 -0.315D+00 0.212D+00 413 n1qn3: iter 12, simul 18, f= 0.19818830D+01, h'(0)=-0.70680D+00 414 nlis0 fpn=-0.707D+00 d2= 0.27D-02 tmin= 0.52D-14 tmax= 0.10D+21 415 nlis0 0.100D+01 -0.402D+00 -0.117D+00 416 n1qn3: iter 13, simul 19, f= 0.15797116D+01, h'(0)=-0.49943D+00 417 nlis0 fpn=-0.499D+00 d2= 0.52D-01 tmin= 0.11D-14 tmax= 0.10D+21 418 nlis0 0.100D+01 -0.225D+00 0.427D+00 419 n1qn3: iter 14, simul 20, f= 0.13542803D+01, h'(0)=-0.33867D+00 420 nlis0 fpn=-0.339D+00 d2= 0.36D-02 tmin= 0.47D-14 tmax= 0.10D+21 421 nlis0 0.100D+01 -0.151D+00 0.252D-01 422 n1qn3: iter 15, simul 21, f= 0.12033040D+01, h'(0)=-0.20678D+00 423 nlis0 fpn=-0.207D+00 d2= 0.84D-02 tmin= 0.24D-14 tmax= 0.10D+21 424 nlis0 0.100D+01 -0.186D+00 -0.162D+00 425 n1qn3: iter 16, simul 22, f= 0.10169710D+01, h'(0)=-0.64958D+00 426 nlis0 fpn=-0.650D+00 d2= 0.12D+00 tmin= 0.64D-15 tmax= 0.10D+21 427 nlis0 0.100D+01 0.169D+01 0.738D+01 428 nlis0 0.374D+00 -0.132D+00 0.166D+00 429 n1qn3: iter 17, simul 24, f= 0.88479939D+00, h'(0)=-0.18657D+00 430 nlis0 fpn=-0.187D+00 d2= 0.20D-02 tmin= 0.62D-14 tmax= 0.10D+21 431 nlis0 0.100D+01 -0.149D+00 -0.115D+00 432 n1qn3: iter 18, simul 25, f= 0.73594988D+00, h'(0)=-0.31085D+00 433 nlis0 fpn=-0.311D+00 d2= 0.34D-01 tmin= 0.13D-14 tmax= 0.10D+21 434 nlis0 0.100D+01 -0.102D+00 0.268D+00 435 n1qn3: iter 19, simul 26, f= 0.63444380D+00, h'(0)=-0.42075D+00 436 nlis0 fpn=-0.421D+00 d2= 0.20D-02 tmin= 0.51D-14 tmax= 0.10D+21 437 nlis0 0.100D+01 -0.181D+00 0.576D-01 438 n1qn3: iter 20, simul 27, f= 0.45317910D+00, h'(0)=-0.12594D+00 439 nlis0 fpn=-0.126D+00 d2= 0.11D-01 tmin= 0.25D-14 tmax= 0.10D+21 440 nlis0 0.100D+01 -0.110D+00 -0.725D-01 441 n1qn3: iter 21, simul 28, f= 0.34356270D+00, h'(0)=-0.22838D+00 442 nlis0 fpn=-0.228D+00 d2= 0.83D-01 tmin= 0.95D-15 tmax= 0.10D+21 443 nlis0 0.100D+01 0.601D+00 0.234D+01 444 nlis0 0.321D+00 -0.373D-01 0.472D-01 445 n1qn3: iter 22, simul 30, f= 0.30624971D+00, h'(0)=-0.55446D-01 446 nlis0 fpn=-0.554D-01 d2= 0.12D-02 tmin= 0.80D-14 tmax= 0.10D+21 447 nlis0 0.100D+01 -0.477D-01 -0.406D-01 448 n1qn3: iter 23, simul 31, f= 0.25851790D+00, h'(0)=-0.14344D+00 449 nlis0 fpn=-0.143D+00 d2= 0.30D-01 tmin= 0.17D-14 tmax= 0.10D+21 450 nlis0 0.100D+01 -0.878D-01 -0.226D-01 451 n1qn3: iter 24, simul 32, f= 0.17073487D+00, h'(0)=-0.12793D+00 452 nlis0 fpn=-0.128D+00 d2= 0.84D-02 tmin= 0.27D-14 tmax= 0.10D+21 453 nlis0 0.100D+01 -0.619D-01 -0.487D-02 454 n1qn3: iter 25, simul 33, f= 0.10886882D+00, h'(0)=-0.10034D+00 455 nlis0 fpn=-0.100D+00 d2= 0.49D-01 tmin= 0.13D-14 tmax= 0.10D+21 456 nlis0 0.100D+01 -0.155D-01 0.179D+00 457 n1qn3: iter 26, simul 34, f= 0.93394350D-01, h'(0)=-0.12026D+00 458 nlis0 fpn=-0.120D+00 d2= 0.12D-01 tmin= 0.26D-14 tmax= 0.10D+21 459 nlis0 0.100D+01 -0.251D-01 0.437D-01 460 n1qn3: iter 27, simul 35, f= 0.68247280D-01, h'(0)=-0.20762D-01 461 nlis0 fpn=-0.208D-01 d2= 0.45D-02 tmin= 0.41D-14 tmax= 0.10D+21 462 nlis0 0.100D+01 -0.183D-01 -0.148D-01 463 n1qn3: iter 28, simul 36, f= 0.49926731D-01, h'(0)=-0.55493D-01 464 nlis0 fpn=-0.555D-01 d2= 0.58D-01 tmin= 0.11D-14 tmax= 0.10D+21 465 nlis0 0.100D+01 0.507D-01 0.260D+00 466 nlis0 0.413D+00 -0.132D-01 0.278D-02 467 n1qn3: iter 29, simul 38, f= 0.36769034D-01, h'(0)=-0.91754D-02 468 nlis0 fpn=-0.918D-02 d2= 0.87D-03 tmin= 0.86D-14 tmax= 0.10D+21 469 nlis0 0.100D+01 -0.813D-02 -0.718D-02 470 n1qn3: iter 30, simul 39, f= 0.28635889D-01, h'(0)=-0.25872D-01 471 nlis0 fpn=-0.259D-01 d2= 0.13D-01 tmin= 0.22D-14 tmax= 0.10D+21 472 nlis0 0.100D+01 -0.174D-01 -0.109D-01 473 n1qn3: iter 31, simul 40, f= 0.11210346D-01, h'(0)=-0.94861D-02 474 nlis0 fpn=-0.949D-02 d2= 0.41D-02 tmin= 0.39D-14 tmax= 0.10D+21 475 nlis0 0.100D+01 -0.648D-02 -0.412D-02 476 n1qn3: iter 32, simul 41, f= 0.47312611D-02, h'(0)=-0.12658D-01 477 nlis0 fpn=-0.127D-01 d2= 0.37D-01 tmin= 0.13D-14 tmax= 0.10D+21 478 nlis0 0.100D+01 0.236D-01 0.889D-01 479 nlis0 0.308D+00 -0.202D-02 0.129D-02 480 n1qn3: iter 33, simul 43, f= 0.27115703D-02, h'(0)=-0.27047D-02 481 nlis0 fpn=-0.270D-02 d2= 0.13D-02 tmin= 0.68D-14 tmax= 0.10D+21 482 nlis0 0.100D+01 -0.193D-02 -0.124D-02 483 n1qn3: iter 34, simul 44, f= 0.78629249D-03, h'(0)=-0.10616D-02 484 nlis0 fpn=-0.106D-02 d2= 0.11D-02 tmin= 0.73D-14 tmax= 0.10D+21 485 nlis0 0.100D+01 -0.680D-03 -0.342D-03 486 n1qn3: iter 35, simul 45, f= 0.10596409D-03, h'(0)=-0.16467D-03 487 nlis0 fpn=-0.165D-03 d2= 0.22D-03 tmin= 0.17D-13 tmax= 0.10D+21 488 nlis0 0.100D+01 -0.994D-04 -0.378D-04 489 n1qn3: iter 36, simul 46, f= 0.65779244D-05, h'(0)=-0.12836D-04 490 nlis0 fpn=-0.128D-04 d2= 0.34D-04 tmin= 0.43D-13 tmax= 0.10D+21 491 nlis0 0.100D+01 -0.592D-05 0.985D-06 492 n1qn3: iter 37, simul 47, f= 0.65335854D-06, h'(0)=-0.24142D-05 493 nlis0 fpn=-0.241D-05 d2= 0.96D-07 tmin= 0.92D-12 tmax= 0.10D+21 494 nlis0 0.100D+01 -0.168D-06 0.208D-05 495 n1qn3: iter 38, simul 48, f= 0.48517342D-06, h'(0)=-0.97016D-06 496 nlis0 fpn=-0.970D-06 d2= 0.12D-08 tmin= 0.80D-11 tmax= 0.10D+21 497 nlis0 0.100D+01 -0.485D-06 -0.183D-09 498 n1qn3: iter 39, simul 49, f= 0.72461377D-12, h'(0)=-0.14375D-11 499 nlis0 fpn=-0.144D-11 d2= 0.35D-11 tmin= 0.13D-09 tmax= 0.10D+21 500 nlis0 0.100D+01 -0.725D-12 -0.116D-13 501 n1qn3: iter 40, simul 50, f= 0.49419780D-16, h'(0)=-0.98838D-16 502 nlis0 fpn=-0.988D-16 d2= 0.25D-15 tmin= 0.16D-07 tmax= 0.10D+21 503 nlis0 0.100D+01 -0.494D-16 -0.125D-20 504 n1qn3: iter 41, simul 51, f= 0.23045863D-24, h'(0)=-0.46082D-24 505 nlis0 fpn=-0.461D-24 d2= 0.25D-25 tmin= 0.15D-02 tmax= 0.10D+21 506 nlis0 0.100D+01 -0.230D-24 0.000D+00 507 ------------------------------------------------------------------------------- 508 n1qn3: output mode is 1 509 number of iterations: 41 510 number of simulations: 52 511 realized relative precision on g: 0.00D+00 512 norm of x = 0.14142136D+01 513 f = 0.00000000D+00 514 norm of x = 0.00000000D+00 515optim: Norm of projected gradient lower than 0. 516// 517// 3. Test unconstrained non-differentiable method 518[f,x,g]=optim(rosenbrock,x0,"nd"); 519assert_checkalmostequal ( x , xopt , Leps ); 520assert_checkalmostequal ( f , fopt , [] , Leps ); 521assert_checkalmostequal ( g , gopt , [] , Leps ); 522// Test with maximum number of call to cost function 523[f,x,g]=optim(rosenbrock,x0,"nd","ar",100); 524assert_checkalmostequal ( x , xopt , Leps ); 525assert_checkalmostequal ( f , fopt , [] , Leps ); 526assert_checkalmostequal ( g , gopt , [] , Leps ); 527// Test with maximum number of call to cost function, maximum number of iterations 528[f,x,g]=optim(rosenbrock,x0,"nd","ar", 100 , 100 ); 529assert_checkalmostequal ( x , xopt , Leps ); 530assert_checkalmostequal ( f , fopt , [] , Leps ); 531assert_checkalmostequal ( g , gopt , [] , Leps ); 532// Test with various iprint levels 533// iprint = 0 : No messages 534[f,x,g]=optim(rosenbrock,x0,"nd",iprint=0); 535// iprint = 1,2 : one line at start, one line at end 536[f,x,g]=optim(rosenbrock,x0,"nd",iprint=1); 537entry in n1fc1 . n= 2 memax= 10 538minimal array sizes: iz( 22) rz( 70) dz( 198) 539n1fc1 Incorrect end of fprf2 540optim: End of optimization. 541// iprint = 3 : one line by iteration 542[f,x,g]=optim(rosenbrock,x0,"nd",iprint=2); 543entry in n1fc1 . n= 2 memax= 10 544minimal array sizes: iz( 22) rz( 70) dz( 198) 545 n1fc1 diam1= 0.739D+00 eta2= 0.000D+00 ap= 0.299D-28 546 n1fc1 10 32 0.2102076D+01 faisceau reduit a 2 gradients 547 n1fc1 18 56 0.5316674D-01 faisceau reduit a 2 gradients 548n1fc1 eta2 assigned to 0.444D-14 549 n1fc1 26 76 0.1360041D-02 convergence a 0.224D-02 pres ( 0.44D-15) 550 n1fc1 26 77 0.7792185D-03 faisceau reduit a 3 gradients 551n1fc1 eta2 assigned to 0.444D-14 552 n1fc1 33 88 0.2192247D-06 convergence a 0.926D-06 pres (-0.00D+00) 553 n1fc1 33 90 0.1890964D-06 faisceau reduit a 2 gradients 554n1fc1 Incorrect end of fprf2 555optim: End of optimization. 556// iprint = 4 : one line by iteration + one line by line search 557[f,x,g]=optim(rosenbrock,x0,"nd",iprint=3); 558entry in n1fc1 . n= 2 memax= 10 559minimal array sizes: iz( 22) rz( 70) dz( 198) 560n1fc1 1 1 0.2420000D+02 0.10D+01 0.54D+05 0.00D+00 2 561 n1fc1 diam1= 0.739D+00 eta2= 0.000D+00 ap= 0.299D-28 562n1fc1 2 4 0.4198816D+01 0.10D+01 0.15D+03 0.00D+00 2 563n1fc1 3 8 0.4198816D+01 0.10D+01 0.15D+03 0.00D+00 3 564n1fc1 4 10 0.4198816D+01 0.10D+01 0.14D+03 0.00D+00 3 565n1fc1 5 12 0.4198816D+01 0.10D+01 0.12D+03 0.00D+00 3 566n1fc1 6 17 0.4131268D+01 0.25D+00 0.33D+01 0.00D+00 3 567n1fc1 7 19 0.3662595D+01 0.10D+01 0.61D+00 0.00D+00 3 568n1fc1 8 23 0.3639147D+01 0.47D-01 0.10D+04 0.15D+04 2 569n1fc1 9 26 0.2590584D+01 0.10D+01 0.40D+00 0.00D+00 3 570n1fc1 10 31 0.2359570D+01 0.14D+00 0.25D+02 0.28D+03 2 571 n1fc1 10 32 0.2102076D+01 faisceau reduit a 2 gradients 572n1fc1 11 32 0.2102076D+01 0.46D+00 0.54D+01 0.00D+00 2 573n1fc1 12 39 0.8277294D+00 0.10D+01 0.35D+01 0.00D+00 3 574n1fc1 13 44 0.6868523D+00 0.27D+00 0.23D+01 0.00D+00 3 575n1fc1 14 46 0.6037192D+00 0.16D+00 0.20D+02 0.15D+03 2 576n1fc1 15 48 0.4376910D+00 0.33D+00 0.12D+01 0.00D+00 3 577n1fc1 16 50 0.3030057D+00 0.19D+00 0.84D+00 0.00D+00 3 578n1fc1 17 52 0.2144893D+00 0.16D+00 0.73D+00 0.26D+01 3 579n1fc1 18 54 0.7256611D-01 0.35D+00 0.34D+00 0.00D+00 3 580 n1fc1 18 56 0.5316674D-01 faisceau reduit a 2 gradients 581n1fc1 19 56 0.5316674D-01 0.58D-01 0.34D-01 0.00D+00 3 582n1fc1 20 58 0.4531702D-01 0.15D-01 0.71D+01 0.52D+03 2 583n1fc1 21 60 0.2482046D-01 0.41D-01 0.13D-01 0.00D+00 3 584n1fc1 22 62 0.1225140D-01 0.16D-01 0.12D-02 0.00D+00 3 585n1fc1 23 66 0.1190406D-01 0.11D-02 0.54D+01 0.25D+04 2 586n1fc1 24 69 0.5110747D-02 0.14D-01 0.12D-03 0.00D+00 3 587n1fc1 25 74 0.2527134D-02 0.82D-03 0.96D+00 0.61D+03 2 588n1fc1 eta2 assigned to 0.444D-14 589 n1fc1 26 76 0.1360041D-02 convergence a 0.224D-02 pres ( 0.44D-15) 590n1fc1 26 76 0.1360041D-02 0.22D-03 0.93D-03 0.46D+00 3 591 n1fc1 26 77 0.7792185D-03 faisceau reduit a 3 gradients 592n1fc1 27 77 0.7792185D-03 0.22D-03 0.31D+00 0.16D+04 2 593n1fc1 28 79 0.2612544D-03 0.22D-03 0.19D+00 0.46D+03 2 594n1fc1 29 81 0.3217976D-04 0.22D-03 0.33D-05 0.27D-01 3 595n1fc1 30 83 0.6090815D-05 0.57D-04 0.35D-06 0.19D-01 3 596n1fc1 31 85 0.1944220D-05 0.84D-05 0.75D-03 0.68D+02 2 597n1fc1 32 87 0.7841516D-06 0.23D-05 0.23D-06 0.65D-01 3 598n1fc1 eta2 assigned to 0.444D-14 599 n1fc1 33 88 0.2192247D-06 convergence a 0.926D-06 pres (-0.00D+00) 600n1fc1 33 88 0.2192247D-06 0.93D-07 0.51D-04 0.12D+03 2 601 n1fc1 33 90 0.1890964D-06 faisceau reduit a 2 gradients 602n1fc1 34 90 0.1890964D-06 0.93D-07 0.14D-06 0.00D+00 3 603n1fc1 35 92 0.8733602D-08 0.93D-07 0.15D-07 0.00D+00 3 604n1fc1 36 95 0.2709627D-08 0.12D-07 0.75D-06 0.32D+02 2 605n1fc1 Incorrect end of fprf2 606optim: End of optimization. 607// 608// 4. Test bound-constrained BFGS 609[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"qn"); 610assert_checkalmostequal ( x , xopt , Leps ); 611assert_checkalmostequal ( f , fopt , [] , Leps ); 612assert_checkalmostequal ( g , gopt , [] , Leps ); 613// Test with maximum number of call to cost function 614[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"qn","ar",50); 615assert_checkalmostequal ( x , xopt , Leps ); 616assert_checkalmostequal ( f , fopt , [] , Leps ); 617assert_checkalmostequal ( g , gopt , [] , Leps ); 618// Test with maximum number of call to cost function, maximum number of iterations 619[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"qn","ar", 100 , 100 ); 620assert_checkalmostequal ( x , xopt , Leps ); 621assert_checkalmostequal ( f , fopt , [] , Leps ); 622assert_checkalmostequal ( g , gopt , [] , Leps ); 623// Test with various iprint levels 624// iprint = 0 : No messages 625[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"qn",iprint=0); 626// iprint = 1,2 : one line at start, one line at end 627[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"qn",iprint=1); 628 *********** qnbd (with bound cstr) **************** 629dimension= 2, epsq= 0.2220446049250313E-15, verbosity level: iprint= 1 630max number of iterations allowed: iter= 100 631max number of calls to costf allowed: nap= 100 632------------------------------------------------ 633 qnbd : indqn= 13 634// iprint = 3 : one line by iteration 635[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"qn",iprint=2); 636 *********** qnbd (with bound cstr) **************** 637dimension= 2, epsq= 0.2220446049250313E-15, verbosity level: iprint= 2 638max number of iterations allowed: iter= 100 639max number of calls to costf allowed: nap= 100 640------------------------------------------------ 641 qnbd : iter= 1 f= 0.2420000D+02 642 qnbd : nbre fact 2 defact 0 total var factorisees 2 643 qnbd : epsg,difg= 0.2220D-15 0.5062D+02 epsf,diff= 0.0000D+00 0.1784D+02 nap= 3 644 qnbd : iter= 2 f= 0.6363632D+01 645 qnbd : nbre fact 0 defact 0 total var factorisees 2 646 qnbd : epsg,difg= 0.2220D-15 0.2926D+01 epsf,diff= 0.0000D+00 0.2276D+01 nap= 5 647 qnbd : iter= 3 f= 0.4088059D+01 648 qnbd : nbre fact 0 defact 0 total var factorisees 2 649 qnbd : epsg,difg= 0.2220D-15 0.1462D+01 epsf,diff= 0.0000D+00 0.7160D-02 nap= 6 650 qnbd : iter= 4 f= 0.4080900D+01 651 qnbd : nbre fact 0 defact 0 total var factorisees 2 652 qnbd : epsg,difg= 0.2220D-15 0.1281D+01 epsf,diff= 0.0000D+00 0.4927D-02 nap= 7 653 qnbd : iter= 5 f= 0.4075972D+01 654 qnbd : nbre fact 0 defact 0 total var factorisees 2 655 qnbd : epsg,difg= 0.2220D-15 0.2639D+01 epsf,diff= 0.0000D+00 0.1666D-01 nap= 8 656 qnbd : iter= 6 f= 0.4059314D+01 657 qnbd : nbre fact 0 defact 0 total var factorisees 2 658 qnbd : epsg,difg= 0.2220D-15 0.5535D+01 epsf,diff= 0.0000D+00 0.3949D-01 nap= 9 659 qnbd : iter= 7 f= 0.4019827D+01 660 qnbd : nbre fact 0 defact 0 total var factorisees 2 661 qnbd : epsg,difg= 0.2220D-15 0.1029D+02 epsf,diff= 0.0000D+00 0.9032D-01 nap= 10 662 qnbd : iter= 8 f= 0.3929503D+01 663 qnbd : nbre fact 0 defact 0 total var factorisees 2 664 qnbd : epsg,difg= 0.2220D-15 0.1482D+02 epsf,diff= 0.0000D+00 0.1269D+00 nap= 11 665 qnbd : iter= 9 f= 0.3802616D+01 666 qnbd : nbre fact 0 defact 0 total var factorisees 2 667 qnbd : epsg,difg= 0.2220D-15 0.1584D+02 epsf,diff= 0.0000D+00 0.1911D+00 nap= 12 668 qnbd : iter= 10 f= 0.3611527D+01 669 qnbd : nbre fact 0 defact 0 total var factorisees 2 670 qnbd : epsg,difg= 0.2220D-15 0.1335D+02 epsf,diff= 0.0000D+00 0.4793D+00 nap= 13 671 qnbd : iter= 11 f= 0.3132213D+01 672 qnbd : nbre fact 0 defact 0 total var factorisees 2 673 qnbd : epsg,difg= 0.2220D-15 0.4831D+01 epsf,diff= 0.0000D+00 0.5408D+00 nap= 14 674 qnbd : iter= 12 f= 0.2591395D+01 675 qnbd : nbre fact 0 defact 0 total var factorisees 2 676 qnbd : epsg,difg= 0.2220D-15 0.9927D+01 epsf,diff= 0.0000D+00 0.2198D+00 nap= 16 677 qnbd : iter= 13 f= 0.2371631D+01 678 qnbd : nbre fact 0 defact 0 total var factorisees 2 679 qnbd : epsg,difg= 0.2220D-15 0.7508D+01 epsf,diff= 0.0000D+00 0.3368D+00 nap= 17 680 qnbd : iter= 14 f= 0.2034811D+01 681 qnbd : nbre fact 0 defact 0 total var factorisees 2 682 qnbd : epsg,difg= 0.2220D-15 0.1723D+01 epsf,diff= 0.0000D+00 0.3605D+00 nap= 18 683 qnbd : iter= 15 f= 0.1674355D+01 684 qnbd : nbre fact 0 defact 0 total var factorisees 2 685 qnbd : epsg,difg= 0.2220D-15 0.6425D+01 epsf,diff= 0.0000D+00 0.2554D+00 nap= 20 686 qnbd : iter= 16 f= 0.1418994D+01 687 qnbd : nbre fact 0 defact 0 total var factorisees 2 688 qnbd : epsg,difg= 0.2220D-15 0.2962D+01 epsf,diff= 0.0000D+00 0.1320D+00 nap= 21 689 qnbd : iter= 17 f= 0.1286986D+01 690 qnbd : nbre fact 0 defact 0 total var factorisees 2 691 qnbd : epsg,difg= 0.2220D-15 0.2970D+01 epsf,diff= 0.0000D+00 0.2772D+00 nap= 22 692 qnbd : iter= 18 f= 0.1009809D+01 693 qnbd : nbre fact 0 defact 0 total var factorisees 2 694 qnbd : epsg,difg= 0.2220D-15 0.7110D+01 epsf,diff= 0.0000D+00 0.9782D-01 nap= 23 695 qnbd : iter= 19 f= 0.9119930D+00 696 qnbd : nbre fact 0 defact 0 total var factorisees 2 697 qnbd : epsg,difg= 0.2220D-15 0.1223D+01 epsf,diff= 0.0000D+00 0.2439D+00 nap= 24 698 qnbd : iter= 20 f= 0.6680716D+00 699 qnbd : nbre fact 0 defact 0 total var factorisees 2 700 qnbd : epsg,difg= 0.2220D-15 0.1598D+01 epsf,diff= 0.0000D+00 0.1495D+00 nap= 25 701 qnbd : iter= 21 f= 0.5185575D+00 702 qnbd : nbre fact 0 defact 0 total var factorisees 2 703 qnbd : epsg,difg= 0.2220D-15 0.4195D+01 epsf,diff= 0.0000D+00 0.5204D-01 nap= 27 704 qnbd : iter= 22 f= 0.4665182D+00 705 qnbd : nbre fact 0 defact 0 total var factorisees 2 706 qnbd : epsg,difg= 0.2220D-15 0.1092D+01 epsf,diff= 0.0000D+00 0.1651D+00 nap= 29 707 qnbd : iter= 23 f= 0.3014090D+00 708 qnbd : nbre fact 0 defact 0 total var factorisees 2 709 qnbd : epsg,difg= 0.2220D-15 0.3616D+01 epsf,diff= 0.0000D+00 0.4378D-01 nap= 31 710 qnbd : iter= 24 f= 0.2576320D+00 711 qnbd : nbre fact 0 defact 0 total var factorisees 2 712 qnbd : epsg,difg= 0.2220D-15 0.2649D+01 epsf,diff= 0.0000D+00 0.8347D-01 nap= 32 713 qnbd : iter= 25 f= 0.1741653D+00 714 qnbd : nbre fact 0 defact 0 total var factorisees 2 715 qnbd : epsg,difg= 0.2220D-15 0.7655D+00 epsf,diff= 0.0000D+00 0.5731D-01 nap= 33 716 qnbd : iter= 26 f= 0.1168531D+00 717 qnbd : nbre fact 0 defact 0 total var factorisees 2 718 qnbd : epsg,difg= 0.2220D-15 0.3144D+01 epsf,diff= 0.0000D+00 0.3345D-01 nap= 35 719 qnbd : iter= 27 f= 0.8340131D-01 720 qnbd : nbre fact 0 defact 0 total var factorisees 2 721 qnbd : epsg,difg= 0.2220D-15 0.1683D+01 epsf,diff= 0.0000D+00 0.2213D-01 nap= 36 722 qnbd : iter= 28 f= 0.6127324D-01 723 qnbd : nbre fact 0 defact 0 total var factorisees 2 724 qnbd : epsg,difg= 0.2220D-15 0.4212D+01 epsf,diff= 0.0000D+00 0.1946D-01 nap= 37 725 qnbd : iter= 29 f= 0.4181115D-01 726 qnbd : nbre fact 0 defact 0 total var factorisees 2 727 qnbd : epsg,difg= 0.2220D-15 0.1112D+01 epsf,diff= 0.0000D+00 0.2302D-01 nap= 38 728 qnbd : iter= 30 f= 0.1879567D-01 729 qnbd : nbre fact 0 defact 0 total var factorisees 2 730 qnbd : epsg,difg= 0.2220D-15 0.4225D+00 epsf,diff= 0.0000D+00 0.1025D-01 nap= 39 731 qnbd : iter= 31 f= 0.8546911D-02 732 qnbd : nbre fact 0 defact 0 total var factorisees 2 733 qnbd : epsg,difg= 0.2220D-15 0.1351D+01 epsf,diff= 0.0000D+00 0.2852D-02 nap= 41 734 qnbd : iter= 32 f= 0.5695252D-02 735 qnbd : nbre fact 0 defact 0 total var factorisees 2 736 qnbd : epsg,difg= 0.2220D-15 0.8746D+00 epsf,diff= 0.0000D+00 0.2625D-02 nap= 42 737 qnbd : iter= 33 f= 0.3069880D-02 738 qnbd : nbre fact 0 defact 0 total var factorisees 2 739 qnbd : epsg,difg= 0.2220D-15 0.2491D+00 epsf,diff= 0.0000D+00 0.2494D-02 nap= 43 740 qnbd : iter= 34 f= 0.5755995D-03 741 qnbd : nbre fact 0 defact 0 total var factorisees 2 742 qnbd : epsg,difg= 0.2220D-15 0.2501D+00 epsf,diff= 0.0000D+00 0.4653D-03 nap= 44 743 qnbd : iter= 35 f= 0.1103321D-03 744 qnbd : nbre fact 0 defact 0 total var factorisees 2 745 qnbd : epsg,difg= 0.2220D-15 0.2082D+00 epsf,diff= 0.0000D+00 0.6258D-04 nap= 45 746 qnbd : iter= 36 f= 0.4774899D-04 747 qnbd : nbre fact 0 defact 0 total var factorisees 2 748 qnbd : epsg,difg= 0.2220D-15 0.9357D-02 epsf,diff= 0.0000D+00 0.4743D-04 nap= 46 749 qnbd : iter= 37 f= 0.3189662D-06 750 qnbd : nbre fact 0 defact 0 total var factorisees 2 751 qnbd : epsg,difg= 0.2220D-15 0.7401D-03 epsf,diff= 0.0000D+00 0.3183D-06 nap= 47 752 qnbd : iter= 38 f= 0.6829435D-09 753 qnbd : nbre fact 0 defact 0 total var factorisees 2 754 qnbd : epsg,difg= 0.2220D-15 0.2102D-04 epsf,diff= 0.0000D+00 0.6824D-09 nap= 48 755 qnbd : iter= 39 f= 0.4984941D-12 756 qnbd : nbre fact 0 defact 0 total var factorisees 2 757 qnbd : epsg,difg= 0.2220D-15 0.2913D-06 epsf,diff= 0.0000D+00 0.4981D-12 nap= 49 758 qnbd : iter= 40 f= 0.3925578D-15 759 qnbd : nbre fact 0 defact 0 total var factorisees 2 760 qnbd : epsg,difg= 0.2220D-15 0.2479D-08 epsf,diff= 0.0000D+00 0.3925D-15 nap= 50 761 qnbd : iter= 41 f= 0.5929270D-19 762 qnbd : nbre fact 0 defact 0 total var factorisees 2 763 qnbd : epsg,difg= 0.2220D-15 0.4715D-10 epsf,diff= 0.0000D+00 0.5929D-19 nap= 51 764 qnbd : iter= 42 f= 0.2854806D-23 765 qnbd : nbre fact 0 defact 0 total var factorisees 2 766 qnbd : epsg,difg= 0.2220D-15 0.1902D-10 epsf,diff= 0.0000D+00 0.1961D-23 nap= 56 767 qnbd : iter= 43 f= 0.8942187D-24 768 qnbd : nbre fact 0 defact 0 total var factorisees 2 769 qnbd : epsg,difg= 0.2220D-15 0.2730D-10 epsf,diff= 0.0000D+00 0.7863D-25 nap= 63 770 qnbd : iter= 44 f= 0.8155913D-24 771 qnbd : nbre fact 0 defact 0 total var factorisees 2 772 qnbd : epsg,difg= 0.2220D-15 0.2231D-10 epsf,diff= 0.0000D+00 0.2484D-25 nap= 70 773 qnbd : iter= 45 f= 0.7907465D-24 774 qnbd : nbre fact 0 defact 0 total var factorisees 2 775 qnbd : epsg,difg= 0.2220D-15 0.2553D-10 epsf,diff= 0.0000D+00 0.8508D-26 nap= 77 776 qnbd : iter= 46 f= 0.7822385D-24 777 qnbd : nbre fact 0 defact 0 total var factorisees 2 778 qnbd : epsg,difg= 0.2220D-15 0.2405D-10 epsf,diff= 0.0000D+00 0.5487D-26 nap= 85 779 qnbd : iter= 47 f= 0.7767511D-24 780 qnbd : nbre fact 0 defact 0 total var factorisees 2 781 qnbd : epsg,difg= 0.2220D-15 0.2436D-10 epsf,diff= 0.0000D+00 0.2594D-26 nap= 95 782 qnbd : iter= 48 f= 0.7741575D-24 783 qnbd : nbre fact 0 defact 0 total var factorisees 2 784 qnbd : indqn= 13 785// iprint = 4 : one line by iteration + one line by line search 786[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"qn",iprint=3); 787 *********** qnbd (with bound cstr) **************** 788dimension= 2, epsq= 0.2220446049250313E-15, verbosity level: iprint= 3 789max number of iterations allowed: iter= 100 790max number of calls to costf allowed: nap= 100 791------------------------------------------------ 792 qnbd : iter= 1 f= 0.2420000D+02 793 qnbd : nbre fact 2 defact 0 total var factorisees 2 794 rlbd tp= 0.2876E-01 tmax= 0.1000E+11 dh0/dt=-0.5423E+05 795e t= 0.3688E-04 h=-0.1945E+01 dh/dt=-0.5124E+05 dfh/dt=-0.5273E+05 dt 0.4E-04 796 t= 0.5135E-03 h=-0.1784E+02 dh/dt=-0.1667E+05 dfh/dt=-0.3334E+05 dt 0.5E-03 797 qnbd : epsg,difg= 0.2220D-15 0.5062D+02 epsf,diff= 0.0000D+00 0.1784D+02 nap= 3 798 qnbd : iter= 2 f= 0.6363632D+01 799 qnbd : nbre fact 0 defact 0 total var factorisees 2 800 rlbd tp= 0.1089E+03 tmax= 0.1000E+11 dh0/dt=-0.3720E+01 801ic t= 0.9589E+01 h= 0.5286E+02 dh/dt= 0.9380E+01 dfh/dt= 0.5513E+01 dt 0.1E+02 802 t= 0.1322E+01 h=-0.2276E+01 dh/dt= 0.1483E+00 dfh/dt= 0.6670E+01 dt-0.8E+01 803 qnbd : epsg,difg= 0.2220D-15 0.2926D+01 epsf,diff= 0.0000D+00 0.2276D+01 nap= 5 804 qnbd : iter= 3 f= 0.4088059D+01 805 qnbd : nbre fact 0 defact 0 total var factorisees 2 806 rlbd tp= 0.1871E+04 tmax= 0.1000E+11 dh0/dt=-0.1067E-01 807 t= 0.1000E+01 h=-0.7160E-02 dh/dt=-0.3644E-02 dfh/dt=-0.7160E-02 dt 0.1E+01 808 qnbd : epsg,difg= 0.2220D-15 0.1462D+01 epsf,diff= 0.0000D+00 0.7160D-02 nap= 6 809 qnbd : iter= 4 f= 0.4080900D+01 810 qnbd : nbre fact 0 defact 0 total var factorisees 2 811 rlbd tp= 0.2129E+04 tmax= 0.1000E+11 dh0/dt=-0.5871E-02 812 t= 0.1000E+01 h=-0.4927E-02 dh/dt=-0.3984E-02 dfh/dt=-0.4927E-02 dt 0.1E+01 813 qnbd : epsg,difg= 0.2220D-15 0.1281D+01 epsf,diff= 0.0000D+00 0.4927D-02 nap= 7 814 qnbd : iter= 5 f= 0.4075972D+01 815 qnbd : nbre fact 0 defact 0 total var factorisees 2 816 rlbd tp= 0.4921E+03 tmax= 0.1000E+11 dh0/dt=-0.2087E-01 817 t= 0.1000E+01 h=-0.1666E-01 dh/dt=-0.1244E-01 dfh/dt=-0.1666E-01 dt 0.1E+01 818 qnbd : epsg,difg= 0.2220D-15 0.2639D+01 epsf,diff= 0.0000D+00 0.1666D-01 nap= 8 819 qnbd : iter= 6 f= 0.4059314D+01 820 qnbd : nbre fact 0 defact 0 total var factorisees 2 821 rlbd tp= 0.1794E+03 tmax= 0.1000E+11 dh0/dt=-0.4910E-01 822 t= 0.1000E+01 h=-0.3949E-01 dh/dt=-0.2960E-01 dfh/dt=-0.3949E-01 dt 0.1E+01 823 qnbd : epsg,difg= 0.2220D-15 0.5535D+01 epsf,diff= 0.0000D+00 0.3949D-01 nap= 9 824 qnbd : iter= 7 f= 0.4019827D+01 825 qnbd : nbre fact 0 defact 0 total var factorisees 2 826 rlbd tp= 0.6788E+02 tmax= 0.1000E+11 dh0/dt=-0.1202E+00 827 t= 0.1000E+01 h=-0.9032E-01 dh/dt=-0.5611E-01 dfh/dt=-0.9032E-01 dt 0.1E+01 828 qnbd : epsg,difg= 0.2220D-15 0.1029D+02 epsf,diff= 0.0000D+00 0.9032D-01 nap= 10 829 qnbd : iter= 8 f= 0.3929503D+01 830 qnbd : nbre fact 0 defact 0 total var factorisees 2 831 rlbd tp= 0.4367E+02 tmax= 0.1000E+11 dh0/dt=-0.1810E+00 832 t= 0.1000E+01 h=-0.1269E+00 dh/dt=-0.5900E-01 dfh/dt=-0.1269E+00 dt 0.1E+01 833 qnbd : epsg,difg= 0.2220D-15 0.1482D+02 epsf,diff= 0.0000D+00 0.1269D+00 nap= 11 834 qnbd : iter= 9 f= 0.3802616D+01 835 qnbd : nbre fact 0 defact 0 total var factorisees 2 836 rlbd tp= 0.4643E+02 tmax= 0.1000E+11 dh0/dt=-0.2391E+00 837 t= 0.1000E+01 h=-0.1911E+00 dh/dt=-0.1369E+00 dfh/dt=-0.1911E+00 dt 0.1E+01 838 qnbd : epsg,difg= 0.2220D-15 0.1584D+02 epsf,diff= 0.0000D+00 0.1911D+00 nap= 12 839 qnbd : iter= 10 f= 0.3611527D+01 840 qnbd : nbre fact 0 defact 0 total var factorisees 2 841 rlbd tp= 0.2935E+02 tmax= 0.1000E+11 dh0/dt=-0.6544E+00 842 t= 0.1000E+01 h=-0.4793E+00 dh/dt=-0.3144E+00 dfh/dt=-0.4793E+00 dt 0.1E+01 843 qnbd : epsg,difg= 0.2220D-15 0.1335D+02 epsf,diff= 0.0000D+00 0.4793D+00 nap= 13 844 qnbd : iter= 11 f= 0.3132213D+01 845 qnbd : nbre fact 0 defact 0 total var factorisees 2 846 rlbd tp= 0.5262E+02 tmax= 0.1000E+11 dh0/dt=-0.7617E+00 847 t= 0.1000E+01 h=-0.5408E+00 dh/dt=-0.3919E+00 dfh/dt=-0.5408E+00 dt 0.1E+01 848 qnbd : epsg,difg= 0.2220D-15 0.4831D+01 epsf,diff= 0.0000D+00 0.5408D+00 nap= 14 849 qnbd : iter= 12 f= 0.2591395D+01 850 qnbd : nbre fact 0 defact 0 total var factorisees 2 851 rlbd tp= 0.1420E+02 tmax= 0.1000E+11 dh0/dt=-0.8312E+00 852ic t= 0.1000E+01 h= 0.7497E+00 dh/dt= 0.4176E+01 dfh/dt= 0.7497E+00 dt 0.1E+01 853 t= 0.4382E+00 h=-0.2198E+00 dh/dt= 0.4016E-01 dfh/dt= 0.1726E+01 dt-0.6E+00 854 qnbd : epsg,difg= 0.2220D-15 0.9927D+01 epsf,diff= 0.0000D+00 0.2198D+00 nap= 16 855 qnbd : iter= 13 f= 0.2371631D+01 856 qnbd : nbre fact 0 defact 0 total var factorisees 2 857 rlbd tp= 0.5731E+02 tmax= 0.1000E+11 dh0/dt=-0.4306E+00 858 t= 0.1000E+01 h=-0.3368E+00 dh/dt=-0.2579E+00 dfh/dt=-0.3368E+00 dt 0.1E+01 859 qnbd : epsg,difg= 0.2220D-15 0.7508D+01 epsf,diff= 0.0000D+00 0.3368D+00 nap= 17 860 qnbd : iter= 14 f= 0.2034811D+01 861 qnbd : nbre fact 0 defact 0 total var factorisees 2 862 rlbd tp= 0.5735E+02 tmax= 0.1000E+11 dh0/dt=-0.6267E+00 863 t= 0.1000E+01 h=-0.3605E+00 dh/dt=-0.1724E+00 dfh/dt=-0.3605E+00 dt 0.1E+01 864 qnbd : epsg,difg= 0.2220D-15 0.1723D+01 epsf,diff= 0.0000D+00 0.3605D+00 nap= 18 865 qnbd : iter= 15 f= 0.1674355D+01 866 qnbd : nbre fact 0 defact 0 total var factorisees 2 867 rlbd tp= 0.1099E+02 tmax= 0.1000E+11 dh0/dt=-0.1363E+01 868ic t= 0.1000E+01 h= 0.6994E+01 dh/dt= 0.2893E+02 dfh/dt= 0.6994E+01 dt 0.1E+01 869 t= 0.3516E+00 h=-0.2554E+00 dh/dt= 0.7273E+00 dfh/dt= 0.1118E+02 dt-0.6E+00 870 qnbd : epsg,difg= 0.2220D-15 0.6425D+01 epsf,diff= 0.0000D+00 0.2554D+00 nap= 20 871 qnbd : iter= 16 f= 0.1418994D+01 872 qnbd : nbre fact 0 defact 0 total var factorisees 2 873 rlbd tp= 0.1891E+03 tmax= 0.1000E+11 dh0/dt=-0.1977E+00 874 t= 0.1000E+01 h=-0.1320E+00 dh/dt=-0.6635E-01 dfh/dt=-0.1320E+00 dt 0.1E+01 875 qnbd : epsg,difg= 0.2220D-15 0.2962D+01 epsf,diff= 0.0000D+00 0.1320D+00 nap= 21 876 qnbd : iter= 17 f= 0.1286986D+01 877 qnbd : nbre fact 0 defact 0 total var factorisees 2 878 rlbd tp= 0.3721E+02 tmax= 0.1000E+11 dh0/dt=-0.3536E+00 879 t= 0.1000E+01 h=-0.2772E+00 dh/dt=-0.1853E+00 dfh/dt=-0.2772E+00 dt 0.1E+01 880 qnbd : epsg,difg= 0.2220D-15 0.2970D+01 epsf,diff= 0.0000D+00 0.2772D+00 nap= 22 881 qnbd : iter= 18 f= 0.1009809D+01 882 qnbd : nbre fact 0 defact 0 total var factorisees 2 883 rlbd tp= 0.2944E+02 tmax= 0.1000E+11 dh0/dt=-0.3275E+00 884 t= 0.1000E+01 h=-0.9782E-01 dh/dt= 0.3071E+00 dfh/dt=-0.9782E-01 dt 0.1E+01 885 qnbd : epsg,difg= 0.2220D-15 0.7110D+01 epsf,diff= 0.0000D+00 0.9782D-01 nap= 23 886 qnbd : iter= 19 f= 0.9119930D+00 887 qnbd : nbre fact 0 defact 0 total var factorisees 2 888 rlbd tp= 0.9911E+02 tmax= 0.1000E+11 dh0/dt=-0.4982E+00 889 t= 0.1000E+01 h=-0.2439E+00 dh/dt= 0.1033E-01 dfh/dt=-0.2439E+00 dt 0.1E+01 890 qnbd : epsg,difg= 0.2220D-15 0.1223D+01 epsf,diff= 0.0000D+00 0.2439D+00 nap= 24 891 qnbd : iter= 20 f= 0.6680716D+00 892 qnbd : nbre fact 0 defact 0 total var factorisees 2 893 rlbd tp= 0.4542E+02 tmax= 0.1000E+11 dh0/dt=-0.1736E+00 894 t= 0.1000E+01 h=-0.1495E+00 dh/dt=-0.9751E-01 dfh/dt=-0.1495E+00 dt 0.1E+01 895 qnbd : epsg,difg= 0.2220D-15 0.1598D+01 epsf,diff= 0.0000D+00 0.1495D+00 nap= 25 896 qnbd : iter= 21 f= 0.5185575D+00 897 qnbd : nbre fact 0 defact 0 total var factorisees 2 898 rlbd tp= 0.2050E+02 tmax= 0.1000E+11 dh0/dt=-0.2727E+00 899ic t= 0.1000E+01 h= 0.4900E+00 dh/dt= 0.2064E+01 dfh/dt= 0.4900E+00 dt 0.1E+01 900 t= 0.3554E+00 h=-0.5204E-01 dh/dt= 0.3697E-01 dfh/dt= 0.8409E+00 dt-0.6E+00 901 qnbd : epsg,difg= 0.2220D-15 0.4195D+01 epsf,diff= 0.0000D+00 0.5204D-01 nap= 27 902 qnbd : iter= 22 f= 0.4665182D+00 903 qnbd : nbre fact 0 defact 0 total var factorisees 2 904 rlbd tp= 0.1410E+03 tmax= 0.1000E+11 dh0/dt=-0.9467E-01 905e t= 0.1000E+01 h=-0.7980E-01 dh/dt=-0.6688E-01 dfh/dt=-0.7980E-01 dt 0.1E+01 906 t= 0.2612E+01 h=-0.1651E+00 dh/dt=-0.4242E-01 dfh/dt=-0.5292E-01 dt 0.2E+01 907 qnbd : epsg,difg= 0.2220D-15 0.1092D+01 epsf,diff= 0.0000D+00 0.1651D+00 nap= 29 908 qnbd : iter= 23 f= 0.3014090D+00 909 qnbd : nbre fact 0 defact 0 total var factorisees 2 910 rlbd tp= 0.3134E+02 tmax= 0.1000E+11 dh0/dt=-0.1393E+00 911ic t= 0.1000E+01 h= 0.2342E-01 dh/dt= 0.3255E+00 dfh/dt= 0.2342E-01 dt 0.1E+01 912 t= 0.5240E+00 h=-0.4378E-01 dh/dt=-0.1060E-02 dfh/dt= 0.1412E+00 dt-0.5E+00 913 qnbd : epsg,difg= 0.2220D-15 0.3616D+01 epsf,diff= 0.0000D+00 0.4378D-01 nap= 31 914 qnbd : iter= 24 f= 0.2576320D+00 915 qnbd : nbre fact 0 defact 0 total var factorisees 2 916 rlbd tp= 0.5270E+02 tmax= 0.1000E+11 dh0/dt=-0.1139E+00 917 t= 0.1000E+01 h=-0.8347E-01 dh/dt=-0.5954E-01 dfh/dt=-0.8347E-01 dt 0.1E+01 918 qnbd : epsg,difg= 0.2220D-15 0.2649D+01 epsf,diff= 0.0000D+00 0.8347D-01 nap= 32 919 qnbd : iter= 25 f= 0.1741653D+00 920 qnbd : nbre fact 0 defact 0 total var factorisees 2 921 rlbd tp= 0.5702E+02 tmax= 0.1000E+11 dh0/dt=-0.9052E-01 922 t= 0.1000E+01 h=-0.5731E-01 dh/dt=-0.3243E-01 dfh/dt=-0.5731E-01 dt 0.1E+01 923 qnbd : epsg,difg= 0.2220D-15 0.7655D+00 epsf,diff= 0.0000D+00 0.5731D-01 nap= 33 924 qnbd : iter= 26 f= 0.1168531D+00 925 qnbd : nbre fact 0 defact 0 total var factorisees 2 926 rlbd tp= 0.1523E+02 tmax= 0.1000E+11 dh0/dt=-0.1721E+00 927ic t= 0.1000E+01 h= 0.5149E+00 dh/dt= 0.2154E+01 dfh/dt= 0.5149E+00 dt 0.1E+01 928 t= 0.3552E+00 h=-0.3345E-01 dh/dt= 0.4665E-01 dfh/dt= 0.8504E+00 dt-0.6E+00 929 qnbd : epsg,difg= 0.2220D-15 0.3144D+01 epsf,diff= 0.0000D+00 0.3345D-01 nap= 35 930 qnbd : iter= 27 f= 0.8340131D-01 931 qnbd : nbre fact 0 defact 0 total var factorisees 2 932 rlbd tp= 0.1267E+03 tmax= 0.1000E+11 dh0/dt=-0.2710E-01 933 t= 0.1000E+01 h=-0.2213E-01 dh/dt=-0.1760E-01 dfh/dt=-0.2213E-01 dt 0.1E+01 934 qnbd : epsg,difg= 0.2220D-15 0.1683D+01 epsf,diff= 0.0000D+00 0.2213D-01 nap= 36 935 qnbd : iter= 28 f= 0.6127324D-01 936 qnbd : nbre fact 0 defact 0 total var factorisees 2 937 rlbd tp= 0.2794E+02 tmax= 0.1000E+11 dh0/dt=-0.5182E-01 938 t= 0.1000E+01 h=-0.1946E-01 dh/dt= 0.2933E-01 dfh/dt=-0.1946E-01 dt 0.1E+01 939 qnbd : epsg,difg= 0.2220D-15 0.4212D+01 epsf,diff= 0.0000D+00 0.1946D-01 nap= 37 940 qnbd : iter= 29 f= 0.4181115D-01 941 qnbd : nbre fact 0 defact 0 total var factorisees 2 942 rlbd tp= 0.2113E+03 tmax= 0.1000E+11 dh0/dt=-0.5837E-01 943 t= 0.1000E+01 h=-0.2302E-01 dh/dt= 0.1234E-01 dfh/dt=-0.2302E-01 dt 0.1E+01 944 qnbd : epsg,difg= 0.2220D-15 0.1112D+01 epsf,diff= 0.0000D+00 0.2302D-01 nap= 38 945 qnbd : iter= 30 f= 0.1879567D-01 946 qnbd : nbre fact 0 defact 0 total var factorisees 2 947 rlbd tp= 0.6064E+02 tmax= 0.1000E+11 dh0/dt=-0.1349E-01 948 t= 0.1000E+01 h=-0.1025E-01 dh/dt=-0.5166E-02 dfh/dt=-0.1025E-01 dt 0.1E+01 949 qnbd : epsg,difg= 0.2220D-15 0.4225D+00 epsf,diff= 0.0000D+00 0.1025D-01 nap= 39 950 qnbd : iter= 31 f= 0.8546911D-02 951 qnbd : nbre fact 0 defact 0 total var factorisees 2 952 rlbd tp= 0.4124E+02 tmax= 0.1000E+11 dh0/dt=-0.9192E-02 953ic t= 0.1000E+01 h=-0.1115E-03 dh/dt= 0.1345E-01 dfh/dt=-0.1115E-03 dt 0.1E+01 954 t= 0.5527E+00 h=-0.2852E-02 dh/dt=-0.5725E-04 dfh/dt= 0.6127E-02 dt-0.4E+00 955 qnbd : epsg,difg= 0.2220D-15 0.1351D+01 epsf,diff= 0.0000D+00 0.2852D-02 nap= 41 956 qnbd : iter= 32 f= 0.5695252D-02 957 qnbd : nbre fact 0 defact 0 total var factorisees 2 958 rlbd tp= 0.1606E+03 tmax= 0.1000E+11 dh0/dt=-0.3214E-02 959 t= 0.1000E+01 h=-0.2625E-02 dh/dt=-0.2090E-02 dfh/dt=-0.2625E-02 dt 0.1E+01 960 qnbd : epsg,difg= 0.2220D-15 0.8746D+00 epsf,diff= 0.0000D+00 0.2625D-02 nap= 42 961 qnbd : iter= 33 f= 0.3069880D-02 962 qnbd : nbre fact 0 defact 0 total var factorisees 2 963 rlbd tp= 0.8464E+02 tmax= 0.1000E+11 dh0/dt=-0.3887E-02 964 t= 0.1000E+01 h=-0.2494E-02 dh/dt=-0.1350E-02 dfh/dt=-0.2494E-02 dt 0.1E+01 965 qnbd : epsg,difg= 0.2220D-15 0.2491D+00 epsf,diff= 0.0000D+00 0.2494D-02 nap= 43 966 qnbd : iter= 34 f= 0.5755995D-03 967 qnbd : nbre fact 0 defact 0 total var factorisees 2 968 rlbd tp= 0.1302E+03 tmax= 0.1000E+11 dh0/dt=-0.7571E-03 969 t= 0.1000E+01 h=-0.4653E-03 dh/dt=-0.1769E-03 dfh/dt=-0.4653E-03 dt 0.1E+01 970 qnbd : epsg,difg= 0.2220D-15 0.2501D+00 epsf,diff= 0.0000D+00 0.4653D-03 nap= 44 971 qnbd : iter= 35 f= 0.1103321D-03 972 qnbd : nbre fact 0 defact 0 total var factorisees 2 973 rlbd tp= 0.4072E+03 tmax= 0.1000E+11 dh0/dt=-0.2997E-03 974 t= 0.1000E+01 h=-0.6258E-04 dh/dt= 0.1693E-03 dfh/dt=-0.6258E-04 dt 0.1E+01 975 qnbd : epsg,difg= 0.2220D-15 0.2082D+00 epsf,diff= 0.0000D+00 0.6258D-04 nap= 45 976 qnbd : iter= 36 f= 0.4774899D-04 977 qnbd : nbre fact 0 defact 0 total var factorisees 2 978 rlbd tp= 0.8042E+03 tmax= 0.1000E+11 dh0/dt=-0.1003E-03 979 t= 0.1000E+01 h=-0.4743E-04 dh/dt= 0.6575E-05 dfh/dt=-0.4743E-04 dt 0.1E+01 980 qnbd : epsg,difg= 0.2220D-15 0.9357D-02 epsf,diff= 0.0000D+00 0.4743D-04 nap= 46 981 qnbd : iter= 37 f= 0.3189662D-06 982 qnbd : nbre fact 0 defact 0 total var factorisees 2 983 rlbd tp= 0.6116E+04 tmax= 0.1000E+11 dh0/dt=-0.6644E-06 984 t= 0.1000E+01 h=-0.3183E-06 dh/dt= 0.2630E-07 dfh/dt=-0.3183E-06 dt 0.1E+01 985 qnbd : epsg,difg= 0.2220D-15 0.7401D-03 epsf,diff= 0.0000D+00 0.3183D-06 nap= 47 986 qnbd : iter= 38 f= 0.6829435D-09 987 qnbd : nbre fact 0 defact 0 total var factorisees 2 988 rlbd tp= 0.1710E+06 tmax= 0.1000E+11 dh0/dt=-0.1340E-08 989 t= 0.1000E+01 h=-0.6824E-09 dh/dt=-0.2448E-10 dfh/dt=-0.6824E-09 dt 0.1E+01 990 qnbd : epsg,difg= 0.2220D-15 0.2102D-04 epsf,diff= 0.0000D+00 0.6824D-09 nap= 48 991 qnbd : iter= 39 f= 0.4984941D-12 992 qnbd : nbre fact 0 defact 0 total var factorisees 2 993 rlbd tp= 0.1312E+08 tmax= 0.1000E+11 dh0/dt=-0.9764E-12 994 t= 0.1000E+01 h=-0.4981E-12 dh/dt=-0.1984E-13 dfh/dt=-0.4981E-12 dt 0.1E+01 995 qnbd : epsg,difg= 0.2220D-15 0.2913D-06 epsf,diff= 0.0000D+00 0.4981D-12 nap= 49 996 qnbd : iter= 40 f= 0.3925578D-15 997 qnbd : nbre fact 0 defact 0 total var factorisees 2 998 rlbd tp= 0.1721E+09 tmax= 0.1000E+11 dh0/dt=-0.7785E-15 999 t= 0.1000E+01 h=-0.3925E-15 dh/dt=-0.6537E-17 dfh/dt=-0.3925E-15 dt 0.1E+01 1000 qnbd : epsg,difg= 0.2220D-15 0.2479D-08 epsf,diff= 0.0000D+00 0.3925D-15 nap= 50 1001 qnbd : iter= 41 f= 0.5929270D-19 1002 qnbd : nbre fact 0 defact 0 total var factorisees 2 1003 rlbd tp= 0.1308E+11 tmax= 0.1000E+11 dh0/dt=-0.1180E-18 1004 t= 0.1000E+01 h=-0.5929E-19 dh/dt=-0.5949E-21 dfh/dt=-0.5929E-19 dt 0.1E+01 1005 qnbd : epsg,difg= 0.2220D-15 0.4715D-10 epsf,diff= 0.0000D+00 0.5929D-19 nap= 51 1006 qnbd : iter= 42 f= 0.2854806D-23 1007 qnbd : emploi truc powell (y,s)= 0.1174D-18 1008 qnbd : nbre fact 0 defact 0 total var factorisees 2 1009 rlbd tp= 0.1233E+12 tmax= 0.1000E+11 dh0/dt=-0.8132E-22 1010d t= 0.1000E+01 h= 0.7180E-21 dh/dt= 0.1517E-20 dfh/dt= 0.7180E-21 dt 0.1E+01 1011d t= 0.5000E+00 h= 0.1592E-21 dh/dt= 0.7180E-21 dfh/dt= 0.1118E-20 dt-0.5E+00 1012d t= 0.2500E+00 h= 0.2963E-22 dh/dt= 0.3184E-21 dfh/dt= 0.5181E-21 dt-0.2E+00 1013d t= 0.1250E+00 h= 0.2325E-23 dh/dt= 0.1185E-21 dfh/dt= 0.2184E-21 dt-0.1E+00 1014 t= 0.6250E-01 h=-0.1961E-23 dh/dt= 0.1862E-22 dfh/dt= 0.6857E-22 dt-0.6E-01 1015 qnbd : epsg,difg= 0.2220D-15 0.1902D-10 epsf,diff= 0.0000D+00 0.1961D-23 nap= 56 1016 qnbd : iter= 43 f= 0.8942187D-24 1017 qnbd : emploi truc powell (y,s)= 0.6247D-23 1018 qnbd : nbre fact 0 defact 0 total var factorisees 2 1019 rlbd tp= 0.6780E+11 tmax= 0.1000E+11 dh0/dt=-0.2325E-22 1020d t= 0.1000E+01 h= 0.1132E-20 dh/dt= 0.2288E-20 dfh/dt= 0.1132E-20 dt 0.1E+01 1021d t= 0.5000E+00 h= 0.2773E-21 dh/dt= 0.1132E-20 dfh/dt= 0.1710E-20 dt-0.5E+00 1022d t= 0.2500E+00 h= 0.6644E-22 dh/dt= 0.5547E-21 dfh/dt= 0.8434E-21 dt-0.2E+00 1023d t= 0.1250E+00 h= 0.1515E-22 dh/dt= 0.2657E-21 dfh/dt= 0.4103E-21 dt-0.1E+00 1024d t= 0.6250E-01 h= 0.3062E-23 dh/dt= 0.1212E-21 dfh/dt= 0.1934E-21 dt-0.6E-01 1025d t= 0.3125E-01 h= 0.4061E-24 dh/dt= 0.4904E-22 dfh/dt= 0.8499E-22 dt-0.3E-01 1026 t= 0.1562E-01 h=-0.7863E-25 dh/dt= 0.1291E-22 dfh/dt= 0.3102E-22 dt-0.2E-01 1027 qnbd : epsg,difg= 0.2220D-15 0.2730D-10 epsf,diff= 0.0000D+00 0.7863D-25 nap= 63 1028 qnbd : iter= 44 f= 0.8155913D-24 1029 qnbd : emploi truc powell (y,s)= 0.5658D-24 1030 qnbd : nbre fact 0 defact 0 total var factorisees 2 1031 rlbd tp= 0.3429E+11 tmax= 0.1000E+11 dh0/dt=-0.3998E-22 1032id t= 0.1000E+01 h= 0.1023E-19 dh/dt= 0.2049E-19 dfh/dt= 0.1023E-19 dt 0.1E+01 1033d t= 0.1000E+00 h= 0.9866E-22 dh/dt= 0.2013E-20 dfh/dt= 0.1125E-19 dt-0.9E+00 1034d t= 0.5000E-01 h= 0.2367E-22 dh/dt= 0.9866E-21 dfh/dt= 0.1500E-20 dt-0.5E-01 1035d t= 0.2500E-01 h= 0.5417E-23 dh/dt= 0.4733E-21 dfh/dt= 0.7300E-21 dt-0.3E-01 1036d t= 0.1250E-01 h= 0.1105E-23 dh/dt= 0.2166E-21 dfh/dt= 0.3450E-21 dt-0.1E-01 1037d t= 0.6250E-02 h= 0.1496E-24 dh/dt= 0.8849E-22 dfh/dt= 0.1528E-21 dt-0.6E-02 1038 t= 0.3125E-02 h=-0.2484E-25 dh/dt= 0.2420E-22 dfh/dt= 0.5584E-22 dt-0.3E-02 1039 qnbd : epsg,difg= 0.2220D-15 0.2231D-10 epsf,diff= 0.0000D+00 0.2484D-25 nap= 70 1040 qnbd : iter= 45 f= 0.7907465D-24 1041 qnbd : emploi truc powell (y,s)= 0.2006D-24 1042 qnbd : nbre fact 0 defact 0 total var factorisees 2 1043 rlbd tp= 0.7009E+10 tmax= 0.1000E+11 dh0/dt=-0.8031E-22 1044id t= 0.1000E+01 h= 0.1088E-18 dh/dt= 0.2176E-18 dfh/dt= 0.1088E-18 dt 0.1E+01 1045id t= 0.1000E+00 h= 0.1081E-20 dh/dt= 0.2169E-19 dfh/dt= 0.1197E-18 dt-0.9E+00 1046d t= 0.1000E-01 h= 0.1009E-22 dh/dt= 0.2097E-20 dfh/dt= 0.1190E-19 dt-0.9E-01 1047d t= 0.5000E-02 h= 0.2314E-23 dh/dt= 0.1008E-20 dfh/dt= 0.1554E-20 dt-0.5E-02 1048d t= 0.2500E-02 h= 0.4799E-24 dh/dt= 0.4640E-21 dfh/dt= 0.7337E-21 dt-0.3E-02 1049d t= 0.1250E-02 h= 0.6986E-25 dh/dt= 0.1919E-21 dfh/dt= 0.3281E-21 dt-0.1E-02 1050 t= 0.6250E-03 h=-0.8508E-26 dh/dt= 0.5560E-22 dfh/dt= 0.1254E-21 dt-0.6E-03 1051 qnbd : epsg,difg= 0.2220D-15 0.2553D-10 epsf,diff= 0.0000D+00 0.8508D-26 nap= 77 1052 qnbd : iter= 46 f= 0.7822385D-24 1053 qnbd : emploi truc powell (y,s)= 0.8484D-25 1054 qnbd : nbre fact 0 defact 0 total var factorisees 2 1055 rlbd tp= 0.2254E+10 tmax= 0.1000E+11 dh0/dt=-0.2593E-21 1056id t= 0.1000E+01 h= 0.2369E-17 dh/dt= 0.4737E-17 dfh/dt= 0.2369E-17 dt 0.1E+01 1057id t= 0.1000E+00 h= 0.2366E-19 dh/dt= 0.4735E-18 dfh/dt= 0.2605E-17 dt-0.9E+00 1058id t= 0.1000E-01 h= 0.2343E-21 dh/dt= 0.4712E-19 dfh/dt= 0.2603E-18 dt-0.9E-01 1059d t= 0.1000E-02 h= 0.2110E-23 dh/dt= 0.4477E-20 dfh/dt= 0.2580E-19 dt-0.9E-02 1060d t= 0.5000E-03 h= 0.4624E-24 dh/dt= 0.2110E-20 dfh/dt= 0.3294E-20 dt-0.5E-03 1061d t= 0.2500E-03 h= 0.8387E-25 dh/dt= 0.9243E-21 dfh/dt= 0.1514E-20 dt-0.3E-03 1062d t= 0.1250E-03 h= 0.2587E-26 dh/dt= 0.3350E-21 dfh/dt= 0.6502E-21 dt-0.1E-03 1063 t= 0.6250E-04 h=-0.5487E-26 dh/dt= 0.3532E-22 dfh/dt= 0.1292E-21 dt-0.6E-04 1064 qnbd : epsg,difg= 0.2220D-15 0.2405D-10 epsf,diff= 0.0000D+00 0.5487D-26 nap= 85 1065 qnbd : iter= 47 f= 0.7767511D-24 1066 qnbd : emploi truc powell (y,s)= 0.1833D-25 1067 qnbd : nbre fact 0 defact 0 total var factorisees 2 1068 rlbd tp= 0.3148E+09 tmax= 0.1000E+11 dh0/dt=-0.2565E-21 1069id t= 0.1000E+01 h= 0.5352E-16 dh/dt= 0.1070E-15 dfh/dt= 0.5352E-16 dt 0.1E+01 1070id t= 0.1000E+00 h= 0.5352E-18 dh/dt= 0.1070E-16 dfh/dt= 0.5888E-16 dt-0.9E+00 1071id t= 0.1000E-01 h= 0.5350E-20 dh/dt= 0.1070E-17 dfh/dt= 0.5887E-17 dt-0.9E-01 1072id t= 0.1000E-02 h= 0.5327E-22 dh/dt= 0.1068E-18 dfh/dt= 0.5885E-18 dt-0.9E-02 1073d t= 0.1000E-03 h= 0.5117E-24 dh/dt= 0.1046E-19 dfh/dt= 0.5862E-19 dt-0.9E-03 1074d t= 0.5000E-04 h= 0.1218E-24 dh/dt= 0.5099E-20 dfh/dt= 0.7796E-20 dt-0.5E-04 1075d t= 0.2500E-04 h= 0.2743E-25 dh/dt= 0.2421E-20 dfh/dt= 0.3777E-20 dt-0.3E-04 1076d t= 0.1250E-04 h= 0.6249E-26 dh/dt= 0.1086E-20 dfh/dt= 0.1694E-20 dt-0.1E-04 1077d t= 0.6250E-05 h= 0.1019E-26 dh/dt= 0.4148E-21 dfh/dt= 0.8367E-21 dt-0.6E-05 1078 t= 0.3125E-05 h=-0.2594E-26 dh/dt= 0.6735E-22 dfh/dt= 0.1156E-20 dt-0.3E-05 1079 qnbd : epsg,difg= 0.2220D-15 0.2436D-10 epsf,diff= 0.0000D+00 0.2594D-26 nap= 95 1080 qnbd : iter= 48 f= 0.7741575D-24 1081 qnbd : emploi truc powell (y,s)= 0.9833D-27 1082 qnbd : nbre fact 0 defact 0 total var factorisees 2 1083 rlbd tp= 0.4866E+07 tmax= 0.1000E+11 dh0/dt=-0.3485E-19 1084id t= 0.1000E+01 h= 0.2126E-12 dh/dt= 0.4252E-12 dfh/dt= 0.2126E-12 dt 0.1E+01 1085id t= 0.1000E-02 h= 0.2126E-18 dh/dt= 0.4252E-15 dfh/dt= 0.2128E-12 dt-0.1E+01 1086id t= 0.1000E-04 h= 0.2092E-22 dh/dt= 0.4218E-17 dfh/dt= 0.2147E-15 dt-0.1E-02 1087d t= 0.1000E-05 h= 0.1767E-24 dh/dt= 0.3901E-18 dfh/dt= 0.2305E-17 dt-0.9E-05 1088d t= 0.5000E-06 h= 0.3717E-25 dh/dt= 0.1781E-18 dfh/dt= 0.2790E-18 dt-0.5E-06 1089 t= 0.2500E-06 h= 0.5251E-26 dh/dt= 0.1781E-18 dfh/dt=-0.0000E+00 dt-0.3E-06 1090 qnbd : indqn= 13 1091// 1092// 5. Test bound-constrained Limited Memory BFGS 1093[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"gc"); 1094assert_checkalmostequal ( x , xopt , Leps ); 1095assert_checkalmostequal ( f , fopt , [] , Leps ); 1096assert_checkalmostequal ( g , gopt , [] , Leps ); 1097// Test with maximum number of call to cost function 1098[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"gc","ar",100); 1099assert_checkalmostequal ( x , xopt , Leps ); 1100assert_checkalmostequal ( f , fopt , [] , Leps ); 1101assert_checkalmostequal ( g , gopt , [] , Leps ); 1102// Test with maximum number of call to cost function, maximum number of iterations 1103[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"gc","ar", 100 , 100 ); 1104assert_checkalmostequal ( x , xopt , Leps ); 1105assert_checkalmostequal ( f , fopt , [] , Leps ); 1106assert_checkalmostequal ( g , gopt , [] , Leps ); 1107// Test with various iprint levels 1108// iprint = 0 : No messages 1109[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"gc",iprint=0); 1110// iprint = 1,2 : one line at start, one line at end 1111[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"gc",iprint=1); 1112 gcdb: entry point 1113 dimension of the problem (n): 2 1114 expected decrease for f (df0): 0.10D+01 1115 relative precision on g (epsg): 0.22D-15 1116 maximal number of iterations (itmax): 100 1117 maximal number of simulations (napmax): 100 1118 printing level (iprint): 1 1119 gcbd max appels simul 1120 gcbd : retour avec indgc= 4 1121 f,norme grad,nap,iter,indgc= 0.6214E-20 0.8448E-10 100 43 4 1122optim: Optim stops: maximum number of calls to f is reached. 1123// iprint = 3 : one line by iteration 1124[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"gc",iprint=2); 1125 gcdb: entry point 1126 dimension of the problem (n): 2 1127 expected decrease for f (df0): 0.10D+01 1128 relative precision on g (epsg): 0.22D-15 1129 maximal number of iterations (itmax): 100 1130 maximal number of simulations (napmax): 100 1131 printing level (iprint): 2 1132 dans gcbd iter= 1 f= 0.2420000D+02 1133 gcbd. epsg,difg= 0.2220D-15 0.7159D+02 epsf,diff= 0.0000D+00 0.1784D+02 nap= 2 1134 dans gcbd iter= 2 f= 0.6363632D+01 1135 gcbd. epsg,difg= 0.2220D-15 0.2340D+01 epsf,diff= 0.0000D+00 0.2231D+01 nap= 4 1136 dans gcbd iter= 3 f= 0.4132134D+01 1137 gcbd. epsg,difg= 0.2220D-15 0.1913D+01 epsf,diff= 0.0000D+00 0.4550D-02 nap= 6 1138 dans gcbd iter= 4 f= 0.4127584D+01 1139 gcbd. epsg,difg= 0.2220D-15 0.5416D+01 epsf,diff= 0.0000D+00 0.1486D-01 nap= 8 1140 dans gcbd iter= 5 f= 0.4112720D+01 1141 gcbd. epsg,difg= 0.2220D-15 0.2091D+02 epsf,diff= 0.0000D+00 0.1464D+00 nap= 10 1142 dans gcbd iter= 6 f= 0.3966314D+01 1143 gcbd. epsg,difg= 0.2220D-15 0.2247D+02 epsf,diff= 0.0000D+00 0.6344D+00 nap= 12 1144 dans gcbd iter= 7 f= 0.3331870D+01 1145 gcbd. epsg,difg= 0.2220D-15 0.2143D+01 epsf,diff= 0.0000D+00 0.6856D+00 nap= 13 1146 dans gcbd iter= 8 f= 0.2646310D+01 1147 gcbd. epsg,difg= 0.2220D-15 0.8030D+01 epsf,diff= 0.0000D+00 0.7397D+00 nap= 15 1148 dans gcbd iter= 9 f= 0.1906596D+01 1149 gcbd. epsg,difg= 0.2220D-15 0.1073D+02 epsf,diff= 0.0000D+00 0.3822D-01 nap= 18 1150 dans gcbd iter= 10 f= 0.1868373D+01 1151 gcbd. epsg,difg= 0.2220D-15 0.7322D+01 epsf,diff= 0.0000D+00 0.4014D+00 nap= 20 1152 dans gcbd iter= 11 f= 0.1467012D+01 1153 gcbd. epsg,difg= 0.2220D-15 0.9099D+01 epsf,diff= 0.0000D+00 0.2159D+00 nap= 22 1154 dans gcbd iter= 12 f= 0.1251075D+01 1155 gcbd. epsg,difg= 0.2220D-15 0.2373D+01 epsf,diff= 0.0000D+00 0.2771D+00 nap= 23 1156 dans gcbd iter= 13 f= 0.9739653D+00 1157 gcbd. epsg,difg= 0.2220D-15 0.5464D+01 epsf,diff= 0.0000D+00 0.7093D-01 nap= 25 1158 dans gcbd iter= 14 f= 0.9030358D+00 1159 gcbd. epsg,difg= 0.2220D-15 0.6580D+01 epsf,diff= 0.0000D+00 0.2702D+00 nap= 30 1160 dans gcbd iter= 15 f= 0.6328802D+00 1161 gcbd. epsg,difg= 0.2220D-15 0.2530D+01 epsf,diff= 0.0000D+00 0.2982D-01 nap= 32 1162 dans gcbd iter= 16 f= 0.6030573D+00 1163 gcbd. epsg,difg= 0.2220D-15 0.7873D+01 epsf,diff= 0.0000D+00 0.8989D-01 nap= 34 1164 dans gcbd iter= 17 f= 0.5131695D+00 1165 gcbd. epsg,difg= 0.2220D-15 0.1104D+01 epsf,diff= 0.0000D+00 0.8223D-01 nap= 35 1166 dans gcbd iter= 18 f= 0.4309425D+00 1167 gcbd. epsg,difg= 0.2220D-15 0.3437D+01 epsf,diff= 0.0000D+00 0.1651D-01 nap= 37 1168 dans gcbd iter= 19 f= 0.4144307D+00 1169 gcbd. epsg,difg= 0.2220D-15 0.4566D+01 epsf,diff= 0.0000D+00 0.1344D+00 nap= 39 1170 dans gcbd iter= 20 f= 0.2800585D+00 1171 gcbd. epsg,difg= 0.2220D-15 0.6863D+01 epsf,diff= 0.0000D+00 0.7865D-01 nap= 41 1172 dans gcbd iter= 21 f= 0.2014068D+00 1173 gcbd. epsg,difg= 0.2220D-15 0.1826D+01 epsf,diff= 0.0000D+00 0.7752D-01 nap= 42 1174 dans gcbd iter= 22 f= 0.1238910D+00 1175 gcbd. epsg,difg= 0.2220D-15 0.2529D+01 epsf,diff= 0.0000D+00 0.7119D-01 nap= 44 1176 dans gcbd iter= 23 f= 0.5270207D-01 1177 gcbd. epsg,difg= 0.2220D-15 0.4306D+01 epsf,diff= 0.0000D+00 0.6135D-02 nap= 47 1178 dans gcbd iter= 24 f= 0.4656719D-01 1179 gcbd. epsg,difg= 0.2220D-15 0.1231D+01 epsf,diff= 0.0000D+00 0.2703D-01 nap= 49 1180 dans gcbd iter= 25 f= 0.1953329D-01 1181 gcbd. epsg,difg= 0.2220D-15 0.1445D+01 epsf,diff= 0.0000D+00 0.1631D-01 nap= 51 1182 dans gcbd iter= 26 f= 0.3222476D-02 1183 gcbd. epsg,difg= 0.2220D-15 0.6193D+00 epsf,diff= 0.0000D+00 0.2216D-02 nap= 53 1184 dans gcbd iter= 27 f= 0.1006378D-02 1185 gcbd. epsg,difg= 0.2220D-15 0.3527D+00 epsf,diff= 0.0000D+00 0.5871D-03 nap= 55 1186 dans gcbd iter= 28 f= 0.4193247D-03 1187 gcbd. epsg,difg= 0.2220D-15 0.1105D+00 epsf,diff= 0.0000D+00 0.3655D-03 nap= 56 1188 dans gcbd iter= 29 f= 0.5385147D-04 1189 gcbd. epsg,difg= 0.2220D-15 0.9174D-01 epsf,diff= 0.0000D+00 0.4928D-04 nap= 58 1190 dans gcbd iter= 30 f= 0.4571613D-05 1191 gcbd. epsg,difg= 0.2220D-15 0.1255D-01 epsf,diff= 0.0000D+00 0.4367D-05 nap= 60 1192 dans gcbd iter= 31 f= 0.2050776D-06 1193 gcbd. epsg,difg= 0.2220D-15 0.9260D-03 epsf,diff= 0.0000D+00 0.2043D-06 nap= 63 1194 dans gcbd iter= 32 f= 0.7658047D-09 1195 gcbd. epsg,difg= 0.2220D-15 0.6032D-04 epsf,diff= 0.0000D+00 0.7625D-09 nap= 65 1196 dans gcbd iter= 33 f= 0.3300830D-11 1197 gcbd. epsg,difg= 0.2220D-15 0.2425D-06 epsf,diff= 0.0000D+00 0.3301D-11 nap= 67 1198 dans gcbd iter= 34 f= 0.5127616D-16 1199 gcbd. epsg,difg= 0.2220D-15 0.3168D-08 epsf,diff= 0.0000D+00 0.5126D-16 nap= 71 1200 dans gcbd iter= 35 f= 0.1131843D-19 1201 gcbd. epsg,difg= 0.2220D-15 0.8861D-09 epsf,diff= 0.0000D+00 0.4625D-20 nap= 78 1202 dans gcbd iter= 36 f= 0.6693058D-20 1203 gcbd. epsg,difg= 0.2220D-15 0.4257D-09 epsf,diff= 0.0000D+00 0.3089D-21 nap= 82 1204 dans gcbd iter= 37 f= 0.6384148D-20 1205 gcbd. epsg,difg= 0.2220D-15 0.3053D-09 epsf,diff= 0.0000D+00 0.5249D-22 nap= 84 1206 dans gcbd iter= 38 f= 0.6331659D-20 1207 gcbd. epsg,difg= 0.2220D-15 0.8042D-10 epsf,diff= 0.0000D+00 0.4895D-22 nap= 85 1208 dans gcbd iter= 39 f= 0.6282712D-20 1209 gcbd. epsg,difg= 0.2220D-15 0.2603D-09 epsf,diff= 0.0000D+00 0.7315D-23 nap= 87 1210 dans gcbd iter= 40 f= 0.6275397D-20 1211 gcbd. epsg,difg= 0.2220D-15 0.2373D-09 epsf,diff= 0.0000D+00 0.1517D-22 nap= 96 1212 dans gcbd iter= 41 f= 0.6260226D-20 1213 gcbd. epsg,difg= 0.2220D-15 0.1259D-09 epsf,diff= 0.0000D+00 0.2288D-22 nap= 97 1214 dans gcbd iter= 42 f= 0.6237341D-20 1215 gcbd. epsg,difg= 0.2220D-15 0.8448D-10 epsf,diff= 0.0000D+00 0.1153D-22 nap= 99 1216 dans gcbd iter= 43 f= 0.6225811D-20 1217 gcbd max appels simul 1218 gcbd : retour avec indgc= 4 1219 f,norme grad,nap,iter,indgc= 0.6214E-20 0.8448E-10 100 43 4 1220optim: Optim stops: maximum number of calls to f is reached. 1221// iprint = 4 : one line by iteration + one line by line search 1222[f,x,g]=optim(rosenbrock,"b",bi,bs,x0,"gc",iprint=3); 1223 gcdb: entry point 1224 dimension of the problem (n): 2 1225 expected decrease for f (df0): 0.10D+01 1226 relative precision on g (epsg): 0.22D-15 1227 maximal number of iterations (itmax): 100 1228 maximal number of simulations (napmax): 100 1229 printing level (iprint): 3 1230 dans gcbd iter= 1 f= 0.2420000D+02 1231 relvar1. valeur de eps1= 0.1020000D+02 1232 redemarrage. icycl= 2 1233 rlbd tp= 0.2876E-01 tmax= 0.1000E+11 dh0/dt=-0.5423E+05 1234e t= 0.3688E-04 h=-0.1945E+01 dh/dt=-0.5124E+05 dfh/dt=-0.5273E+05 dt 0.4E-04 1235 t= 0.5135E-03 h=-0.1784E+02 dh/dt=-0.1667E+05 dfh/dt=-0.3334E+05 dt 0.5E-03 1236 retour mlibd indrl= 1 pas= 0.5135D-03 f= 0.6364D+01 1237 gcbd. epsg,difg= 0.2220D-15 0.7159D+02 epsf,diff= 0.0000D+00 0.1784D+02 nap= 2 1238 dans gcbd iter= 2 f= 0.6363632D+01 1239 relvar1. valeur de eps1= 0.3799926D+01 1240 rlbd tp= 0.1253E+03 tmax= 0.1000E+11 dh0/dt=-0.3802E+01 1241ic t= 0.9384E+01 h= 0.6768E+02 dh/dt= 0.1385E+02 dfh/dt= 0.7212E+01 dt 0.9E+01 1242 t= 0.1228E+01 h=-0.2231E+01 dh/dt= 0.7747E-01 dfh/dt= 0.8572E+01 dt-0.8E+01 1243 retour mlibd indrl= 1 pas= 0.1228D+01 f= 0.4132D+01 1244 gcbd. epsg,difg= 0.2220D-15 0.2340D+01 epsf,diff= 0.0000D+00 0.2231D+01 nap= 4 1245 dans gcbd iter= 3 f= 0.4132134D+01 1246 relvar1. valeur de eps1= 0.4060355D-02 1247 redemarrage. icycl= 3 1248 rlbd tp= 0.3491E+04 tmax= 0.1000E+11 dh0/dt=-0.4314E-02 1249id t= 0.1035E+04 h= 0.1274E+04 dh/dt= 0.2763E+01 dfh/dt= 0.1231E+01 dt 0.1E+04 1250 t= 0.1613E+01 h=-0.4550E-02 dh/dt=-0.1328E-02 dfh/dt= 0.1233E+01 dt-0.1E+04 1251 retour mlibd indrl= 1 pas= 0.1613D+01 f= 0.4128D+01 1252 gcbd. epsg,difg= 0.2220D-15 0.1913D+01 epsf,diff= 0.0000D+00 0.4550D-02 nap= 6 1253 dans gcbd iter= 4 f= 0.4127584D+01 1254 relvar1. valeur de eps1= 0.2713482D-02 1255 rlbd tp= 0.1714E+04 tmax= 0.1000E+11 dh0/dt=-0.5472E-02 1256e t= 0.1663E+01 h=-0.7784E-02 dh/dt=-0.3889E-02 dfh/dt=-0.4681E-02 dt 0.2E+01 1257 t= 0.4407E+01 h=-0.1486E-01 dh/dt=-0.1270E-02 dfh/dt=-0.2580E-02 dt 0.3E+01 1258 retour mlibd indrl= 1 pas= 0.4407D+01 f= 0.4113D+01 1259 gcbd. epsg,difg= 0.2220D-15 0.5416D+01 epsf,diff= 0.0000D+00 0.1486D-01 nap= 8 1260 dans gcbd iter= 5 f= 0.4112720D+01 1261 relvar1. valeur de eps1= 0.2174276D-01 1262 rlbd tp= 0.3394E+03 tmax= 0.1000E+11 dh0/dt=-0.2756E-01 1263e t= 0.1079E+01 h=-0.2860E-01 dh/dt=-0.2543E-01 dfh/dt=-0.2652E-01 dt 0.1E+01 1264 t= 0.1071E+02 h=-0.1464E+00 dh/dt= 0.4420E-02 dfh/dt=-0.1223E-01 dt 0.1E+02 1265 retour mlibd indrl= 1 pas= 0.1071D+02 f= 0.3966D+01 1266 gcbd. epsg,difg= 0.2220D-15 0.2091D+02 epsf,diff= 0.0000D+00 0.1464D+00 nap= 10 1267 dans gcbd iter= 6 f= 0.3966314D+01 1268 relvar1. valeur de eps1= 0.3241092D+00 1269 rlbd tp= 0.5571E+02 tmax= 0.1000E+11 dh0/dt=-0.3012E+00 1270e t= 0.9721E+00 h=-0.2598E+00 dh/dt=-0.2366E+00 dfh/dt=-0.2673E+00 dt 0.1E+01 1271 t= 0.3474E+01 h=-0.6344E+00 dh/dt=-0.2926E-01 dfh/dt=-0.1497E+00 dt 0.3E+01 1272 retour mlibd indrl= 1 pas= 0.3474D+01 f= 0.3332D+01 1273 gcbd. epsg,difg= 0.2220D-15 0.2247D+02 epsf,diff= 0.0000D+00 0.6344D+00 nap= 12 1274 dans gcbd iter= 7 f= 0.3331870D+01 1275 relvar1. valeur de eps1= 0.3741640D+00 1276 rlbd tp= 0.1088E+03 tmax= 0.1000E+11 dh0/dt=-0.5645E+00 1277 t= 0.2248E+01 h=-0.6856E+00 dh/dt=-0.1262E+00 dfh/dt=-0.3050E+00 dt 0.2E+01 1278 retour mlibd indrl= 1 pas= 0.2248D+01 f= 0.2646D+01 1279 gcbd. epsg,difg= 0.2220D-15 0.2143D+01 epsf,diff= 0.0000D+00 0.6856D+00 nap= 13 1280 dans gcbd iter= 8 f= 0.2646310D+01 1281 relvar1. valeur de eps1= 0.3403105D-02 1282 rlbd tp= 0.7769E+02 tmax= 0.1000E+11 dh0/dt=-0.1859E+00 1283ic t= 0.7377E+01 h= 0.6756E+00 dh/dt= 0.1233E+01 dfh/dt= 0.9159E-01 dt 0.7E+01 1284 t= 0.4255E+01 h=-0.7397E+00 dh/dt=-0.4571E-01 dfh/dt= 0.4535E+00 dt-0.3E+01 1285 retour mlibd indrl= 1 pas= 0.4255D+01 f= 0.1907D+01 1286 gcbd. epsg,difg= 0.2220D-15 0.8030D+01 epsf,diff= 0.0000D+00 0.7397D+00 nap= 15 1287 dans gcbd iter= 9 f= 0.1906596D+01 1288 relvar1. valeur de eps1= 0.4780419D-01 1289 rlbd tp= 0.3212E+02 tmax= 0.1000E+11 dh0/dt=-0.2472E+00 1290id t= 0.5985E+01 h= 0.1537E+03 dh/dt= 0.9159E+02 dfh/dt= 0.2567E+02 dt 0.6E+01 1291e t= 0.1611E-01 h=-0.3896E-02 dh/dt=-0.2364E+00 dfh/dt= 0.2574E+02 dt-0.6E+01 1292 t= 0.2846E+00 h=-0.3822E-01 dh/dt=-0.8113E-04 dfh/dt=-0.1279E+00 dt 0.3E+00 1293 retour mlibd indrl= 1 pas= 0.2846D+00 f= 0.1868D+01 1294 gcbd. epsg,difg= 0.2220D-15 0.1073D+02 epsf,diff= 0.0000D+00 0.3822D-01 nap= 18 1295 dans gcbd iter= 10 f= 0.1868373D+01 1296 relvar1. valeur de eps1= 0.8535631D-01 1297 rlbd tp= 0.1129E+03 tmax= 0.1000E+11 dh0/dt=-0.1980E+00 1298e t= 0.3861E+00 h=-0.7241E-01 dh/dt=-0.1777E+00 dfh/dt=-0.1876E+00 dt 0.4E+00 1299 t= 0.2884E+01 h=-0.4014E+00 dh/dt=-0.9237E-01 dfh/dt=-0.1317E+00 dt 0.2E+01 1300 retour mlibd indrl= 1 pas= 0.2884D+01 f= 0.1467D+01 1301 gcbd. epsg,difg= 0.2220D-15 0.7322D+01 epsf,diff= 0.0000D+00 0.4014D+00 nap= 20 1302 dans gcbd iter= 11 f= 0.1467012D+01 1303 relvar1. valeur de eps1= 0.3974892D-01 1304 rlbd tp= 0.4776E+02 tmax= 0.1000E+11 dh0/dt=-0.2843E+00 1305ic t= 0.2824E+01 h= 0.4689E+00 dh/dt= 0.1143E+01 dfh/dt= 0.1661E+00 dt 0.3E+01 1306 t= 0.1342E+01 h=-0.2159E+00 dh/dt= 0.7689E-02 dfh/dt= 0.4621E+00 dt-0.1E+01 1307 retour mlibd indrl= 1 pas= 0.1342D+01 f= 0.1251D+01 1308 gcbd. epsg,difg= 0.2220D-15 0.9099D+01 epsf,diff= 0.0000D+00 0.2159D+00 nap= 22 1309 dans gcbd iter= 12 f= 0.1251075D+01 1310 relvar1. valeur de eps1= 0.6137646D-01 1311 rlbd tp= 0.2230E+03 tmax= 0.1000E+11 dh0/dt=-0.2142E+00 1312 t= 0.2016E+01 h=-0.2771E+00 dh/dt=-0.6822E-01 dfh/dt=-0.1375E+00 dt 0.2E+01 1313 retour mlibd indrl= 1 pas= 0.2016D+01 f= 0.9740D+00 1314 gcbd. epsg,difg= 0.2220D-15 0.2373D+01 epsf,diff= 0.0000D+00 0.2771D+00 nap= 23 1315 dans gcbd iter= 13 f= 0.9739653D+00 1316 relvar1. valeur de eps1= 0.4173212D-02 1317 rlbd tp= 0.1759E+03 tmax= 0.1000E+11 dh0/dt=-0.7701E-01 1318ic t= 0.7196E+01 h= 0.1711E-01 dh/dt= 0.2397E-02 dfh/dt= 0.2377E-02 dt 0.7E+01 1319 t= 0.2294E+01 h=-0.7093E-01 dh/dt= 0.3779E-02 dfh/dt= 0.1796E-01 dt-0.5E+01 1320 retour mlibd indrl= 1 pas= 0.2294D+01 f= 0.9030D+00 1321 gcbd. epsg,difg= 0.2220D-15 0.5464D+01 epsf,diff= 0.0000D+00 0.7093D-01 nap= 25 1322 dans gcbd iter= 14 f= 0.9030358D+00 1323 relvar1. valeur de eps1= 0.2213301D-01 1324 rlbd tp= 0.1925E+03 tmax= 0.1000E+11 dh0/dt=-0.5988E-01 1325es t= 0.2369E+01 h=-0.1457E+00 dh/dt=-0.6005E-01 dfh/dt=-0.6152E-01 dt 0.2E+01 1326ic t= 0.1925E+03 h= 0.6099E+05 dh/dt= 0.1255E+04 dfh/dt= 0.3208E+03 dt 0.2E+03 1327ic t= 0.6286E+02 h= 0.7424E+03 dh/dt= 0.4626E+02 dfh/dt= 0.4648E+03 dt-0.1E+03 1328ic t= 0.1991E+02 h= 0.7578E+01 dh/dt= 0.1633E+01 dfh/dt= 0.1711E+02 dt-0.4E+02 1329 t= 0.7386E+01 h=-0.2702E+00 dh/dt= 0.4024E-01 dfh/dt= 0.6267E+00 dt-0.1E+02 1330 retour mlibd indrl= 1 pas= 0.7386D+01 f= 0.6329D+00 1331 gcbd. epsg,difg= 0.2220D-15 0.6580D+01 epsf,diff= 0.0000D+00 0.2702D+00 nap= 30 1332 dans gcbd iter= 15 f= 0.6328802D+00 1333 relvar1. valeur de eps1= 0.3209633D-01 1334 rlbd tp= 0.8587E+02 tmax= 0.1000E+11 dh0/dt=-0.1289E+00 1335ic t= 0.4193E+01 h= 0.5736E+00 dh/dt= 0.1516E+00 dfh/dt= 0.1368E+00 dt 0.4E+01 1336 t= 0.5819E+00 h=-0.2982E-01 dh/dt= 0.1805E-01 dfh/dt= 0.1671E+00 dt-0.4E+01 1337 retour mlibd indrl= 1 pas= 0.5819D+00 f= 0.6031D+00 1338 gcbd. epsg,difg= 0.2220D-15 0.2530D+01 epsf,diff= 0.0000D+00 0.2982D-01 nap= 32 1339 dans gcbd iter= 16 f= 0.6030573D+00 1340 relvar1. valeur de eps1= 0.4746197D-02 1341 rlbd tp= 0.2718E+03 tmax= 0.1000E+11 dh0/dt=-0.2597E-01 1342e t= 0.2297E+01 h=-0.5336E-01 dh/dt=-0.2015E-01 dfh/dt=-0.2323E-01 dt 0.2E+01 1343 t= 0.7857E+01 h=-0.8989E-01 dh/dt= 0.1364E-01 dfh/dt=-0.6570E-02 dt 0.6E+01 1344 retour mlibd indrl= 1 pas= 0.7857D+01 f= 0.5132D+00 1345 gcbd. epsg,difg= 0.2220D-15 0.7873D+01 epsf,diff= 0.0000D+00 0.8989D-01 nap= 34 1346 dans gcbd iter= 17 f= 0.5131695D+00 1347 relvar1. valeur de eps1= 0.4594621D-01 1348 rlbd tp= 0.3039E+03 tmax= 0.1000E+11 dh0/dt=-0.1195E+00 1349 t= 0.1504E+01 h=-0.8223E-01 dh/dt= 0.7334E-02 dfh/dt=-0.5466E-01 dt 0.2E+01 1350 retour mlibd indrl= 1 pas= 0.1504D+01 f= 0.4309D+00 1351 gcbd. epsg,difg= 0.2220D-15 0.1104D+01 epsf,diff= 0.0000D+00 0.8223D-01 nap= 35 1352 dans gcbd iter= 18 f= 0.4309425D+00 1353 relvar1. valeur de eps1= 0.9029729D-03 1354 rlbd tp= 0.1063E+04 tmax= 0.1000E+11 dh0/dt=-0.4518E-02 1355ic t= 0.3640E+02 h= 0.5310E+00 dh/dt= 0.4494E-01 dfh/dt= 0.1459E-01 dt 0.4E+02 1356 t= 0.7310E+01 h=-0.1651E-01 dh/dt= 0.3403E-03 dfh/dt= 0.1882E-01 dt-0.3E+02 1357 retour mlibd indrl= 1 pas= 0.7310D+01 f= 0.4144D+00 1358 gcbd. epsg,difg= 0.2220D-15 0.3437D+01 epsf,diff= 0.0000D+00 0.1651D-01 nap= 37 1359 dans gcbd iter= 19 f= 0.4144307D+00 1360 relvar1. valeur de eps1= 0.8757447D-02 1361 rlbd tp= 0.2773E+03 tmax= 0.1000E+11 dh0/dt=-0.2666E-01 1362e t= 0.1239E+01 h=-0.3089E-01 dh/dt=-0.2333E-01 dfh/dt=-0.2493E-01 dt 0.1E+01 1363 t= 0.7614E+01 h=-0.1344E+00 dh/dt=-0.7689E-02 dfh/dt=-0.1623E-01 dt 0.6E+01 1364 retour mlibd indrl= 1 pas= 0.7614D+01 f= 0.2801D+00 1365 gcbd. epsg,difg= 0.2220D-15 0.4566D+01 epsf,diff= 0.0000D+00 0.1344D+00 nap= 39 1366 dans gcbd iter= 20 f= 0.2800585D+00 1367 relvar1. valeur de eps1= 0.1545384D-01 1368 rlbd tp= 0.7879E+02 tmax= 0.1000E+11 dh0/dt=-0.7000E-01 1369ic t= 0.3839E+01 h= 0.4880E-01 dh/dt= 0.1721E+00 dfh/dt= 0.1271E-01 dt 0.4E+01 1370 t= 0.2019E+01 h=-0.7865E-01 dh/dt=-0.1462E-02 dfh/dt= 0.7004E-01 dt-0.2E+01 1371 retour mlibd indrl= 1 pas= 0.2019D+01 f= 0.2014D+00 1372 gcbd. epsg,difg= 0.2220D-15 0.6863D+01 epsf,diff= 0.0000D+00 0.7865D-01 nap= 41 1373 dans gcbd iter= 21 f= 0.2014068D+00 1374 relvar1. valeur de eps1= 0.3491271D-01 1375 rlbd tp= 0.1452E+03 tmax= 0.1000E+11 dh0/dt=-0.7317E-01 1376 t= 0.2150E+01 h=-0.7752E-01 dh/dt=-0.1664E-02 dfh/dt=-0.3606E-01 dt 0.2E+01 1377 retour mlibd indrl= 1 pas= 0.2150D+01 f= 0.1239D+00 1378 gcbd. epsg,difg= 0.2220D-15 0.1826D+01 epsf,diff= 0.0000D+00 0.7752D-01 nap= 42 1379 dans gcbd iter= 22 f= 0.1238910D+00 1380 relvar1. valeur de eps1= 0.2472755D-02 1381 rlbd tp= 0.6021E+03 tmax= 0.1000E+11 dh0/dt=-0.3742E-02 1382ic t= 0.4144E+02 h= 0.4582E-01 dh/dt= 0.1733E-01 dfh/dt= 0.1106E-02 dt 0.4E+02 1383 t= 0.2377E+02 h=-0.7119E-01 dh/dt=-0.5166E-03 dfh/dt= 0.6624E-02 dt-0.2E+02 1384 retour mlibd indrl= 1 pas= 0.2377D+02 f= 0.5270D-01 1385 gcbd. epsg,difg= 0.2220D-15 0.2529D+01 epsf,diff= 0.0000D+00 0.7119D-01 nap= 44 1386 dans gcbd iter= 23 f= 0.5270207D-01 1387 relvar1. valeur de eps1= 0.4743240D-02 1388 rlbd tp= 0.5996E+02 tmax= 0.1000E+11 dh0/dt=-0.1525E-01 1389id t= 0.9339E+01 h= 0.6520E+01 dh/dt= 0.2531E+01 dfh/dt= 0.6982E+00 dt 0.9E+01 1390e t= 0.5592E-01 h=-0.8282E-03 dh/dt=-0.1437E-01 dfh/dt= 0.7025E+00 dt-0.9E+01 1391 t= 0.7449E+00 h=-0.6135E-02 dh/dt= 0.3026E-03 dfh/dt=-0.7702E-02 dt 0.7E+00 1392 retour mlibd indrl= 1 pas= 0.7449D+00 f= 0.4657D-01 1393 gcbd. epsg,difg= 0.2220D-15 0.4306D+01 epsf,diff= 0.0000D+00 0.6135D-02 nap= 47 1394 dans gcbd iter= 24 f= 0.4656719D-01 1395 relvar1. valeur de eps1= 0.1374282D-01 1396 rlbd tp= 0.9843E+02 tmax= 0.1000E+11 dh0/dt=-0.2153E-01 1397e t= 0.5698E+00 h=-0.1080E-01 dh/dt=-0.1656E-01 dfh/dt=-0.1895E-01 dt 0.6E+00 1398 t= 0.1891E+01 h=-0.2703E-01 dh/dt=-0.8803E-02 dfh/dt=-0.1229E-01 dt 0.1E+01 1399 retour mlibd indrl= 1 pas= 0.1891D+01 f= 0.1953D-01 1400 gcbd. epsg,difg= 0.2220D-15 0.1231D+01 epsf,diff= 0.0000D+00 0.2703D-01 nap= 49 1401 dans gcbd iter= 25 f= 0.1953329D-01 1402 relvar1. valeur de eps1= 0.1122833D-02 1403 rlbd tp= 0.6390E+02 tmax= 0.1000E+11 dh0/dt=-0.1231E-01 1404ic t= 0.4393E+01 h= 0.2726E-02 dh/dt= 0.2652E-01 dfh/dt= 0.6205E-03 dt 0.4E+01 1405 t= 0.2476E+01 h=-0.1631E-01 dh/dt=-0.9453E-03 dfh/dt= 0.9927E-02 dt-0.2E+01 1406 retour mlibd indrl= 1 pas= 0.2476D+01 f= 0.3222D-02 1407 gcbd. epsg,difg= 0.2220D-15 0.1445D+01 epsf,diff= 0.0000D+00 0.1631D-01 nap= 51 1408 dans gcbd iter= 26 f= 0.3222476D-02 1409 relvar1. valeur de eps1= 0.1548651D-02 1410 rlbd tp= 0.2501E+03 tmax= 0.1000E+11 dh0/dt=-0.2338E-02 1411ic t= 0.1396E+02 h= 0.3783E-01 dh/dt= 0.4338E-02 dfh/dt= 0.2710E-02 dt 0.1E+02 1412 t= 0.2121E+01 h=-0.2216E-02 dh/dt= 0.1389E-03 dfh/dt= 0.3384E-02 dt-0.1E+02 1413 retour mlibd indrl= 1 pas= 0.2121D+01 f= 0.1006D-02 1414 gcbd. epsg,difg= 0.2220D-15 0.6193D+00 epsf,diff= 0.0000D+00 0.2216D-02 nap= 53 1415 dans gcbd iter= 27 f= 0.1006378D-02 1416 relvar1. valeur de eps1= 0.2843555D-03 1417 redemarrage. icycl= 4 1418 rlbd tp= 0.1091E+04 tmax= 0.1000E+11 dh0/dt=-0.2329E-03 1419ic t= 0.1903E+02 h= 0.6140E-02 dh/dt= 0.1045E-02 dfh/dt= 0.3226E-03 dt 0.2E+02 1420 t= 0.4894E+01 h=-0.5871E-03 dh/dt= 0.2637E-05 dfh/dt= 0.4758E-03 dt-0.1E+02 1421 retour mlibd indrl= 1 pas= 0.4894D+01 f= 0.4193D-03 1422 gcbd. epsg,difg= 0.2220D-15 0.3527D+00 epsf,diff= 0.0000D+00 0.5871D-03 nap= 55 1423 dans gcbd iter= 28 f= 0.4193247D-03 1424 relvar1. valeur de eps1= 0.9222784D-04 1425 rlbd tp= 0.1062E+04 tmax= 0.1000E+11 dh0/dt=-0.8678E-04 1426 t= 0.1353E+02 h=-0.3655E-03 dh/dt= 0.2643E-04 dfh/dt=-0.2701E-04 dt 0.1E+02 1427 retour mlibd indrl= 1 pas= 0.1353D+02 f= 0.5385D-04 1428 gcbd. epsg,difg= 0.2220D-15 0.1105D+00 epsf,diff= 0.0000D+00 0.3655D-03 nap= 56 1429 dans gcbd iter= 29 f= 0.5385147D-04 1430 relvar1. valeur de eps1= 0.9059077D-05 1431 redemarrage. icycl= 5 1432 rlbd tp= 0.4375E+03 tmax= 0.1000E+11 dh0/dt=-0.1214E-03 1433ic t= 0.6022E+01 h= 0.1322E-02 dh/dt= 0.4847E-03 dfh/dt= 0.2195E-03 dt 0.6E+01 1434 t= 0.9155E+00 h=-0.4928E-04 dh/dt= 0.9833E-05 dfh/dt= 0.2685E-03 dt-0.5E+01 1435 retour mlibd indrl= 1 pas= 0.9155D+00 f= 0.4572D-05 1436 gcbd. epsg,difg= 0.2220D-15 0.9174D-01 epsf,diff= 0.0000D+00 0.4928D-04 nap= 58 1437 dans gcbd iter= 30 f= 0.4571613D-05 1438 relvar1. valeur de eps1= 0.6239751D-05 1439 rlbd tp= 0.2108E+05 tmax= 0.1000E+11 dh0/dt=-0.5025E-05 1440icb t= 0.1961E+02 h= 0.4515E-03 dh/dt= 0.5112E-04 dfh/dt= 0.2302E-04 dt 0.2E+02 1441 t= 0.1961E+01 h=-0.4367E-05 dh/dt= 0.5731E-06 dfh/dt= 0.2582E-04 dt-0.2E+02 1442 retour mlibd indrl= 1 pas= 0.1961D+01 f= 0.2051D-06 1443 gcbd. epsg,difg= 0.2220D-15 0.1255D-01 epsf,diff= 0.0000D+00 0.4367D-05 nap= 60 1444 dans gcbd iter= 31 f= 0.2050776D-06 1445 relvar1. valeur de eps1= 0.1168284D-06 1446 redemarrage. icycl= 6 1447 rlbd tp= 0.9888E+04 tmax= 0.1000E+11 dh0/dt=-0.3710E-06 1448icb t= 0.2354E+02 h= 0.7839E-04 dh/dt= 0.6768E-05 dfh/dt= 0.3330E-05 dt 0.2E+02 1449ic t= 0.2354E+01 h= 0.5630E-07 dh/dt= 0.4160E-06 dfh/dt= 0.3698E-05 dt-0.2E+02 1450 t= 0.1103E+01 h=-0.2043E-06 dh/dt= 0.4074E-12 dfh/dt= 0.2084E-06 dt-0.1E+01 1451 retour mlibd indrl= 1 pas= 0.1103D+01 f= 0.7658D-09 1452 gcbd. epsg,difg= 0.2220D-15 0.9260D-03 epsf,diff= 0.0000D+00 0.2043D-06 nap= 63 1453 dans gcbd iter= 32 f= 0.7658047D-09 1454 relvar1. valeur de eps1= 0.6356802D-09 1455 rlbd tp= 0.3886E+06 tmax= 0.1000E+11 dh0/dt=-0.6357E-09 1456id t= 0.6428E+03 h= 0.5664E-04 dh/dt= 0.1809E-06 dfh/dt= 0.8811E-07 dt 0.6E+03 1457 t= 0.2251E+01 h=-0.7625E-09 dh/dt=-0.4174E-10 dfh/dt= 0.8842E-07 dt-0.6E+03 1458 retour mlibd indrl= 1 pas= 0.2251D+01 f= 0.3301D-11 1459 gcbd. epsg,difg= 0.2220D-15 0.6032D-04 epsf,diff= 0.0000D+00 0.7625D-09 nap= 65 1460 dans gcbd iter= 33 f= 0.3300830D-11 1461 relvar1. valeur de eps1= 0.2697842D-11 1462 redemarrage. icycl= 7 1463 rlbd tp= 0.2431E+07 tmax= 0.1000E+11 dh0/dt=-0.6603E-11 1464id t= 0.2309E+03 h= 0.1751E-06 dh/dt= 0.1525E-08 dfh/dt= 0.7581E-09 dt 0.2E+03 1465 t= 0.9958E+00 h=-0.3301E-11 dh/dt=-0.2602E-13 dfh/dt= 0.7614E-09 dt-0.2E+03 1466 retour mlibd indrl= 1 pas= 0.9958D+00 f= 0.5128D-16 1467 gcbd. epsg,difg= 0.2220D-15 0.2425D-06 epsf,diff= 0.0000D+00 0.3301D-11 nap= 67 1468 dans gcbd iter= 34 f= 0.5127616D-16 1469 relvar1. valeur de eps1= 0.0000000D+00 1470 rlbd tp= 0.6222E+09 tmax= 0.1000E+11 dh0/dt=-0.1025E-15 1471id t= 0.6439E+05 h= 0.2131E-06 dh/dt= 0.6629E-11 dfh/dt= 0.3310E-11 dt 0.6E+05 1472icb t= 0.6439E+02 h= 0.2059E-12 dh/dt= 0.6498E-14 dfh/dt= 0.3313E-11 dt-0.6E+05 1473ic t= 0.6439E+01 h= 0.1465E-14 dh/dt= 0.5576E-15 dfh/dt= 0.3528E-14 dt-0.6E+02 1474 t= 0.1000E+01 h=-0.5126E-16 dh/dt=-0.6186E-23 dfh/dt= 0.2788E-15 dt-0.5E+01 1475 retour mlibd indrl= 1 pas= 0.1000D+01 f= 0.1132D-19 1476 gcbd. epsg,difg= 0.2220D-15 0.3168D-08 epsf,diff= 0.0000D+00 0.5126D-16 nap= 71 1477 dans gcbd iter= 35 f= 0.1131843D-19 1478 relvar1. valeur de eps1= 0.0000000D+00 1479 redemarrage. icycl= 8 1480 rlbd tp= 0.1883E+13 tmax= 0.1000E+11 dh0/dt=-0.7441E-20 1481id t= 0.1378E+05 h= 0.5241E-12 dh/dt= 0.7609E-16 dfh/dt= 0.3804E-16 dt 0.1E+05 1482id t= 0.1378E+04 h= 0.5232E-14 dh/dt= 0.7602E-17 dfh/dt= 0.4184E-16 dt-0.1E+05 1483id t= 0.1378E+03 h= 0.5140E-16 dh/dt= 0.7535E-18 dfh/dt= 0.4178E-17 dt-0.1E+04 1484d t= 0.1378E+02 h= 0.4217E-18 dh/dt= 0.6865E-19 dfh/dt= 0.4111E-18 dt-0.1E+03 1485d t= 0.6889E+01 h= 0.7979E-19 dh/dt= 0.3061E-19 dfh/dt= 0.4963E-19 dt-0.7E+01 1486d t= 0.3445E+01 h= 0.7131E-20 dh/dt= 0.1158E-19 dfh/dt= 0.2109E-19 dt-0.3E+01 1487 t= 0.1722E+01 h=-0.4625E-20 dh/dt= 0.2070E-20 dfh/dt= 0.6826E-20 dt-0.2E+01 1488 retour mlibd indrl= 1 pas= 0.1722D+01 f= 0.6693D-20 1489 gcbd. epsg,difg= 0.2220D-15 0.8861D-09 epsf,diff= 0.0000D+00 0.4625D-20 nap= 78 1490 dans gcbd iter= 36 f= 0.6693058D-20 1491 relvar1. valeur de eps1= 0.0000000D+00 1492 rlbd tp= 0.1067E+14 tmax= 0.1000E+11 dh0/dt=-0.5821E-21 1493d t= 0.1589E+02 h= 0.4498E-19 dh/dt= 0.6243E-20 dfh/dt= 0.2830E-20 dt 0.2E+02 1494d t= 0.7947E+01 h= 0.8933E-20 dh/dt= 0.2830E-20 dfh/dt= 0.4537E-20 dt-0.8E+01 1495d t= 0.3973E+01 h= 0.1077E-20 dh/dt= 0.1124E-20 dfh/dt= 0.1977E-20 dt-0.4E+01 1496 t= 0.1987E+01 h=-0.3089E-21 dh/dt= 0.2711E-21 dfh/dt= 0.6976E-21 dt-0.2E+01 1497 retour mlibd indrl= 1 pas= 0.1987D+01 f= 0.6384D-20 1498 gcbd. epsg,difg= 0.2220D-15 0.4257D-09 epsf,diff= 0.0000D+00 0.3089D-21 nap= 82 1499 dans gcbd iter= 37 f= 0.6384148D-20 1500 relvar1. valeur de eps1= 0.0000000D+00 1501 redemarrage. icycl= 9 1502 rlbd tp= 0.1325E+14 tmax= 0.1000E+11 dh0/dt=-0.1343E-21 1503d t= 0.4600E+01 h= 0.4080E-21 dh/dt= 0.3117E-21 dfh/dt= 0.8869E-22 dt 0.5E+01 1504 t= 0.2300E+01 h=-0.5249E-22 dh/dt= 0.8867E-22 dfh/dt= 0.2002E-21 dt-0.2E+01 1505 retour mlibd indrl= 1 pas= 0.2300D+01 f= 0.6332D-20 1506 gcbd. epsg,difg= 0.2220D-15 0.3053D-09 epsf,diff= 0.0000D+00 0.5249D-22 nap= 84 1507 dans gcbd iter= 38 f= 0.6331659D-20 1508 relvar1. valeur de eps1= 0.0000000D+00 1509 rlbd tp= 0.2753E+14 tmax= 0.1000E+11 dh0/dt=-0.6909E-22 1510 t= 0.1519E+01 h=-0.4895E-22 dh/dt= 0.4659E-23 dfh/dt=-0.3222E-22 dt 0.2E+01 1511 retour mlibd indrl= 1 pas= 0.1519D+01 f= 0.6283D-20 1512 gcbd. epsg,difg= 0.2220D-15 0.8042D-10 epsf,diff= 0.0000D+00 0.4895D-22 nap= 85 1513 dans gcbd iter= 39 f= 0.6282712D-20 1514 relvar1. valeur de eps1= 0.0000000D+00 1515 redemarrage. icycl= 10 1516 rlbd tp= 0.8214E+14 tmax= 0.1000E+11 dh0/dt=-0.4794E-23 1517d t= 0.2042E+02 h= 0.6864E-22 dh/dt= 0.1152E-22 dfh/dt= 0.3361E-23 dt 0.2E+02 1518 t= 0.1021E+02 h=-0.7315E-23 dh/dt= 0.3361E-23 dfh/dt= 0.7439E-23 dt-0.1E+02 1519 retour mlibd indrl= 1 pas= 0.1021D+02 f= 0.6275D-20 1520 gcbd. epsg,difg= 0.2220D-15 0.2603D-09 epsf,diff= 0.0000D+00 0.7315D-23 nap= 87 1521 dans gcbd iter= 40 f= 0.6275397D-20 1522 relvar1. valeur de eps1= 0.0000000D+00 1523 rlbd tp= 0.3083E+14 tmax= 0.1000E+11 dh0/dt=-0.5022E-22 1524e t= 0.2914E+00 h=-0.1318E-22 dh/dt=-0.4014E-22 dfh/dt=-0.4523E-22 dt 0.3E+00 1525d t= 0.2914E+03 h= 0.1452E-17 dh/dt= 0.1001E-19 dfh/dt= 0.4987E-20 dt 0.3E+03 1526d t= 0.1458E+03 h= 0.3600E-18 dh/dt= 0.4987E-20 dfh/dt= 0.7501E-20 dt-0.1E+03 1527d t= 0.7306E+02 h= 0.8852E-19 dh/dt= 0.2473E-20 dfh/dt= 0.3730E-20 dt-0.7E+02 1528d t= 0.3667E+02 h= 0.2139E-19 dh/dt= 0.1217E-20 dfh/dt= 0.1845E-20 dt-0.4E+02 1529d t= 0.1848E+02 h= 0.4972E-20 dh/dt= 0.5882E-21 dfh/dt= 0.9024E-21 dt-0.2E+02 1530d t= 0.9387E+01 h= 0.1051E-20 dh/dt= 0.2740E-21 dfh/dt= 0.4312E-21 dt-0.9E+01 1531d t= 0.4839E+01 h= 0.1615E-21 dh/dt= 0.1169E-21 dfh/dt= 0.1955E-21 dt-0.5E+01 1532 t= 0.2565E+01 h=-0.1517E-22 dh/dt= 0.3839E-22 dfh/dt= 0.7767E-22 dt-0.2E+01 1533 retour mlibd indrl= 1 pas= 0.2565D+01 f= 0.6260D-20 1534 gcbd. epsg,difg= 0.2220D-15 0.2373D-09 epsf,diff= 0.0000D+00 0.1517D-22 nap= 96 1535 dans gcbd iter= 41 f= 0.6260226D-20 1536 relvar1. valeur de eps1= 0.0000000D+00 1537 rlbd tp= 0.2303E+14 tmax= 0.1000E+11 dh0/dt=-0.4176E-22 1538 t= 0.7266E+00 h=-0.2288E-22 dh/dt=-0.2121E-22 dfh/dt=-0.3150E-22 dt 0.7E+00 1539 retour mlibd indrl= 1 pas= 0.7266D+00 f= 0.6237D-20 1540 gcbd. epsg,difg= 0.2220D-15 0.1259D-09 epsf,diff= 0.0000D+00 0.2288D-22 nap= 97 1541 dans gcbd iter= 42 f= 0.6237341D-20 1542 relvar1. valeur de eps1= 0.0000000D+00 1543 redemarrage. icycl= 11 1544 rlbd tp= 0.4323E+14 tmax= 0.1000E+11 dh0/dt=-0.1175E-22 1545d t= 0.3894E+01 h=-0.3634E-24 dh/dt= 0.1157E-22 dfh/dt=-0.9333E-25 dt 0.4E+01 1546 t= 0.1947E+01 h=-0.1153E-22 dh/dt=-0.9088E-25 dfh/dt= 0.5735E-23 dt-0.2E+01 1547 retour mlibd indrl= 1 pas= 0.1947D+01 f= 0.6226D-20 1548 gcbd. epsg,difg= 0.2220D-15 0.8448D-10 epsf,diff= 0.0000D+00 0.1153D-22 nap= 99 1549 dans gcbd iter= 43 f= 0.6225811D-20 1550 relvar1. valeur de eps1= 0.0000000D+00 1551 rlbd tp= 0.6434E+14 tmax= 0.1000E+11 dh0/dt=-0.5291E-23 1552 t= 0.4359E+01 h=-0.1174E-22 dh/dt=-0.9310E-25 dfh/dt=-0.2693E-23 dt 0.4E+01 1553 retour mlibd indrl= 1 pas= 0.4359D+01 f= 0.6214D-20 1554 gcbd max appels simul 1555 gcbd : retour avec indgc= 4 1556 f,norme grad,nap,iter,indgc= 0.6214E-20 0.8448E-10 100 43 4 1557optim: Optim stops: maximum number of calls to f is reached. 1558// 1559// 6. Test "sd", "si", "td", "ti" options 1560[f,x,g,td]=optim(rosenbrock,x0,"sd"); 1561assert_checkalmostequal ( x , xopt , Leps ); 1562assert_checkalmostequal ( f , fopt , [] , Leps ); 1563assert_checkalmostequal ( g , gopt , [] , Leps ); 1564[f,x,g,ti]=optim(rosenbrock,x0,"si"); 1565assert_checkalmostequal ( x , xopt , Leps ); 1566assert_checkalmostequal ( f , fopt , [] , Leps ); 1567assert_checkalmostequal ( g , gopt , [] , Leps ); 1568[f,x,g,ti,td]=optim(rosenbrock,x0,"si","sd"); 1569assert_checkalmostequal ( x , xopt , Leps ); 1570assert_checkalmostequal ( f , fopt , [] , Leps ); 1571assert_checkalmostequal ( g , gopt , [] , Leps ); 1572[f,x,g,ti,td]=optim(rosenbrock,x0,"ti",[2 2 2],"td",[1.1 1.1 1.1],"si","sd"); 1573assert_checkalmostequal ( x , xopt , Leps ); 1574assert_checkalmostequal ( f , fopt , [] , Leps ); 1575assert_checkalmostequal ( g , gopt , [] , Leps ); 1576