Matlab基础(符号运算).ppt

上传人:sh****n 文档编号:2819723 上传时间:2019-11-30 格式:PPT 页数:27 大小:445.81KB
返回 下载 相关 举报
Matlab基础(符号运算).ppt_第1页
第1页 / 共27页
Matlab基础(符号运算).ppt_第2页
第2页 / 共27页
Matlab基础(符号运算).ppt_第3页
第3页 / 共27页
点击查看更多>>
资源描述
MATLAB基础 (符号运算),符号运算的功能,符号表达式、符号矩阵的创建 符号线性代数 因式分解、展开和简化 符号代数方程求解 符号微积分 符号微分方程,一、符号运算的基本操作,1. 什么是符号运算 与数值运算的区别 数值运算中必须先对变量赋值,然后才能参与运算。 符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达。,特点: 运算对象可以是没赋值的符号变量 可以获得任意精度的解 Symbolic Math Toolbox符号运算工具包通过调用Maple软件实现符号计算的。 maple软件主要功能是符号运算,它占据符号软件的主导地位。,2. 符号变量与符号表达式,f = sin(x)+5x sin(x)+5x 符号表达式 符号标识 符号表达式一定要用 单引号括起来matlab才能识别。, 的内容可以是符号表达式,也可以是符号方程 例: f1=ax2+bx+c 二次三项式 f2= ax2+bx+c=0 方程 f3=Dy+y2=1 微分方程 符号表达式或符号方程可以赋给符号变量,以后调用方便;也可以不赋给符号变量直接参与运算,3.符号矩阵的创建 数值矩阵A=1,2;3,4 A=a,b;c,d 不识别 用matlab函数sym创建矩阵(symbolic 的缩写) 命令格式:A=sym( ) 符号矩阵内容同数值矩阵 需用sym指令定义 需用 标识,例如:A = sym(a , 2*b ; 3*a , 0) A = a, 2*b 3*a, 0 这就完成了一个符号矩阵的创建。 注意:符号矩阵的每一行的两端都有方 括号,这是与 matlab数值矩阵的 一个重要区别。,将数值矩阵转化为符号矩阵 函数调用格式:sym(A) A=1/3,2.5;1/0.7,2/5 A = 0.3333 2.5000 1.4286 0.4000 sym(A) ans = 1/3, 5/2 10/7, 2/5, 符号矩阵与数值矩阵的转换,将符号矩阵转化为数值矩阵 函数调用格式: subs(A) A = 1/3, 5/2 10/7, 2/5 subs(A) ans = 0.3333 2.5000 1.4286 0.4000,1. 符号矩阵运算 数值运算中,所有矩阵运算操作指 令都比较直观、简单。例如:a=b+c; a=a*b ;A=2*a2+3*a-5等。 而符号运算就不同了,所有涉及符 号运算的操作都有专用函数来进行,二、符号运算,符号矩阵运算的函数: symadd(a,b) 符号矩阵的加 symsub(a,b) 符号矩阵的减 symmul(a,b) 符号矩阵的乘 symdiv(a,b) 符号矩阵的除 sympow(a,b) 符号矩阵的幂运算 symop(a,b) 符号矩阵的综合运算,例1:f= 2*x2+3*x-5; g= x2+x-7; h= symadd(f,g) h= 3*x2+4*x-12 例2:f=cos(x);g= sin(2*x); symop(f,/,g,+,f,*,g) ans = cos(x)/sin(2*x)+cos(x)*sin(2*x),例1:f= 2*x2+3*x-5; g= x2+x-7; syms x f=2*x2+3*x-5; g= x2+x-7; h=f+g h = 3*x2+4*x-12 例2:f=cos(x);g= sin(2*x); syms x f=cos(x);g=sin(2*x); f/g+f*g ans = cos(x)/sin(x)+cos(x)*sin(x),符号运算函数: symsize 求符号矩阵维数 charploy 特征多项式 determ 符号矩阵行列式的值 eigensys 特征值和特征向量 inverse 逆矩阵 transpose 矩阵的转置 jordan 约当标准型 simple 符号矩阵简化,diff(f) 对缺省变量求微分 diff(f,v) 对指定变量v求微分 diff(f,v,n) 对指定变量v求n阶微分 int(f) 对f表达式的缺省变量求积分 int(f,v) 对f表达式的v变量求积分 int(f,v,a,b) 对f表达式的v变量在(a,b) 区间求定积分,3. 符号微积分与积分变换,int(被积表达式,积分变量,积分上限, 积分下限) 定积分,缺省时为不定积分,mtaylor(f,n) 泰勒级数展开 ztrans(f) Z变换 iztrans(f) 反Z变换 Laplace(f) 拉氏变换 ilaplace(f) 反拉氏变换 fourier(f) 付氏变换 Invfourier(f) 反付氏变换,例1.计算二重不定积分,F=int(int(x*exp(-x*y),x),y) F= 1/y*exp(-x*y) 例2.计算 syms t; f= t*exp(-t*10)的Z变换 F=ztrans(f) F= z*exp(-10)/(z-exp(-10)2,4. 符号代数方程求解,matlab符号运算能够解一般的线性方程、非线性方程及一般的代数方程、代数方程组。当方程组不存在符号解时,又无其他自由参数,则给出数值解。 命令格式: solve(f) 求一个方程的解 solve(f1,f2, fn) 求n个方程的解,例1. f = ax2+bx+c 求解 f=a*x2+b*x+c; solve(f) 对缺省变量x求解 ans = 1/2/a*(-b+(b2-4*a*c)(1/2) 1/2/a*(-b-(b2-4*a*c)(1/2),计算机 格式,一般格式,例2. 符号方程cos(x)=sin(x)求解 f1=solve(cos(x)=sin(x), f1 = 1/4*pi,solve(f , b ) 对指定变量b求解 ans = -(a*x2+c)/x,例3. 解非线性方程组 sin(x)+y2+ln(z) -7=0 3x+2y-z3+1=0 x+y+z-5=0 g1=sin(x)+y2+ln(z)-7=0; g2=3*x+2y-z3+1=0; g3= x+y+z-5=0; x1,y1,z1=solve(g1,g2,g3,x,y,z) x1 =0.5991, y1 = 2.3959, z1 = 2.0050,5. 符号微分方程求解 用一个函数可以方便地得到微 分方程的符号解 符号微分方程求解指令:dsolve 命令格式:dsolve(f,g) f 微分方程,可多至12个微分方程的求 解;g为初始条件 默认自变量为 x,可任意指定自变量t, u等 微分方程的各阶导数项以大写字母D表示,y1,y2=dsolve(x1,x2,xn) 返回 微分方程的解,一阶微分方程 x1 x2=dsolve(Dx=y,Dy=x,x(0)=0,y(0)=1) x(t) = sin(t), y(t) = cos(t) 二阶微分方程 f=dsolve(D2y=-a2*y,y(0)=1,Dy(pi/a)=0) f = cos(a*x),例3.,y=dsolve(D2y+2*Dy+2*y=0,y(0)=1,Dy(0)=0,x) y =exp(-x)*cos(x)+exp(-x)*sin(x),求该方程的解,小 结 本节介绍了matlab语言的符号运算 功能,通过学习应该掌握: 掌握如何创建、修改符号矩阵 掌握符号运算功能,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!