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

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

相关文章:

  • LLaMA Factory 深度调参
  • 右值和移动
  • 国产化Excel处理控件Spire.XLS系列教程:如何通过 C# 删除 Excel 工作表中的筛选器
  • 开疆智能Profinet转Canopen网关连接sick RFID读写器配置案例
  • 212. 单词搜索 II【 力扣(LeetCode) 】
  • RDB和AOF的区别
  • Kubernetes vs. OpenShift:深入比较与架构解析
  • Java学习手册:客户端负载均衡
  • Matlab 模糊pid的液压舵机伺服系统
  • 基于微信小程序的城市特色旅游推荐应用的设计与实现
  • Milvus 2.4 使用详解:从零构建向量数据库并实现搜索功能(Python 实战)
  • 记一次redis未授权被种挖矿
  • Java中进阶并发编程
  • langchain4j中使用milvus向量数据库做RAG增加索引
  • 新能源汽车电池加热技术:传统膜加热 vs. 脉冲自加热
  • C++类成员
  • 【技巧】使用frpc点对点安全地内网穿透访问ollama服务
  • Ascend的aclgraph(五)PrimTorch TorchInductor
  • 网页Web端无人机直播RTSP视频流,无需服务器转码,延迟300毫秒
  • Dagster Pipes系列-1:调用外部Python脚本
  • 俄土外长通话讨论俄乌谈判问题
  • 国务院新闻办公室发布《新时代的中国国家安全》白皮书
  • 长沙潮宗街内“金丝楠木老屋文旅博物馆”起火:明火已扑灭,无伤亡
  • 深圳市政协原副主席王幼鹏被“双开”
  • 领证不用户口本,还需哪些材料?补领证件如何操作?七问七答
  • 上报集团社长李芸:发挥媒体优势,让中非民心在数字时代更深层互联互通