打印

matlab 如何求解一元n次方程

[复制链接]
826|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
求一元n次方程的根用命令roots。我们都知道,一元二次方程 的求根公式为
例如对于方程式 ,首先输入系数,然后按公式计算两个根的值,在MATLAB中键入
a=2b=5c=8
p=sqrt(b^2-4*a*c)
x1=(-b-p)/(2*a)
x2=(-b+p)/(2*a)
计算机屏幕将显示此方程的两个根:
x1 =  -1.2500 - 1.5612i          x2 =  -1.2500 + 1.5612i
对于高次方程,比如5次以上的方程,我们无法用求根公式求解。但是用MATLAB的求多项式零点的命令可以求出高次方程的全部根。以上面的例子为例,只须键入
roots([2,5,8])
并回车,计算机将显示   ans =
-1.2500 + 1.5612i
-1.2500 - 1.5612i
这与前面计算结果相同,由此可知命令roots([2,5,8])”求出了一元二次方程
的全部根。所以对于一个高次代数方程
用命令 roots([a0  a1   an])可以求出该n次方程的全部根。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1839

主题

6423

帖子

30

粉丝