MATLAB 2024b 更新了些什么?
MATLAB 2024b版本已经推出了预览版,本期介绍一些MATLAB部分的主要的更新内容。
帮助浏览器被移除
在此前的版本,当我们从MATLAB中访问帮助文档时,默认会通过MATLAB的帮助浏览器(Help browser)。
2024b版本开始,帮助文档会使用系统的默认浏览器开启。
实时编辑器字体
2024b版本可以使用“自定义样式”对话框在实时编辑器中自定义文本和代码样式的字体、大小、颜色和格式。
要自定义文本或代码样式,需要在实时编辑器选项卡的文本部分中单击自定义样式按钮 。
然后,选择要自定义的样式并更改所选样式的字体、大小、颜色和格式。
新的MATLAB桌面
新桌面已经Beta测试了一段时间,在2024b版本应该准备转正了。
MATLAB 的新桌面包括新功能和更新功能,例如:
- 对桌面、绘图和应用程序的深色主题支持
- 更新的布局
- 扩展的搜索功能
- 带有工具条、集成侧面板和新选项卡式容器的新图形窗口体验
- 用于实时脚本的新纯文本文件格式
- 新的调试器(Debugger)页面和源代码管理页面
- 增强的 MATLAB 项目工作流程
- 改进的屏幕阅读器支持
当然其他版本的MATLAB也可以单独下载体验新版本桌面,下载地址:
https://www.mathworks.com/matlabcentral/fileexchange/119593-new-desktop-for-matlab-beta.
dbstop
函数更新
dpstop
函数在 MATLAB 中用于设置断点,以便调试代码。
在2024b版,dbstop
可在显示未被分号(;)抑制的输出时暂停执行。
当线程不是由分号(;)抑制,其他原因如disp或fprintf显示的输出不会停止执行。
错误信息位置提示
在支持的情况下,MATLAB 会在导致错误的代码下方添加插入符号 ( ^
),帮助快速定位代码中出错的位置。
typecast
函数更新
在新版本中typecast
函数支持使用 “like” 语法进行数据类型转换并支持逻辑、字符向量和复杂输入。
可以通过typecast(X,"like",p)
将 X
的位模式转换为与原型 p
相同的数据类型和复杂性(实数或复数)。
例如,将双精度数的位模式转换为与 p
相同的数据类型和复杂度:
p = int32(2 + 3i);
Y = typecast(2.5,"like",p)Y =int320 + 1074003968i
交互式求解ODE
新版本可使用实时编辑器中的求解 ODE (Solve ODE)任务以交互的方式求解常微分方程组。
求解ODE任务支持:
- 指定 ODE 结构
- 定义高级问题信息
- 选择求解器
- 结果的可视化
要将Solve ODE任务添加到实时脚本可通过以下方式:
- 在实时编辑器选项卡上,选择任务(Task) > 求解 ODE(Solve ODE) 。
- 在脚本的代码块中,键入相关关键字,例如
ode
,从建议的代码补全中选择“求解 ODE”。
新增小提琴图
小提琴图(violin plots)一般用于显示数据分布及其概率密度。 这种图表结合了箱形图和密度图的特征,主要用来显示数据的分布形状。
通过violinplot
函数可以创建小提琴图,具体语法包括:
%为矩阵 ydata 的每一列创建小提琴图。如果 ydata 是向量,则 violinplot 创建单个小提琴图。
violinplot(ydata)%根据 xgroupdata 中的唯一值对向量 ydata 中的数据进行分组,并将每组数据绘制为单独的小提琴图。 xgroupdata 确定每个小提琴图沿 x 轴的位置。 ydata 必须是向量,并且 xgroupdata 必须与 ydata 具有相同的长度。
violinplot(xgroupdata,ydata)%创建 yvar 中数据的小提琴图,并按 xvar 中的数据分组,其中 xvar 和 yvar 是表 tbl 中的变量。您可以通过为 xvar 指定一个变量并为 yvar 指定一个变量来绘制一组数据。要绘制多个数据集,请为 xvar 、 yvar 或两者指定多个变量。如果两个参数都指定多个变量,则它们必须指定相同数量的变量。
violinplot(tbl,xvar,yvar)%使用颜色来区分小提琴图。
violinplot(___,GroupByColor=cgroupdata)
详细用法可参考:
https://ww2.mathworks.cn/help/releases/R2024b/matlab/ref/violinplot.html
新增罗盘图
compassplot
函数可以绘制一组或多组从极坐标原点出发的箭头。
相较于compass
函数,compassplot
函数使用 PolarAxes
对象,该对象提供更多自定义选项。
具体语法包括:
%在极坐标中绘制源自原点的箭头(矢量)。theta 值控制箭头方向(以弧度为单位)。rho 值将箭头大小控制为半径值。
compassplot(theta,rho)%绘制复数Z
compassplot(Z)%绘制表 tbl 中的变量thetavar和rhovar 。
compassplot(tbl,thetavar,rhovar)
详细用法可参考:
https://ww2.mathworks.cn/help/releases/R2024b/matlab/ref/violinplot.html
新增3D坐标中的切片
constantplane
函数可以创建无限平面以突出显示 3D 绘图中的感兴趣区域。
该函数默认创建半透明的灰色平面,可以通过设置属性来更改颜色和透明度。
详细用法可参考:
https://ww2.mathworks.cn/help/releases/R2024b/matlab/ref/constantplane.html
一些性能提升
datetime
的性能提升
datetime
在解析包含本地化名称或时区偏移的常见格式时,格式解析性能显着加快。
官方使用的测试案例为:
%%创建一个日期字符串数组,然后使用 datetime 函数解析并转换字符串数组。
function timingTest
s = "23-Apr-2024 11:30:" + randi([10,59],10000,1);
for i = 1:100d = datetime(s, ...InputFormat="dd-MMM-uuuu HH:mm:ss", ...Locale="en_US");
end
end
结果:
R2024a: 4.75 s
R2024b: 0.27 s
%创建一个时区偏移量为 -0400 的日期字符串数组,然后使用 datetime 函数解析并转换字符串数组。
function timingTest
s = "2024-04-23 11:32:48." + randi(999,10000,1) + " -0400";
for i = 1:100d = datetime(s, ...InputFormat="uuuu-MM-dd HH:mm:ss.SSS Z", ...TimeZone="local");
end
end
结果:
R2024a: 6.35 s
R2024b: 1.10 s
提高计算加权中位数的性能
提升了median
函数在指定加权方案时的性能。
例如:
%计算 600×10 矩阵的加权中值
function timingTest
A = rand(600,10);
W = rand(600,1);for i = 1:3e3median(A,Weights=W);
end
end
结果:
R2024a: 1.00 s
R2024b: 0.55 s
改进了确定哪些数组元素是质数的性能
isprime
函数在确定数组中的整数元素是否为质数时的性能得到了提升。
例如,检查一个包含一百万个整数值向量的元素是否为质数,速度提升约20倍。
function timingTest
x = 1:1e6;
tf = isprime(x);
end
结果:
R2024a: 2.81 s
R2024b: 0.14 s
总结
以上只是部分更新内容,完整版的更新日志请参考:
https://www.mathworks.com/help/releases/R2024b/matlab/release-notes.html
相关文章:

MATLAB 2024b 更新了些什么?
MATLAB 2024b版本已经推出了预览版,本期介绍一些MATLAB部分的主要的更新内容。 帮助浏览器被移除 在此前的版本,当我们从MATLAB中访问帮助文档时,默认会通过MATLAB的帮助浏览器(Help browser)。 2024b版本开始&…...

SSM高校教师教学质量评估系统-计算机毕业设计源码03344
摘要 在高等教育中,教学质量是培养优秀人才的关键。为了提高教学质量,高校需要建立一套科学、有效的教师教学质量评估系统。本研究采用 SSM技术框架,旨在开发一款高校教师教学质量评估系统。 SSM框架作为一种成熟的Java开发框架,具…...

【Linux进阶】文件系统5——ext2文件系统(inode)
1.再谈inode (1) 理解inode,要从文件储存说起。 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。操作系统读取硬盘的时候,不会一个个…...

华为云简介
前言 华为云是华为的云服务品牌,将华为30多年在ICT领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,赋能应用、使能数据、做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心…...

Doris数据库---建表、调整表结构操作
一、简介 本文章主讲创建 Doris 自维护的表的语法,以下为本人最近为数据中台接入doris所踩的坑及其解决方案,欢迎点评。 二、doris建表语法: 官网建表语法网址链接:CREATE-TABLE - Apache Doris 官网建表语法如图所示…...

《昇思 25 天学习打卡营第 11 天 | ResNet50 图像分类 》
《昇思 25 天学习打卡营第 11 天 | ResNet50 图像分类 》 活动地址:https://xihe.mindspore.cn/events/mindspore-training-camp 签名:Sam9029 计算机视觉-图像分类,很感兴趣 且今日精神颇佳,一个字,学啊 上一节&…...

实现多数相加,但是传的参不固定
一、情景 一般实现的加法和减法等简单的相加减函数的话。一般都是写好固定传的参数。比如: function add(a,b) {return a b;} 这是固定的传入俩个,如果是三个呢,有人说当然好办! 这样写不就行了! function add(a…...

Windows环境安装Redis和Redis Desktop Manager图文详解教程
版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl Redis概述 Redis是一个开源的高性能键值对数据库,以其卓越的读写速度而著称,广泛用于数据库、缓存和消息代理。它主要将数据存储在内存中࿰…...

SQL Server 2022的组成
《SQL Server 2022从入门到精通(视频教学超值版)》图书介绍-CSDN博客 SQL Server 2022主要由4部分组成,分别是数据库引擎、分析服务、集成服务和报表服务。本节将详细介绍这些内容。 1.2.1 SQL Server 2022的数据库引擎 SQL Server 2022的…...

【大语言模型系列之Transformer】
🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…...
操作系统-懒汉式单例模式
懒汉式单例模式的主要好处有以下几点: 1.资源利用效率高: 只有在第一次调用 getInstance() 方法时才创建实例对象,而不是在类加载时就创建。这可以节省系统资源。 2.延迟加载: 实例对象的创建被延迟到第一次使用时,可以减少系统启动时的资源消耗。 3.线程安全: 这种…...

设计模式探索:策略模式
1. 什么是策略模式(Strategy Pattern) 定义 策略模式(Strategy Pattern)的原始定义是:定义一系列算法,将每一个算法封装起来,并使它们可以相互替换。策略模式让算法可以独立于使用它的客户端而…...
提升效能:Symfony 性能优化实用指南
Symfony 是一个功能丰富的 PHP Web 框架,但在构建高性能应用程序时,开发者需要考虑多种性能优化策略。本文将探讨一系列实用的 Symfony 性能优化技巧,帮助开发者提高应用程序的响应速度和整体性能。 1. 了解 Symfony 缓存机制 Symfony 提供…...

1.pwn的汇编基础(提及第一个溢出:整数溢出)
汇编掌握程度 能看懂就行,绝大多数情况不需要真正的编程(shellcode题除外) 其实有时候也不需要读汇编,ida F5 通常都是分析gadget,知道怎么用, 调试程序也不需要分析每一条汇编指令,单步执行然后查看寄存器状态即可 但…...

迎接AI新时代:GPT-5即将登场的巨大变革与应用前瞻
迎接AI新时代:GPT-5即将登场的巨大变革与应用前瞻 💎1. GPT-5 一年半后发布:AI新时代的来临1.1 GPT-5的飞跃:从高中生到博士生 💎2. GPT-5的潜在应用场景💎2.1 医疗诊断和健康管理💎2.2 教育领域…...

封锁-封锁模式(共享锁、排他锁)、封锁协议(两阶段封锁协议)
一、引言 1、封锁技术是目前大多数商用DBMS采用的并发控制技术,封锁技术通过在数据库对象上维护锁来实现并发事务非串行调度的冲突可串行化 2、基于锁的并发控制的基本思想是: 当一个事务对需要访问的数据库对象,例如关系、元组等进行操作…...

跨境干货|最新注册Google账号方法分享
谷歌账号对做跨境外贸业务的人来说是刚需,目前来说大部分的海外社媒平台、工具都可以用谷歌账号来注册。但是仍然有很多朋友并不知道如何注册这个谷歌账号,今天就来给大家分享2个注册谷歌账号的方法,一个是手机号注册,一个是如何跳…...

MySQL第三天作业
一、在数据库中创建一个表student,用于存储学生信息 CREATE TABLE student( id INT PRIMARY KEY, name VARCHAR(20) NOT NULL, grade FLOAT ); 1、向student表中添加一条新记录 记录中id字段的值为1,name字段的值为"monkey"…...
网络安全应急处理流程
网络安全应急处理流程是指在发生网络安全事件时,组织应采取的一系列措施,以快速响应、控制、恢复和调查网络安全事件,确保业务连续性和数据安全。以下是一个详细的网络安全应急处理流程: 1. 准备阶段 目标:建立和维护…...

昇思25天学习打卡营第12天 | LLM原理和实践:MindNLP ChatGLM-6B StreamChat
1. MindNLP ChatGLM-6B StreamChat 本案例基于MindNLP和ChatGLM-6B实现一个聊天应用。 ChatGLM-6B应该是国内第一个发布的可以在消费级显卡上进行推理部署的国产开源大模型,2023年3月就发布了。我在23年6月份的时候就在自己的笔记本电脑上部署测试过,当…...

网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
漏洞概览 漏洞名称:Apache Flink REST API 任意文件读取漏洞CVE编号:CVE-2020-17519CVSS评分:7.5影响版本:Apache Flink 1.11.0、1.11.1、1.11.2修复版本:≥ 1.11.3 或 ≥ 1.12.0漏洞类型:路径遍历&#x…...
腾讯云V3签名
想要接入腾讯云的Api,必然先按其文档计算出所要求的签名。 之前也调用过腾讯云的接口,但总是卡在签名这一步,最后放弃选择SDK,这次终于自己代码实现。 可能腾讯云翻新了接口文档,现在阅读起来,清晰了很多&…...
安卓基础(Java 和 Gradle 版本)
1. 设置项目的 JDK 版本 方法1:通过 Project Structure File → Project Structure... (或按 CtrlAltShiftS) 左侧选择 SDK Location 在 Gradle Settings 部分,设置 Gradle JDK 方法2:通过 Settings File → Settings... (或 CtrlAltS)…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
redis和redission的区别
Redis 和 Redisson 是两个密切相关但又本质不同的技术,它们扮演着完全不同的角色: Redis: 内存数据库/数据结构存储 本质: 它是一个开源的、高性能的、基于内存的 键值存储数据库。它也可以将数据持久化到磁盘。 核心功能: 提供丰…...
数据库正常,但后端收不到数据原因及解决
从代码和日志来看,后端SQL查询确实返回了数据,但最终user对象却为null。这表明查询结果没有正确映射到User对象上。 在前后端分离,并且ai辅助开发的时候,很容易出现前后端变量名不一致情况,还不报错,只是单…...