多项式-方程求解ppt课件_第1页
多项式-方程求解ppt课件_第2页
多项式-方程求解ppt课件_第3页
多项式-方程求解ppt课件_第4页
多项式-方程求解ppt课件_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Matlab多项式运算与代数方程求解器,1,Matlab多项式运算,Matlab中多项式的表示方法,在Matlab中,n次多项式是用一个长度为n+1的向量来表示,缺少的幂次项系数为0。,注:系数中的零不能省!,例:,多项式的符号形式:poly2sym,poly2sym(2,-1,0,3),2,多项式四则运算,多项式加减运算,Matlab没有提供专门进行多项式加减运算的函数,事实上,多项式的加减就是其所对应的系数向量的加减运算,对于次数相同的多项式,可以直接对其系数向量进行加减运算;如果两个多项式次数不同,则应该把低次多项式中系数不足的高次项用0补足,然后进行加减运算。,例:,3,多项式四则运算,多项式乘法运算:,k=conv(p,q),其中k返回的是多项式p除以q的商,r是余式。,k,r=deconv(p,q),p=conv(q,k)+r,4,多项式的求导,polyder,k=polyder(p):多项式p的导数;k=polyder(p,q):p*q的导数;k,d=polyder(p,q):p/q的导数,k是分子,d是分母,k1=polyder(2,-1,0,3)k2=polyder(2,-1,0,3,2,1)k2,d=polyder(2,-1,0,3,2,1),例:已知,求,5,多项式的值,计算多项式在给定点的值,代数多项式求值,y=polyval(p,x):计算多项式p在x点的值,注:若x是向量或矩阵,则采用数组运算(点运算)!,6,多项式的值,矩阵多项式求值,Y=polyvalm(p,X),采用的是普通矩阵运算,X必须是方阵,例:已知,则,p=2,-1,0,3;x=-1,2;-2,1;polyval(p,x)polyvalm(p,x),polyvalm(p,A)=2*A*A*A-A*A+3*eye(size(A)polyval(P,A)=2*A.*A.*A-A.*A+3*ones(size(A),7,多项式的零点,x=roots(p):若p是n次多项式,则输出是p=0的n个根组成的n维向量。,若已知多项式的全部零点,则可用poly函数给出该多项式,p=poly(x),8,k=conv(p,q)k,r=deconv(p,q),k=polyder(p)k=polyder(p,q)k,d=polyder(p,q),y=polyval(p,x)Y=polyvalm(p,X),x=roots(p),多项式运算小结,多项式运算中,使用的是多项式系数向量,不涉及符号计算!,poly2sym(p),9,线性方程组求解,线性方程组求解,linsolve(A,b):解线性方程组,例:解方程组,A=12-1;101;130;b=2;3;8;x=linsolve(A,b),b是列向量!,10,非线性方程的根,Matlab非线性方程的数值求解,fzero(f,x0):求方程f=0在x0附近的根。,方程可能有多个根,但fzero只给出距离x0最近的一个,fzero先找出一个包含x0的区间,使得f在这个区间两个端点上的函数值异号,然后再在这个区间内寻找方程f=0的根;如果找不到这样的区间,则返回NaN。,x0是一个标量,不能缺省,由于fzero是根据函数是否穿越横轴来决定零点,因此它基本无法确定函数曲线仅触及横轴但不穿越的零点,如|sin(x)|的所有零点。,11,非线性方程的根,fzero的另外一种调用方式,fzero(f,a,b),方程在a,b内可能有多个根,但fzero只给出一个,求方程f=0在a,b区间内的根。,参数f可通过以下方式给出:,fzero(x3-3*x+1,2)f=inline(x3-3*x+1);fzero(f,2)fzero(x)x3-3*x+1,2),f不是方程!,12,例:,fzero(sin(x),10)fzero(x)sin(x),10),fzero(x3-3*x+1,1)fzero(x3-3*x+1,1,2),fzero(x3-3*x+1=0,1),X,fzero(x3-3*x+1,-2,0)f=inline(x3-3*x+1);fzero(f,-2,0),用fzero求零点时可以先通过作图确定零点的大致范围,13,符号求解,s=solve(f,v):求方程关于指定自变量的解;s=solve(f):求方程关于默认自变量的解。,f可以是用字符串表示的方程,或符号表达式;若f中不含等号,则表示解方程f=0。,solve,例:解方程x3-3*x+1=0,symsx;f=x3-3*x+1;s=solve(f,x),s=solve(x3-3*x+1,x),s=solve(x3-3*x+1=0,x),14,符号求解,solve也可以用来解方程组,solve(f1,f2,.,fN,v1,v2,.,vN),求解由f1,f2,.,fN确定的方程组关于v1,v2,.,vN的解,例:解方程组,x,y,z=solve(x+2*y-z=27,x+z=3,.x2+3*y2=28,x,y,z),输出变量的顺序要书写正确!(字母表顺序),15,roots(p):多项式的所有零点,p是多项式系数向量。,fzero(f,x0):求f=0在x0附近的根,f可以使用inline、字符串、或,但不能是方程!,solve(f,v):求方程关于指定自变量的解,f可以是用字符串表示的方程、符号表达式;solve也可解方程组(包含非线性);得不到解析解时,给出数值解。,linsolve(A,b):解线性方程组。,求解方程函数小

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论