《MATLAB程序设计基础与应用》第9章 MATLAB符号计算-教学课件(非AI生成).ppt
例9-6求数列fn=e-2n的Z变换及其逆变换。symsnzfn=exp(-2*n)fn=exp(-2*n)Fz=ztrans(fn,n,z)Fz=z/exp(-2)/(z/exp(-2)-1)gn=iztrans(Fz,z,n)gn=exp(-2)^n*9.3级数9.3.1级数符号求和求无穷级数的和需要符号表达式求和函数symsum,其调用格式为:symsum(s,v,n,m)其中s表示一个级数的通项,是一个符号表达式。v是求和变量,v省略时使用系统的默认变量。n和m是求和的开始项和末项。*例9-7求下列级数之和。symsks=symsum(1/k^2,1,inf)s=1/6*pi^2*9.3.2函数的泰勒级数MATLAB提供了taylor函数将函数展开为幂级数,其调用格式为:taylor(f,v,n,a)该函数将函数f按变量v展开为泰勒级数,展开到第n项(即变量v的n-1次幂)为止,n的缺省值为6。v的缺省值是系统按findsym函数指示的默认变量。参数a指定将函数f在自变量v=a处展开,a的缺省值是0。*例9-8求函数在指定点的泰勒级数展开式。symsxaf=x^5;taylor(f,x,3,a)ans=a^5+5*a^4*(x-a)+10*a^3*(x-a)^2*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解下列方程。symsabcxs=a*x^2+b*x+c;solve(s)ans=[1/2/a*(-b+(b^2-4*a*c)^(1/2))][1/2/a*(-b-(b^2-4*a*c)^(1/2))]*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求微分方程y=1+y2,初值y(0)=1时的解。dsolve(Dy=1+y^2,y(0)=1)ans=tan(t+1/4*pi)*第9章MATLAB符号计算*本章内容9.1符号对象9.2符号微积分9.3级数9.4符号方程求解*9.1符号对象9.1.1建立符号对象1.建立符号变量和符号常量MATLAB提供了两个建立符号对象的函数:sym和syms,两个函数的用法不同。(1)sym函数sym函数用来建立单个符号量,一般调用格式为:符号量名=sym(符号字符串)该函数可以建立一个符号量,符号字符串可以是常量、变量、函数或表达式。*应用sym函数还可以定义符号常量,使用符号常量进行代数运算时和数值常量进行的运算不同。下面的命令用于比较符号常量与数值常量在代数运算时的差别。sym(2)/sym(5)+sym(1)/sym(3)ans=11/152/5+1/3ans=0.7333*(2)syms函数函数sym一次只能定义一个符号变量,使用不方便。MATLAB提供了另一个函数syms,一次可以定义多个符号变量。syms函数的一般调用格式为:syms符号变量名1符号变量名2…符号变量名n用这种格式定义符号变量时不要在变量名上加字符串分界符(),变量间用空格而不要用逗号分隔。*2.建立符号表达式含有符号