bug 6947 84/184/2
Allan CORNET [Wed, 21 Apr 2010 08:19:22 +0000 (10:19 +0200)]
Change-Id: I60869e1ab0c12ee69d82b4f12643aeb624db95bc

scilab/CHANGES_5.3.X
scilab/modules/optimization/demos/neldermead/nmplot_han1.sce
scilab/modules/optimization/demos/neldermead/nmplot_han2.sce
scilab/modules/optimization/demos/neldermead/nmplot_mckinnon.sce
scilab/modules/optimization/demos/neldermead/nmplot_mckinnon2.sce
scilab/modules/optimization/demos/neldermead/nmplot_quadratic.fixed.sce
scilab/modules/optimization/demos/neldermead/nmplot_quadratic.fixed2.sce
scilab/modules/optimization/demos/neldermead/nmplot_quadratic.variable.sce
scilab/modules/optimization/demos/neldermead/nmplot_rosenbrock.fixed.sce
scilab/modules/optimization/demos/neldermead/nmplot_rosenbrock.sce
scilab/modules/optimization/tests/nonreg_tests/bug_6947.tst [new file with mode: 0644]

index b83bcdc..51e2ea6 100644 (file)
@@ -198,3 +198,6 @@ Bug fixes:
                    exactly 2 characters.
 
 * bug 6891 fixed - 'whos' did not display global variables.
+
+* bug 6947 fixed - Some demos in "Optimization and Simulation" failed, 
+                   without write rights in SCI subdirectory.
index d71d866..5616023 100644 (file)
@@ -49,10 +49,14 @@ nm = nmplot_configure(nm,"-coords0",coords0);
 // Setup output files
 //
 mprintf("Setup output files...\n");
-nm = nmplot_configure(nm,"-simplexfn",TMPDIR + "\history.simplex.txt");
-nm = nmplot_configure(nm,"-fbarfn",TMPDIR + "\history.fbar.txt");
-nm = nmplot_configure(nm,"-foptfn",TMPDIR + "\history.fopt.txt");
-nm = nmplot_configure(nm,"-sigmafn",TMPDIR + "\history.sigma.txt");
+simplexfn = TMPDIR + filesep() + "history.simplex.txt";
+fbarfn = TMPDIR + filesep() + "history.fbar.txt";
+foptfn = TMPDIR + filesep() + "history.fopt.txt";
+sigmafn = TMPDIR + filesep() + "history.sigma.txt";
+nm = nmplot_configure(nm,"-simplexfn",simplexfn);
+nm = nmplot_configure(nm,"-fbarfn",fbarfn);
+nm = nmplot_configure(nm,"-foptfn",foptfn);
+nm = nmplot_configure(nm,"-sigmafn",sigmafn);
 //
 // Perform optimization
 //
@@ -73,10 +77,10 @@ drawnow();
 //
 // Clean-up
 //
-deletefile(TMPDIR + "\history.simplex.txt");
-deletefile(TMPDIR + "\history.fbar.txt");
-deletefile(TMPDIR + "\history.fopt.txt");
-deletefile(TMPDIR + "\history.sigma.txt");
+deletefile(simplexfn);
+deletefile(fbarfn);
+deletefile(foptfn);
+deletefile(sigmafn);
 nm = nmplot_destroy(nm);
 mprintf("End of demo.\n");
 
index de77420..11afec8 100644 (file)
@@ -52,7 +52,8 @@ nm = nmplot_configure(nm,"-coords0",coords0);
 //
 // Setup output files
 //
-nm = nmplot_configure(nm,"-simplexfn",TMPDIR + "\history.simplex.txt");
+simplexfn = TMPDIR + filesep() + "history.simplex.txt";
+nm = nmplot_configure(nm,"-simplexfn",simplexfn);
 //
 // Perform optimization
 //
@@ -70,7 +71,7 @@ drawlater();
 contour ( xdata , ydata , zdata , [0.1 0.2 0.5 1.0 1.5 1.9] )
 nmplot_simplexhistory ( nm );
 drawnow();
-deletefile(TMPDIR + "\history.simplex.txt");
+deletefile(simplexfn);
 nm = nmplot_destroy(nm);
 mprintf("End of demo.\n");
 
index 1cce1dc..c8ede78 100644 (file)
@@ -116,10 +116,14 @@ nm = nmplot_configure(nm,"-coords0",coords0);
 //
 // Setup output files
 //
-nm = nmplot_configure(nm,"-simplexfn",TMPDIR + "\history.simplex.txt");
-nm = nmplot_configure(nm,"-fbarfn",TMPDIR + "\history.fbar.txt");
-nm = nmplot_configure(nm,"-foptfn",TMPDIR + "\history.fopt.txt");
-nm = nmplot_configure(nm,"-sigmafn",TMPDIR + "\history.sigma.txt");
+simplexfn = TMPDIR + filesep() + "history.simplex.txt";
+fbarfn = TMPDIR + filesep() + "history.fbar.txt";
+foptfn = TMPDIR + filesep() + "history.fopt.txt";
+sigmafn = TMPDIR + filesep() + "history.sigma.txt";
+nm = nmplot_configure(nm,"-simplexfn",simplexfn);
+nm = nmplot_configure(nm,"-fbarfn",fbarfn);
+nm = nmplot_configure(nm,"-foptfn",foptfn);
+nm = nmplot_configure(nm,"-sigmafn",sigmafn);
 //
 // Perform optimization
 //
@@ -138,18 +142,15 @@ contour ( xdata , ydata , zdata , [-0.2 0.0 1.0 2.0 5.0 10.0 20.0] )
 nmplot_simplexhistory ( nm );
 drawnow();
 f = scf(100002);
-nmplot_historyplot ( nm , TMPDIR + "\history.fbar.txt" , ...
-  mytitle = "Function Value Average" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , fbarfn , mytitle = "Function Value Average" , myxlabel = "Iterations" );
 f = scf(100003);
-nmplot_historyplot ( nm , TMPDIR + "\history.fopt.txt" , ...
-  mytitle = "Minimum Function Value" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , foptfn , mytitle = "Minimum Function Value" , myxlabel = "Iterations" );
 f = scf(100004);
-nmplot_historyplot ( nm , TMPDIR + "\history.sigma.txt" , ...
-  mytitle = "Maximum Oriented length" , myxlabel = "Iterations" );
-deletefile(TMPDIR + "\history.simplex.txt");
-deletefile(TMPDIR + "\history.fbar.txt");
-deletefile(TMPDIR + "\history.fopt.txt");
-deletefile(TMPDIR + "\history.sigma.txt");
+nmplot_historyplot ( nm , sigmafn , mytitle = "Maximum Oriented length" , myxlabel = "Iterations" );
+deletefile(simplexfn);
+deletefile(fbarfn);
+deletefile(foptfn);
+deletefile(sigmafn);
 nm = nmplot_destroy(nm);
 mprintf("End of demo.\n");
 
index 3c0009e..59b9f25 100644 (file)
@@ -118,10 +118,14 @@ nm = nmplot_configure(nm,"-restartdetection","kelley");
 //
 // Setup output files
 //
-nm = nmplot_configure(nm,"-simplexfn","mckinnon.history.restart.simplex.txt");
-nm = nmplot_configure(nm,"-fbarfn","mckinnon.history.restart.fbar.txt");
-nm = nmplot_configure(nm,"-foptfn","mckinnon.history.restart.fopt.txt");
-nm = nmplot_configure(nm,"-sigmafn","mckinnon.history.restart.sigma.txt");
+simplexfn = TMPDIR + filesep() + "history.simplex.txt";
+fbarfn = TMPDIR + filesep() + "history.fbar.txt";
+foptfn = TMPDIR + filesep() + "history.fopt.txt";
+sigmafn = TMPDIR + filesep() + "history.sigma.txt";
+nm = nmplot_configure(nm,"-simplexfn",simplexfn);
+nm = nmplot_configure(nm,"-fbarfn",fbarfn);
+nm = nmplot_configure(nm,"-foptfn",foptfn);
+nm = nmplot_configure(nm,"-sigmafn",sigmafn);
 //
 // Perform optimization
 //
@@ -140,18 +144,15 @@ contour ( xdata , ydata , zdata , [-0.2 0.0 1.0 2.0 5.0 10.0 20.0] )
 nmplot_simplexhistory ( nm );
 drawnow();
 f = scf();
-nmplot_historyplot ( nm , "mckinnon.history.restart.fbar.txt" , ...
-  mytitle = "Function Value Average" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , fbarfn, mytitle = "Function Value Average" , myxlabel = "Iterations" );
 f = scf();
-nmplot_historyplot ( nm , "mckinnon.history.restart.fopt.txt" , ...
-  mytitle = "Minimum Function Value" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , foptfn, mytitle = "Minimum Function Value" , myxlabel = "Iterations" );
 f = scf();
-nmplot_historyplot ( nm , "mckinnon.history.restart.sigma.txt" , ...
-  mytitle = "Maximum Oriented length" , myxlabel = "Iterations" );
-deletefile("mckinnon.history.restart.simplex.txt");
-deletefile("mckinnon.history.restart.fbar.txt");
-deletefile("mckinnon.history.restart.fopt.txt");
-deletefile("mckinnon.history.restart.sigma.txt");
+nmplot_historyplot ( nm , sigmafn, mytitle = "Maximum Oriented length" , myxlabel = "Iterations" );
+deletefile(simplexfn);
+deletefile(fbarfn);
+deletefile(foptfn);
+deletefile(sigmafn);
 nm = nmplot_destroy(nm);
 mprintf("End of demo.\n");
 
index 981b5f2..61b94dc 100644 (file)
@@ -28,10 +28,14 @@ nm = nmplot_configure(nm,"-method","fixed");
 //
 // Setup output files
 //
-nm = nmplot_configure(nm,"-simplexfn",TMPDIR + "\history.simplex.txt");
-nm = nmplot_configure(nm,"-fbarfn",TMPDIR + "\history.fbar.txt");
-nm = nmplot_configure(nm,"-foptfn",TMPDIR + "\history.fopt.txt");
-nm = nmplot_configure(nm,"-sigmafn",TMPDIR + "\history.sigma.txt");
+simplexfn = TMPDIR + filesep() + "history.simplex.txt";
+fbarfn = TMPDIR + filesep() + "history.fbar.txt";
+foptfn = TMPDIR + filesep() + "history.fopt.txt";
+sigmafn = TMPDIR + filesep() + "history.sigma.txt";
+nm = nmplot_configure(nm,"-simplexfn",simplexfn);
+nm = nmplot_configure(nm,"-fbarfn",fbarfn);
+nm = nmplot_configure(nm,"-foptfn",foptfn);
+nm = nmplot_configure(nm,"-sigmafn",sigmafn);
 //
 // Perform optimization
 //
@@ -41,12 +45,10 @@ nmplot_display(nm);
 // Plot various histories
 mprintf("Plotting history of fbar...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fbar.txt" , ...
-  mytitle = "Function Value Average" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , fbarfn, mytitle = "Function Value Average" , myxlabel = "Iterations" );
 mprintf("Plotting history of fopt...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fopt.txt" , ...
-  mytitle = "Logarithm Minimum Function Value" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , foptfn, mytitle = "Logarithm Minimum Function Value" , myxlabel = "Iterations" );
 f.children.log_flags = "nln";
 newticks = tlist(["ticks","locations","labels"]);
 newticks.labels = ["1.e-20" "1.e-10" "1.e-1"];
@@ -56,8 +58,7 @@ f.children.children(1).children.mark_mode = "on";
 f.children.children(1).children.mark_style = 9;
 mprintf("Plotting history of sigma...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.sigma.txt" , ...
-  mytitle = "Logarithm Maximum Oriented length" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , sigmafn, mytitle = "Logarithm Maximum Oriented length" , myxlabel = "Iterations" );
 f.children.log_flags = "nln";
 f.children.y_ticks = newticks;
 f.children.children(1).children.mark_mode = "on";
@@ -72,10 +73,10 @@ contour ( xdata , ydata , zdata , [0.1 1.0 2.0 5.0 10.0 15.0 20.0] )
 nmplot_simplexhistory ( nm );
 drawnow();
 // Clean-up
-deletefile(TMPDIR + "\history.simplex.txt");
-deletefile(TMPDIR + "\history.fbar.txt");
-deletefile(TMPDIR + "\history.fopt.txt");
-deletefile(TMPDIR + "\history.sigma.txt");
+deletefile(simplexfn);
+deletefile(fbarfn);
+deletefile(foptfn);
+deletefile(sigmafn);
 nm = nmplot_destroy(nm);
 mprintf("End of demo.\n");
 
index d490158..fa0be24 100644 (file)
@@ -29,10 +29,14 @@ nm = nmplot_configure(nm,"-method","fixed");
 //
 // Setup output files
 //
-nm = nmplot_configure(nm,"-simplexfn",TMPDIR + "\history.simplex.txt");
-nm = nmplot_configure(nm,"-fbarfn",TMPDIR + "\history.fbar.txt");
-nm = nmplot_configure(nm,"-foptfn",TMPDIR + "\history.fopt.txt");
-nm = nmplot_configure(nm,"-sigmafn",TMPDIR + "\history.sigma.txt");
+simplexfn = TMPDIR + filesep() + "history.simplex.txt";
+fbarfn = TMPDIR + filesep() + "history.fbar.txt";
+foptfn = TMPDIR + filesep() + "history.fopt.txt";
+sigmafn = TMPDIR + filesep() + "history.sigma.txt";
+nm = nmplot_configure(nm,"-simplexfn",simplexfn);
+nm = nmplot_configure(nm,"-fbarfn",fbarfn);
+nm = nmplot_configure(nm,"-foptfn",foptfn);
+nm = nmplot_configure(nm,"-sigmafn",sigmafn);
 //
 // Perform optimization
 //
@@ -42,12 +46,10 @@ nmplot_display(nm);
 // Plot various histories
 mprintf("Plotting history of fbar...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fbar.txt" , ...
-  mytitle = "Function Value Average" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm ,fbarfn, mytitle = "Function Value Average" , myxlabel = "Iterations" );
 mprintf("Plotting history of fopt...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fopt.txt" , ...
-  mytitle = "Logarithm Minimum Function Value" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , foptfn, mytitle = "Logarithm Minimum Function Value" , myxlabel = "Iterations" );
 f.children.log_flags = "nln";
 newticks = tlist(["ticks","locations","labels"]);
 newticks.labels = ["1.e-20" "1.e-10" "1.e-1"];
@@ -57,8 +59,7 @@ f.children.children(1).children.mark_mode = "on";
 f.children.children(1).children.mark_style = 9;
 mprintf("Plotting history of sigma...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.sigma.txt" , ...
-  mytitle = "Logarithm Maximum Oriented length" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , sigmafn, mytitle = "Logarithm Maximum Oriented length" , myxlabel = "Iterations" );
 f.children.log_flags = "nln";
 f.children.y_ticks = newticks;
 f.children.children(1).children.mark_mode = "on";
@@ -73,10 +74,10 @@ contour ( xdata , ydata , zdata , [10.0 50 100 1000 2000 5000 10000 20000] )
 nmplot_simplexhistory ( nm );
 drawnow();
 // Clean-up
-deletefile(TMPDIR + "\history.simplex.txt");
-deletefile(TMPDIR + "\history.fbar.txt");
-deletefile(TMPDIR + "\history.fopt.txt");
-deletefile(TMPDIR + "\history.sigma.txt");
+deletefile(simplexfn);
+deletefile(fbarfn);
+deletefile(foptfn);
+deletefile(sigmafn);
 nm = nmplot_destroy(nm);
 mprintf("End of demo.\n");
 
index 423f6e4..39cd9b7 100644 (file)
@@ -27,10 +27,14 @@ nm = nmplot_configure(nm,"-simplex0method","spendley");
 //
 // Setup output files
 //
-nm = nmplot_configure(nm,"-simplexfn",TMPDIR + "\history.simplex.txt");
-nm = nmplot_configure(nm,"-fbarfn",TMPDIR + "\history.fbar.txt");
-nm = nmplot_configure(nm,"-foptfn",TMPDIR + "\history.fopt.txt");
-nm = nmplot_configure(nm,"-sigmafn",TMPDIR + "\history.sigma.txt");
+simplexfn = TMPDIR + filesep() + "history.simplex.txt";
+fbarfn = TMPDIR + filesep() + "history.fbar.txt";
+foptfn = TMPDIR + filesep() + "history.fopt.txt";
+sigmafn = TMPDIR + filesep() + "history.sigma.txt";
+nm = nmplot_configure(nm,"-simplexfn",simplexfn);
+nm = nmplot_configure(nm,"-fbarfn",fbarfn);
+nm = nmplot_configure(nm,"-foptfn",foptfn);
+nm = nmplot_configure(nm,"-sigmafn",sigmafn);
 //
 // Perform optimization
 //
@@ -40,12 +44,10 @@ nmplot_display(nm);
 // Plot various histories
 mprintf("Plotting history of fbar...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fbar.txt" , ...
-  mytitle = "Function Value Average" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , fbarfn, mytitle = "Function Value Average" , myxlabel = "Iterations" );
 mprintf("Plotting history of fopt...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fopt.txt" , ...
-  mytitle = "Logarithm Minimum Function Value" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , foptfn, mytitle = "Logarithm Minimum Function Value" , myxlabel = "Iterations" );
 f.children.log_flags = "nln";
 newticks = tlist(["ticks","locations","labels"]);
 newticks.labels = ["1.e-20" "1.e-10" "1.e-1"];
@@ -55,8 +57,7 @@ f.children.children(1).children.mark_mode = "on";
 f.children.children(1).children.mark_style = 9;
 mprintf("Plotting history of sigma...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.sigma.txt" , ...
-  mytitle = "Logarithm Maximum Oriented length" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , sigmafn, mytitle = "Logarithm Maximum Oriented length" , myxlabel = "Iterations" );
 f.children.log_flags = "nln";
 f.children.y_ticks = newticks;
 f.children.children(1).children.mark_mode = "on";
@@ -71,10 +72,10 @@ contour ( xdata , ydata , zdata , [0.1 1.0 2.0 5.0 10.0 15.0 20.0] )
 nmplot_simplexhistory ( nm );
 drawnow();
 // Clean-up
-deletefile(TMPDIR + "\history.simplex.txt");
-deletefile(TMPDIR + "\history.fbar.txt");
-deletefile(TMPDIR + "\history.fopt.txt");
-deletefile(TMPDIR + "\history.sigma.txt");
+deletefile(simplexfn);
+deletefile(fbarfn);
+deletefile(foptfn);
+deletefile(sigmafn);
 nm = nmplot_destroy(nm);
 mprintf("End of demo.\n");
 
index 09971d1..5a4a6b6 100644 (file)
@@ -27,10 +27,14 @@ nm = nmplot_configure(nm,"-method","fixed");
 //
 // Setup output files
 //
-nm = nmplot_configure(nm,"-simplexfn",TMPDIR + "\history.simplex.txt");
-nm = nmplot_configure(nm,"-fbarfn",TMPDIR + "\history.fbar.txt");
-nm = nmplot_configure(nm,"-foptfn",TMPDIR + "\history.fopt.txt");
-nm = nmplot_configure(nm,"-sigmafn",TMPDIR + "\history.sigma.txt");
+simplexfn = TMPDIR + filesep() + "history.simplex.txt";
+fbarfn = TMPDIR + filesep() + "history.fbar.txt";
+foptfn = TMPDIR + filesep() + "history.fopt.txt";
+sigmafn = TMPDIR + filesep() + "history.sigma.txt";
+nm = nmplot_configure(nm,"-simplexfn",simplexfn);
+nm = nmplot_configure(nm,"-fbarfn",fbarfn);
+nm = nmplot_configure(nm,"-foptfn",foptfn);
+nm = nmplot_configure(nm,"-sigmafn",sigmafn);
 //
 // Perform optimization
 //
@@ -47,20 +51,17 @@ nmplot_simplexhistory ( nm );
 drawnow();
 mprintf("Plotting history of fbar...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fbar.txt" , ...
-  mytitle = "Function Value Average" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , fbarfn, mytitle = "Function Value Average" , myxlabel = "Iterations" );
 mprintf("Plotting history of fopt...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fopt.txt" , ...
-  mytitle = "Minimum Function Value" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , foptfn, mytitle = "Minimum Function Value" , myxlabel = "Iterations" );
 mprintf("Plotting history of sigma...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.sigma.txt" , ...
-  mytitle = "Maximum Oriented length" , myxlabel = "Iterations" );
-deletefile(TMPDIR + "\history.simplex.txt");
-deletefile(TMPDIR + "\history.fbar.txt");
-deletefile(TMPDIR + "\history.fopt.txt");
-deletefile(TMPDIR + "\history.sigma.txt");
+nmplot_historyplot ( nm , sigmafn, mytitle = "Maximum Oriented length" , myxlabel = "Iterations" );
+deletefile(simplexfn);
+deletefile(fbarfn);
+deletefile(foptfn);
+deletefile(sigmafn);
 nm = nmplot_destroy(nm);
 mprintf("End of demo.\n");
 
index 07a6176..693f773 100644 (file)
@@ -26,10 +26,14 @@ nm = nmplot_configure(nm,"-tolxrelative",10*%eps);
 //
 // Setup output files
 //
-nm = nmplot_configure(nm,"-simplexfn",TMPDIR + "\history.simplex.txt");
-nm = nmplot_configure(nm,"-fbarfn",TMPDIR + "\history.fbar.txt");
-nm = nmplot_configure(nm,"-foptfn",TMPDIR + "\history.fopt.txt");
-nm = nmplot_configure(nm,"-sigmafn",TMPDIR + "\history.sigma.txt");
+simplexfn = TMPDIR + filesep() + "history.simplex.txt";
+fbarfn = TMPDIR + filesep() + "history.fbar.txt";
+foptfn = TMPDIR + filesep() + "history.fopt.txt";
+sigmafn = TMPDIR + filesep() + "history.sigma.txt";
+nm = nmplot_configure(nm,"-simplexfn",simplexfn);
+nm = nmplot_configure(nm,"-fbarfn",fbarfn);
+nm = nmplot_configure(nm,"-foptfn",foptfn);
+nm = nmplot_configure(nm,"-sigmafn",sigmafn);
 //
 // Perform optimization
 //
@@ -46,21 +50,18 @@ nmplot_simplexhistory ( nm );
 drawnow();
 mprintf("Plotting history of fbar...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fbar.txt" , ...
-  mytitle = "Function Value Average" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , fbarfn, mytitle = "Function Value Average" , myxlabel = "Iterations" );
 mprintf("Plotting history of fopt...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.fopt.txt" , ...
-  mytitle = "Minimum Function Value" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , foptfn, mytitle = "Minimum Function Value" , myxlabel = "Iterations" );
 mprintf("Plotting history of sigma...\n");
 f = scf();
-nmplot_historyplot ( nm , TMPDIR + "\history.sigma.txt" , ...
-  mytitle = "Maximum Oriented length" , myxlabel = "Iterations" );
+nmplot_historyplot ( nm , sigmafn, mytitle = "Maximum Oriented length" , myxlabel = "Iterations" );
 mprintf("Cleaning up...\n");
-deletefile(TMPDIR + "\history.simplex.txt");
-deletefile(TMPDIR + "\history.fbar.txt");
-deletefile(TMPDIR + "\history.fopt.txt");
-deletefile(TMPDIR + "\history.sigma.txt");
+deletefile(simplexfn);
+deletefile(fbarfn);
+deletefile(foptfn);
+deletefile(sigmafn);
 nm = nmplot_destroy(nm);
 mprintf("End of demo.\n");
 
diff --git a/scilab/modules/optimization/tests/nonreg_tests/bug_6947.tst b/scilab/modules/optimization/tests/nonreg_tests/bug_6947.tst
new file mode 100644 (file)
index 0000000..4dca384
--- /dev/null
@@ -0,0 +1,24 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2010 - DIGITEO - Allan CORNET
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+// <-- INTERACTIVE TEST -->
+//
+// <-- Non-regression test for bug 6947 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/show_bug.cgi?id=6947
+//
+// <-- Short Description -->
+// Some demos in "Optimization and Simulation" failed, 
+// without write rights in SCI subdirectory.
+//
+// =============================================================================
+// Install Scilab in c:\Program files  (on windows)
+// (a directory where you have not right in standard use)
+// 
+// Launch Scilab 
+// start demos "Optimization and Simulation"
+// =============================================================================