1、第6讲 符号计算,符号计算是数字运算的自然扩展,其特点包括:不受计算误差的困扰;计算可以给出完全正确的封闭解或任意精度的数值解;计算的指令比较简单,所需要的时间较长。,6.1 符号计算入门,1求解代数方程2求解微分方程3计算导数4计算定积分,自然科学理论分析中的公式、关系式及其推导是符号计算要解决的问题。MATLAB数值计算的对象是数值,而符号计算的对象则是非数值的符号字符串。,1求解代数方程,2求解微分方程,3计算导数,4计算定积分,6.2 符号对象的创建和使用,6.2.1 创建符号对象和表达式6.2.2 符号对象的基本运算,在符号计算中,需定义一种新的数据类型sym类。sym类的实例就是符
2、号对象,符号对象是一种数据结构,用来存储代表符号变量、表达式和矩阵的字符串。,6.2.1 创建符号对象和表达式,1符号常量 2符号变量3符号表达式 4符号矩阵,函数sym()和命令syms创建符号常量、变量、函数以及表达式,函数class()检验符号对象类型。 (1)函数sym() 函数sym()的具体使用方法如下: ssym(A,flag); ssym(A,flag)。,(2)命令syms 命令syms的具体使用方法如下: syms s1, sn flag。 (3)函数class() 函数class()的具体使用方法如下: strclass(object)。,1符号常量,符号常量是一种符号对
3、象。数值常量如 果作为函数命令sym()的输入参量,就建立 了一个符号对象符号常量。,2符号变量,符号变量通常是由一个或几个特定的字符表示。符号变量的命名规则如下所示:变量名可以由英文字母、数字和下划线组成;变量名应以英语字母开头;,组成变量名的字母长度不大于31个;区分大小写。在MATLAB中,用函数sym()和命令syms来创建符号变量。,3符号表达式,符号表达式是由以下部分组成的符号对象:符号常量;符号变量;符号运算符;专用函数。,4符号矩阵,元素是符号对象的矩阵叫做符号矩阵。,6.2.2 符号对象的基本运算,1基本运算符2关系运算符3三角函数、双曲函数以 及它们的反函数,4指数、对数函
4、数5复数函数6矩阵函数,运算符“”、“”、“*”、“”、“/”、“”分别实现矩阵的加、减、乘、左除、右除和求幂运算。运算符“*”、“/”、“”、“”分别实现“元素对元素”的数组乘、左除、右除和求幂运算。运算符“”、“”分别实现矩阵的共轭转置和非共轭转置。,1基本运算符,运算符“”和“”分别对运算符两边的对象进行“相等”、“不等”的比较。当事实为“真”时,返回结果1;当事实为“假”时,返回结果0。,2关系运算符,除函数atan2()仅能用于数值计算外,其余的三角函数、双曲函数及它们的反函数都能用于符号计算。,3三角函数、双曲函数及其反函数,4指数、对数函数,函数sqrt()、exp()、expm()、log()、log2()和log10()都能用于符号计算。,