收藏 分销(赏)

Matlab符号运算优秀PPT.ppt

上传人:w****g 文档编号:10239271 上传时间:2025-04-29 格式:PPT 页数:28 大小:440.50KB 下载积分:10 金币
下载 相关
Matlab符号运算优秀PPT.ppt_第1页
第1页 / 共28页
Matlab符号运算优秀PPT.ppt_第2页
第2页 / 共28页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,5,章,Matlab,符号运算,符号运算基础,微分运算,积分运算,积分变换,求解方程,matlab,不仅具有,数值运算,功能,还开发了在,matlab,环境下实现,符号运算,的工具包,Symbolic Math Toolbox,要求理解,matlab,数值运算与符号运算的不同;学会建立符号对象并应用相应对象进行各种符号运算以求得解析结果;,重点:符号表达式的运算,符号方程求解。,难点:符号微积分和积分变换。,本 章 要 求,5.1,符号运算基础,符号对象的创建,基本的符号运算,符号运算的基本操作,什么是,符号运算,?,与数值运算的区别,数值运算,中必须先对变量赋值,,然后才能参与运算。,符号运算,无须事先对独立变量赋值,,运算结果以标准的符号形式表达。,特点:,运算对象可以是没赋值的符号变量,可以获得任意精度的解,Symbolic Math Toolbox,符号运算工具包通过调用,Maple,软件实现符号计算的。,maple,软件,主要功能是符号运算,,它占据符号软件的主导地位。,一,.,符号对象,1.,建立符号变量和符号常数,(1),sym,函数,sym,函数用来建立单个符号量,例如,,a=sym(,a,),建立符号变量,a,,此后,用户可以在表达式中使用变量,a,进行各种运算。,考察符号变量和数值变量的差别,在,MATLAB,命令窗口,输入命令:,a=sym(a);b=sym(b);c=sym(c);d=sym(d);%,定义,4,个符号变量,w=10;x=5;y=-8;z=11;%,定义,4,个数值变量,A=a,b;c,d%,建立符号矩阵,A,B=w,x;y,z%,建立数值矩阵,B,det(A)%,计算符号矩阵,A,的行列式,det(B)%,计算数值矩阵,B,的行列式,比较符号常数与数值在代数运算时的差别。,在,MATLAB,命令窗口,输入命令:,pi1=sym(pi);k1=sym(8);k2=sym(2);k3=sym(3);%,定义符号变量,pi2=pi;r1=8;r2=2;r3=3;%,定义数值变量,A1=sin(pi1/3)%,计算符号表达式值,A2=sin(pi2/3)%,计算数值表达式值,A3=sqrt(k1)%,计算符号表达式值,A4=sqrt(r1)%,计算数值表达式值,A5=sqrt(k3+sqrt(k2)%,计算符号表达式值,A6=sqrt(r3+sqrt(r2)%,计算数值表达式值,(2)syms,函数,syms,函数的一般调用格式为:,syms var1 var2 varn,函数定义符号变量,var1,var2,varn,等。用这种格式定义符号变量时,变量间用空格而,不要,用逗号分隔。,2.,建立符号表达式,建立符号表达式有以下,2,种方法:,(1),用,sym,函数建立符号表达式。,(2),使用已经定义的符号变量组成符号表达式。,基本的符号运算,(1).,符号表达式的四则运算,符号表达式的四则运算和其他表达式的运算并无不同,但要注意,其运算结果依然是一个符号表达式。,(2),符号表达式的提取分子和分母运算,如果符号表达式是一个有理分式或可以展开为有理分式,可利用,numden,函数来提取符号表达式中的分子或分母。其一般调用格式为:,n,d=numden(s),该函数提取符号表达式,s,的分子和分母,分别将它们存放在,n,与,d,中。,(3).,因式分解与展开,collect(f),对,f,合并同类项,,f,是符号表达式或符号矩阵。,collect(f,v),对,f,按变量,v,合并同类项,,f,是符号表达式或符号矩阵。,expand(f),对,f,进行展开,,f,是符号表达式或符号矩阵。,factor(f),对,f,分解因式,,f,是符号表达式或符号矩阵。,(4).,符号表达式与数值表达式之间的转换,利用,函数,sym,可以将数值表达式变换成它的符号表达式。,函数,eval,可以将符号表达式变换成数值表达式。,(5).,符号矩阵,transpose(s),返回,s,矩阵的转置矩阵。,det(s),返回,s,矩阵的行列式值。,colspace(s),返回,s,矩阵列空间的基。,5.2,微分运算,符号函数的极限,符号函数的微分,符号泰勒级数展开,limit,函数的调用格式为:,limit(f,x,a),f,:函数,x,:变量,a,:逼近值,limit,函数的另一种功能是求单边极限,其调用格式为:,limit(f,x,a,right),或,limit(f,x,a,left),求极限例子,在,MATLAB,命令窗口,输入命令:,syms a m x;,f=(x(1/m)-a(1/m)/(x-a);,limit(f,x,a)%,求极限,f=(sin(a+x)-sin(a-x)/x;,limit(f)%,求极限,limit(f,inf)%,求,f,函数在,x(,包括,+,和,-),处极限,limit(f,x,inf,left)%,求极限,f=(sqrt(x)-sqrt(a)-sqrt(x-a)/sqrt(x*x-a*a);,limit(f,x,a,right)%,求极限,符号函数的微分,MATLAB,中的微分函数为:,diff(f,x,n),diff,函数求函数,f,对变量,x,的,n,阶导数。参数,x,的用法同求极限函数,limit,,可以缺省,缺省值与,limit,相同,,n,的缺省值是,1,。,例求函数的,(,微分,),导数。命令如下:,syms a b t x y z;,f=sqrt(1+exp(x);,diff(f)%,未指定求导变量和阶数,按缺省规则处理,f=x*cos(x);,diff(f,x,2)%,求,f,对,x,的二阶导数,diff(f,x,3)%,求,f,对,x,的三阶导数,f1=a*cos(t);f2=b*sin(t);,diff(f2)/diff(f1)%,按参数方程求导公式求,y,对,x,的导数,(diff(f1)*diff(f2,2)-diff(f1,2)*diff(f2)/(diff(f1)3%,求,y,对,x,的二阶导数,f=x*exp(y)/y2;,diff(f,x)%z,对,x,的偏导数,diff(f,y)%z,对,y,的偏导数,f=x2+y2+z2-a2;,zx=-diff(f,x)/diff(f,z)%,按隐函数求导公式求,z,对,x,的偏导数,zy=-diff(f,y)/diff(f,z)%,按隐函数求导公式求,z,对,y,的偏导数,例 在曲线,y=x,3,+3x-2,上哪一点的切线与直线,y=4x-1,平行。,命令如下:,x=sym(x);,y=x3+3*x-2;%,定义曲线函数,f=diff(y);%,对曲线求导数,g=f-4;,solve(g),%,求方程,f-4=0,的根,即求曲线何处的导数为,4,泰勒级数,matlab,中提供了将函数展开为幂级数的函数,taylor,,其调用格式为:,taylor(f,n,x,a),例,:,求函数在指定点的泰勒展开式。,命令如下:,x=sym(x);,f1=(1+x+x2)/(1-x+x2);,f2=sqrt(1-2*x+x3)-(1-3*x+x2)(1/3);,taylor(f1,x,5)%,展开到,x,的,4,次幂时应选择,n=5,taylor(f2,6),5.3,积分运算,在,matlab,中,求不定积分的函数是,int,,其调用格式为:,int(f,x),int,函数求函数,f,对变量,x,的不定积分。参数,x,可以缺省,缺省原则与,diff,函数相同。,在,matlab,中,求定积分的函数也是,int,,其调用格式为:,int(f,x,a,b),int,函数求函数,f,对变量,x,的不定积分。参数,x,可以缺省,缺省原则与,diff,函数相同。,5.4,积分变换,1.,傅立叶,(Fourier),变换,在,MATLAB,中,进行傅立叶变换的函数是:,fourier(fx,x,t),求函数,f(x),的傅立叶像函数,F(t),。,ifourier(Fw,t,x),求傅立叶像函数,F(t),的原函数,f(x),。,求函数的傅立叶变换及其逆变换。,命令如下:,syms x t;,y=abs(x);,Ft=fourier(y,x,t)%,求,y,的傅立叶变换,fx=ifourier(Ft,t,x)%,求,Ft,的傅立叶逆变换,2.,拉普拉斯,(Laplace),变换,在,MATLAB,中,进行拉普拉斯变换的函数是:,laplace(fx,x,t),求函数,f(x),的拉普拉斯像函数,F(t),。,ilaplace(Fw,t,x),求拉普拉斯像函数,F(t),的原函数,f(x),。,例计算,y=x,2,的拉普拉斯变换及其逆变换,.,命令如下:,x=sym(x);y=x2;,Ft=laplace(y,x,t)%,对函数,y,进行拉普拉斯变换,fx=ilaplace(Ft,t,x)%,对函数,Ft,进行拉普拉斯逆变换,3.Z,变换,对数列,f(n),进行,z,变换的,matlab,函数是:,ztrans(fn,n,z),求,fn,的,Z,变换像函数,F(z),iztrans(Fz,z,n),求,Fz,的,z,变换原函数,f(n),例求数列,fn=e,-n,的,Z,变换及其逆变换。,命令如下:,syms n z,fn=exp(-n);,Fz=ztrans(fn,n,z)%,求,fn,的,Z,变换,f=iztrans(Fz,z,n)%,求,Fz,的逆,Z,变换,5.5,求解方程,代数方程。,代数方程组。,微分方程和微分方程组。,代数方程,代数方程是指未涉及微积分运算的方程,相对比较简单。,在,matlab,中,求解用符号表达式表示的代数方程可由,函数,solve,实现,其调用格式为:,solve(eq);,求解符号表达式表示的代数方程,eq,,求解变量为默认变量。当方程右端为,0,时,方程,eq,中可以不包含右端项和等号,而仅列出方程左端的表达式。,solve(eq,x),:求解符号表达式表示的代数方程,eq,,求解变量为,x,。,solve(eq,1,eq,2,eq,n,v,1,v,2,v,n,),:,求解符号表达式,eq,1,eq,2,eq,n,组成的代数方程组,求解变量分别,v,1,v,2,v,n,。,若不指定求解变量,由默认规则确定。,注意输出方式,代数方程组,matlab,的符号运算工具箱中提供了功能强大的求解常微分方程的,函数,dsolve,。该函数的调用格式为:,dsolve(eqn1,condition,var),该函数求解微分方程,eqn1,在初值条件,condition,下的特解。参数,var,描述方程中的自变量符号,省略时按缺省原则处理,若没有给出初值条件,condition,,则求方程的通解。,y=dsolve(Dy=t),y=dsolve(D2y=t),y=dsolve(Dy=t,y(0)=0),微分方程,dsolve,在求微分方程组时的调用格式为:,dsolve(eqn1,eqn2,eqnN,condition1,conditionN,var1,varN),函数求解微分方程组,eqn1,、,、,eqnN,在初值条件,conditoion1,、,、,conditionN,下的解,若不给出初值条件,则求方程组的通解,,var1,、,、,varN,给出求解变量。,微分方程组,例 求微分方程的通解。,命令如下:,y=dsolve(Dy-(x2+y2)/x2/2,x)%,解,(1),。方程的右端为,0,时可以不写,y=dsolve(Dy*x2+2*x*y-exp(x),x)%,解,(2),y=dsolve(Dy-x2/(1+y2),y(2)=1,x)%,解,(3),x,y=dsolve(Dx=4*x-2*y,Dy=2*x-y,t)%,解方程组,(4),x,y=dsolve(D2x-y,D2y+x,t)%,解方程组,(5),小 结,本节介绍了,matlab,语言的符号运算,功能,通过学习应该掌握:,掌握如何创建符号函数,掌握符号运算及其应用,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服