- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验五:Matlab多项式和符号运算
一、实验目的
1.掌握Matlab多项式的运算。
2.了解符号运算。
二、实验内容
1.将多项式化为x的降幂排列。
symsx;
y=(x-2)*(x+3)*(x-7)*(x+1);
expand(y)
ans=
x^4-5*x^3-19*x^2+29*x+42
2.求一元高次方程的根。
symsxy;
y=x^9-5*x^8-30*x^7+150*x^6-1365*x^4-820*x^3+4100*x^2+576*x-2880;
solve(y,x)
ans=
6.8194768794135839294004124431946
1.1365779764942761488953013276419+.15748095564819249061612981291831*i
2.8654872113200760683901828473839+2.4926334821808807616844446271927*i
-1.8876051302159888775697938373354+1.0110818640881167605567812452594*i
-.95151427733108350913000920547633
-5.0968827172792270997017839130991
-1.8876051302159888775697938373354-1.0110818640881167605567812452594*i
2.8654872113200760683901828473839-2.4926334821808807616844446271927*i
1.1365779764942761488953013276419-.15748095564819249061612981291831*i
3.求一元高次方程的根,并画出左边多项式函数在区间内的曲线。
a=[10-201];
r=roots(a)
symsx;
x=-2:2;
y=[10-201];
plot(x,y)
r=
1.0000+0.0000i
1.0000-0.0000i
-1.0000
-1.0000
4.对比用多项式函数的polyder函数及符号函数中的diff函数,求导x2+2x+3。
y=[123];
polyder(y)
ans=
22
5.求多项式在点2、4、5的值
a=[13-21];
polyval(a,[2,4,5])
ans=6.计算a(x)=2x3+4x2+6x+8,b(x)=3x2+6x+9的多项式相加(试着编写一个polyadd的函数,实现多项式相加的功能)
function[poly]=polyadd(poly1,poly2)
iflength(poly1)length(poly2)
short=poly1;
long=poly2;
elseshort=poly2;
long=poly1;
end
mz=length(long)-length(short);
ifmz0poly=[zeros(1,mz),short]+long;
elsepoly=long+short;
end
poly1=[2357];
poly2=[8-64-2];
[poly]=polyadd(poly1,poly2)
poly=
10-395
7.求多项式和的乘积;并求的商和余式。(conv()deconv())
f1=[1357];
f2=[8-64-2];
f=conv(f1,f2)
f=
8182636-2818-14
fll=[zeros(1,length(f)-length(f1)),f1]
fll=
0001357
[q,r]=deconv(f-fll,f2)
q=
1.00003.00005.00006.8750
r=
0000-3.7500-4.5000-7.2500
8.求的符号导数。
y=x^5+tan(4*x^2)+3;
diff(y)
ans=
-26-41-1073-1913-7012-1078-26-44-928
9.用符号运算求实验内容6中的的表达式。观察在不使用collect(f)函数以及使用后的结果。
三、设计提示
1.关于多项式运算的函数有poly、roots、diff、conv/deconv等。
2.多项式做加减运算时要注意等长度。
3.符号表达式的输入可以用字符串方式,也可以用sym函数,syms函数。
4.了解以下符号多项式函数
collect(f):函数用途是合并多项式中相同的项,
symsxt
f=(1+x)*t+x*t;
collect(f)
expand(f):展开多项式,
symsx
f=x*(x*(x-1)+3)+2;
expand(f);
hor
文档评论(0)