一:符号与数值
1.符号与数值间的转换
符号表达式与数值表达式的相互转换主要是通过函数eval和sym实现的
2.符号表达式与数值表达式精度设置
符号表达式与数值表达式的精度设置分别为digits和vpa来实现,调用格式如下:
digits(D) 设置有效数字个数为D的近似解精度
vpa(S) 符号表达式S在digits函数设置的精度下的数值解
vpa(S,D) 符号表达式S在digits函数设置的有效数字个数为D的近似解精度下的数值解
二:符号矩阵的创建
1.直接输入
直接输入符号矩阵,符号矩阵的每一行都要用方括号括起来,保证同一行各行元素的字符串长度相同。
2.sym函数创建符号矩阵
sym命令调用格式
sym('x') 创建变量符号x
sym('A',n) 创建一个n×n符号矩阵,充满自动生成的元素
sym('a',n) 创建一个由n个自动生成的元素组成的符号数组
符号表达式的常见格式与易错写法
正确格式: 错误格式:
syms x;x+1 sym('x+1')
exp(sym(pi)) sym('exp(pi)')
syms f(var1,...varN) f(var1,...varN)=sym('f(var1,...varN)')
3.数值矩阵转化为符号矩阵
在MATLAB中,数值矩阵不能直接参与符号运算,所以必须先转化为符号矩阵
三:符号矩阵的其他运算
1.转置运算
转置运算可以通过符号‘或者函数transpose来实现
B=A.'
B=transpose(A)
2.符号矩阵的行列式运算
可以通过函数determ或det来实现
调用格式为d=det(A)
3.符号矩阵的逆运算
调用格式为inv(A)
4.符号矩阵的求秩运算
调用格式为rank(A)
5.符号矩阵的常用函数运算
矩阵的特征值和特征向量运算:通过函数eig和eigensys来实现
符号矩阵的奇异值运算:可以通过函数svd、singavals来实现
符号矩阵的若尔当标准形运算:可以通过函数Jordan来实现
四:符号多项式的简化
1.因式分解
通过函数factor来实现
调用格式为factor(S)
2.符号矩阵的展开
调用格式:expand(S)
3.符号简化
通过函数simple和simplify来实现
调用格式:
simple(S) 对表达式进行多种不同算法进行简化
[r how]=simple(S) 返回的r为简化型,how为简化过程中使用的方法
simplify 简化符号矩阵的每一个元素
4.分式通分
使用函数numden来实现
[n,d]=numden(A)
5.符号表达式的“秦九韶型”重写
调用格式:horner(P)