Similarly to your earlier Question:
p = polyfit(x,y,7);
P = @(x,p) polyval(p,x);
f = @(x,p) cos(sqrt(abs(P(x,p)))) - sin(x)/2;
f_root = fzero(@(x) f(x,p), 1);
xv0 = linspace(0, 5, 100);
for k1 = 1:length(xv0)
f_root_v(k1) = fzero(@(x) f(x,p), xv0(k1));
end
roundn = @(x,n) round(x .* 10.^n)./10.^n;
function_roots = unique(roundn(f_root_v, 4));
EDIT — To find the least positive root, add this line:
LeastPositiveRoot = min(function_roots(function_roots > 0))
Best Answer