第9章MATLAB符号计算

上传人:无*** 文档编号:251715144 上传时间:2024-11-09 格式:PPT 页数:23 大小:97KB
返回 下载 相关 举报
第9章MATLAB符号计算_第1页
第1页 / 共23页
第9章MATLAB符号计算_第2页
第2页 / 共23页
第9章MATLAB符号计算_第3页
第3页 / 共23页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,第,9,章,MATLAB,符号计算,9.1,符号对象,9.2,符号微积分,9.3,级 数,9.4,符号方程求解,9.1,符号对象,9.1.1,建立符号对象,1,建立符号变量和符号常量,MATLAB,提供了两个建立符号对象的函数:,sym,和,syms,,两个函数的用法不同。,(1)sym,函数,sym,函数用来建立单个符号量,一般调用格式为:,符号量名,=sym(,符号字符串,),该函数可以建立一个符号量,符号字符串可以是常量、变量、函数或表达式。,应用,sym,函数还可以定义符号常量,使用符号常量进行代数运算时和数值常量进行的运算不同。下面的命令用于比较符号常量与数值常量在代数运算时的差别。,(2),syms,函数,函数,sym,一次只能定义一个符号变量,使用不方便。,MATLAB,提供了另一个函数,syms,,一次可以定义多个符号变量。,syms,函数的一般调用格式为:,syms,符号变量名,1,符号变量名,2,符号变量名,n,用这种格式定义符号变量时不要在变量名上加字符串分界符,(),,变量间用空格而不要用逗号分隔。,2,建立符号表达式,含有符号对象的表达式称为符号表达式。建立符号表达式有以下,3,种方法:,(1),利用单引号来生成符号表达式。,(2),用,sym,函数建立符号表达式。,(3),使用已经定义的符号变量组成符号表达式。,9.1.2,符号表达式运算,1,符号表达式的四则运算,符号表达式的加、减、乘、除运算可分别由函数,symadd,、,symsub,、,symmul,和,symdiv,来实现,幂运算可以由,sympow,来实现。,2,符号表达式的提取分子和分母运算,如果符号表达式是一个有理分式或可以展开为有理分式,可利用,numden,函数来提取符号表达式中的分子或分母。其一般调用格式为:,n,d,=,numden(s,),该函数提取符号表达式,s,的分子和分母,分别将它们存放在,n,与,d,中。,3,符号表达式的因式分解与展开,MATLAB,提供了符号表达式的因式分解与展开的函数,函数的调用格式为:,factor(s,),:对符号表达式,s,分解因式。,expand(s,),:对符号表达式,s,进行展开。,collect(s,),:对符号表达式,s,合并同类项。,collect(s,v,),:对符号表达式,s,按变量,v,合并同类项。,4,符号表达式的化简,MATLAB,提供的对符号表达式化简的函数有:,simplify(s,),:应用函数规则对,s,进行化简。,simple(s,),:调用,MATLAB,的其他函数对表达式进行综合化简,并显示化简过程。,5,符号表达式与数值表达式之间的转换,利用函数,sym,可以将数值表达式变换成它的符号表达式。,函数,numeric,或,eval,可以将符号表达式变换成数值表达式。,9.1.3,符号表达式中变量的确定,MATLAB,中的符号可以表示符号变量和符号常量。,findsym,可以帮助用户查找一个符号表达式中的的符号变量。该函数的调用格式为:,findsym(s,n,),函数返回符号表达式,s,中的,n,个符号变量,若没有指定,n,,则返回,s,中的全部符号变量。,9.1.4,符号矩阵,符号矩阵也是一种符号表达式,所以前面介绍的符号表达式运算都可以在矩阵意义下进行。但应注意这些函数作用于符号矩阵时,是分别作用于矩阵的每一个元素。,由于符号矩阵是一个矩阵,所以符号矩阵还能进行有关矩阵的运算。,MATLAB,还有一些专用于符号矩阵的函数,这些函数作用于单个的数据无意义。例如,transpose(s,),:返回,s,矩阵的转置矩阵。,determ(s,),:返回,s,矩阵的行列式值。,其实,曾介绍过的许多应用于数值矩阵的函数,如,diag,、,triu,、,tril,、,inv,、,det,、,rank,、,eig,等,也可直接应用于符号矩阵。,9.2,符号微积分,9.2.1,符号极限,limit,函数的调用格式为:,(1),limit(f,x,a,),:求符号函数,f(x,),的极限值。即计算当变量,x,趋近于常数,a,时,,f(x,),函数的极限值。,(2),limit(f,a,),:求符号函数,f(x,),的极限值。由于没有指定符号函数,f(x,),的自变量,则使用该格式时,符号函数,f(x,),的变量为函数,findsym(f,),确定的默认自变量,即变量,x,趋近于,a,。,(3),limit(f,),:求符号函数,f(x,),的极限值。符号函数,f(x,),的变量为函数,findsym(f,),确定的默认变量;没有指定变量的目标值时,系统默认变量趋近于,0,,即,a=0,的情况。,(4),limit(f,x,a,right,),:求符号函数,f,的极限值。,right,表示变量,x,从右边趋近于,a,。,(5),limit(f,x,a,left,),:求符号函数,f,的极限值。,left,表示变量,x,从左边趋近于,a,。,例,9-1,求下列极限。,极限,1,:,syms,a m x;,f=(x*(exp(sin(x)+1)-2*(exp(tan(x)-1)/(x+a);,limit(f,x,a,),ans,=,(1/2*a*exp(sin(a)+1/2*a-exp(tan(a)+1)/a,极限,2,:,syms,x t;,limit(1+2*t/x)(3*,x),x,inf,),ans,=,exp(6*t),极限,3,:,syms,x;,f=x*(sqrt(x2+1)-x);,limit(f,x,inf,left,),ans,=,1/2,极限,4,:,syms,x;,f=(sqrt(x)-sqrt(2)-sqrt(x-2)/sqrt(x*x-4);,limit(f,x,2,right),ans,=,-1/2,9.2.2,符号导数,diff,函数用于对符号表达式求导数。该函数的一般调用格式为:,diff(s,),:没有指定变量和导数阶数,则系统按,findsym,函数指示的默认变量对符号表达式,s,求一阶导数。,diff(s,v,),:以,v,为自变量,对符号表达式,s,求一阶导数。,diff(s,n,),:按,findsym,函数指示的默认变量对符号表达式,s,求,n,阶导数,,n,为正整数。,diff(s,v,n,),:以,v,为自变量,对符号表达式,s,求,n,阶导数。,例,9-2,求下列函数的导数。,9.2.3,符号积分,符号积分由函数,int,来实现。该函数的一般调用格式为:,int(s,),:没有指定积分变量和积分阶数时,系统按,findsym,函数指示的默认变量对被积函数或符号表达式,s,求不定积分。,int(s,v,),:以,v,为自变量,对被积函数或符号表达式,s,求不定积分。,int(s,v,a,b,),:求定积分运算。,a,b,分别表示定积分的下限和上限。该函数求被积函数在区间,a,b,上的定积分。,a,和,b,可以是两个具体的数,也可以是一个符号表达式,还可以是无穷,(,inf,),。当函数,f,关于变量,x,在闭区间,a,b,上可积时,函数返回一个定积分结果。当,a,b,中有一个是,inf,时,函数返回一个广义积分。当,a,b,中有一个符号表达式时,函数返回一个符号函数。,例,9-3,求下列积分。,9.2.4,积分变换,常见的积分变换有傅立叶变换、拉普拉斯变换和,Z,变换。,1,傅立叶,(Fourier),变换,在,MATLAB,中,进行傅立叶变换的函数是:,fourier(f,x,t,),:求函数,f(x,),的傅立叶像函数,F(t,),。,ifourier(F,t,x,),:求傅立叶像函数,F(t,),的原函数,f(x,),。,例,9-4,求函数,y=,的傅立叶变换及其逆变换。,2,拉普拉斯,(,Laplace,),变换,在,MATLAB,中,进行拉普拉斯变换的函数是:,laplace(fx,x,t,),:求函数,f(x,),的拉普拉斯像函数,F(t,),。,ilaplace(Fw,t,x,),:求拉普拉斯像函数,F(t,),的原函数,f(x,),。,例,9-5,计算,y=x,3,的拉普拉斯变换及其逆变换。,3,Z,变换,当函数,f(x,),呈现为一个离散的数列,f(n,),时,对数列,f(n,),进行,z,变换的,MATLAB,函数是:,ztrans(fn,n,z,),:求,fn,的,Z,变换像函数,F(z,),。,iztrans(Fz,z,n,),:求,Fz,的,z,变换原函数,f(n,),。,例,9-6,求数列,fn=e,-2n,的,Z,变换及其逆变换。,9.3,级 数,9.3.1,级数符号求和,求无穷级数的和需要符号表达式求和函数,symsum,,其调用格式为:,symsum(s,v,n,m,),其中,s,表示一个级数的通项,是一个符号表达式。,v,是求和变量,,v,省略时使用系统的默认变量。,n,和,m,是求和的开始项和末项。,例,9-7,求下列级数之和。,9.3.2,函数的泰勒级数,MATLAB,提供了,taylor,函数将函数展开为幂级数,其调用格式为:,taylor(f,v,n,a,),该函数将函数,f,按变量,v,展开为泰勒级数,展开到第,n,项,(,即变量,v,的,n-1,次幂,),为止,,n,的缺省值为,6,。,v,的缺省值与,diff,函数相同。参数,a,指定将函数,f,在自变量,v=a,处展开,,a,的缺省值是,0,。,例,9-8,求函数在指定点的泰勒级数展开式。,9.4,符号方程求解,9.4.1,符号代数方程求解,在,MATLAB,中,求解用符号表达式表示的代数方程可由函数,solve,实现,其调用格式为:,solve(s,),:求解符号表达式,s,的代数方程,求解变量为默认变量。,solve(s,v,),:求解符号表达式,s,的代数方程,求解变量为,v,。,solve(s1,s2,sn,v1,v2,vn,),:求解符号表达式,s1,s2,sn,组成的代数方程组,求解变量分别,v1,v2,vn,。,例,9-9,解下列方程。,9.4.2,符号常微分方程求解,在,MATLAB,中,用大写字母,D,表示导数。例如,,Dy,表示,y,,,D2y,表示,y,,,Dy(0)=5,表示,y(0)=5,。,D3y+D2y+Dy-x+5=0,表示微分方程,y+y+y-x+5=0,。符号常微分方程求解可以通过函数,dsolve,来实现,其调用格式为:,dsolve(e,c,v,),该函数求解常微分方程,e,在初值条件,c,下的特解。参数,v,描述方程中的自变量,省略时按缺省原则处理,若没有给出初值条件,c,,则求方程的通解。,dsolve,在求常微分方程组时的调用格式为:,dsolve(e1,e2,en,c1,cn,v1,vn,),该函数求解常微分方程组,e1,en,在初值条件,c1,cn,下的特解,若不给出初值条件,则求方程组的通解,,v1,vn,给出求解变量。,例,9-10,求下列微分方程的解。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!