--- /dev/null
+function H = powell_hessian(x1, x2, x3, x4)
+ ##
+ ## The Hessian of the Powell function. See powell.m for more
+ ## information.
+ ##
+ H = zeros(4,4);
+
+ H(1,1) = 120*(x1 - x4)^2 + 2;
+ H(1,2) = 20;
+ H(1,3) = 0;
+ H(1,4) = -120*(x1 - x4)^2;
+
+ H(2,1) = H(1,2);
+ H(2,2) = 12*(x2 - 2*x3)^2 + 200;
+ H(2,3) = -24*(x2 - 2*x3)^2;
+ H(2,4) = 0;
+
+ H(3,1) = H(1,3);
+ H(3,2) = H(1,3);
+ H(3,3) = 48*(x2 - 2*x3)^2 + 10;
+ H(3,4) = -10;
+
+ H(4,1) = H(1,4);
+ H(4,2) = H(2,4);
+ H(4,3) = H(3,4);
+ H(4,4) = 120*(x1 - x4)^2 + 10;
+end