function [f,g,H] = Rosenbrock(x)
% Call : function [f,g,H] = Rosenbrock(x)
%
% Task :
% Computes the Rosenbrock function
%	f(x1,x2) = 100(x2-x1^2)^2 + (1-x1)^2
% its gradient (when requested) and 
% Hessian (when requested) at x = (x1,x2) 



[n1,n2] = size(x);

if n1 ~= 2 | n2 ~= 1
	error('the input argument must be 2x1')
end

% COMPUTE THE FUNCTION - Set f below
% f = ....

if nargout >= 2
		% COMPUTE THE GRADIENT - Set g below
		% g(1,1) = ...
		% g(2,1) = ...
		
end

if nargout >= 3
		% COMPUTE THE HESSIAN - Set H(2x2) below
		% H(1,1) = ...
		% H(1,2) = ...
		% H(2,1) = H(1,2);
		% H(2,2) = ...
		
end

return
		
	
