第十一章:MATLAB符号运算
在数学,物理学,力学等各种学科和工程应用中,经常会遇到符号运算的问题
11.1. 符号与数值
符号运算是matlab数值运算的扩展,在运算过程中以符号表达式或者符号矩阵作为运算对象,实现了符号计算和数值计算的相互结合,应用更加灵活
11.1.1. 符号与数值间的转换
符号表达式和数值表达式的相互转换是通过函数eval和sym实现的
(1)eval函数:将符号表达式转换成为数值表达式
(2)sym函数:将数值表达式转换成为符号表达式
实例-数值与符号转换
11.1.2. 符号表达式与数值表达式的精度设置
符号表达式和数值表达式分别使用函数digits和vpa来进行精度设置
实例-魔方矩阵的数值解
实例-稀疏矩阵的数值解
实例-伴随矩阵的数值解
实例-托普利兹矩阵的数值解
11.2. 符号矩阵
符号矩阵和符号向量中的元素都是符号表达式,符号表达式是由符号变量和数值组成的
11.2.1. 符号矩阵的创建
符号表达式的元素是任何不带等号的符号表达式,各符号表达式的长度也是可以不同
生成符号矩阵的方法有三种:
1. 直接输入
(2)用sym函数创建符号矩阵
实例-创建符号矩阵
创建符号表达式,首先创造符号变量,然后使用变量进行操作
实例-显示精度
实例-函数符号矩阵
实例-符号矩阵赋值
在matlab中,数值矩阵不能直接参与符号运算,必须先转化为符号矩阵
11.2.2. 符号矩阵的其他运算
与数值矩阵一样,符号矩阵也可以进行转置,求逆等运算,但是符号矩阵与数值矩阵的函数不同
实例-符号矩阵的转置
实例-符号矩阵的行列式
实例-符号矩阵的逆运算
实例-符号矩阵的求秩
符号函数的常用函数运算
11.2.3. 符号多项式的简化
符号工具箱中提供了符号矩阵因式分解,展开,合并,简化及通分等符号操作函数
实例-表达式因式分解
实例-符号矩阵因式分解
实例-幂函数的展开
符号简化&分式通分
实例-提取表达式的分子和分母
实例-秦九韶型
11.3. 综合实例–符号矩阵
矩阵的应用不单单是数值的运算,还包括转换成为符号矩阵,进行符号运算