- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 符号计算功能
第8章 符号计算功能 MATLAB的科学运算可以主要分为两类,数值运算与符号运算,在第7章中已介绍了数值运算的相关内容,本章将重点讲述符号运算的内容。科学领域中的很多问题都需要通过各种公式推导,此时需要借助符号计算来解决问题。符号计算是对字符符号对象进行科学地运算与分析,这是与传统的数值运算的最大区别。 MATLAB专门提供了符号计算工具箱用于求解符号计算问题,可见MATLAB具有强大的符号计算功能。同时,在MATLAB中使用符号计算功能操作简单,在用户群体中广为应用。 8.1 符合计算概述 符号计算是指以符号形式进行的计算,主要用于研究科学问题的算法求解。符号计算与数值计算最大的差异是符号计算的对象为符号对象,因而在实现符号计算前用户需要首先定义符号对象。MATLAB中的符号计算主要通过符号工具箱(Symbolic Math Toolbox)来实现。 8.2 符号对象的创建 在MATLAB中的符号计算主要是对符号对象进行操作的,符号对象为用来存储字符符号的数据对象,在使用符号计算功能前,首先需要创建符号对象。本节主要介绍符号对象的创建,其中常用的符号对象主要包括符号常量和变量、符号表达式、符号矩阵。 8.2.1 符号变量 在MATLAB中创建符号常量和变量的函数为sym()和syms(),两函数的主要区别在于前者每次只能创建一个符号变量,而后者可以同时创建多个符号变量。 函数sym()的调用格式为: x = sym(x):创建符号变量x,无需对变量x赋值,在以后的运算中直接对符号变量x进行操作,返回的结果为带符号的表达式,而非数值结果。 x = sym(x,real):创建符号变量x,并设置其为实体型。 x = sym(x,unreal):创建符号变量x,并设置其为非实体型。 8.2.2 符号常量 符号常量是不含变量的符号对象,符号常量看上去类似于数值常量,但与一般常量不同的是,对符号常量的操作,可以得到更为精确的符号接,而非数值运算的近似解。 符号常量的定义也使用函数sym(),当函数sym()的输入对象为常数或常数的字符串时,即构建了一个符号常量,同时对于符号常量也可以进行数值精度的设置,控制符号常量返回的精度。 S = sym(A,flag):其中参数A为创建的符号常量,参数flag用于设置符号常量的返回精度,参数值可取d(最接近的十进制浮点数),f(最接近的十六进制浮点数),r(最接近的有理数形式,默认),e(最接近的机器浮点误差的有理值)。 8.2.2 符号表达式 符号表达式为含有符号对象(符号常量、符号变量)的表达式,其创建方法如下。 1.利用函数sym()直接创建 函数sym()可用于直接创建符号表达式,当函数的输入参数为表达式时,即可创建符号表达时,其调用格式如下。 sym(A):其中A为字符串的表达式,必须被单引号引用。 2.利用符号对象创建 符号表达式也可以通过创建的符号对象来实现,当把已定义的符号变量或者符号常量连接为表达式,即可完成符号表达式的创建。 8.2.3 符号矩阵 由符号对象构建的矩阵为符号矩阵,符号矩阵的格式与一般的数据矩阵类似,其创建方法如下。 1.利用函数sym()直接创建 函数sym()的输入为符号矩阵,矩阵各元素可以为符号常量、符号变量或者符号表达式,各元素的长度不要求一样长。 2.利用已有的符号对象组合创建 与一般数据矩阵的定义类似,通过直接创建的方法,矩阵行间元素以空格或逗号相隔,列间以分号相隔,矩阵的元素为已定义的符号对象。 8.2.4 符号函数 在MATLAB中创建符号函数的方法主要有: 符号表达式法:创建符号表达式,赋值给的变量即为符号函数。 M文件的方法:将需要创建符号函数的函数编辑为独立的M文件,在使用的时候直接调用该M文件即可。 对于比较复杂的符号函数,建议使用M文件的方式创建,而符号表达式的方法适合用于需要快速创建简单符号函数的场合。下面以具体的实例详细叙述符号函数的使用。 8.3 符号表达式的基本操作 符号表达式为重要的符号对象,符号运算的很多操作都是基于符号表达式进行的。本节将主要介绍符号表达式的基本操作,包括符号表达式的化简、符号表达式的合并与分解、符号表达式的代数运算、符号表达式的分子分母提取、符号表达式的自变量的确定。 8.3.1 符号表达式的化简 对于一些比较复杂的符号表达式,MATLAB提供了函数simplify()用于符号表达式化简,可以方便用户阅读符号表达式。函数simplify()的调用格式如下。 8.3.2 符号表达式的合并与分解 MATLAB中提供了一系列的函数可对符号表达式进行合并和分解,用户可根据实际需要选择相应的函数操作,下面简要介绍这些函数的使用方法。 1.合并同类项 函数collect()用于合并符号表达式中的
文档评论(0)