📅  最后修改于: 2023-12-03 15:15:12.640000             🧑  作者: Mango
在 MATLAB 中,fzero() 函数是用来寻找函数根的函数。函数根是函数值为0的点,也就是方程 f(x) = 0 的解。fzero() 函数采用单点迭代法,也就是迭代法中的牛顿-拉夫森方法,使用数值微分和函数值来计算函数的根。
x = fzero(fun,x0)
x
是函数 fun
的根。 x0
是使用牛顿-拉夫森方法的初始猜测点。
[x,fval,exitflag,output] = fzero(___)
除了 x
,返回的变量 fval
是函数 fun
在 x
处的值,exitflag
是标识解是否收敛或发散的整数,而 output
是一个结构体,包含有关 fzero()
运行的更多信息。
%首先定义一个函数表示为 f(x)=sin(x)/x
f = @(x) sin(x)./x;
%设定一个初始猜测
x0 = -5.5;
%调用fzero函数
[x, fval, exitflag, output] = fzero(f, x0);
%打印结果
fprintf('根: x = %.3f\n', x);
fprintf('函数值: f(x) = %.3f\n', fval);
fprintf('退出标识: exitflag = %d\n', exitflag);
disp(output);
根: x = -9.424
函数值: f(x) = -0.000
退出标识: exitflag = 1
输出的结果中,x
是函数 f
的根, fval
是函数 f
在 x
处的值,这里为0, exitflag
是1,表明 fzero()
函数已经找到了函数 f
的根。 output
结构包含一些元信息,比如收敛信息,迭代次数等等。
fzero() 函数是一个在 MATLAB 中非常重要的函数,它可以方便地求解函数根。此外,它还是 MATLAB 中许多数值优化工具包的基础。通过本篇文章的介绍,相信读者对 fzero() 函数有了更深入的了解。