当前位置: 首页 > ds >正文

Matlab自学笔记五十四:符号数学工具箱和符号运算、符号求解、绘图

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

http://www.xdnf.cn/news/5795.html

相关文章:

  • 解决vue create 创建项目,不能使用上下键选择模板的问题
  • Redis集群模式、持久化、过期策略、淘汰策略、缓存穿透雪崩击穿问题
  • Python-AI调用大模型 给出大模型人格案例
  • git如何将本地 dev 分支与远程 dev 分支同步
  • ros1+docker环境快速搭建
  • 面试题 - Redis 为什么要RDB 和 AOF两种持久化方式?
  • Windows DOS下的常用命令 及 HTML
  • 如何使用快捷键打开 Microsoft Word 和其他 Windows 应用程序
  • Leetcode-BFS问题
  • 消防设施操作员备考练习题库及答案解析
  • MCP 入门实战:用 C# 开启 AI 新篇章
  • qt命名空间演示
  • SAGAR线上网页程序生成准随机结构(SQS)
  • IP 地址、银行卡等多维数据于风险控制的作用
  • 下载知网外文文献全文的方法
  • cs224w课程学习笔记-第11课
  • ComfyUI的K采样器参数详解:实战演示
  • 青少年编程与数学 02-019 Rust 编程基础 07课题、字符串
  • Linux常用命令(持续完善)
  • DAY05:深入解析生命周期与钩子函数
  • 编写一个处理txt的loader插件,适用于wbepack
  • MCU开启浮点计算FPU
  • 【Pandas】pandas DataFrame cov
  • tabs切换#
  • JVM之垃圾回收器
  • Java SpringMVC 和 MyBatis 整合关键配置详解
  • 步进电机、伺服电机与直流无刷电机的高速运动性能对比及技术瓶颈分析
  • Github 2025-05-12 开源项目周报 Top15
  • Feed流推送之订阅推送
  • ChromeDriver 技术生态与应用场景深度解析