第3章MATLAB的符号运算.pptVIP

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章MATLAB的符号运算

第三章 MATLAB的符号运算;§3.1符号对象与符号表达式 ; (2) 符号变量的建立 符号变量就是含有变量的符号表达式。 syms函数的一般调用格式为: syms 符号变量名1 符号变量名2 … 符号变量名n 用这种格式定义符号变量时不要在变量名上加字符串分界符(‘),变量间用空格而不要用逗号分隔。;2. 建立符号表达式 符号表达式就是代表数字、函数和变量的MATLAB字符串或字符串数组,它不要求变量要有预先定义的值。符号表达式包含符号函数和符号方程,其中符号函数没有等号,而符号方程必须带有等号。在MATLAB中建立符号表达式主要有一下三种方式: (1) 用单引号建立符号表达式 (2) 用sym建立符号表达式 (3) 使用已经定义的符号变量来组成符号表达式;§3.2 符号表达式的运算;3.2.1 提取分子分母 numden函数的调用形式如下: [n,d]=numden(a) 提取符号表达式a的分子与分母,并分别将其存放在n与d中 n=numden(a) 提取符号表达式a的分子与分母,但只把分子存放在n中 例 提取符号表达式 的分子和分母;3.2.2 符号表达式的基本代数运算 符号表达式的加、减、乘、除四则运算及幂运算等基本的代数运算,与矩阵的数值运算几乎完全一样。其中,符号表达式的加、减、乘、除运算可分别有函数symadd、symsub、symmul、symdiv来实现,也可与矩阵的数值运算一样,用“+”、“-”、“×”、“÷”符号进行运算,而符号表达式的幂运算也可以由函数sympow来实现,也可以由幂运算符“^”来实现。 例 符号表达式f=2x2+3x+4与g=5x+6的代数运算。 ;§3.3 符号表达式的操作及转换;如果我们无法确定表达式中的自由变量,我们可以使用MATLAB提供的findsym函数来确定,该函数的一般调用形式为 findsym(EXPR,n) %确定自由符号变量 说明:EXPR可以是符号表达式或符号矩阵;n为按顺序得出符号变量的个数,当n省略时,则不按顺序得出EXPR中所有的符号变量。 例 使用matlab指令得出 的符号变量;3.3.2 符号表达式的化简 当通过MATLAB的符号函数运算生成的符号表达式难于看懂时,可以通过MATLAB的符号数学工具箱中提供的函数,来对符号表达式进行化简,把它化成易于看懂的形式。这方面的函数主要有:pretty、collect、expand、horner、factor、simplify、simple。;一般来说同一个数学函数可以表示成三种,如 多项式形式的表达方式:f(x)=x3+6x2+11x-6 因式形式的表达方式:f(x)=(x-1)(x-2)(x-3) 嵌套形式的表达方式:f(x)=x(x(x-6)+11)-6 ;1.pretty函数化简 (常用的书写方式显示化简) 2. collect函数化简 合并表达式 当有多个符号变量,可以指定按某个符号变量来合并同类项。 ;;例 利用三角函数来简化符号表达式cos2x-sin2x。 7. simple函数 最简表达式 寻求包含最少数目字符的表达式简化形式。 利用simple简化符号表达式 Cos2x+sin2x。 cos2x-sin2x。 ;3.3.3 符号表达式的替换 subs(s)%用给定值替换符号表达式s中的所有变量 subs(s,new)%用new替换符号表达式s中的自由变量 subs(s,old,new) %用new替换符号表达式s中的old变量 例 用subs函数对符号表达式(x+y)2+3(x+y)+5进行替换。 ;3.3.4 符号数值任意精度控制和运算 在MATLAB的符号运算工具箱(Symbolic Math Toolbox)中共包含3种算术运算: A 数值类型 matlab的浮点算术运算 B 有理数类型 精确符号运算 C vpa类型 任意精度算术运算 ;任意精度的VPA型运算可以使用digits和vpa命令来实现。 digits(n) %设定默认的精度 说明:n为所期望的有效位数。digits函数可以改变默认的有效位数来改变精度,随后的每个进行Maple函数的计算都以新精度为准。 ;3.3.5 符号与数值间的转换 1. 将符号表达式转换成数值表达式 将符号表达式转换成数值表达式主要是通过函数numeric或eval来实现;2. 将数值转换成符号表达式 将数值转换成符号表达式主要是通过函数sym来实现。 3.符号表达式与多项式的转换 构成多项式的符号表达式f(x)可以与多项式系数构成的行向量进行相互转换,MATLAB提供了函数sym2poly和poly2sym实

文档评论(0)

shaoye348 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档