* Bug #9627 fixed - Checking arguments in optimsimplex_*() functions
[scilab.git] / scilab / modules / optimization / macros / optimsimplex / optimsimplex_setfv.sci
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2 // Copyright (C) 2008-2009 - INRIA - Michael Baudin
3 // Copyright (C) 2009-2010 - DIGITEO - Michael Baudin
4 //
5 // This file must be used under the terms of the CeCILL.
6 // This source file is licensed as described in the file COPYING, which
7 // you should have received as part of this distribution.  The terms
8 // are also available at
9 // http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
10
11 //
12 // optimsimplex_setfv --
13 //   Set the function value at given index and
14 //   returns an updated simplex.
15 // Arguments
16 //   ive : vertex index
17 //   fv : the function value
18 //
19 function this = optimsimplex_setfv ( this , ive , fv )
20     if typeof(this) <> "TSIMPLEX" then
21         error(msprintf(gettext("%s: Wrong type for input argument #%d: TSIMPLEX expected.\n"), "optimsimplex_setfv", 1));
22     end
23     if type(ive) <> 1 then
24         error(msprintf(gettext("%s: Wrong type for input argument #%d: A real scalar expected.\n"), "optimsimplex_setfv", 2));
25     end
26     if type(fv) <> 1 then
27         error(msprintf(gettext("%s: Wrong type for input argument #%d: A real vector expected.\n"), "optimsimplex_setfv", 3));
28     end
29     if or(size(ive) <> [1 1]) then
30         error(msprintf(gettext("%s: Wrong size for input argument #%d: A real scalar expected.\n"), "optimsimplex_setfv", 2));
31     end
32     if ive-floor(ive) <> 0 then
33         error(msprintf(gettext("%s: Wrong value for input argument #%d: An integer expected.\n"), "optimsimplex_setfv", 2));
34     end
35     this.fv ( ive , 1 ) = fv;
36 endfunction