ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:33.62KB ,
资源ID:11213920      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11213920.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(xin第4章MATLAB符号计算pptConvertor.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

xin第4章MATLAB符号计算pptConvertor.docx

1、xin第4章 MATLAB符号计算pptConvertor第4章 MATLAB符号计算本章重点符号运算的基本函数符号微积分符号方程求解符号计算的特点:1)符号计算定义在符号变量的基础上,符号表达式计算前必须定义符号变量。2)符号计算是精确计算。3)符号计算的计算速度较慢。4)符号计算的运算符和基本数学函数与数值计算中的运算符和基本数学函数几乎完全相同。4.1 符号函数的运算4.1.1 符号变量和符号矩阵 MATLAB提供了两个建立符号对象的函数:sym和syms,两个函数的用法不同。(1) sym函数 格式:符号量名=sym(表达式) 说明:该函数可以建立一个符号变量,表达式可以是字符、字符串

2、、数学表达式、字符表达式等。(2) syms函数 函数sym一次只能定义一个符号变量,使用不方便。MATLAB提供了另一个函数syms,一次可以定义多个符号变量。 格式:syms 符号变量名1 符号变量名2 符 号变量名n 说明:一次创建多个符号变量 用这种格式定义符号变量时不要在变量名上加字符串分界符(),变量间用空格而不要用逗号分隔。 符号变量在工作空间窗口数据类型名为sym例: a2=sym(matlab); A=1 2 3;4 5 6;7 8 9; A=sym(A)A = 1, 2, 3 4, 5, 6 7, 8, 9B=sym(3*x2+4*x+7)B=3*x2+4*x+7例:建立符

3、号变量z,使得z=x2+y2syms x yz=x2+y2注意:如果不定义符号变量x,y直接给z赋值的话,会出现以下提出信息z=x2+y2? Undefined function or variable x 所以符号表达式计算前必须定义符号变量。4.1.2 常用函数符号表达式的运算和普通数值运算的不同: (1)运算结果都是符号表达式或符号矩阵 (2)符号计算占用时间和内容多 (3)计算结果最精确1.符号表达式的算术运算 符号表达式的加、减、乘、除运算和数值运算一致,用运算符“+,- *,/ “直接实现 例 计算 表达式x3-1和表示式2x3-x2+1的四则运算结果syms xs1=x3-1;s

4、2=2*x3-x2+1; s1+s2ans =3*x3-x2 s1-s2ans = -x3-2+x2 s1*s2ans = (x3-1)*(2*x3-x2+1) s1/s2ans = (x3-1)/(2*x3-x2+1)2.化简函数 MATLAB提供了符号表达式的因式分解与展开、合并、化简、通分等函数,函数的调用格式为: collect(s,v):对符号表达式s合并自变量v的同幂系数。v为x时可以省略。expand(s):对符号表达式s进行展开。factor(s):对符号表达式s分解因式。n,d=numden(s):符号表达式s的分式通分。提取符号表达式s的分子和分母,分别将它们存放在n与d中

5、。simple(s):对表达式进行综合化简,并显示化简过程。 simplify(s):符号表达式s进行化简。 horner(s):符号表达式s的嵌套形式3. 替换函数可以通过符号替换使表达式的输出形式化简,得到一个简单的表达式:提供了两个替换函数:(1)subexpr函数调用格式:R,SYM=subexpr(S, SYM)用变量SYM的值代替符号表达式S中重复出现的字符串,R是返回替换后的结果。eg4-11:化简三次方程ax3+bx+1=0的符号解t=solve(a*x3+b*x+1=0)r,s=subexpr(t,s)(2) subs函数调用格式:R=subs(S,old,new)用新的符号

6、变量new 替换原来符号表达式S中的变量old,注意:当new是数值形式时,显示的结果虽然是数值,但它事实上是符号变量。要强制的求值需要用vpa函数。例4-12syms xs=(3*x3+x2-1)/(x2+1);r=subs(s,x,1)vpa(r)注意小数点精确的位数,小数点后31位补充:digits和vpa函数digits(n) 功能:设定计算精度和改变默认的有效位数函数。其中n为所期望的有效位数,默认值为32位。vpa 的格式为:S=vpa(s,n)功能:将s表示为n位有效位数的符号对象。n省略时要么为30位有效数,要么是digits函数事先设置好的位数。a=sym(2*sqrt(5)

7、+pi) %创建符号对象digits %显示默认的有效位数vpa(a) %用默认的位数计算并显示vpa(a,15) %按指定的精度计算并显示 digits(15) %改变默认的有效位数vpa(a) %按digits指定的精度计算并显示4.2 符号微积分4.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

8、趋近于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。例4-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)

9、+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/24.2.2 符号导数diff函数用于对符号表达式求导数。该函数的一般调用格式为:diff(s):没有指定变量和导数阶数,则系统默认变量对符号表达式s求一阶导数。diff(s,v):

10、以v为自变量,对符号表达式s求一阶导数。diff(s,n):按默认变量对符号表达式s求n阶导数,n为正整数。diff(s,v,n):以v为自变量,对符号表达式s求n阶导数。例 求下列函数的导数。xx,1/x, x3+1/y4.2.3 符号积分符号积分由函数int来实现。该函数的一般调用格式为:int(s):没有指定积分变量和积分阶数时,系统按findsym函数指示的默认变量对被积函数或符号表达式s求不定积分。int(s,v):以v为自变量,对被积函数或符号表达式s求不定积分。int(s,v,a,b):求定积分运算。a,b分别表示定积分的下限和上限。该函数求被积函数在区间a,b上的定积分。a和b

11、可以是两个具体的数,也可以是一个符号表达式,还可以是无穷(inf)。当函数f关于变量x在闭区间a,b上可积时,函数返回一个定积分结果。当a,b中有一个是inf时,函数返回一个广义积分。当a,b中有一个符号表达式时,函数返回一个符号函数。例 求下列积分。4.2.4 积分变换积分变换就是通过积分运算把一个函数 f 变成另一个函数F ;积分变换的意义是换一个角度来认识函数。F(t)=f(x)K(x,t)dx常见的积分变换有傅立叶变换、拉普拉斯变换和Z变换。1傅立叶(Fourier)变换在MATLAB中,进行傅立叶变换的函数是:fourier(f,x,t):求函数f(x)的傅立叶像函数F(t)。ifo

12、urier(F,t,x):求傅立叶像函数F(t)的原函数f(x)。2拉普拉斯(Laplace)变换在MATLAB中,进行拉普拉斯变换的函数是:laplace(fx,x,t):求函数f(x)的拉普拉斯像函数F(t)。ilaplace(Fw,t,x):求拉普拉斯像函数F(t)的原函数f(x)。例 计算y=x3的拉普拉斯变换及其逆变换。3Z变换当函数f(x)呈现为一个离散的数列f(n)时,对数列f(n)进行z变换的MATLAB函数是:ztrans(fn,n,z):求fn的Z变换像函数F(z)。iztrans(Fz,z,n):求Fz的z变换原函数f(n)。例 求数列 f=e-2x的Z变换及其逆变换。4

13、.3 符号方程求解4.3.1 符号代数方程求解在MATLAB中,求解用符号表达式表示的代数方程可由函数solve实现,其调用格式为:solve(s):求解符号表达式s的代数方程,求解变量为默认变量。solve(s,v):求解符号表达式s的代数方程,求解变量为v。solve(s1,s2,sn,v1,v2,vn):求解符号表达式s1,s2,sn组成的代数方程组,求解变量分别v1,v2,vn。例syms x y zs1=10*x+3*y+z-14;s2=2*x-10*y+3*z+5;s3=x+3*y+10*z-14;x,y,z=solve(s1,s2,s3)a=solve(s1,s2,s3)也可以写

14、成solve(10*x+3*y+z-14,2*x-10*y+3*z+5,x+3*y+10*z-14)或者x,y,z=solve(10*x+3*y+z=14,2*x-10*y+3*z=-5,x+3*y+10*z=14)的形式。4.3.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描述方程中的自变量,省略时按缺省

15、原则处理,若没有给出初值条件c,则求方程的通解。dsolve在求常微分方程组时的调用格式为:dsolve(e1,e2,en,c1,cn,v1,vn)该函数求解常微分方程组e1,en在初值条件c1,cn下的特解,若不给出初值条件,则求方程组的通解,v1,vn给出求解变量。y=dsolve(Dy=2*x*y2,x)y =-1/(x2-C1)y=dsolve(Dy=2*x*y2,y(0)=1,x)y =-1/(x2-1)4.4 级 数4.4.1 级数符号求和求无穷级数的和需要符号表达式求和函数symsum,其调用格式为:symsum(s,v,n,m)其中s表示一个级数的通项,是一个符号表达式。v是求

16、和变量,v省略时使用系统的默认变量。n和m是求和的开始项和末项。4.4.2 函数的泰勒级数MATLAB提供了taylor函数将函数展开为幂级数,其调用格式为:taylor(f,v,n,a)该函数将函数f按变量v展开为泰勒级数,展开到第n项(即变量v的n-1次幂)为止,n的缺省值为6。v的缺省值与diff函数相同。参数a指定将函数f在自变量v=a处展开,a的缺省值是0。第5章 MATLAB 绘图5.1 图形窗口以其操作1.图形窗口操作命令 figure 创建新的图形图像窗口figure(gcf)显示当前图形窗口gcf/shg 显示当前图形窗口clf/clg 清除当前图形窗口clc 清除命令窗口h

17、ome 光标到命令窗口的左上角hold on 保持当前窗口hold off 释放当前图形窗口subplot(m,n,p)或subplot(mnp) 将图形窗口分成m*n个窗口,p指定第一个窗口(从左到右,从上到下)例题:x=0:0.02:2*pi; plot(x,sin(x)hold onplot(x,cos(x),r)例题subplot(223)plot(x,cos(x),r)2.坐标轴、刻度和图形窗口缩放的操作axis(xmin xmax ymin ymax)axis equal:纵、横坐标轴采用等长刻度。axis square:产生正方形坐标系(缺省为矩形)。axis auto:使用缺省

18、设置。axis off:取消坐标轴。axis on:显示坐标轴box on 是否四周都设定坐标轴box offxlim(xmin xmax) 设定x轴的最大、最小值ylim(ymin ymax) 设定y轴的最大、最小值grid on 是否绘制图形窗口的网格grid off grid 在两者之间切换点型 线型和颜色绘图函数的常用的颜色含义类型 符号 蓝色(默认) b(Blue)黄色 y(Yellow) 品红色(紫色) m(Magenta)青色 c(Cyan) 红色 r(Red)绿色 g(Green) 白色 w(White) 黑色 k(Black)绘图函数的常用的线形含义类型 符号 实线(默认)

19、- 点线 :点划线 -. 虚线 - 绘图函数的常用的数据点形含义类型 符号 实点标记(默认) . 圆圈标记 o叉号形 x 星号标记 * 钻石形标记 d 向下的三角形标记 v向上的三角形标记 向左的三角形标记 五角星标记 p5.2二维绘图Matlab7.0可以绘制二维数据曲线、函数曲线图、对数坐标图、数据散点图、条形图、饼图、极坐标图等1.函数曲线图fplot 函数实现flot(fun, lim, tol, n, s)fun 函数名 ,多个函数时 fun1, fun2 ,fun3 . lim给定的绘图范围 比如 0,100tol 给定绘图的相对误差s 可以是线性、点型和颜色n 表示至少用n+1

20、个点在lim给定的范围内绘制fun给定的函数的曲线fun ,lim 必不可少 tol,n,s 可选参数 实例1再同一窗口绘制y=sinx ,y=cosx,y=sqrt(x)-1在0,2pi上的图像fplot(sin(x),cos(x),sqrt(x)-1,0,2*pi)fplot(sin(x),cos(x),sqrt(x)-1, 0,2*pi, k:, 200);x,y=fplot(fun,lim)不绘制图形,只将fplot的计算结果保存到变量x和y中2.数据曲线图Plot:直角坐标系的二维图形的绘制函数三种调用格式:1) plot(y,s) 功能:当y是向量时,元素的序号作为x坐标,元素值作

21、为y坐标,对应绘制线性直角坐标系的二维图形。 当y是矩阵时,元素的所在列号作为x坐标,元素值作为y坐标,分别对应绘制线性直角坐标系的二维图形,曲线条数等于输入参数矩阵的列数。 2) plot(x,y,s)功能:(1) x和y均为向量,要求两向量的长度相同一致。分别作为x坐标和y坐标数据。(2)x为向量,y为矩阵时,绘制y的行或列对于x的图形(其中行或列的选择取决于x,y的维数),若y为方阵,或y的列向量长度与x向量的长度致,则绘制出y矩阵的各列向量相对于x的一组二维图形;若y矩阵的行向量长度与x向量的长度一致,则绘制出y矩阵的各行向量相对于x的一组二维图形;(3)x为矩阵,y为向量,类似(2)

22、(4)x,y同维的矩阵,则绘制出y列向量相对于x的列向量之间的一组二维图形3)plot(x1,y1,s1,x2,y2,s2,xn,yn,sn)功能:绘制(xi,yi,si)对应的二维图形。S是表示所绘图形的线形、点型和颜色的字符串。函数调用格式中的S是线形、点型和颜色的组合字符,默认值为b-.(蓝色点划线标记)。例 在0x2p区间内,绘制曲线 y=2e-0.5xcos(4x)程序如下:x=0:pi/100:2*pi;y=2*exp(-0.5*x).*cos(4*pi*x);plot(x,y)或者:fplot(2*exp(-0.5*x)*cos(4*pi*x),0,2*pi);例 绘制行向量(

23、1 8 6 5 4)的图形。4)h=plot(.)求函数plot绘制曲线的句柄属性值5) plotyy函数Plotyy: 用不同标度在同一个坐标内绘制曲线plotyy(x1,y1,x2,y2) 分别绘制(x1,y1)和(x2,y2)的图形。其中x1和y1、 x2和y2为对应的向量或矩阵。例用不同标度在同一坐标内绘制曲线y1=0.2e-0.5xcos(4x) 和y2=2e-0.5xcos(x)。程序如下:x=0:pi/100:2*pi;y1=0.2*exp(-0.5*x).*cos(4*pi*x);y2=2*exp(-0.5*x).*cos(pi*x);plotyy(x,y1,x,y2);3.

24、极坐标系绘图Polar:极坐标系绘图函数polar函数用来绘制极坐标图,其调用格式为:polar(theta,rho,选项)其中theta为极坐标相角,rho为极坐标矢径,选项的内容与plot函数相似。例 绘制r=sin(t)cos(t)的极坐标图,并标记数据点。程序如下:t=0:pi/50:2*pi;r=sin(t).*cos(t);polar(t,r,-*); 。例 画出心形线 的 图像。4.条形图条形图用来表示一些数据的对比情况bar(x,参数) 垂直方向barh(x,参数) 水平方向x为向量:以x序号为横坐标,x的各个元素为纵坐标x为矩阵:参数grouped,每行分成一组stacked

25、,每一行累加,再绘制width 一组内条形的间距 默认0.8Y = round(rand(5,3)*10);subplot(2,2,1)bar(Y,group)title Groupsubplot(2,2,2) bar(Y,stack)title Stacksubplot(2,2,3)barh(Y,stack)title Stacksubplot(2,2,4)bar(Y,1.5)title Width = 1.55.饼图饼图常用来表示各种因素所占的比例pie(x,参数)x为向量:绘制x中每一个元素占全部向量总和的百分比饼图。x为矩阵:占全部矩阵元素的百分比参数:1:表示分离,0:表示不分离,维

26、数与x相同例 x=1 2 3;4 5 6;7 8 9explode=1 0 0; 1 0 0 ;0 1 1 pie(x,explode)6.柱形图概率分布图用于研究随机系统的数据分布情况hist(y,x)绘制y在以x为中心的区间中分布个数的条形图 x=1 1 2 3 4 y=-10:1:5; hist(x,y)5.3三维绘图1.三维网格图与曲面图在绘制三维网格图与曲面图时,往往先将要绘制图形的定义区域分成若干个网格,然后计算这些网格节点上的二元函数值。最后才能使用mesh或者surf绘制相应的图形。网格生成函数:meshgridmeshgrid:网格坐标矩阵的生成函数 X,Ymeshgrid(

27、x,y)功能:由向量x和y产生在x-y平面的各网格点坐标矩阵(X,Y)。其中向量x为1n的行向量,向量y为1m的行向量,产生的网格点坐标矩阵(X,Y)的元素为坐标对(Xij,Yij),i=1,.,m,j=1,.,n。注意向量x和y相同时,meshgrid函数也可以写成X,Ymeshgrid(x)。例如 语句x=1 2 3 4;y=5 6 7;U,V=meshgrid(x,y)功能:将x(1n)向量和y(1m)向量转换为(mn)的矩阵。Z=peaks(n)生成一个n阶高斯分布的方阵X,Y,Z=peaks(n)生成一个n阶高斯分布的方阵Z,并给出相应的X,Y的矩阵。三维网格图mesh:三维网格图的

28、绘制函数 mesh(z) mesh(x,y,z) mesh(x,y,z,c)其中c为的同维颜色矩阵。 功能:绘制三维网格图。当只有参数z时,以z矩阵的行下标作为x坐标轴,把z的列下标当作y坐标轴;x和y分别为x和y坐标轴的自变量。 当有x,y和z参数时,绘制出由坐标(xij, yij, zij)确定的三维网格图形。meshc(x,y,z) 带等高线的网格图meshz(x,y,z) 带底座的网格图surf(x,y,z)绘制三维曲面surfc(x,y,z)带等高线的三维曲面图例在x: -4,4, y:-4,4区域上绘制z=x2+y2的三维网格图x,y=meshgrid(-4:0.125:4);Z=

29、x.2+y.2;Mesh(x,y,z)X,Y = meshgrid(-3:.125:3);Z = peaks(X,Y);meshc(X,Y,Z);axis(-3 3 -3 3 -10 5)X,Y = meshgrid(-3:.125:3);Z = peaks(X,Y);meshz(X,Y,Z) X,Y,Z = peaks(30);surfc(X,Y,Z)colormap hsv /设置曲面显示的颜色axis(-3 3 -3 3 -10 5)2.三维曲线图 229页plot3 :三维曲线图形函数plot3(x,y,z, s) 功能:绘制三维曲线。其中当x,y和z是相同的向量时,则绘制以x,y和z元素为坐标的三维曲线;当x,y和z是同型矩阵时,则绘制以x,y和z元素为坐标的三维曲线,且曲线的条数等于矩阵的列数。s是指定绘制三维曲线的线型、数据点形和颜色的字符串,省略s时,将自动选择线型、数据点形和颜色。 线型、

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1