《matlab》课件:第6章MATLAB符号计算_第1页
《matlab》课件:第6章MATLAB符号计算_第2页
《matlab》课件:第6章MATLAB符号计算_第3页
《matlab》课件:第6章MATLAB符号计算_第4页
《matlab》课件:第6章MATLAB符号计算_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

1、第第9章章 MATLAB符号计算符号计算9.1 符号对象符号对象9.2 符号微积分符号微积分9.3 级级 数数9.4 符号方程求解符号方程求解9.1 符号对象符号对象9.1.1 建立符号对象建立符号对象1建立符号变量和符号常量建立符号变量和符号常量MATLAB提供了两个建立符号对象的函数:提供了两个建立符号对象的函数:sym和和syms,两个函数的用法不同。,两个函数的用法不同。(1) sym函数函数 sym函数用来建立单个符号量,一般调用格函数用来建立单个符号量,一般调用格式为:式为: 符号量名符号量名=sym(符号字符串符号字符串) 该函数可以建立一个符号量,符号字符串可该函数可以建立一个

2、符号量,符号字符串可以是常量、变量、函数或表达式。以是常量、变量、函数或表达式。 (2) syms函数函数 函数函数sym一次只能定义一个符号变量,使用不方一次只能定义一个符号变量,使用不方便。便。MATLAB提供了另一个函数提供了另一个函数syms,一次可以,一次可以定义多个符号变量。定义多个符号变量。syms函数的一般调用格式为:函数的一般调用格式为: syms 符号变量名符号变量名1 符号变量名符号变量名2 符号变量名符号变量名n 用这种格式定义符号变量时不要在变量名上加字用这种格式定义符号变量时不要在变量名上加字符串分界符符串分界符(),变量间用空格而不要用逗号分隔。,变量间用空格而不

3、要用逗号分隔。2建立符号表达式建立符号表达式含有符号对象的表达式称为符号表达式。建立符号表达式有含有符号对象的表达式称为符号表达式。建立符号表达式有以下以下3种方法:种方法:(1)利用单引号来生成符号表达式。利用单引号来生成符号表达式。(2)用用sym函数建立符号表达式。函数建立符号表达式。(3) 使用已经定义的符号变量组成符号表达式。使用已经定义的符号变量组成符号表达式。9.1.2 符号表达式运算符号表达式运算3符号表达式的因式分解与展开符号表达式的因式分解与展开MATLAB提供了符号表达式的因式分解与展开的函数,函提供了符号表达式的因式分解与展开的函数,函数的调用格式为:数的调用格式为:f

4、actor(s):对符号表达式:对符号表达式s分解因式。分解因式。expand(s):对符号表达式:对符号表达式s进行展开。进行展开。collect(s):对符号表达式:对符号表达式s合并同类项。合并同类项。collect(s,v):对符号表达式:对符号表达式s按变量按变量v合并同类项。合并同类项。例例:对表达式f=x9-1进行因式分解。syms xf=factor(x9-1)pretty(f)例:例: 展开表达式展开表达式f=(x+1)5和和f=sin(x+y)syms x yf=(x+1)5;expand(f)f=sin(x+y);expand(f)4符号表达式的化简符号表达式的化简MAT

5、LAB提供的对符号表达式化简的函数有:提供的对符号表达式化简的函数有:simplify(s):应用函数规则对:应用函数规则对s进行化简。进行化简。simple(s):调用:调用MATLAB的其他函数对表达式进行综合化简,的其他函数对表达式进行综合化简,并显示化简过程。并显示化简过程。例例:对于表达式f=x(x(x-6)+12)t, 分别将自变量x和t的同类项合并。syms x tf=x*(x*(x-6)+12)*t;collect(f)collect(f,t)例:对表达式例:对表达式f=sin2(x)+cos2(x)进行化简进行化简.syms xf=sin(x)2+cos(x)2;simpli

6、fy(f)9.1.3 符号表达式中变量的确定符号表达式中变量的确定MATLAB中的符号可以表示符号变量和符号常量。中的符号可以表示符号变量和符号常量。findsym可以帮助用户查找一个符号表达式中的的符号变量。该函可以帮助用户查找一个符号表达式中的的符号变量。该函数的调用格式为:数的调用格式为:findsym(s,n)函数返回符号表达式函数返回符号表达式s中的中的n个符号变量,若没有指定个符号变量,若没有指定n,则,则返回返回s中的全部符号变量。中的全部符号变量。9.2 符号微积分符号微积分9.2.1 符号极限符号极限limit函数的调用格式为:函数的调用格式为:(1) limit(f,x,a

7、):求符号函数:求符号函数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(

8、f)确定的默认变量;没有指定变量的目标确定的默认变量;没有指定变量的目标值时,系统默认变量趋近于值时,系统默认变量趋近于0,即,即a=0的情况。的情况。(4) limit(f,x,a,right):求符号函数:求符号函数f的极限值。的极限值。right表示变表示变量量x从右边趋近于从右边趋近于a。(5) limit(f,x,a,left):求符号函数:求符号函数f的极限值。的极限值。left表示变量表示变量x从左边趋近于从左边趋近于a。syms x a;limit(sin(x)/x)limit(1/x,x,0,right)limit(1/x,x,0,left)v=(1+a/x)x,exp(-x

9、);limit(v,x,inf,left)9.2.2 符号导数符号导数diff函数用于对符号表达式求导数。该函数的一般调用格式函数用于对符号表达式求导数。该函数的一般调用格式为:为:diff(s):没有指定变量和导数阶数,则系统按:没有指定变量和导数阶数,则系统按findsym函数指函数指示的默认变量对符号表达式示的默认变量对符号表达式s求一阶导数。求一阶导数。diff(s,v):以:以v为自变量,对符号表达式为自变量,对符号表达式s求一阶导数。求一阶导数。diff(s,n):按:按findsym函数指示的默认变量对符号表达式函数指示的默认变量对符号表达式s求求n阶导数,阶导数,n为正整数。为

10、正整数。diff(s,v,n):以:以v为自变量,对符号表达式为自变量,对符号表达式s求求n阶导数。阶导数。syms x;f=xx;diff(f)diff(f,3)9.2.3 符号积分符号积分符号积分由函数符号积分由函数int来实现。该函数的一般调用格式为:来实现。该函数的一般调用格式为:int(s):没有指定积分变量和积分阶数时,系统按:没有指定积分变量和积分阶数时,系统按findsym函函数指示的默认变量对被积函数或符号表达式数指示的默认变量对被积函数或符号表达式s求不定积分。求不定积分。int(s,v):以:以v为自变量,对被积函数或符号表达式为自变量,对被积函数或符号表达式s求不定积求

11、不定积分。分。int(s,v,a,b):求定积分运算。:求定积分运算。a,b分别表示定积分的下限和上分别表示定积分的下限和上限。该函数求被积函数在区间限。该函数求被积函数在区间a,b上的定积分。上的定积分。a和和b可以可以是两个具体的数,也可以是一个符号表达式,还可以是无是两个具体的数,也可以是一个符号表达式,还可以是无穷穷(inf)。当函数。当函数f关于变量关于变量x在闭区间在闭区间a,b上可积时,函数上可积时,函数返回一个定积分结果。当返回一个定积分结果。当a,b中有一个是中有一个是inf时,函数返回时,函数返回一个广义积分。当一个广义积分。当a,b中有一个符号表达式时,函数返回中有一个符

12、号表达式时,函数返回一个符号函数。一个符号函数。syms x z;f=-2*x/(1+x2)2;int(f)f=x/(1+z2);int(f)int(f,z)f=x*log(1+x);int(f,0,1)9.4 符号方程求解符号方程求解9.4.1 符号代数方程求解符号代数方程求解在在MATLAB中,求解用符号表达式表示的代数方程中,求解用符号表达式表示的代数方程可由函数可由函数solve实现,其调用格式为:实现,其调用格式为:solve(s):求解符号表达式:求解符号表达式s的代数方程,求解变量的代数方程,求解变量为默认变量。为默认变量。solve(s,v):求解符号表达式:求解符号表达式s的

13、代数方程,求解变量的代数方程,求解变量为为v。solve(s1,s2,sn,v1,v2,vn):求解符号表达式:求解符号表达式s1,s2,sn组成的代数方程组,求解变量分别组成的代数方程组,求解变量分别v1,v2,vn。 syms a b c x s=a*x2+b*x+c; solve(s) solve(cos(2*x)+sin(x)=1) syms x y zf=x2-y2+z-10;g=x+y-5*z;h=2*x-4*y+z;x,y,z=solve(f,g,h) %以数值数组形式输出求解结果以数值数组形式输出求解结果S=solve(f,g,h); %缺省情况将方程组的解存放在结构变量中S.

14、x,S.y,S.z9.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,e

温馨提示

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

评论

0/150

提交评论