]> gitweb.michael.orlitzky.com - octave.git/blobdiff - optimization/test_functions/himmelblau_gradient.m
Add the Himmelblau function, as defined in Applied Nonlinear Programming.
[octave.git] / optimization / test_functions / himmelblau_gradient.m
diff --git a/optimization/test_functions/himmelblau_gradient.m b/optimization/test_functions/himmelblau_gradient.m
new file mode 100644 (file)
index 0000000..b50e7b6
--- /dev/null
@@ -0,0 +1,9 @@
+function g = himmelblau_gradient(x1,x2)
+  ##
+  ## The gradient of the Himmelblau function. See himmelblau.m for
+  ## more information.
+  ##
+  f_x1 = 4*(x1^2 + x2 - 11)*x1 + 2*x2^2 + 2*x1 - 14;
+  f_x2 = 4*(x2^2 + x1 - 7)*x2 + 2*x1^2 + 2*x2 - 22;
+  g = [f_x1; f_x2];
+end