1.什么是符号数学工具箱?
符号数学工具箱是Matlab针对符号对象的运算功能,它引入了一种特殊的数据类型 - 符号对象;
该数据类型包括符号数字,符号变量,符号表达式和符号函数,还包含符号矩阵,以及上述变量组成的符号数组等,符号对象也成为符号类型;
符号数学工具箱提供求解、绘图和操作符号数学方程的功能,针对符号类型数据的运算,称为符号运算。
2.为什么要使用符号运算?
首先说Matlab里常规的数值型类数据(浮点型)在存储和运算时,一般使用小数近似,例如10/3=3.3333,由于计算机硬件存储限制,结果3.3333并不是真实的结果3又1/3,但在一般应用中,这不是什么大问题;
当特别关注运算的精确度时,上述问题就变成了大问题;
于是,符号运算应运而生,它采用符号化的方式存储变量,例如上述10/3,采用符号运算结果等于10/3,是的,分数的形式;
3.创建符号对象(变量)
符号变量声明(创建)后可直接使用,无输出结果,但工作区会存储;
创建符号变量使用函数sym、syms
程序示例:
sym('x') %语法1
syms x %语法2
syms x y z %创建多个符号变量
sym('x',[1 5]) %创建符号变量x1/x2/x3/x4/x5
4.符号类型和数值类型的精度差别
程序示例:
1/6 %双精度浮点型1/6,在Matlab中使用小数表达0.1667
x=sym(1/6) %创建符号变量,分数形式表达1/6
sin(pi) %双精度浮点pi值计算sin值,有舍入误差1.2246e-16
sin(sym(pi)) %对符号对象数值pi求sin值,完整表达0
5.符号表达式
程序示例:
syms x y z
f=2*x+1 %符号表达式
g=x*y+z
6.符号函数
符号函数的用法与常规的函数用法相同,差异在于处理的数据类型不同,用符号对象运算时,需要首先声明符号对象,并且可以形式化的表达结果。
程序示例:
syms x
f(x)=2*x+1 %符号函数
f(1) %符号函数的调用,结果是符号对象3
syms f(x,y) %直接创建(声明)没有函数表达式的函数
f(x,y) %调用
f(1,2) %运算结果形式f(1,2)
7.符号矩阵
符号矩阵的用法与常规的矩阵用法相同,差异在于处理的数据类型不同,用符号对象运算时,需要首先声明符号对象,并且可以形式化的表达结果。
程序示例:
syms a b c d %声明符号变量
A=[a b;c d] %符号矩阵
B=[a 1;c 3]
sum(A) %符号矩阵运算,与常规矩阵算法相同
sum(B)
sym('x',[2 2]) %创建2行2列矩阵,自动添加下标
sym('x%d%d',[2 2]) % 返回结果[x11, x12;x21, x22]
sym('x%d2018%d',[2 2]) %2个下标中间添加数字
相关内容推荐
11.1/Matlab解方程/solve基本用法/不会的举手
11.18 Matlab非线性方程组和矩阵方程求解fsolve数学建模
13.1/Matlab计算极限 微积分 导数
13.10 Matlab数值积分integral、integral2、vpaintegral
14.1 Matlab解微分方程
14.5/Matlab解微分方程组/简单到不想说话
25.1 快速上手朴素贝叶斯算法分类识别及其Matlab编程代码实例
当Matlab绘图达到张三疯的水平,是什么感受?
31.17 干货汇总Matlab绘图/三维线图/三维柱状图/三维饼图/函数三维图
35.24 Matlab搜索路径(学Matlab必过的槛)
37.4 Matlab AppDesigner 设计案例:学生信息注册系统,编程演示列表框和下拉框的用法,初学者很友好
36.1 Matlab GUI 界面设计初学者光速入门
38.7 论文复现:图表数据提取及公式拟合
38.6 从图表变化趋势上提取曲线坐标数据(简单高效)
End