Deleted vectorized computation feature. Deleted neldermead_contour. Fixed the demos.
[scilab.git] / scilab / modules / optimization / macros / neldermead / neldermead_costf.sci
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2 // Copyright (C) 2009 - INRIA - Michael Baudin
3 //
4 // This file must be used under the terms of the CeCILL.
5 // This source file is licensed as described in the file COPYING, which
6 // you should have received as part of this distribution.  The terms
7 // are also available at
8 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
9
10 //
11 // neldermead_costf --
12 //   Call the cost function and return the value.
13 // Note
14 //   This function is given to the simplex class as 
15 //   a callback.
16 //   Input/Output arguments are swapped w.r.t. 
17 //   neldermead_function, so that it matches
18 //   the requirements of simplex methods.
19 //
20 function [ f , this ] = neldermead_costf ( x , this )
21   nbnlc = optimbase_cget ( this.optbase , "-nbineqconst" )
22   if ( nbnlc == 0 ) then
23     [this.optbase , f] = optimbase_function ( this.optbase , x );
24   else
25     // Set the index, so that, if an additionnal cost function argument is provided,
26     // it can be appended at the end.
27     index = 1;
28     [this.optbase , f] = optimbase_function ( this.optbase , x , index );
29   end
30 endfunction
31