jjdp.net
当前位置:首页 >> mAtlAB中roots函数 >>

mAtlAB中roots函数

roots:求多项式的根 用法只有一种:首先,输入多项式的系数,向量形式,对应降幂排列. 如C =[c1,c2,,c(n+1)],这是一个维度为n+1的行向量,对应c1*s^n+c2*s^(n-1)+ … + cn*s + c(n+1)这个多项式.p =[1,-6,-72,-27];>>roots(p) ans =12.1229-5.7345-0.3884 你上面的p =[1,-6,-72,-27],自然就对应x^4-6*x^3-72*x-27这个多项式.其次,调用函数,求对应多项式的根. 如roots(C),就可以得到对应的根

设a=[] 为y的系数矩阵,然后x=roots(a)即可.

Subscript indices must either be real positive integers or logicals中文解释:下标索引必须是正整数类型或者逻辑类型出错原因:在访问矩阵(包括向量、二维矩阵、多维数组,下同)的过程中,下标索引要么从 0 开始,要么出现了负数.注:matlab 的语法规定矩阵的索引从 1 开始,这与 C 等编程语言的习惯不一样.解决办法:自己调试一下程序,把下标为 0 或者负数的地方修正.另,我运行上述两句时是正确的,且得到了结果.>> p=[1 -8 6 -30];>> r=roots(p)r = 7.7260 0.1370 + 1.9658i 0.1370 - 1.9658i>>

>> p =[1,-6,-72,-27]p = 1 -6 -72 -27>> roots(p)ans = 12.1229 -5.7345 -0.3884能用啊

opencv 里的 solvePoly

Undefined function or method 'roots' for input arguments of type 'double'.你的roots函数没有定义,可能是matlab出问题了,建议卸载了重装应该就可以了!

我也曾出现过正确的程序运行出错.这时最好关掉matlab,之后再打开运行.可能是之前运行里太多程序,系统缓冲不过来,所以出错.

syms xroots(sym2poly((1+x)^10-16.722*x-1))

1.用法不同 2.solve是符号解(解析解),roots是数值解 3.roots只能解多项式方程,solve可解别的方程(只要它解得出的话)和方程组例子:solve('x^2+2*x+3') ans = -1+i*2^(1/2) -1-i*2^(1/2) roots(1:3) ans = -1.000

浮点数在计算机内部表示是不精确的,因为计算机内部采用二进制表示,像0.1这种小数,实际上需要无限个二进制位才能存储(计算机基础里学过二进制小数表示的乘二取整法吧),计算机资源有限,所以这是不可能的.故对于浮点数,才有

网站首页 | 网站地图
All rights reserved Powered by www.jjdp.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com