function alpha = step_size_positive_definite(Q, b, x) % Let, % % f(x) = (1/2) - + a (1) % % where Q is symmetric and positive definite. % % If we seek to minimize f; that is, to solve Qx = b, then we can do % so using the method of steepest-descent. This function computes % the optimal step size alpha for the steepest descent method, in % the negative-gradient direction, at x. % % INPUT: % % - ``Q`` -- the positive-definite matrix in the definition of f(x). % % - ``b`` -- the known vector in the definition of f(x). % % OUTPUT: % % - ``alpha`` -- the optimal step size in the negative gradient % direction. % % The gradient of f(x) is Qx - b, and d_k is the negative gradient % direction. d_k = b - Q*x; alpha = (d_k' * d_k) / (d_k' * Q * d_k); end