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 =

  int32

   0 +   1074003968i

交互式求解ODE

新版本可使用实时编辑器中的求解 ODE (Solve ODE)任务以交互的方式求解常微分方程组。

求解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:100
    d = 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:100
    d = 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:3e3
   median(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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/780649.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】压缩命令——gzip,bzip2,xz

1.压缩文件的用途与技术 你是否有过文件太大,导致无法以正常的E-mail方式发送?又或学校、厂商要求使用CD或DVD来做数据归档之用,但是你的单一文件却都比这些传统的一次性存储媒介还要大,那怎么分成多块来刻录?还有&am…

[搭建个人网站] 云服务器 or 本地环境搭建

别人没有的,你有,你就牛。 面试,吹牛皮的时候 都可以拉出来溜溜 本文介绍2种搭建网站模式方式:区别嘛(花钱跟不花钱) 花钱: 1. 先购买个域名。。(这里就不多介绍了,随便…

昇思学习打卡-9-ResNet50图像分类

文章目录 网络介绍数据可视化部分网络实现Building Block结构BottleNet模块 模型训练推理结果可视化学习总结优点不足 网络介绍 在ResNet网络提出之前,传统的卷积神经网络都是将一系列的卷积层和池化层堆叠得到的,但当网络堆叠到一定深度时,…

STM32崩溃问题排查

文章目录 前言1. 问题说明2. STM32(Cortex M4内核)的寄存器3. 崩溃问题分析3.1 崩溃信息的来源是哪里?3.2 崩溃信息中的每个关键字代表的含义3.3 利用崩溃信息去查找造成崩溃的点3.4 keil5中怎么根据地址找到问题点3.5 keil5上编译时怎么输出…

C++模板元编程(二)——完美转发

完美转发指的是函数模板可以将自己的参数“完美”地转发给内部调用的其它函数。所谓完美,即不仅能准确地转发参数的值,还能保证被转发参数的左、右值属性不变。 文章目录 场景旧的方法新的方法内部实现参考文献 场景 思考下面的代码: templ…

深度学习之网络构建

目标 选择合适的神经网络 卷积神经网络(CNN):我们处理图片、视频一般选择CNN 循环神经网络(RNN):我们处理时序数据一般选择RNN 超参数的设置 为什么训练的模型的错误率居高不下 如何调测出最优的超参数 …

【pytorch20】多分类问题

网络结构以及示例 该网络的输出不是一层或两层的,而是一个十层的代表有十分类 新建三个线性层,每个线性层都有w和b的tensor 首先输入维度是784,第一个维度是ch_out,第二个维度才是ch_in(由于后面要转置),没有经过softmax函数和…

C++ 引用——引用的本质

本质:引用的本质在c内部实现是一个指针常量 C推荐用引用技术,因为语法方便,引用本质是指针常量,但是所有的指针操作编译器都帮我们做了 示例: 运行结果:

C++初学者指南-4.诊断---valgrind

C初学者指南-4.诊断—Valgrind Valgrind(内存错误检测工具) 检测常见运行时错误 读/写释放的内存或不正确的堆栈区域使用未初始化的值不正确的内存释放,如双重释放滥用内存分配函数内存泄漏–非故意的内存消耗通常与程序逻辑缺陷有关&#xf…

水箱高低水位浮球液位开关工作原理

工作原理 水箱高低水位浮球液位开关是一种利用浮球随液位升降来实现液位控制的设备。其基本原理是浮球在液体的浮力作用下上下浮动,通过磁性作用驱动与之相连的磁簧开关的开合,从而实现液位的高低控制和报警。当液位升高时,浮球上浮&#xf…

cmake find_package 使用笔记

目录 1 find_package2 config mode2.1 搜索的文件名2.2 搜索路径 3 module mode3.1 搜索的文件名3.2 搜索路径 参考 1 find_package 这是官方文档 下面是学习总结: 首先是find_package的作用是什么?引入预编译的库。 find_package有两种模式&#xff1a…

C语言 指针和数组——指针和二维数组之间的关系

目录 换个角度看二维数组 指向二维数组的行指针 按行指针访问二维数组元素 再换一个角度看二维数组 按列指针访问二维数组元素 二维数组作函数参数 指向二维数组的行指针作函数参数 指向二维数组的列指针作函数参数​编辑 用const保护你传给函数的数据 小结 换个角度看…

使用antd的<Form/>组件获取富文本编辑器输入的数据

前端开发中,嵌入富文本编辑器时,可以通过富文本编辑器自身的事件处理函数将数据传输给后端。有时候,场景稍微复杂点,比如一个输入页面除了要保存富文本编辑器的内容到后端,可能还有一些其他输入组件获取到的数据也一并…

Win10安装MongoDB(详细版)

文章目录 1、安装MongoDB Server1.1. 下载1.2. 安装 2、手动安装MongoDB Compass(GUI可视工具)2.1. 下载2.2.安装 3、测试连接3.1.MongoDB Compass 连接3.2.使用Navicat连接 1、安装MongoDB Server 1.1. 下载 官网下载地址 https://www.mongodb.com/try/download/community …

『大模型笔记』《Pytorch实用教程》(第二版)

『大模型笔记』《Pytorch实用教程》(第二版) 文章目录 一. 《Pytorch实用教程》(第二版)1.1 上篇1.2 中篇1.3 下篇1.4 本书亮点1.5 本书内容及结构二. 参考文献🖥️ 配套代码(开源免费):https://github.com/TingsongYu/PyTorch-Tutorial-2nd📚 在线阅读(开源免费)…

nginx相关概念(反向代理、负载均衡)

1 Nginx 是什么 Nginx是一款轻量级的Web 服务器,其特点是占有内存少,并发能力强 2 Nginx 反向代理 正向代理代替客户端去发送请求反向代理代替服务端接受请求 2.1 正向代理 若客户端无法直接访问到目标服务器 server 则客户端需要配置代理服务器 pr…

正则表达式 先行断言 \S {} 示例

目录 数据准备一. 先行断言1.1 正向先行断言1.2 负向先行断言 二. 配合 {} 和 \S 使用2.1 匹配一个任意非空白字符2.2 匹配任意多个非空白字符2.3 匹配3个非空白字符2.4 匹配至少3个非空白字符2.5 匹配0~3个非空白字符 数据准备 ⏹文件1 0561-10 AAA 123 dfg 345 sss 0561-2…

【电路笔记】-AB类放大器

AB类放大器 文章目录 AB类放大器1、概述2、AB类放大器介绍3、AB类放大器效率4、偏置方法4.1 电压偏置4.2 分压网络4.3 电位器偏置4.4 二极管偏置5、二极管网络和电流源6、AB类放大器的电源分配7、总结1、概述 A类放大器提供非常好的输出线性度,这意味着可以忠实地再现信号,但…

数据结构之“队列”(全方位认识)

🌹个人主页🌹:喜欢草莓熊的bear 🌹专栏🌹:数据结构 前言 上期博客介绍了” 栈 “这个数据结构,他具有先进后出的特点。本期介绍“ 队列 ”这个数据结构,他具有先进先出的特点。 目录…

【无标题】ubuntu的安装和登录

1.安装ubuntu系统并允许root用户登录 一、安装ubuntu分为以下几个步骤: a、在官方网站下载镜像:https://ubuntu.com/ b、选择安装模式为:Try or install Ubuntu (体验或安装) c、选择体验系统或安装系统&#xff1a…