chiark / gitweb /
octave4.4
[nlopt.git] / stogo / rosen.h
1 #include "linalg.h" 
2 #include "tools.h"
3 #include "stogo_config.h"
4
5 void Domain_Rosenbrock(RTBox box) {
6   box.lb=-10.0 ; box.ub=10.0;
7 }
8
9 double Objective_Rosenbrock(RCRVector x) {
10    double a=x(1)-x(0)*x(0);
11    double b=1-x(0);
12    return 100*a*a + b*b;
13 }
14
15 void Gradient_Rosenbrock(RCRVector x, RCRVector grad) {
16   grad(0)=200*(x(1)-x(0)*x(0))*(-2*x(0))-2*(1-x(0));
17   grad(1)=200*(x(1)-x(0)*x(0));   
18 }