【MATLAB学习】多项式学习

  • 多项式(polynomial)

1.创建多项式

①系数矢量直接输入

例:创建多项式x³-2x²+3x+4

>> poly2sym([1 -2 3 4])
 
ans =
 
x^3 - 2*x^2 + 3*x + 4

(一共有四项,因此第一项的n-1,即3)

②特征多项式输入

(注意:n阶方阵的特征多项式系数矢量一定是n+1阶的,同时特征多项式系数的矢量的第一个元素必须为1

例:求矩阵[1 2 3;4 5 6;7 8 0]的多项式形式

>> a=[1 2 3;4 5 6;7 8 0];
>> p=poly(a)        (这个是将矩阵转化为特征多项式系数)

p =

    1.0000   -6.0000  -72.0000  -27.0000

>> pp=poly2sym(p)
 
pp =
 
x^3 - 6*x^2 - 72*x - 27

③由根矢量创建多项式

例:根据根矢量[-0.1 -0.2+0.4i -0.2-0.4i]创建多项式

> a=[-0.1 -0.2+0.4i,-0.2-0.4i];     (根矢量中,复数根应保留共轭复数成对)
>> p=poly(a)

p =

    1.0000    0.5000    0.2400    0.0200

>> pr=real(p)    (这一步的作用是含复数根的根矢量所创建的特征多项式系数中,有可能带有很小的虚部,此时用实部命令real把虚部滤除)

pr =

    1.0000    0.5000    0.2400    0.0200

>> ppr=poly2sym(pr)
 
ppr =
 
x^3 + x^2/2 + (6*x)/25 + 1/50

2.多项式运算

①求多项式的值

(这个就像我们曾经做数学题一样,当x=1,求y的值那样)

1)polyval函数

例:求多项式5x²+2x+1,在1,2,3处的值。

>> a=[5 2 1];
>> p=polyval(a,[1 2 3])

p =

     8    25    52

2)polyvalm函数

例:求多项式5x²+2x+1,在矩阵处的值。


>> a=[5 2 1];
>> p=polyval(a,[2 5;7 9])

p =

    25   136
   260   424

这两个函数,我们可以看出,polyvalm函数是计算矩阵,最终生成的是矩阵形式,而如果只单单求一两个数,这两个函数是一样的。

②求多项式的根

(roots函数)

例:求多项式x³-6x²+7x+10的根

>> a = [1 -6 7 10];
>> r = roots(a)

r =

   3.4013 + 0.9439i
   3.4013 - 0.9439i
  -0.8026 + 0.0000i

③求多项式的微积分

(polyder函数)

例:求多项式x³-6x²+7x+10的微分

>> a = [1 -6 7 10];
>> pd=polyder(a)

pd =

     3   -12     7

>> ppd=poly2sym(pd)
 
ppd =
 
3*x^2 - 12*x + 7

(polyint函数)

例:求多项式x³-6x²+7x+10的积分

>> a = [1 -6 7 10];
 
>> pi=polyint(a)

pi =

    0.2500   -2.0000    3.5000   10.0000         0

>> ppi=poly2sym(pi)
 
ppi =
 
x^4/4 - 2*x^3 + (7*x^2)/2 + 10*x

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值