1、多项式的加减法在MATLAB中实现的实质是什么?
按照数组相加减,将代表多项式的行向量相加减就可以,即将多项式相同次幂的系数相加减即可。
2、能否对多项式一次性多点求导?请对本练习中出现的相关多项式进行多点求导。
能。对多项式f(x)=1.35+0.668x+0.436x^2+0.69552x^3多点求导,对x=0,1,2,3各点求导。
>> p=[0.69552,0.436,0.668,1.35];
>> d=polyder(p);
>> a=[0,1,2,3];
>> pa=polyval(d,a)
pa =
0.6680 3.6266 10.7582 22.0630
由以上得出:f(x)在x=0时的导数是0.6680,f(x)在x=1时的导数是3.6266,f(x)在x=2时的导数是10.7582,
f(x)在x=3时的导数是22.0630。
3、请创建两个多项式,进行除法运算,然后交换位置,再进行除法运算。
把f1(x)=x^3+2x^2+3x+4与f2(x)=x^2+2x+1进行除法运算
f1(x)/f2(x):
>> p1=[1,2,3,4];
>> p2=[1,2,1];
>> [a,b]=deconv(p1,p2)
a =
1 0
b =
0 0 2 4
f2(x)/f1(x):
>> [a,b]=deconv(p2,p1)
a =
0
b =
1 2 1
4、建立一个5*5矩阵。分别用polyval函数和polyvalm函数将矩阵代入f(x)=1.35+0.668x+0.436x^2+0.69552x^3计算结果,进行比较。
>> p=[0.69552,0.436,0.668,1.35];
>> d=polyder(p);
>> a=[0,1,2,3];
>> pa=polyval(d,a)
pa =
0.6680 3.6266 10.7582 22.0630
>> p=[0.69552,0.436,0.668,1.35];
>> a=rand(5)
a =
0.8147 0.0975 0.1576 0.1419 0.6557
0.9058 0.2785 0.9706 0.4218 0.0357
0.1270 0.5469 0.9572 0.9157 0.8491
0.9134 0.9575 0.4854 0.7922 0.9340
0.6324 0.9649 0.8003 0.9595 0.6787
>> pa=polyval(p,a)
pa =
2.5598 1.4200 1.4688 1.4555 2.1716
2.8297 1.5849 3.0450 1.7615 1.3744
1.4433 1.9595 2.9988 2.8614 2.6574
2.8538 2.9999 1.8565 2.4986 2.9209
2.1226 3.0253 2.5203 3.0067 2.2217
>> pa=polyvalm(p,a)
pa =
5.1170 2.6606 3.0119 2.9857 3.4454
4.7515 5.1932 4.8521 4.4839 4.3293
6.6406 6.3445 8.8893 7.3651 6.9744
7.9314 6.5836 7.3240 8.6271 7.4417
7.7206 6.8048 7.7940 7.6595 8.7697
从以上结果得知,用polyval和polyvalm函数将矩阵代入f(x)计算结果不一样。