matlab 求解多项式的根 四种方法
方法一
%多项式求根函数roots
p=[1,-3,1];%建立多项式系数向量p
x=roots(p)%求多项式的根
x=-5:0.1:5;%步长为0.1
y1=x.*x-3*x+1;%构建一个函数
y2=zeros(size(x));%产生一个与x同大小的零向量
plot(x,y1,x,y2);
方法二
%利用函数fzero
f=@(x)x*x-3*x+1;
x1=fzero(f,0.5)
x2=fzero(f,2.5)
方法三
%利用fsolve函数
f=@(x)x*x-3*x+1;
x1=fsolve(f,0.5,optimset('Display','off'))
x2=fsolve(f,2.5,optimset('Display','off'))
方法四
%利用符号求根函数solve
syms x %定义一个符号变量x
x=solve(x^2-3*x+1) %调用solve函数求根
x=eval(x) %通过eval函数可以将符号解转化为数值解