[理学]matlab第三讲符号运算.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]matlab第三讲符号运算

第三讲 MATLAB的符号运算 符号运算的功能 符号表达式、符号矩阵的创建 符号线性代数 因式分解、展开和简化 符号代数方程求解 符号微积分 符号微分方程 一、符号运算的基本操作 什么是符号运算 与数值运算的区别 ※ 数值运算中必须先对变量赋值,然后才能参与运算。   ※ 符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达。 符号运算的对象是非数值的符号对象,对于像公式推导和因式分解等抽象的运算都可以通过符号运算来解决。 MATLAB 2006b对应的是Symbolic Math Toolbox 3.1.5。 符号工具箱能够实现微积分运算、线性代数、表达式的化简、求解代数方程和微分方程、不同精度转换和积分变换,符号计算的结果可以以图形化显示,MATLAB的符号运算功能十分完整和方便。 4.1 符号对象的创建和使用 创建符号对象都可以使用sym和syms函数来实现。 1. sym函数 S=sym(s,参数) %由数值创建符号对象 S=sym(‘s’,参数)%由字符串创建符号对象 当被转换的s是数值时,参数可以是d、f、e或r 四种格式,当被转换的s是字符串时,参数可以是real、unreal和positive三种格式 2. syms函数 syms(s1,s2,s3,…,参数) 或 syms s1,s2,s3,…,参数%创建多个符号变量 syms与sym的关系是:syms(s1,s2,s3,…,参数)等同于s1=sym(s1,参数),s2=sym(s2,参数)…… 3. class函数 s=class(x) %返回对象x的数据类型 4.1.2 符号常量和符号变量 符号常量是不含变量的符号表达式,用sym函数来创建;符号变量使用sym和syms函数来创建。 例如: a1=sym(sin(2)) %用数值创建符号常量 a2=sym(sin(2),f) %用十六进制浮点表示 a1=sym(a,unreal) %用字符串创建符号变量 4.1.3 符号表达式 符号表达式是由符号常量和符号变量等构成的表达式,使用sym和syms函数来创建。 例4-3 分别使用sym和syms函数创建符号表达式。 syms a b c x f1=a*x^2+b*x+c f1 = a*x^2+b*x+c f2=sym(y^2+y+1) %创建符号表达式 f2 = y^2+y+1 f3=sym(sin(z)^2+cos(z)^2=1)%创建符号方程 f3 = sin(z)^2+cos(z)^2=1 4.1.4 符号矩阵 符号矩阵的元素是符号对象,符号矩阵可以用sym和syms函数来创建。 A=sym([a,b;c,d]) A = [ a, b] [ c, d] 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数值矩阵的 一个重要区别。 ?用字符串直接创建矩阵 模仿matlab数值矩阵的创建方法 需保证同一列中各元素字符串有相 同的长度。 ? 符号矩阵的修改 a.直接修改 可用?、 ?键找到所要修改的矩阵,直接修改 b.指令修改 用A1=subs(A, new, old)来修改 例如: syms a b A = [a,2*b;3*a,0] A1=subs(A,c,a) A1 = [ (c), 2*b] [ 3*(c), 0] ? 符号矩阵与数值矩阵的转换 将数值矩阵转化为符号矩阵 函数调用格式: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] 将符号矩阵转化为数值矩阵 函数调用格式: numeric(A) aas=sym([1/3,5/2;10/7,2/5])

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档