I am trying to create a nested function, but I get an error saying that the variable that I've chosen is already being used even though that's the variable that I need as an input for my second function to compute the equation.
function [root,numit,err] = newton(x,tol,fx,ddx) err = abs(fx(x)); numit = 0; while(err > tol && numit < 1000); numit = numit + 1; x = x - fx(x)/ddx(x); err = abs(fx(x)); end
if (numit == 1000) disp('Maxed out on iterations.') err; end
root = x;
function root = x dx = 0.001; for i = 2:length(x)-1; fx = exp(cos(x) + sin(x)) - 2; dxf=(diff(2:i)-diff(1:(i-1)))/2*dx'; end
root = dxf(x); end end
root is my desired output and it is denoted by x. I keep getting an error about x being used as a variable and in the nested function in the same scope. What am I doing wrong?