by 杨贺宏
function [xmin,ymin] = SingleVarNewtonMin( fun, fun1d, fun2d, x1 )
% SingleVarNewtonMin: Newton method for Single variable minimization.
% Input:
% fun: name of the function to optimized.
% fun1d: fun'
% fun2d: fun''
% x1: start point.
% Output:
% xmin: value of independent variable when aquire min
% ymin: minimal value of the input function.
xk = x1;
fun1d_xk = feval( fun1d, xk );
fun2d_xk = feval( fun2d, xk );
% if f'( xk ) == 0 , stop looping.
while fun1d_xk ~= 0
xkk = xk - fun1d_xk / fun2d_xk;
xk = xkk;
fun1d_xk = feval( fun1d, xk );
fun2d_xk = feval( fun2d, xk );
end
xmin = xk
ymin = feval( fun, xmin )