c7f8a201d664279d391e9369c152a32ca83f7039
[scilab.git] / scilab / modules / optimization / demos / neldermead / fminsearch_rosenbrock.sce
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab\r
2 // Copyright (C) 2009 - DIGITEO - Michael Baudin\r
3 // Copyright (C) 2010 - DIGITEO - Allan CORNET\r
4 // Copyright (C) 2012 - Scilab Enterprises - Adeline CARNIS\r
5 //\r
6 // This file must be used under the terms of the CeCILL.\r
7 // This source file is licensed as described in the file COPYING, which\r
8 // you should have received as part of this distribution.  The terms\r
9 // are also available at\r
10 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt\r
11 \r
12 function demo_fmin_rosenbrock()\r
13     mprintf(_("Running optimization ...\n"));\r
14 \r
15     function y = banana (x)\r
16         y = 100*(x(2)-x(1)^2)^2 + (1-x(1))^2;\r
17     endfunction\r
18 \r
19     x0 = [-1.2 1];\r
20     [x , fval , exitflag , output] = fminsearch ( banana , x0 );\r
21 \r
22     //\r
23     // Display results\r
24     //\r
25     mprintf("x = %s\n",strcat(string(x)," "));\r
26     mprintf("fval = %e\n",fval);\r
27     mprintf("exitflag = %d\n",exitflag);\r
28     mprintf("output.message:\n");\r
29 \r
30     for i =1:3\r
31         mprintf(output.message(i));\r
32         mprintf("\n");\r
33     end\r
34 \r
35     mprintf("output.algorithm:%s\n",output.algorithm);\r
36     mprintf("output.funcCount:%d\n",output.funcCount);\r
37     mprintf("output.iterations:%d\n",output.iterations);\r
38 \r
39     //\r
40     // Load this script into the editor\r
41     //\r
42     m = messagebox(_("View Code?"), "Question", "question", _(["Yes" "No"]), "modal")\r
43     if(m == 1)\r
44         filename = 'fminsearch_rosenbrock.sce';\r
45         dname = get_absolute_file_path(filename);\r
46         editor ( dname + filename, "readonly" );\r
47     end\r
48 endfunction\r
49 \r
50 demo_fmin_rosenbrock();\r
51 clear demo_fmin_rosenbrock;\r
52 \r
53 \r
54 \r
55 \r
56 \r
57 \r
58 \r\r