Change language to:
English - 日本語 - Português - Русский

Please note that the recommended version of Scilab is 2024.1.0. This page might be outdated.
See the recommended documentation of this function

Aide de Scilab >> Optimisation et Simulation > Optimization simplex > optimsimplex_reflect

# optimsimplex_reflect

Returns the reflected simplex object.

### Calling Sequence

```r = optimsimplex_reflect(opt, fun)
[r, data] = optimsimplex_reflect(opt, fun, data)```

### Argument

opt

The current simplex object of TSIMPLEX type (tlist).

fun

The function to compute at vertices.

The `fun` function is expected to have the following input and output arguments:

`y = myfunction (x)`
data

User-defined data passed to the function (optional).

If `data` is provided, it is passed to the callback function both as an input and output argument. In that case, the function must have the following header :

`[y, data] = myfunction (x, data)`

The data input parameter may be used if the function uses some additional parameters. It is returned as an output parameter because the function may modify the data while computing the function value. This feature may be used, for example, to count the number of times that the function has been called.

r

The reflected simplex object.

### Description

The `optimsimplex_reflect` function returns a new simplex by reflexion of current simplex, by reflection with respect to the first vertex in the simplex. This move is used in the centered simplex gradient.

### Example

```function y=rosenbrock(x)
y = 100*(x(2)-x(1)^2)^2 + (1-x(1))^2;
endfunction

simplex = [
3. 0. 0.
4. 1. 0.
5. 0. 2.
];

s1 = optimsimplex_new ();
s1 = optimsimplex_setall ( s1 , simplex );
r = optimsimplex_reflect ( s1 , rosenbrock );
computed = optimsimplex_getall ( r )

s1 = optimsimplex_destroy(s1);
r = optimsimplex_destroy(r);```