- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
练习9多项式的计算.doc
练习9 多项式的计算
知识背景
多项式的形式一般为。 多项式的形式很简单,一般都是按未知量的将幂排列的各项之和。Matlab中有关多项式的命令于矩阵相比较而言也显得要简单一些。对于一般多项式的运算,即加、减、乘、除、求导和估值等,Matlab基本上都提供了相应的函数命令。利用这些函数命令,我们能够轻松完成多项式的计算,从而大大降低实际工作的工作量。
主要内容
【】与 之和。
我们在命令区中输入:
p1=[0.69552,0.436,0.668,1.35];
p2=[2.342,0,0.453,2.3];
p=p1+p2
得到的结果如下:
p= 3.0375 0.4360 1.1210 3.6500
即结果为3.6500+1.2120
我们来看一个例子:
求与 之和。
我们在命令区中输入:
p1=[0.69552,0.436,0.668,1.35];
p2=[0,0.876,0.645,1.23]
p=p1+p2
得到的结果如下:
p= 0.6955 1.3120 1.3130 2.5800
与第一个例子相比,这是两个不同多项式相加。其实也简单,只要在低次多项式行向量相应处补上0元素,代表没有相应次数项即可。
多项式的乘法
对与 如果我们要求他们的积,应该怎么实现呢?答案是使用卷积函数。那么什么是卷积呢?
对m维和n维向量来说,他们的卷积就是下面的形式:
读者可以看到,c向量的维数维们m+n-1 ,这一条可以看作对结果正确性的初步判断。
求上面两个多项式的积,在命令区中输入:
c1=[0.69552,0.436,0.668,1.35];
c2=[2.342,0,0.453,2.3];
c=conv(c1,c2)
得到的结果如图9-1所示。从图中我们看到,上述两个多项的积为
显然,新的多项式的次数为6,正好是4+4-1=7。
另外有一点读者应该知道,如果需要求好几个多项式的积,只需要多次使用conv命令即可。
多项式的除法
多项式的除法是乘法的逆运算,我们用向量解卷积函数deconv来完成。
求与 之商。
观察上面两个多项式,由数学知识可以知道,商应该是由一个多项式和余数两部分组成的。那么最后的商应该写成两部分:a与b。其中, a是商多项式;b是余数(当然也可以是多项式,只是次数小于除式)。我们用deconv函数命令作用于代表两个多项式的行向量系数表达式。
在命令区里输入:
p1=[0.69552,0.436,0.668,1.35];
p2=[0,0.876,0.645,1.23];
[a,b]=deconv(p1,p2)
得到的结果如图9-2所示。
最后的结果写成数学表达式式:
商式:0.7940x-0.0869
余式:-0.2525x+1.4596
求多项式的导数
求多项式导数与进行多项式乘除法一样,属于比较简单的计算。只要使用 这个函数命令就可快速完成。
比如,我们想对 求导。
在命令区中输入:
p=[0.69552,0.436,0.668,1.35];
d=polyder(p)
得到如下结果:
d=2.0866 0.8720 0.6680如果想对一个分式求导,应该怎么实现呢?这时我们还是可以使用polyder函数。
求导数。
我们在命令区中输入:
p1=[0.69552,0.436,0.668,1.35];
p2=[0,0.876,0.645,1.23];
[a,b]=polyder(p1,p2)
得到如下结果:
a=0.6093 0.8972 2.2625 -1.2926 -0.0491
b=0.7674 1.1300 2.5710 1.5876 1.5129
这个结果表示,所给分式的导数等于由a 和b代表的多项式所组成的分式。其中a为分子,b为分母。这样表示的好处在于分子与分母的形式类似,便于进行相关运算。读者可以自己验证以下这个结果。
(5)多项式值的计算
求多项式在某点的值式经常遇到的问题,Matlab的函数命令也能够非常迅速地解决。
例如,求 在x=5.4处的值。
我们利用polyval函数命令。
在命令区中输入:
p=[0.69552,0.436,0.668,1.35];
pa=polyval(p,1)
得到结果:
pa=3.1495
如果我们把问题扩展以下,要求多项式在很多给定点的值,应该如何实现呢?显然,我们可以将单个点换成数组,然后进行计算。
例如,对于上面的多项式,我们要求x在0、0.876、0.645和1.230处的值。
应
文档评论(0)