第五讲MATLAB的符号计算功能_第1页
第五讲MATLAB的符号计算功能_第2页
第五讲MATLAB的符号计算功能_第3页
第五讲MATLAB的符号计算功能_第4页
第五讲MATLAB的符号计算功能_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

1、MATLABMATLAB第五讲第五讲 MATLABMATLAB的符号计算功能的符号计算功能 一、符号表达式和符号矩阵的创建一、符号表达式和符号矩阵的创建 1、 符号变量的赋值符号变量的赋值 2、符号常量、符号常量 3、符号矩阵的创建、符号矩阵的创建 4、符号方程的创建、符号方程的创建 5、将数字矩阵转化为符号矩阵、将数字矩阵转化为符号矩阵 6、符号表达式的升幂、符号表达式的升幂 7、符号表达式的合并、符号表达式的合并 8、变量代换、变量代换 二、符号函数的微积分二、符号函数的微积分 1、求导数、求导数 2、求积分、求积分 3、 求泰勒级数求泰勒级数taylortool(f) 三、求符号方程的精

2、确解和近似解三、求符号方程的精确解和近似解 1、求解单个符号方程、求解单个符号方程 2 、对代数方程组求解、对代数方程组求解 四、符号矩阵的基本运算四、符号矩阵的基本运算 1、加、减、乘、加、减、乘 2、求逆运算、求逆运算 3、求符号矩阵的除法、求符号矩阵的除法 4、求矩阵的特征值和特征向量、求矩阵的特征值和特征向量 5、求符号矩阵的行列式、求符号矩阵的行列式 6、求符号矩阵的约当矩阵、求符号矩阵的约当矩阵 7、求符号矩阵的奇异值、求符号矩阵的奇异值 五、符号函数画图五、符号函数画图 六、求符号函数的零点六、求符号函数的零点 七、求微分方程的解七、求微分方程的解 一、入门 Symbolic工具

3、包 MATLAB有一个符号计算工具包叫作 Symbolic Math Toolbox 其中有60多个专用函数。包括微积分、线性代数、 方程求解、多项式的简约与展开、特殊数学函 数等。 sym的指令在C:MATLAB6p1toolboxsymbolic, 如果在搜索路境中没有设定则要添加。 符号表达式和符号矩阵的创建符号表达式和符号矩阵的创建 符号表达式是数字、函数、变量的MATLAB字 符串,或字符串数组。 符号运算是指使用已知的规则和给定的符号恆 等式求解符号方程。 生成符号表达式用引号或sym函数 例 M=a,b;c,d ? Undefined function or variable a

4、. M=sym(a,b;c,d) M=sym(a,b;c,d) M = a, b c, d 1、符号变量的赋值、符号变量的赋值 f1=sin(x)2;f2=exp(-x2/2);f3=1/(1+x2); f1 = sin(x)2 f2 = exp(-x2/2) f3 = 1/(1+x2) 符号常量符号常量 没有变量的符号表达式叫作符号常量 a2=3 a2 = 3 a2+1 ans = 52 a2是一个符号常量,它是用ASCII码来存储的,3的 ASCII码是51因此a2+1得到的是52而不是4 (1)sym命令命令 M1=sym(sin(x),cos(x);-cos(x),sin(x) M1

5、= sin(x), cos(x) -cos(x), sin(x) (2)直接输入法直接输入法 M2=1+x+x2,sin(x); cos(x), x2 M2 = 1+x+x2,sin(x) cos(x), x2 2、符号矩阵的创建、符号矩阵的创建 3、符号方程的创建、符号方程的创建 EQF=a*x2+b*x+c=0 EQF = a*x2+b*x+c=0 M=2/3,sqrt(3)/3,0.333;2.5,1/0.7,log(3) M = 0.6667 0.5774 0.3330 2.5000 1.4286 1.0986 fuhaoM=sym(M) fuhaoM = 2/3, sqrt(1/3)

6、, 333/1000 5/2, 10/7 , 4947709893870346*2(-52) 4、将数字矩阵转化为符号矩阵、将数字矩阵转化为符号矩阵 5、isstr( )用来检测变量是否符号变量 例 a2=3 a2 = 3 isstr(a2) ans = 1 a3=3 a3 = 3 isstr(a3) ans = 0 用引号定义的a2是符号 变量 用普通的赋值定义的变量 不是符号变量 6、符号表达式的升幂、符号表达式的升幂 f=2*x2+3*x-5; sympow(f,3) ans = (2*x2+3*x-5)3 7、符号表达式的合并、符号表达式的合并 f1=sin(x); f2=sin(2*

7、x); f3=symop(f1,/,f2,+,3) f3 = sin(x)/sin(2*x)+3 8、变量代换、变量代换 f1=1/(1+x2); f2=sin(x); subs(f1,s,x) ans = 1/(1+(s)2) subs(f2,alpha,x) ans = sin(alpha) 例例1计算符号函数的导数计算符号函数的导数 f=sin(x)2 %定义函数的符号表达式定义函数的符号表达式 f = sin(x)2 diff(f) ans = 2*sin(x)*cos(x) diff(f,2) ans = 2*cos(x)2-2*sin(x)2 二、符号函数的微积分 1、求导 dif

8、f(f) f=sin(x)2 ; int(f,x) ans = -1/2*sin(x)*cos(x)+1/2*x int(1/(1+x2) ans = atan(x) 2、符号函数求积分 inf(f) 例例 f=sin(x)2; taylortool(f) 3、求泰勒级数taylortool(f) 在框中可以交互作用,给出所需的阶 数,立即返回表达式和图形。 几个常用命令几个常用命令 Solve(方程方程)%求精确解求精确解 vpa(S,n) %求求n位有效数字的近似解位有效数字的近似解 numeric(S) %将不含自由自变量的近似解转将不含自由自变量的近似解转 化为数值解化为数值解 dig

9、its(n) % 设定近似解的有效位数设定近似解的有效位数 subs(S,Dsym,Fsym) %将数值将数值Fsym带入自变带入自变 量量Dsym 三、求符号方程的精确解和近似解三、求符号方程的精确解和近似解 R1=solve(x2-x-1=0) R1 = 1/2*5(1/2)+1/2 1/2-1/2*5(1/2) RV=vpa(R1) RV = 1.6180339887498948482045868343657 -.61803398874989484820458683436570 RV4=vpa(R1,4) RV4 = 1.618 -.6180 例例 对符号方程求解对符号方程求解 RV30

10、=vpa(R1,16) RV30 = 1.618033988749895 -.6180339887498950 numeric(R1) ans = 1.6180 -0.6180 1、求解单个符号方程、求解单个符号方程 solve(a*x2+b*x+c=0)%默认对缺省变量默认对缺省变量x求求 解解 ans = 1/2/a*(-b+(b2-4*a*c)(1/2) 1/2/a*(-b-(b2-4*a*c)(1/2) solve(a*x2+b*x+c,b)%对对b求解求解 ans = -(a*x2+c)/x 2、对代数方程组求解、对代数方程组求解 equ1=d+(n+p)/2=q; equ2=p=n

11、+d+q-10; equ3=q+d=p+n/4; equ4=q+p=n+8*d-1; r1,r2,r3,r3=solve(equ1,equ2,equ3,equ4,p,n,d,q) r1 = 3 r2 =8 r3 =15 r3 =15 1、 加、减、乘加、减、乘 symadd(A,B) %符号加符号加 symsub(A,B) %符号减符号减 symmul(A,B) %符号乘符号乘 四、符号矩阵的基本运算 例例 format compact A=sym(a11,a12;a21,a22) B=sym(b11,b12;b21,b22) C=symadd(A,B) C = a11+b11, a12+b1

12、2 a21+b21, a22+b22 D=symsub(A,B) D = a11-b11, a12-b12 a21-b21, a22-b22 E=symmul(A,B) E = a11*b11+a12*b21, a11*b12+a12*b22 a21*b11+a22*b21, a21*b12+a22*b22 例例 求二阶符号矩阵的逆求二阶符号矩阵的逆 M=sym(a,b;c,d) M = a, b c, d inv(M) ans = d/(a*d-b*c), -b/(a*d-b*c) -c/(a*d-b*c), a/(a*d-b*c) 2、求逆运算、求逆运算 3、求符号矩阵的除法、求符号矩阵的

13、除法 symdiv(A,B) ans = -1/(-b11*b22+b12*b21)*(b22*a11-b21*a12), (- b11*a12+a11*b12)/(-b11*b22+b12*b21) -1/(-b11*b22+b12*b21)*(-b21*a22+b22*a21), (- b11*a22+a21*b12)/(-b11*b22+b12*b21) 4、求矩阵的特征值和特征向量 V,a=eigensys(A) V = -(1/2*a22-1/2*a11-1/2*(a222 -2*a11*a22+a112+4*a12*a21)(1/2)/a21, -(1/2*a22-1/2*a11+

14、1/2*(a222- 2*a11*a22+a112+4*a12*a21)(1/2)/a21 1, 1 a = 1/2*a11+1/2*a22+1/2*(a112-2*a11*a22+a222+4*a12*a21)(1/2), 0 0,1/2*a11+1/2*a22-1/2*(a112-2*a11*a22+a222+4*a12*a21)(1/2) 5、求符号矩阵的行列式 例例 A=sym(a11,a12;a21,a22)%定义符号矩阵定义符号矩阵 A = a11, a12 a21, a22 detA=determ(A) detA = a11*a22-a12*a21 f=sym(1/2,1/4;1

15、/4,1/2) f = 1/2, 1/4 1/4, 1/2 V,J=jordan(f) V = 1/2, 1/2 -1/2, 1/2 J = 1/4, 0 0, 3/4 6、求符号矩阵的约当矩阵 inv(V)AV 7、求符号矩阵的奇异值 M=sym(magic(3) %构造3阶魔方阵 M = 8, 1, 6 3, 5, 7 4, 9, 2 singvals(M) %求奇异值 ans = 15 2*3(1/2) 4*3(1/2) fplot(function,a,b) %画出函数f(x)在 a,b上的图形 例 画出函数在0,8上的图形 f=2*exp(-x)*sin(x); %定义函数 fplo

16、t(f,0,8) 五、符号函数画图 fzero(fun,a,b, ,options) 在求零点之前先要确定一个根的隔离区间,也在求零点之前先要确定一个根的隔离区间,也 就是说,就是说,a,b区间内有且仅有函数的一个零点,区间内有且仅有函数的一个零点, 这里采用的是对分法求零点。这里采用的是对分法求零点。 fzero(fun,x0) %用牛顿法求零点。用牛顿法求零点。 例例 求函数的零点求函数的零点 fx=x3-x+1; a=fzero(fx,-1) 六、求符号函数的零点 七、求微分方程的解 dsolve(Dy=1+y2) %求通解 ans = tan(t+C1) dsolve(Dy=1+y2,y(0)=1)%求特解 ans = tan(t+1/4*pi) 求二阶微分方程的解 y=dsolve(D2y-2*Dy-3*y=0) y = C1*exp(3*t)+C2*exp(-t) y=dsolve(D2y-2*Dy-3*y=0,y(0)=0,y(1)=1) y = 1/(exp(3)-exp(-1)*exp(3*t)-1/(exp(3)-exp(-1)*exp(-t) y=simple(y) %化简表达式化简表达式 y = (exp(3*t)-exp(-t)/(exp(3)-exp(-1) ezplot(y,-6,2) 画出二阶微分

温馨提示

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

评论

0/150

提交评论