收藏
0有用+1
0

MATLAB

美国MathWorks公司出品的商业数学软件
MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析无线通信深度学习图像处理计算机视觉信号处理、量化金融与风险管理、机器人,控制系统等领域。 [1]
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室),软件主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式。 [1]
MATLAB和MathematicaMaple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRANC++JAVA的支持。
软件名称
MATLAB
软件平台
Windows/MacOS/Linux
最近更新时间
2021年9月23日
软件语言
C
开发商
MathWorks.Inc [2]
软件授权
MathWorks.Inc
软件版本
R2021b [3]
软件大小
3.4 GB [4]

发展历程

播报
编辑
20世纪70年代,美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担,用FORTRAN编写了最早的MATLAB。1984年由L碑劝ittle、M匪乃炒oler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市场。到20世纪90年代,M享担洪ATLAB葛狱拘已成为国际控制界的标准计算软件。
MATLAB:统一了用于一维、二维与三维数值积分的函陵堡数并提升了基本数学和内插函数的性能
MATLAB Compiler:可以下载 MATLAB Compiler Runtime (MCR),简化编译后的程序和组件的分发
Image Processing Toolbox:通过亮度指标优化进行自动图像配准
乃匪茅白Statistics Toolbox:增强了使用线性、广义线性和非线性回归进行拟合、预测和绘图的界面
System Identification Toolbox:识别连续时间传递函数
2022年4月6日消息,MATLAB R2022a 原生 Apple Silicon 平台开放测试版是 MATLAB 的早期版本,适用于 Apple Silicon Mac 用户,以评估现有代码和应用程序的执行,并测试第三方集成泪组翻墓担和附加组件。此测试版将持续到2022年8月31日。 [5]
版本更新
版本
建造编号
发布时间
MATLAB 1.0
-
1984
MATLAB 2
-
1986
MATLAB 3
-
1987
MATLAB 3.5
-
1990
MATLAB 4
-
1992
MATLAB 4.2c
R7
1994
MATLAB 5.0
R8
1996
MATLAB 5.1
R9
1997
MATLAB 5.1.1
R9.1
1997
MATLAB 5.2
R10
1998
MATLAB 5.2.1
R10.1
1998
MATLAB 5.3
R11
1999
MATLAB 5.3.1
R11.1
1999
MATLAB 6.0
R12
2000
MATLAB 6.1
R12.1
2001
MATLAB 6.5
R13
2002
MATLAB 6.5.1
R13SP1
2003
MATLAB 6.5.2
R13SP2
2003
MATLAB 7
R14
2004
MATLAB 7.0.1
R14SP1
2004
MATLAB 7.0.4
R14SP2
2005
MATLAB 7.1
R14SP3
2005
MATLAB 7.2
R2006a
2006
MATLAB 7.3
R2006b
2006
MATLAB 7.4
R2007a
2007
MATLAB 7.5
R2007b
2007
MATLAB 7.6
R2008a
2008
MATLAB 7.7
R2008b
2008
MATLAB 7.8
R2009a
2009.3.6
MATLAB 7.9
R2009b
2009.9.4
MATLAB 7.10
R2010a
2010.3.5
MATLAB 7.11
R2010b
2010.9.3
MATLAB 7.12
R2011a
2011.4.8
MATLAB 7.13
R2011b
2011.9.1
MATLAB 7.14
R2012a
2012.3.1
MATLAB 8.0
R2012b
2012.9.11
MATLAB 8.1
R2013a
2013.3.7
MATLAB 8.2
R2013b
2013.9.9
MATLAB 8.3
R2014a
2014.3.6
MATLAB 8.4
R2014b
2014.10.02
MATLAB 8.5
R2015a
2015.3.6
MATLAB 8.6
R2015b
2015.9.3
MATLAB 9.0
R2016a
2016.3
MATLAB 9.1
R2016b
2016.9
MATLAB 9.2
R2017a
2017.3
MATLAB 9.3
R2017b
2017.9
MATLAB 9.4
R2018a
2018.3
MATLAB 9.5
R2018b
2018.9
MATLAB 9.6
R2019a
2019.3
MATLAB 9.7
R2019b
2019.9
MATLAB 9.8
R2020a
2020.3
MATLAB 9.9
R2020b
2020.9
MATLAB 9.10
R2021a
2021.3
MATLAB 9.11
R2021b
2021.9
MATLAB 9.12
R2022a
2022.3
MATLAB 9.13 [6]
R2022b
2022.9
MATLAB 9.14 [6]
R2023a
2023.3
MATLAB 23.2.0 [7]
R2023b
2023.9

软件功能

播报
编辑

应用领域

数值分析
数值和符号计算
工程与科学绘图
控制系统的设计与仿真
数字图像处理
通讯系统设计与仿真
财务与金融工程

重要功能

MATLAB工作界面
·MATLAB®: MATLAB 语言的单元测试框架
·Trading Toolbox™: 一款用于访问价格并将订单发送到交易系统的新产品
·Financial Instruments Toolbox™: 赫尔-怀特、线性高斯和 LIBOR 市场模型的校准和 Monte Carlo 仿真
·Image Processing Toolbox™: 使用有效轮廓进行图像分割、对 10 个函数实现 C 代码生成,对 11 个函数使用 GPU 加速
·Image Acquisition Toolbox™: 提供了用于采集图像、深度图和框架数据的 Kinect® for Windows®传感器支持
·Statistics Toolbox™: 用于二进制分类的支持向量机 (SVM)、用于缺失数据的 PCA 算法和 Anderson-Darling 拟合优度检验
·Data Acquisition Toolbox™: 为 Digilent Analog Discovery Design Kit 提供了支持包
·Vehicle Network Toolbox™: 为访问 CAN 总线上的 ECU 提供 XCP

服务支持

Simulink 产品系列重要功能
·Simulink®: Simulation Performance Advisor,链接库模块的封装,以及通过逻辑表达式控制有效变量
·Simulink: 除 LEGO® MINDSTORMS® NXT、Arduino®、Pandaboard 和 Beagleboard 外,还为 Raspberry Pi™ 和 Gumstix® Overo® 硬件提供了内置支持
·SimRF™: 针对快速仿真和模型加载时间的电路包络求解器
·SimMechanics™: 发布了用于从 CAD 和其他系统导入模型的 XML 架构
·Simulink Design Verifier™: 数组超出边界检查
MATLAB 和 Simulink 的系统工具箱
·Communications System Toolbo Sphere 解码器和 Constellation 框图系统对象
·Computer Vision System Toolbox™: 相机标定立体视觉,Viola-Jones 对象检测培训,FREAK 特征提取和其他新函数
·DSPSystem Toolbox™: 频谱分析仪和逻辑分析示波器,以及时域示波器的触发
·Phased Array System Toolbox™: 极化支持、数组锥化以及针对传感器数组分析、波形分析雷达方程计算的应用程序代码生成和实现
·Simulink Coder™: 减少了从 Stateflow® 调用的 Simulink 函数的数据副本
·Fixed-Point Designer™: 一款结合了 Fixed-Point Toolbox™ 和 Simulink Fixed Point™ 功能的新产品
·HDL Verifier™: 从 MATLAB 生成 HDL 测试工作台

优势特点

播报
编辑
(1) 高效的数值计算符号计算功能,能使用户从繁杂的数学运算分析中解脱出来;
(2) 具有完备的图形处理功能,实现计算结果和编程的可视化;
(3) 友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;
(4) 功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。

编程环境

MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析

简单易用

Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。

强大处理

MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而且经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C++ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。

图形处理

MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。

模块工具

MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。领域,诸如数据采集数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型半物理仿真嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。

程序接口

新版本的MATLAB可以利用MATLAB编译器C/C++数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C++代码。允许用户编写可以和MATLAB进行交互的C或C++语言程序。另外,MATLAB网页服务程序还容许在Web应用中使用自己的MATLAB数学和图形程序。MATLAB的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。工具箱是MATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。

软件开发

开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连接注释等;在输入输出方面,可以直接向Excel和HDF5进行连接。

应用方面

MATLAB 产品族可以用来进行以下各种工作:
●数值分析
●数值和符号计算
●工程与科学绘图
●控制系统的设计与仿真
MATLAB在通讯系统设计与仿真的应用
●通讯系统设计与仿真
●财务与金融工程
●管理与调度优化计算(运筹学
MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB 环境,以解决这些应用领域内特定类型的问题。

工具

常用工具箱
MATLAB包括拥有数百个内部函数的主包和三十几种工具包。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类。
开放性使MATLAB广受用户欢迎。除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包。
常用工具箱
-
Matlab Main Toolbox——matlab主工具箱
Control System Toolbox——控制系统工具箱
Communication Toolbox——通讯工具箱
Financial Toolbox——财政金融工具箱
System Identification Toolbox——系统辨识工具箱
Fuzzy Logic Toolbox——模糊逻辑工具箱
Higher-Order Spectral Analysis Toolbox——高阶谱分析工具箱
Image Processing Toolbox——图象处理工具箱
computer vision system toolbox----计算机视觉工具箱
LMI Control Toolbox——线性矩阵不等式工具箱
Model predictive Control Toolbox——模型预测控制工具箱
μ-Analysis and Synthesis Toolbox——μ分析工具箱
Neural Network Toolbox——神经网络工具箱
Optimization Toolbox——优化工具箱
Partial Differential Toolbox——偏微分方程工具箱
Robust Control Toolbox——鲁棒控制工具箱
Signal Processing Toolbox——信号处理工具箱
Spline Toolbox——样条工具箱
Statistics Toolbox——统计工具箱
Symbolic Math Toolbox——符号数学工具箱
Simulink Toolbox——动态仿真工具箱
Wavelet Toolbox——小波工具箱
DSP system toolbox-----DSP处理工具箱
-
常用函数
-
Matlab内部常数
eps:浮点相对精度
exp:自然对数的底数e
i 或j:基本虚数单位
inf 或Inf:无限大, 例如1/0
nan或NaN:非数值(Not a number),例如0/0,∞/∞
pi:圆周率π
intmax:可表达的最大正整数。
intmin:可表达的最小负整数。
lasterr:存放最新的错误信息
nargin:函数的输入引数个数
realmax:系统所能表示的最大正实数,默认1.7977×10^308
lastwarn:存放最新的警告信息
nargout:函数的输出引数个数
realmin:系统所能表示的最小负实数,默认2.2251e×10^(-308)
MATLAB常用基本数学函数
abs(x):纯量的绝对值或向量的长度
sqrt(x):开平方
angle(z):复数z的相角(Phase angle)
real(z):复数z的实部
conj(z):复数z的共轭复数
imag(z):复数z的虚部
整数
fix(x):向零整数
floor(x):下取整,即舍去正小数至相邻整数
ceil(x):上取整,即加入正小数至相邻整数
rat(x):将实数x化为多项分数展开
rats(x):将实数x化为分数表示
sign(x):符号函数(Signum function)。
当x小于0时,sign(x)=-1
当x等于0时,sign(x)=0
当x大于0时,sign(x)=1。
rem(x,y):求x除以y的余数
gcd(x,y):整数x和y的最大公因数
lcm(x,y):整数x和y的最小公倍数
exp(x) :自然指数
pow2(x):2的指数
log(x):以e为底的对数,即自然对数
log2(x):以2为底的对数
log10(x):以10为底的对数
MATLAB常用三角函数
sin(x):正弦函数
cos(x):余弦函数
tan(x):正切函数
asin(x):反正弦函数
acos(x):反余弦函数
atan(x):反正切函数
atan2(x,y):四象限的反正切函数
sinh(x):双曲正弦函数
cosh(x):双曲余弦函数
tanh(x):双曲正切函数
asinh(x):反双曲正弦函数
acosh(x):反双曲余弦函数
atanh(x):反双曲正切函数
-
-
-
适用于向量的常用函数有
min(x): 向量x的元素的最小值
max(x): 向量x的元素的最大值
mean(x): 向量x的元素的平均值
median(x): 向量x的元素的中位数
std(x): 向量x的元素的标准差
diff(x): 向量x的相邻元素的差
sort(x): 对向量x的元素进行排序(Sorting)
length(x): 向量x的元素个数
norm(x): 向量x的欧氏(Euclidean)长度
sum(x): 向量x的元素总和
prod(x): 向量x的元素总乘积
cumsum(x): 向量x的累计元素总和
cumprod(x): 向量x的累计元素总乘积
dot(x, y): 向量x和y的内积
cross(x, y): 向量x和y的外积
MATLAB基本绘图函数
plot: x轴和y轴均为线性刻度(Linear scale)
loglog: x轴和y轴均为对数刻度(Logarithmic scale)
semilogx: x轴为对数刻度,y轴为线性刻度
semilogy: x轴为线性刻度,y轴为对数刻度
plot绘图函数的参数
字元颜色 字元图线型态
y 黄色. 点
k 黑色o 圆
matlab插值和样条
w 白色x x
b 蓝色+ +
g 绿色* *
r 红色
c 亮青色
: 点线
m 锰紫色
-. 点虚线
-- 虚线
注解
xlabel('Input Value'); % x轴注解
ylabel('Function Value'); % y轴注解
legend('y = sin(x)','y = cos(x)'); % 图形注解
title('Two Trigonometric Functions'); % 图形标题
grid on; % 显示格线
二维绘图函数
bar 长条图
errorbar 图形加上误差范围
fplot 较精确的函数图形
polar 极坐标图
hist 累计图
rose 极坐标累计图
stairs阶梯图
stem 针状图
fill 实心图
feather 羽毛图
compass 罗盘图
quiver向量场图
MATLAB中有趣的演示实例
MATLAB中也同样有许多有意思的实例,为提高读者对MATLAB和Simulink的兴趣,特举部分以供参考。具体如下,运行的时候只要将“:”前面的代码复制到MATLAB中就可以了,随之会出现各种各样的演示实例,对初学者帮助不小哦。
◆平面与立体绘图
graf2d :XY平面绘图(火柴棒)
graf2d2 :XYZ立体绘图(切片)
hndlgraf :平面显示线型处理窗口及命令演示
hndlaxis :平面显示处理窗口及命令演示
graf3d :立体显示处理窗口及命令演示
◆ 复杂函数的三维绘图
cplxdemo :复杂的XYZ立体图形
等高线绘制
quivdemo :等高线箭头显示
◆ 动画
lorenz :Lorenz吸引子动画显示
◆电影
vibes :L-形薄膜振动
◆Fourier变换
sshow sunspots :太阳黑点数据的傅里叶分析
fftdemo :分析噪声序列中两组数据的相关度
sshow fitdemo :显示非线性数据拟合过程
census :预测世界人口
spline2d :样条拟合
sshow sparsity :降阶
◆ 游戏
xpbombs :仿Windows系统自带的扫雷游戏
life :生命发展游戏
◆ 三维效果图
klein1 :肤色三维效果图
tori4 :四个首尾相接的圆环
spharm2 :球形和声
cruller :类似油饼的东西
xpklein :Klein瓶 bottle
modes :L-形薄膜的12中模态
logo :MATLAB的Logo
xpquad :不同比例的巴尔体超四方体
truss :二维桁架的12个模模态
travel :旅行商问题动画演示
wrldtrv :在地球仪上演示两地间的飞行线路
makevase :通过点击鼠标来制作花瓶
xpsound :声音样本分析
funfuns :综合了找零点,最小化和单输入函数积分功能
sshow e2pi :e^pi或者pi^e
quake :地震波可视化
penny :便士可视化
imageext :改变图像的映射颜色
earthmap :地球仪
◆ 优化工具箱
bandem :香蕉最优化展示expo-style banana optimization
sshow filtdem :滤波效果演示filter effect demo
sshow filtdem2 :滤波设计演示filter design demo
cztdemo :FFT和CZT (两种不同类型的Z-变换算法)
phone :演示电话通声音的时间与频率的关系
sigdemo1 :离散信号的时频图,可用鼠标设置
sigdemo2 :连续信号的时频图,可用鼠标设置
filtdemo :低通滤波器的交互式设计
moddemo :声音信号的调制
◆ 神经网络工具箱
neural :神经网络模块
firdemo :二维FIR滤波器
nlfdemo :非线性滤波器
dctdemo :DCT演示
mlpdm1 :利用多层感知器神经网络拟合曲线动画
mlpdm2 :利用多层感知器神经网络进行XOR问题运算
◆ 模糊逻辑工具箱
invkine :运动逆问题
juggler :跳球戏法
fcmdemo :FCM
slcp :类似倒立摆动画
slcp1 :类似倒立摆动画cart and a varying pole
slcpp1 :类似倒立摆动画,有两个摆,一个可以变化
sltbu :卡车支援
slbb :类似于翘翘板
◆姓名函数:将自己姓名模拟成一个特有的函数图像

注意事项

1.安装出错时,可换注册码继续安装,到同一目录;
2.【谨记】安装路径不要有中文名称;
3.成功安装完毕之后,如果遇到matlab启动后,窗口在打开一到两秒后就自动关闭了, 可按以下方法试试:【假设你安装的目录为c:\MATLAB\】(不过不建议安装到C盘,那样会影响系统速度。)
1.确认安装好后,在此路径下c:\MATLAB\bin\win32有一个名为 atlas_Athlon.dll的文件;
2.我的电脑右击点"属性",再在"高级"中点"环境变量",在"系统变量"中点击 "新建" 输入以下信息:变量名:BLAS_VERSION 变量址:
c:\MATLAB\bin\win32\atlas_Athlon.dll
3.这样之后,启动MATLAB,不过又出现一个问题:窗口显示
To get started, select MATLAB Help or Demos from the Help menu. The element type "name" must be terminated by the matching end-tag "".
Could not parse the file:c:\matlab\toolbox\ccslink\ccslink\info.xml
【解决方案】找到c:\matlab\toolbox\ccslink\ccslink\info.xml这个文件,用记事本打开【注意,这是重点,或者写字板】找到有一行这样的Link for Code Composer Studio?</name>,大概是在第七行吧,把这句的</name>改成【加左尖括号】,保存文件,退出,即可。
4.安装MATLAB成功。
无法运行可以考虑使用兼容模式运行,比如windows 2000模式

实用教程

MATLAB实用教程》从快速入门和实用性两个方面,对MATLAB7.0进行了详细的介绍,并列举了大量实用的例子。全书共分为12章,第1章介绍MATLAB的安装及系统功能;第2~3章介绍MATLAB基于命令窗口的应用,讲述了MATLAB的基础知识和数学运算;第4~8章介绍MATLAB基于M文件的应用,讲述了MATLAB的编程功能、数据显示及存取功能、数值和符号计算功能、图形用户界面设计功能等;第9~10章从模块化仿真的角度介绍MATLAB基于Simulink环境的应用,讲述了MATLAB的包含S函数的Simulink环境基础知识和在信号处理、图像处理以及控制等领域的实际应用;第11章从信息和功能交互的角度介绍MATLAB的外部接口,讲述了MATLAB与Word、Excel、C语言Java语言等的接口;第12章提供对《MATLAB实用教程》内容加深理解的实验。
《MATLAB实用教程》可作为电子、通信、自控等专业本科生的教材,同时也可作为相关专业研究生及广大科研人员的参考用书。

系统结构

播报
编辑
MATLAB系统由MATLAB开发环境、MATLAB数学函数库、MATLAB语言、MATLAB图形处理系统和MATLAB应用程序接口API)五大部分构成。

开发环境

MATLAB开发环境是一套方便用户使用的MATLAB函数和文件工具集,其中许多工具是图形化用户接口。它是一个集成的 用户工作空间,允许用户输入输出数据,并提供了M文件的集成编译和调试环境,包括MATLAB桌面、命令窗口、M文件编辑调试器、MATLAB工作空间和在线帮助文档。

数学函数

MATLAB数学函数库包括了大量的计算算法。从基本算法如四则运算三角函数,到复杂算法如矩阵求逆快速傅里叶变换等。

语言

MATLAB语言是一种高级的基于矩阵/数组的语言,它有程序流控制、函数、数据结构、输入/输出和面向对象编程等特色。用这种语言能够方便快捷建立起简单运行快的程序,也能建立复杂的程序。

图形处理

图形处理系统使得MATLAB能方便的图形化显示向量和矩阵,而且能对图形添加标注和打印。它包括强大的二维三维图形函数、图像处理和动画显示等函数。

程序接口

MATLAB应用程序接口(API)是一个使MATLAB语言能与C、Fortran等其它高级编程语言进行交互的函数库。该函数库的函数通过调用动态链接库(DLL)实现与MATLAB文件的数据交换,其主要功能包括在MATLAB中调用C和Fortran程序,以及在MATLAB与其它应用程序间建立客户、服务器关系。
版本更新
版本
建造编号
发布时间
MATLAB 1.0
-
1984
MATLAB 2
-
1986
MATLAB 3
-
1987
MATLAB 3.5
-
1990
MATLAB 4
-
1992
MATLAB 4.2c
R7
1994
MATLAB 5.0
R8
1996
MATLAB 5.1
R9
1997
MATLAB 5.1.1
R9.1
1997
MATLAB 5.2
R10
1998
MATLAB 5.2.1
R10.1
1998
MATLAB 5.3
R11
1999
MATLAB 5.3.1
R11.1
1999
MATLAB 6.0
R12
2000
MATLAB 6.1
R12.1
2001
MATLAB 6.5
R13
2002
MATLAB 6.5.1
R13SP1
2003
MATLAB 6.5.2
R13SP2
2003
MATLAB 7
R14
2004
MATLAB 7.0.1
R14SP1
2004
MATLAB 7.0.4
R14SP2
2005
MATLAB 7.1
R14SP3
2005
MATLAB 7.2
R2006a
2006
MATLAB 7.3
R2006b
2006
MATLAB 7.4
R2007a
2007
MATLAB 7.5
R2007b
2007
MATLAB 7.6
R2008a
2008
MATLAB 7.7
R2008b
2008
MATLAB 7.8
R2009a
2009.3.6
MATLAB 7.9
R2009b
2009.9.4
MATLAB 7.10
R2010a
2010.3.5
MATLAB 7.11
R2010b
2010.9.3
MATLAB 7.12
R2011a
2011.4.8
MATLAB 7.13
R2011b
2011.9.1
MATLAB 7.14
R2012a
2012.3.1
MATLAB 8.0
R2012b
2012.9.11
MATLAB 8.1
R2013a
2013.3.7
MATLAB 8.2
R2013b
2013.9.9
MATLAB 8.3
R2014a
2014.3.6
MATLAB 8.4
R2014b
2014.10.02
MATLAB 8.5
R2015a
2015.3.6
MATLAB 8.6
R2015b
2015.9.3
MATLAB 9.0
R2016a
2016.3
MATLAB 9.1
R2016b
2016.9
MATLAB 9.2
R2017a
2017.3
MATLAB 9.3
R2017b
2017.9
MATLAB 9.4
R2018a
2018.3
MATLAB 9.5
R2018b
2018.9
MATLAB 9.6
R2019a
2019.3
MATLAB 9.7
R2019b
2019.9
MATLAB 9.8
R2020a
2020.3
MATLAB 9.9
R2020b
2020.9
MATLAB 9.10
R2021a
2021.3
MATLAB 9.11
R2021b
2021.9
MATLAB 9.12
R2022a
2022.3
MATLAB 9.13 [6]
R2022b
2022.9
MATLAB 9.14 [6]
R2023a
2023.3
MATLAB 23.2.0 [7]
R2023b
2023.9

版本介绍

播报
编辑

2012a 版

Release 2012a包括MATLAB®、Simulink®和Polyspace®产品的新功能,以及对77种其他产品的更新和补丁修复。已经购买MathWorks软件维护服务的用户可以下载产品更新。访问许可证中心下载产品、激活软件并管理许可证和用户信息。

2012b 版

新增功能概览
MATLAB R2012b 新界面
桌面
在 MATLAB Desktop 中,工具条取代了菜单和工具栏
应用程序库收纳了 MATLAB 产品系列的应用程序
单一文件应用程序打包为一个 MATLAB 应用软件安装程序文件,包含在应用程序库中
重新设计的“帮助”改进了浏览、搜索和筛选功能 ·
通过点击选项卡来进行浏览,可同时查看多个文档页面
命令行窗口中键入函数和变量出错时得到建议的更正
Mac 操作系统上的全屏查看模式
语言和编程
Abstract 属性可将 MATLAB 类声明为抽象类
尝试创建抽象类的实例时出现的诊断消息得到了改进
数学
airy, psi 和 Bessel 函数的性能得到改进,并实现多线程
ddensd 函数通过状态相关延迟可以求解中立型延迟微分方程
数据导入和导出
使用导入工具可从分隔符文本文件和固定宽度文本文件导入数据
使用导入工具以列向量的方式将电子表格中的数字、文本和日期单步导入
audioread 和 audioinfo 函数可用于读取 MP3、MPEG-4 AACWAVE 和其他音频文件
audiowrite 函数可用于写入 MPEG-4 AAC、WAVE 和其他音频文件
读写超过 4 GB 的 BigTIFF 图像文件
使用 xlsread 函数在所有平台上读取 XLSM、XLTX 和 XLTM 文件

2013a版

新增功能
桌面
语言和编程
数学
数据导入和导出
性能
对于 MATLAB,R2013a 的重要功能有:
MATLAB:MATLAB 语言的单元测试框架
Financial Instruments Toolbox:对赫尔-怀特 (Hull-White)、 线性高斯和 LIBOR 市场模型的校准和蒙特卡洛(Monte Carlo) 仿真
Image Processing Toolbox:利用有效轮廓、10 个函数的 C 代码生成和 11 个功能的 GPU 加速来实现图像分割
Image Acquisition Toolbox:Kinect for Windows 传感器为采集图像、深度映射和骨架数据提供支持
Statistics Toolbox:用于二进制分类的支持向量机(SVMs)、处理缺失数据的 PCA 算法和 Anderson-Darling 拟合优度检验
Data Acquisition Toolbox:用于 Digilent Analog Discovery设计工具包的支持包
Vehicle Network Toolbox:对访问 CAN 总线上 ECU 的 XCP 支持
Communications System Toolbox:球面解码器和星座图系统对象
Computer Vision System Toolbox:Viola-Jones 对象检测训练、FREAK 特征提取和其他新功能
DSP System Toolbox:频谱分析仪和逻辑分析仪示波器和触发时间示波器
Phased Array System Toolbox:传感器阵列分析、波形分析和雷达方程计算的极化支持、阵列锥和应用程序。
对于 Simulink,R2013a 的重要功能有:
Simulink:Simulation Performance Advisor、封装链接的库块和通过逻辑表达式的活动变量控制
SimRF:快速仿真和模型加载时间的电路包络求解器
SimMechanics:用于从 CAD 和其他系统导入模型的已发布 XML 构架
Simulink Design Verifier:数组超出边界检查
Simulink Coder:减少了从 Stateflow 调用的 Simulink 函数的数据副本
Fixed-Point Designer:结合了 Fixed-Point Toolbox 和 Simulink Fixed Point 的功能的一款新产品
HDL Verifier:从 MATLAB 生成 HDL 测试平台

代码生成

HDL Coder:可替代 Simulink HDL Coder 的新产品,添加了直接从 MATLAB 生成 HDL 代码功能
HDL Verifier:可替代 EDA Simulator Link 的新产品,添加了 Altera FPGA 在环支持
MATLAB Coder:可从用户定义的系统对象生成代码并自动生成动态共享库
Embedded Coder:AUTOSAR4.0 兼容性,减少了数据副本,并通过 Simulink Web 视图实现代码生成报告的链接
用于在 MATLAB 和 Simulink 中进行设计的系统工具箱 (System Toolbox)
Computer Vision System Toolbox:Viola-Jones 对象检测、MSER特征检测和 CAMShift 跟踪
Communications System Toolbox:USRP 无线电支持、LTE MIMO 信道模型以及 LDPC、Turbo解码器和其他算法的 GPU 支持

Simulink

Simulink:从目标硬件(包括 LEGO® MINDSTORMS® NXT 和 BeagleBoard)上的 Simulink 直接运行模型的能力
SimMechanics:具有新的三维可视化功能的第二代多体建模和仿真技术
Real-Time Windows Target:使用 Simulink 标准模式实时执行 Windows® 中的模型

2013b 版

Release 2013b 更新涵盖以下各项:
MATLAB 产品系列重要功能
MATLAB Compiler™:自动下载版本兼容和平台兼容的 MATLAB Compiler Runtime
Statistics Toolbox™:线性混合效应回归模型
Database Toolbox™:通过本机 ODBC 驱动程序快速访问 ODBC 连接
Instrument Control Toolbox™:使用 SPI 协议与集成电路进行通讯
Financial Toolbox™:平均绝对偏差 (MAD) 投资组合优化
Trading Toolbox™:对 CQG 集成客户端 API 和 Interactive Brokers TWS API 的支持
Image Processing Toolbox™:新增对 22 种函数的 GPU 加速(包括 bwmorph、edge、imresize和 medfilt2)
Mapping Toolbox™:可使用来自 OpenStreetMap 和其他来源的动态基本地图进行 Web 地图显
自2014a版起开始支持官方简体中文

2014a 版

Simulink 产品系列重要功能:
Simulink:增加了将 MATLAB 系统对象纳入 Simulink 模型的新模块
Simulink:Arduino 功能增强,包括对 Mac OS X、Arduino Ethernet Shield 和 Arduino Nano 硬件的支持
Simulink:实现单精度设计本地建模
Simscape™:用于对热液系统进行建模的模块库
SimPowerSystems™:基于第三代技术,充分利用 Simscape 功能的模块库
Simulink Verification and Validation™:MATLAB 代码的需求关联可追溯性

2014b 版

MATLAB图形:MATLAB R2014b 推出了全新的 MATLAB 图形系统。全新的默认颜色、字体和样式便于数据解释。抗锯齿字体和线条使文字和图形看起来更平滑。图形对象便于使用 – 您可以在命令窗口中显示常用属性,并且对象支持熟悉的结构化语法,可以更改属性值。另外,还增加了许多其他新功能。
MATLAB图形
大数据功能:新增功能和性能改进面向大数据处理。datastore 函数可以方便、高效地格式化无法进入内存的文件(以及文件集合)数据,并将数据导入桌面。mapreduce 是一种可以分析无法进入计算机内存的数据集编程技术。这些功能也可以用在 Hadoop 上处理数据。
日期和时间数据类型:数据类型(datetime、duration 和 calendarDuration)可用于表示日期和时间。这些类型均能提供高效利用内存的计算和对比以及格式化显示。数据可以通过 readtable、textscan 和导入工具直接作为 datetime 数组导入。系统提供用于管理时区(包括夏令时)以及地点特定信息(如月份和日期名称)。
Git和Subversion源控制集成:与流行的 Git 和 Subversion 源控制系统集成可以使您的数据保持可控状态,便于构建和共享自定义 MATLAB 工具箱。在 GitHub 上托管您的工具箱与他人协作,并将其列在 MATLAB Central 文件交换区上,供全球的 MATLAB 社区使用。

2015a 版

  • 新版 MATLAB 和 Simulink, 包括 Simulink 多项新增图形控制与显示功能
  • 四个新产品: Antenna Toolbox, Robotics System Toolbox, Simulink Test, and Vision HDL Toolbox
  • 79种其他产品更新
MATLAB
将自定义工具箱的文档集成到MATLAB帮助浏览器,MATLAB:将mapreduce算法扩展到 MATLAB Distributed Computing Server™ 用于数据密集型应用程序,为Arduino Leonardo 和 其他Arduino板卡提供支持。
MATLAB Compiler
包括创建插件的功能(用于 Microsoft Excel 桌面应用程序)。
MATLAB Compiler SDK
对 MATLAB Compiler™ 的扩展,用于创建C/C++Java和.NET共享库,还可用作 MATLAB Production Server™的开发框架。
Statistics and Machine Learning Toolbox
分类学习器应用程序,用于使用监督式机器学习来训练模型和分类数据
Partial Differential Equation Toolbox
三维有限元分析,包括几何结构导入、网格划分PDE求解和查看结果。
用于调节、测试和可视化仿真的画布内刻度盘标尺和范围,使用即时(JIT)编译实现快速模型更新,适用于MATLAB函数块和Stateflow图,针对Apple iOS设备的硬件支持包,用于创建运行Simulink模型和算法的应用程序,通过GitHub、电子邮件或以封装的自定义工具箱的形式共享项目。
SimDriveline
用于Gears组件库中所有块的热变量。
Robotics System Toolbox
一款用于为机器人应用程序设计和测试算法的新产品。
Signal Processing Toolbox
非统一采样数据的信号分析;简化的界面和样例,以及增强的信号测量。
Communications System Toolbox
基于Zynq的SDR的连接和目标定位,用于无线接收器的新同步方法,以及端对端QAM链路样例。
DSP System Toolbox
低延时音频设备I/O,多重速率和可调节滤波器类型,增强的流传输范围和Embedded Coder优化的算法库(用于 ARM Cortex)-A。
Phased Array System Toolbox
简化了多雷达目标、阵列校准和高级驾驶辅助系统(ADAS)样例的建模和评估。
LTE System Toolbox
LTE Release 11 版本中的协同多点(CoMP)仿真和UMTS波形生成。
Antenna Toolbox
一款用于设计、分析和可视化天线元件和天线阵列的新产品。
Simulink Test
一款用于创建测试用具、创作复杂的测试序列和管理基于仿真的测试的新产品
Simulink Verification and Validation
用于C编码的S函数和MATLAB编码的系统对象的覆盖率衡量
Simulink Design Verifier
用于简化和分割复杂模型的模型切片,能够方便调试和分析

2015b 版

  • MATLAB 重要发布,新的执行引擎
  • 新的 Simulink Scope UI 令查看和纠错信号功能更加完善
  • 83个产品的更新
MATLAB
新增更快运行 MATLAB 代码的执行引擎,用于创建、分析图形和网络并实现可视化的图形函数和有向图函数,附加浏览器 — 用于增加社区创作的工具箱和 MathWorks 工具箱、应用、功能、模型及硬件支持的单一界面,对 iOS 传感器、Raspberry Pi™ 2 和 BeagleBone Black 的硬件支持。
MATLAB Compiler SDK
部署的 MATLAB 组件,可与采用 Python 编写的应用程序集成。
Statistics and Machine Learning Toolbox
用于拟合模型的 SVR(支持向量回归)和高斯过程 (Kriging), 用于分类学习应用的 PCA 特征变换和 65 个函数的 GPU 加速。
Parallel Computing Toolbox
Statistics and Machine Learning Toolbox™ 中函数的 GPU 加速,包括概率分布描述性统计假设检验,以及其他 MATLAB 函数。
Image Processing Toolbox
Gabor 及盒滤波,使用 MATLAB Coder™为 20 个函数生成 C 代码,以及改进了灰度形态和滤波性能。
Computer Vision System Toolbox
3-D 点云处理,包括几何形状拟合、法向矢量估算和可视化。
Database Toolbox
更快地数据库读取和写入速度。
Control System Toolbox
2-DOF PID 控制器调节。
Robust Control Toolbox
使用 systune 和 Control System Tuner 应用为带有不确定参数的对象调节鲁棒控制器
新增在示波器中通过光标和测量值来查看和调试信号的 UI,用于创建可重用组件和简化大型建模项目的引用项目,在仿真过程中,始终开启模块参数和工作空间变量的调整,可用于 Simulink、Stateflow 和 Simulink Coder 的多语言模块名称、 信号名称和 MATLAB 函数注释。
消息 — 新增可承载数据并且可以排队的对象。
Simscape
两相流体模块库和为线性切换系统改进了仿真速度
Simulink Design Optimization
借助 Simulink 快速重启,提高了参数估算速度,优化了响应时间
元胞数组的 C 代码生成。
Embedded Coder
快速配置模型,以生成高效、可重用代码。
HDL Coder
使用 AXI4 接口为 Xilinx Zynq 和 Altera SoC FPGA 调节运行时硬件参数
Simulink PLC Coder
可以为 Siemens TIA Portal IDE 生成代码,并在 Siemens TIA Portal 和 STEP 7 IDE 中支持全局变量
Antenna Toolbox
无限阵列分析和 E-H 域的可视化。
LTE System Toolbox
Release 12 Small cells下行 256 QAM 调制、Release 11 多区零功率 CSI-RS 模式和增强波形生成。
Simulink Design Verifier
C 代码 S function 分析和 Model Advisor 运行时错误检查。
Simulink Test
使用 Simulink Design Verifier™生成的输入创建测试用例,可利用 DO Qualification Kit 和 IEC Certification Kit 进行工具鉴定。
Polyspace Bug Finder
用于检测代码漏洞的检查项和动态结果显示。