function y = f(z)
b=10;
y=(cos(z))+(b*(sin(z)/z))-cos(d);
这是我的函数文件。
fun = @f; % function
x0 = 1; % initial point
z = fzero(fun,x0);
在上面运行代码时,我只获得一个值。但我需要的是一组满足
的值(cos(z))+(b*(sin(z)/z))-cos(d)=0
其中:d = -5:1:5
请帮助
答案 0 :(得分:0)
您可以使用不同的初始点。这个过程可以自动化:
solutions= zeros(1,100);
for k= 1:numel(solutions)
x0= (rand-0.5)*20; % generate the random initial point in (-10,10)
z = fzero(@f,x0);
solutions(k)= z;
end
disp(unique(solutions))
由于求解器的准确性,结果可能包括相同的解决方案。
找到初始点is described here
的另一种方法