正在加载图片...
因为MA∏LAB无隙地处理复数,当用根重组多项式时,如果一些根有虚部,由于截断 误差,则poly的结果有一些小的虚部,这是很普通的。消除虚假的虚部,如上所示,只要 使用函数rea抽取实部。 10.2乘法 函数com支持多项式乘法(执行两个数组的卷积)。考虑两个多项式a(x)=x3+2x2+3x+ 4和b(x)=x3+4x2+9x+16的乘积 [1234];b=[14916] 62050758464 结果是x)=x6+6x5+20x4+50x3+75x2+84x+64。两个以上的多项式的乘法需要重复 使用 10.3加法 对多项式加法, MATLAB不提供一个直接的函数。如果两个多项式向量大小相同,标 准的数组加法有效。把多项式a(x)与上面给出的b(x)相加 >) d=a+b 结果是dx)=2x3+6x2+12x+20。当两个多项式阶次不同,低阶的多项式必须用首零填 补,使其与高阶多项式有同样的阶次。考虑上面多项式c和d相加 e=c+[000d 结果是x)=x+6x5+20x4+52x3+81x2+96x+84。要求首零而不是尾零,是因为相关 的系数象x幂次一样,必须整齐。 如果需要,可用一个文件编辑器创建一个函数M文件来执行一般的多项式加法。精通 MATLAB工具箱包含下列实现: function p=mmpadd (a, b) MMPADD Polynomial addition MMPADD(A, B)adds the polynomial A and B因为 MATLAB 无隙地处理复数,当用根重组多项式时,如果一些根有虚部,由于截断 误差,则 poly 的结果有一些小的虚部,这是很普通的。消除虚假的虚部,如上所示,只要 使用函数 real 抽取实部。 10.2 乘法 函数 conv 支持多项式乘法(执行两个数组的卷积)。考虑两个多项式 a(x)=x3+2x2+3x+ 4 和 b(x)= x3+4x2+9x+16 的乘积: » a=[1 2 3 4] ; b=[1 4 9 16]; » c=conv(a , b) c = 1 6 20 50 75 84 64 结果是 c(x)=x6+6x5+20x4+50x3+75x2+84x+64。两个以上的多项式的乘法需要重复 使用 conv。 10.3 加法 对多项式加法,MATLAB 不提供一个直接的函数。如果两个多项式向量大小相同,标 准的数组加法有效。把多项式 a(x)与上面给出的 b(x)相加。 » d=a+b d = 2 6 12 20 结果是 d(x)= 2x3+6x2+12x+20。当两个多项式阶次不同,低阶的多项式必须用首零填 补,使其与高阶多项式有同样的阶次。考虑上面多项式 c 和 d 相加: » e=c+[0 0 0 d] e = 1 6 20 52 81 96 84 结果是 e(x)= x6+6x5+20x4+52x3+81x2+96x+84。要求首零而不是尾零,是因为相关 的系数象 x 幂次一样,必须整齐。 如果需要,可用一个文件编辑器创建一个函数 M 文件来执行一般的多项式加法。精通 MATLAB 工具箱包含下列实现: function p=mmpadd(a,b) % MMPADD Polynomial addition. % MMPADD(A,B) adds the polynomial A and B
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有