cisen / blog

Time waits for no one.
135 stars 20 forks source link

matlab 相关 #989

Open cisen opened 4 years ago

cisen commented 4 years ago

总结

安装注册

问题

语法

conv

问答

mat文件是什么?

cisen commented 3 years ago

simulink

cisen commented 3 years ago

% 以百分号作为注释符

%{ 多行注释 可以 这样 表示 %}

% 指令可以随意跨行,但需要在跨行处用 '...' 标明: a = 1 + 2 + ...

% 可以在MATLAB中直接向操作系统发出指令 !ping google.com

who % 显示内存中的所有变量 whos % 显示内存中的所有变量以及它们的类型 clear % 清除内存中的所有变量 clear('A') % 清除指定的变量 openvar('A') % 在变量编辑器中编辑指定变量

clc % 清除命令窗口中显示的所有指令 diary % 将命令窗口中的内容写入本地文件 ctrl-c % 终止当前计算

edit('myfunction.m') % 在编辑器中打开指定函数或脚本 type('myfunction.m') % 在命令窗口中打印指定函数或脚本的源码

profile on % 打开 profile 代码分析工具 profile of % 关闭 profile 代码分析工具 profile viewer % 查看 profile 代码分析工具的分析结果

help command % 在命令窗口中显示指定命令的帮助文档 doc command % 在帮助窗口中显示指定命令的帮助文档 lookfor command % 在所有 MATLAB 内置函数的头部注释块的第一行中搜索指定命令 lookfor command -all % 在所有 MATLAB 内置函数的整个头部注释块中搜索指定命令

% 输出格式 format short % 浮点数保留 4 位小数 format long % 浮点数保留 15 位小数 format bank % 金融格式,浮点数只保留 2 位小数 fprintf('text') % 在命令窗口中显示 "text" disp('text') % 在命令窗口中显示 "text"

% 变量与表达式 myVariable = 4 % 命令窗口中将新创建的变量 myVariable = 4; % 加上分号可使命令窗口中不显示当前语句执行结果 4 + 6 % ans = 10 8 myVariable % ans = 32 2 ^ 3 % ans = 8 a = 2; b = 3; c = exp(a)sin(pi/2) % c = 7.3891

% 调用函数有两种方式: % 标准函数语法: load('myFile.mat', 'y') % 参数放在括号内,以英文逗号分隔 % 指令语法: load myFile.mat y % 不加括号,以空格分隔参数 % 注意在指令语法中参数不需要加引号:在这种语法下,所有输入参数都只能是文本文字, % 不能是变量的具体值,同样也不能是输出变量 [V,D] = eig(A); % 这条函数调用无法转换成等价的指令语法 [~,D] = eig(A); % 如果结果中只需要 D 而不需要 V 则可以这样写

% 逻辑运算 1 > 5 % 假,ans = 0 10 >= 10 % 真,ans = 1 3 ~= 4 % 不等于 -> ans = 1 3 == 3 % 等于 -> ans = 1 3 > 1 && 4 > 1 % 与 -> ans = 1 3 > 1 || 4 > 1 % 或 -> ans = 1 ~1 % 非 -> ans = 0

% 逻辑运算可直接应用于矩阵,运算结果也是矩阵 A > 5 % 对矩阵中每个元素做逻辑运算,若为真,则在运算结果的矩阵中对应位置的元素就是 1 A( A > 5 ) % 如此返回的向量,其元素就是 A 矩阵中所有逻辑运算为真的元素

% 字符串 a = 'MyString' length(a) % ans = 8 a(2) % ans = y [a,a] % ans = MyStringMyString b = '字符串' % MATLAB目前已经可以支持包括中文在内的多种文字 length(b) % ans = 3 b(2) % ans = 符 [b,b] % ans = 字符串字符串

% 元组(cell 数组) a = {'one', 'two', 'three'} a(1) % ans = 'one' - 返回一个元组 char(a(1)) % ans = one - 返回一个字符串

% 结构体 A.b = {'one','two'}; A.c = [1 2]; A.d.e = false;

% 向量 x = [4 32 53 7 1] x(2) % ans = 32,MATLAB中向量的下标索引从1开始,不是0 x(2:3) % ans = 32 53 x(2:end) % ans = 32 53 7 1

x = [4; 32; 53; 7; 1] % 列向量

x = [1:10] % x = 1 2 3 4 5 6 7 8 9 10

% 矩阵 A = [1 2 3; 4 5 6; 7 8 9] % 以分号分隔不同的行,以空格或逗号分隔同一行中的不同元素 % A =

% 1 2 3 % 4 5 6 % 7 8 9

A(2,3) % ans = 6,A(row, column) A(6) % ans = 8 % (隐式地将 A 的三列首尾相接组成一个列向量,然后取其下标为 6 的元素)

A(2,3) = 42 % 将第 2 行第 3 列的元素设为 42 % A =

% 1 2 3 % 4 5 42 % 7 8 9

A(2:3,2:3) % 取原矩阵中的一块作为新矩阵 %ans =

% 5 42 % 8 9

A(:,1) % 第 1 列的所有元素 %ans =

% 1 % 4 % 7

A(1,:) % 第 1 行的所有元素 %ans =

% 1 2 3

[A ; A] % 将两个矩阵上下相接构成新矩阵 %ans =

% 1 2 3 % 4 5 42 % 7 8 9 % 1 2 3 % 4 5 42 % 7 8 9

% 等价于 vertcat(A, A);

[A , A] % 将两个矩阵左右相接构成新矩阵

%ans =

% 1 2 3 1 2 3 % 4 5 42 4 5 42 % 7 8 9 7 8 9

% 等价于 horzcat(A, A);

A(:, [3 1 2]) % 重新排布原矩阵的各列 %ans =

% 3 1 2 % 42 4 5 % 9 7 8

size(A) % 返回矩阵的行数和列数,ans = 3 3

A(1, :) =[] % 删除矩阵的第 1 行 A(:, 1) =[] % 删除矩阵的第 1 列

transpose(A) % 矩阵转置,等价于 A' ctranspose(A) % 矩阵的共轭转置(对矩阵中的每个元素取共轭复数)

% 元素运算 vs. 矩阵运算 % 单独运算符就是对矩阵整体进行矩阵运算 % 在运算符加上英文句点就是对矩阵中的元素进行元素计算 % 示例如下: A B % 矩阵乘法,要求 A 的列数等于 B 的行数 A . B % 元素乘法,要求 A 和 B 形状一致(A 的行数等于 B 的行数, A 的列数等于 B 的列数) % 元素乘法的结果是与 A 和 B 形状一致的矩阵,其每个元素等于 A 对应位置的元素乘 B 对应位置的元素

% 以下函数中,函数名以 m 结尾的执行矩阵运算,其余执行元素运算: exp(A) % 对矩阵中每个元素做指数运算 expm(A) % 对矩阵整体做指数运算 sqrt(A) % 对矩阵中每个元素做开方运算 sqrtm(A) % 对矩阵整体做开放运算(即试图求出一个矩阵,该矩阵与自身的乘积等于 A 矩阵)

% 绘图 x = 0:.10:2pi; % 生成一向量,其元素从 0 开始,以 0.1 的间隔一直递增到 2pi(pi 就是圆周率) y = sin(x); plot(x,y) xlabel('x axis') ylabel('y axis') title('Plot of y = sin(x)') axis([0 2pi -1 1]) % x 轴范围是从 0 到 2pi,y 轴范围是从 -1 到 1

plot(x,y1,'-',x,y2,'--',x,y3,':') % 在同一张图中绘制多条曲线 legend('Line 1 label', 'Line 2 label') % 为图片加注图例 % 图例数量应当小于或等于实际绘制的曲线数目,从 plot 绘制的第一条曲线开始对应

% 在同一张图上绘制多条曲线的另一种方法: % 使用 hold on,令系统保留前次绘图结果并在其上直接叠加新的曲线, % 如果没有 hold on,则每个 plot 都会首先清除之前的绘图结果再进行绘制。 % 在 hold on 和 hold off 中可以放置任意多的 plot 指令, % 它们和 hold on 前最后一个 plot 指令的结果都将显示在同一张图中。 plot(x, y1) hold on plot(x, y2) plot(x, y3) plot(x, y4) hold off

loglog(x, y) % 对数—对数绘图 semilogx(x, y) % 半对数(x 轴对数)绘图 semilogy(x, y) % 半对数(y 轴对数)绘图

fplot (@(x) x^2, [2,5]) % 绘制函数 x^2 在 [2, 5] 区间的曲线

grid on % 在绘制的图中显示网格,使用 grid off 可取消网格显示 axis square % 将当前坐标系设定为正方形(保证在图形显示上各轴等长) axis equal % 将当前坐标系设定为相等(保证在实际数值上各轴等长)

scatter(x, y); % 散点图 hist(x); % 直方图

z = sin(x); plot3(x,y,z); % 绘制三维曲线

pcolor(A) % 伪彩色图(热图) contour(A) % 等高线图 mesh(A) % 网格曲面图

h = figure % 创建新的图片对象并返回其句柄 h figure(h) % 将句柄 h 对应的图片作为当前图片 close(h) % 关闭句柄 h 对应的图片 close all % 关闭 MATLAB 中所用打开的图片 close % 关闭当前图片

shg % 显示图形窗口 clf clear % 清除图形窗口中的图像,并重置图像属性

% 图像属性可以通过图像句柄进行设定 % 在创建图像时可以保存图像句柄以便于设置 % 也可以用 gcf 函数返回当前图像的句柄 h = plot(x, y); % 在创建图像时显式地保存图像句柄 set(h, 'Color', 'r') % 颜色代码:'y' 黄色,'m' 洋红色,'c' 青色,'r' 红色,'g' 绿色,'b' 蓝色,'w' 白色,'k' 黑色 set(h, 'Color', [0.5, 0.5, 0.4]) % 也可以使用 RGB 值指定颜色 set(h, 'LineStyle', '--') % 线型代码:'--' 实线,'---' 虚线,':' 点线,'-.' 点划线,'none' 不划线 get(h, 'LineStyle') % 获取当前句柄的线型

% 用 gca 函数返回当前图像的坐标轴句柄 set(gca, 'XDir', 'reverse'); % 令 x 轴反向

% 用 subplot 指令创建平铺排列的多张子图 subplot(2,3,1); % 选择 2 x 3 排列的子图中的第 1 张图 plot(x1); title('First Plot') % 在选中的图中绘图 subplot(2,3,2); % 选择 2 x 3 排列的子图中的第 2 张图 plot(x2); title('Second Plot') % 在选中的图中绘图

% 要调用函数或脚本,必须保证它们在你的当前工作目录中 path % 显示当前工作目录 addpath /path/to/dir % 将指定路径加入到当前工作目录中 rmpath /path/to/dir % 将指定路径从当前工作目录中删除 cd /path/to/move/into % 以制定路径作为当前工作目录

% 变量可保存到 .mat 格式的本地文件 save('myFileName.mat') % 保存当前工作空间中的所有变量 load('myFileName.mat') % 将指定文件中的变量载入到当前工作空间

% .m 脚本文件 % 脚本文件是一个包含多条 MATLAB 指令的外部文件,以 .m 为后缀名 % 使用脚本文件可以避免在命令窗口中重复输入冗长的指令

% .m 函数文件 % 与脚本文件类似,同样以 .m 作为后缀名 % 但函数文件可以接受用户输入的参数并返回运算结果 % 并且函数拥有自己的工作空间(变量域),不必担心变量名称冲突 % 函数文件的名称应当与其所定义的函数的名称一致(比如下面例子中函数文件就应命名为 double_input.m) % 使用 'help double_input.m' 可返回函数定义中第一行注释信息 function output = double_input(x) % double_input(x) 返回 x 的 2 倍 output = 2*x; end double_input(6) % ans = 12

% 同样还可以定义子函数和内嵌函数 % 子函数与主函数放在同一个函数文件中,且只能被这个主函数调用 % 内嵌函数放在另一个函数体内,可以直接访问被嵌套函数的各个变量

% 使用匿名函数可以不必创建 .m 函数文件 % 匿名函数适用于快速定义某函数以便传递给另一指令或函数(如绘图、积分、求根、求极值等) % 下面示例的匿名函数返回输入参数的平方根,可以使用句柄 sqr 进行调用: sqr = @(x) x.^2; sqr(10) % ans = 100 doc function_handle % find out more

% 接受用户输入 a = input('Enter the value: ')

% 从文件中读取数据 fopen(filename) % 类似函数还有 xlsread(excel 文件)、importdata(CSV 文件)、imread(图像文件)

% 输出 disp(a) % 在命令窗口中打印变量 a 的值 disp('Hello World') % 在命令窗口中打印字符串 fprintf % 按照指定格式在命令窗口中打印内容

% 条件语句(if 和 elseif 语句中的括号并非必需,但推荐加括号避免混淆) if (a > 15) disp('Greater than 15') elseif (a == 23) disp('a is 23') else disp('neither condition met') end

% 循环语句 % 注意:对向量或矩阵使用循环语句进行元素遍历的效率很低!! % 注意:只要有可能,就尽量使用向量或矩阵的整体运算取代逐元素循环遍历!! % MATLAB 在开发时对向量和矩阵运算做了专门优化,做向量和矩阵整体运算的效率高于循环语句 for k = 1:5 disp(k) end

k = 0;
while (k < 5) k = k + 1; end

% 程序运行计时:'tic' 是计时开始,'toc' 是计时结束并打印结果 tic A = rand(1000); AAAAAAA; toc

% 链接 MySQL 数据库 dbname = 'database_name'; username = 'root'; password = 'root'; driver = 'com.mysql.jdbc.Driver'; dburl = ['jdbc:mysql://localhost:8889/' dbname]; javaclasspath('mysql-connector-java-5.1.xx-bin.jar'); % 此处 xx 代表具体版本号 % 这里的 mysql-connector-java-5.1.xx-bin.jar 可从 http://dev.mysql.com/downloads/connector/j/ 下载 conn = database(dbname, username, password, driver, dburl); sql = ['SELECT * from table_name where id = 22'] % SQL 语句 a = fetch(conn, sql) % a 即包含所需数据

% 常用数学函数 sin(x) cos(x) tan(x) asin(x) acos(x) atan(x) exp(x) sqrt(x) log(x) log10(x) abs(x) min(x) max(x) ceil(x) floor(x) round(x) rem(x) rand % 均匀分布的伪随机浮点数 randi % 均匀分布的伪随机整数 randn % 正态分布的伪随机浮点数

% 常用常数 pi NaN inf

% 求解矩阵方程(如果方程无解,则返回最小二乘近似解) % \ 操作符等价于 mldivide 函数,/ 操作符等价于 mrdivide 函数 x=A\b % 求解 Ax=b,比先求逆再左乘 inv(A)*b 更加高效、准确 x=b/A % 求解 xA=b

inv(A) % 逆矩阵 pinv(A) % 伪逆矩阵

% 常用矩阵函数 zeros(m, n) % m x n 阶矩阵,元素全为 0 ones(m, n) % m x n 阶矩阵,元素全为 1 diag(A) % 返回矩阵 A 的对角线元素 diag(x) % 构造一个对角阵,对角线元素就是向量 x 的各元素 eye(m, n) % m x n 阶单位矩阵 linspace(x1, x2, n) % 返回介于 x1 和 x2 之间的 n 个等距节点 inv(A) % 矩阵 A 的逆矩阵 det(A) % 矩阵 A 的行列式 eig(A) % 矩阵 A 的特征值和特征向量 trace(A) % 矩阵 A 的迹(即对角线元素之和),等价于 sum(diag(A)) isempty(A) % 测试 A 是否为空 all(A) % 测试 A 中所有元素是否都非 0 或都为真(逻辑值) any(A) % 测试 A 中是否有元素非 0 或为真(逻辑值) isequal(A, B) % 测试 A 和 B是否相等 numel(A) % 矩阵 A 的元素个数 triu(x) % 返回 x 的上三角这部分 tril(x) % 返回 x 的下三角这部分 cross(A, B) % 返回 A 和 B 的叉积(矢量积、外积) dot(A, B) % 返回 A 和 B 的点积(数量积、内积),要求 A 和 B 必须等长 transpose(A) % A 的转置,等价于 A' fliplr(A) % 将一个矩阵左右翻转 flipud(A) % 将一个矩阵上下翻转

% 矩阵分解 [L, U, P] = lu(A) % LU 分解:PA = LU,L 是下三角阵,U 是上三角阵,P 是置换阵 [P, D] = eig(A) % 特征值分解:AP = PD,D 是由特征值构成的对角阵,P 的各列就是对应的特征向量 [U, S, V] = svd(X) % 奇异值分解:XV = US,U 和 V 是酉矩阵,S 是由奇异值构成的半正定实数对角阵

% 常用向量函数 max % 最大值 min % 最小值 length % 元素个数 sort % 按升序排列 sum % 各元素之和 prod % 各元素之积 mode % 众数 median % 中位数 mean % 平均值 std % 标准差 perms(x) % x 元素的全排列

cisen commented 3 years ago

常用MATLAB工具箱下载地址

1.信号处理类 信号处理工具箱(Signal Processing Toolbox) 功能:进行信号处理和分析 下载地址:https://www.mathworks.com/products/signal.html 相控阵系统工具箱(Phased Array System Toolbox) 功能:对相控阵系统进行设计和仿真 下载地址:https://www.mathworks.com/products/phased-array.html DSP系统工具箱(DSP System Toolbox) 功能:设计和模拟流信号处理系统 下载地址:https://www.mathworks.com/products/dsp-system.html 音频工具箱(Audio Toolbox) 功能:设计和分析语音、声学和音频处理系统 下载地址:https://www.mathworks.com/products/audio.html 小波工具箱(Wavelet Toolbox) 功能:利用小波分析和合成信号和图像 下载地址:https://www.mathworks.com/products/wavelet.html 2.RF(射频,Radio Frequency)与混合信号类 天线工具箱(Antenna Toolbox) 功能:设计、分析和可视化天线单元和天线阵列 下载地址:https://www.mathworks.com/products/antenna.html 射频工具箱(RF Toolbox) 功能:设计、建模和分析射频元件的网络 下载地址:https://www.mathworks.com/products/rftoolbox.html 射频模块集(RF Blockset) 功能:射频系统的设计和仿真 下载地址:https://www.mathworks.com/products/simrf.html 混合信号模块集(Mixed-Signal Blockset) 功能:设计和仿真模拟信号和混合信号系统 下载地址:https://www.mathworks.com/products/mixed-signal.html SerDes工具箱(SerDes Toolbox) 功能:设计 SerDes 系统并为高速数字互联生成 IBIS-AMI 模型 下载地址:https://www.mathworks.com/products/serdes.html 3.图像处理和计算机视觉类 图像处理工具箱(Image Processing Toolbox) 功能:执行图像处理、可视化和分析 下载地址:https://www.mathworks.com/products/image.html 计算机视觉工具箱(Computer Vision Toolbox) 功能:设计和测试计算机视觉、3D 视觉和视频处理系统 下载地址:https://www.mathworks.com/products/computer-vision.html 4.控制系统类 控制系统工具箱(Control System Toolbox) 功能:设计和分析控制系统 下载地址:https://www.mathworks.com/products/control.html 系统辨识工具箱(System Identification Toolbox) 功能:利用实测输入输出数据建立线性和非线性动态系统模型 下载地址:https://www.mathworks.com/products/sysid.html 预测性维护工具箱(Predictive Maintenance Toolbox) 功能:设计和测试状态监控和预测性维护算法 下载地址:https://www.mathworks.com/products/predictive-maintenance.html 稳健控制工具箱(Robust Control Toolbox) 功能:为带有不确定性的被控对象设计稳健的控制器 下载地址:https://www.mathworks.com/products/robust.html 模型预测控制工具箱(Model Predictive Control Toolbox) 功能:设计和仿真模型预测控制器 下载地址:https://www.mathworks.com/products/mpc.html Simulink控制设计(Simulink Control Design) 功能:线性化模型与控制系统设计 下载地址:https://www.mathworks.com/products/simcontrol.html 强化学习工具箱(Reinforcement Learning Toolbox) 功能:使用强化学习设计和训练策略 下载地址:https://www.mathworks.com/products/reinforcement-learning.html 电机控制模块集(Motor Control Blockset) 功能:设计和实现电机控制算法 下载地址:https://www.mathworks.com/products/reinforcement-learning.html 5.测试和测量类 数据采集工具箱(Data Acquisition Toolbox) 功能:连接到数据采集卡、设备和模块 下载地址:https://www.mathworks.com/products/data-acquisition.html 仪器控制工具箱(Instrument Control Toolbox) 功能:控制测试和测量仪器并与计算机外设和工业自动化设备通信 下载地址:https://www.mathworks.com/products/instrument.html 图像采集工具箱(Image Acquisition Toolbox) 功能:从工业标准硬件采集图像、视频和 lidar 点云 下载地址:https://www.mathworks.com/products/image-acquisition.html OPC工具箱(OPC Toolbox) 功能:从 OPC 服务器和历史数据中读取和写入数据 下载地址:https://www.mathworks.com/products/opc.html 车联网工具箱(Vehicle Network Toolbox) 功能:使用CAN、J1939和XCP协议与车载网络通信 下载地址:https://www.mathworks.com/products/vehicle-network.html ThingSpeak (ThingSpeak for IoT Projects) 功能:利用MATLAB进行高级数据分析的云中数据采集 下载地址:https://www.mathworks.com/products/thingspeak.html 6.无线通信类 通信工具箱 (Communications Toolbox) 功能:对通信系统的物理层进行设计和仿真 下载地址:https://www.mathworks.com/products/communications.html WLAN工具箱 (WLAN Toolbox) 功能:仿真、分析和测试 WLAN 通信系统 下载地址:https://www.mathworks.com/products/wlan.html LTE工具箱 (LTE Toolbox) 功能:仿真、分析和测试 LTE 及 LTE-Advanced 无线通信系统的物理层 下载地址:https://www.mathworks.com/products/lte.html 5G工具箱 (5G Toolbox) 功能:仿真、分析和测试 5G 通信系统 下载地址:https://www.mathworks.com/products/5g.html 7.自主系统类 自动驾驶工具箱 (Automated Driving Toolbox) 功能:设计、仿真和测试 ADAS 以及自动驾驶系统 下载地址:https://www.mathworks.com/products/automated-driving.html 机器人系统工具箱 (Robotics System Toolbox) 功能:设计、仿真和测试机器人应用程序 下载地址:https://www.mathworks.com/products/robotics.html 导航工具箱 (Navigation Toolbox) 功能:设计、仿真和部署用于规划和导航的算法 下载地址:https://www.mathworks.com/products/navigation.html ROS工具箱 (ROS Toolbox) 功能:设计、仿真和部署基于 ROS 的应用程序 下载地址:https://www.mathworks.com/products/ros.html 传感器融合与跟踪工具箱(Sensor Fusion and Tracking Toolbox) 功能:设计和仿真多传感器追踪和导航系统 下载地址:https://www.mathworks.com/products/sensor-fusion-and-tracking.html RoadRunner 功能:针对自动驾驶仿真设计三维场景 下载地址:https://www.mathworks.com/products/roadrunner.html 8.FPGA、ASIC 和 SoC 开发类 HDL Coder 功能:生成用于 FPGA 和 ASIC 设计的 VHDL 和 Verilog 代码 下载地址:https://www.mathworks.com/products/hdl-coder.html HDL Verifier 功能:使用 HDL 仿真器和 FPGA 板测试并验证 Verilog 和 VHDL 下载地址:https://www.mathworks.com/products/hdl-verifier.html 无线HDL工具箱(Wireless HDL Toolbox) 功能:为 FPGA、ASIC 和 SoC 设计并实现 5G 和 LTE 通信子系统 下载地址:https://www.mathworks.com/products/wireless-hdl.html 视觉HDL工具箱(Vision HDL Toolbox) 功能:为 FPGA 和 ASIC 设计图像处理、视频和计算机视觉系统 下载地址:https://www.mathworks.com/products/vision-hdl.html Filter Design HDL Coder 功能:为定点滤波器生成 HDL 代码 下载地址:https://www.mathworks.com/products/filterhdl.html Fixed-Point Designer 功能:对定点和浮点算法进行建模和优化 下载地址:https://www.mathworks.com/products/fixed-point-designer.html SoC Blockset 功能:设计、评估和实现 SoC 硬件和软件架构 下载地址:https://www.mathworks.com/products/soc.html 9.汽车类 基于模型矫正工具箱(Model-Based Calibration Toolbox) 功能:复杂动力总成系统的建模和标定 下载地址:https://www.mathworks.com/products/mbc.html 动力系统模块集(Powertrain Blockset) 功能:汽车动力系统建模与仿真 下载地址:https://www.mathworks.com/products/powertrain.html 车辆动力学模块集(Vehicle Dynamics Blockset) 功能:虚拟三维环境中车辆动力学建模与仿真 下载地址:https://www.mathworks.com/products/vehicle-dynamics.html 自动驾驶工具箱(Automated Driving Toolbox) 功能:设计、仿真和测试 ADAS 以及自动驾驶系统 下载地址:https://www.mathworks.com/products/automated-driving.html IEC Certification Kit for ISO 26262 and IEC 61508 功能:鉴定用于 ISO 26262 和 IEC 61508 认证的代码生成与验证工具 下载地址:https://www.mathworks.com/products/iec-61508.html 车联网工具箱(Vehicle Network Toolbox) 功能:使用CAN、J1939和XCP协议与车载网络通信 下载地址:https://www.mathworks.com/products/vehicle-network.html AUTOSAR Blockset 功能:设计和仿真 AUTOSAR 软件 下载地址:https://www.mathworks.com/products/autosar.html RoadRunner资源库(RoadRunner Asset Library) 功能:使用三维模型库素材填充 RoadRunner 场景 下载地址:https://www.mathworks.com/products/roadrunner-asset-library.html 10.航空航天类 航空模块集(Aerospace Blockset) 功能:建模、仿真和分析航空航天飞行器动力学 下载地址:https://www.mathworks.com/products/aerospace-blockset.html 航空工具箱(Aerospace Toolbox) 功能:使用参考标准和模型分析航天航空飞行器运动并实现可视化 下载地址:https://www.mathworks.com/products/aerospace-toolbox.html DO Qualification Kit (for DO-178 and DO-254) 功能:使Simulink和Polyspace验证工具适用于DO-178、DO-278和DO-254 下载地址:hhttps://www.mathworks.com/products/do-178.html 11.计算金融类 计量经济学工具箱(Econometrics Toolbox) 功能:运用统计方法对金融和经济系统进行建模和分析 下载地址:https://www.mathworks.com/products/econometrics.html 金融工具箱(Financial Toolbox) 功能:分析金融数据和开发金融模型 下载地址:https://www.mathworks.com/products/finance.html 数据输入工具箱(Datafeed Toolbox) 功能:从数据服务提供商处访问金融数据 下载地址:https://www.mathworks.com/products/datafeed.html 数据库工具箱(Database Toolbox ) 功能:同关系和非关系数据库交换数据 下载地址:https://www.mathworks.com/products/database.html Spreadsheet Link for Microsoft Excel 功能:从 Microsoft Excel 使用 MATLAB 下载地址:https://www.mathworks.com/products/spreadsheet-link.html 金融工具工具箱(Financial Instruments Toolbox) 功能:对复杂的金融工具进行设计、定价和对冲分析 下载地址:https://www.mathworks.com/products/financial-instruments.html 交易工具箱(Trading Toolbox) 功能:访问价格、分析交易成本并将订单发送至交易系统 下载地址:https://www.mathworks.com/products/trading.html 风险管理工具箱(Risk Management Toolbox) 功能:开发风险模型和执行风险仿真 下载地址:https://www.mathworks.com/products/risk-management.html 12.计算生物学类 生物信息学工具箱(Bioinformatics Toolbox) 功能:阅读、分析和可视化基因组和蛋白质组数据 下载地址:https://www.mathworks.com/products/bioinfo.html 模拟生物学工具箱(SimBiology) 功能:对生物系统进行建模、仿真和分析 下载地址:https://www.mathworks.com/products/simbiology.html 13.并行计算类 并行计算工具箱(Parallel Computing Toolbox) 功能:在多核计算机、GPU 和集群上执行并行计算 下载地址:https://www.mathworks.com/products/parallel-computing.html 14.数学和优化类 曲线拟合工具箱(Curve Fitting Toolbox) 功能:使用回归、插值和平滑对数据进行曲线和曲面拟合 下载地址:https://www.mathworks.com/products/curvefitting.html 优化工具箱(Optimization Toolbox) 功能:求解线性、二次、整数和非线性优化问题 下载地址:https://www.mathworks.com/products/optimization.html 全局优化工具箱(Global Optimization Toolbox) 功能:求解多个极大值、多个极小值和非光滑优化问题 下载地址:https://www.mathworks.com/products/global-optimization.html 符号数学工具箱(Symbolic Math Toolbox) 功能:执行符号运算 下载地址:https://www.mathworks.com/products/symbolic.html 地理工具箱(Mapping Toolbox) 功能:地理信息分析与可视化 下载地址:https://www.mathworks.com/products/mapping.html 偏微分方程工具箱(Partial Differential Equation Toolbox) 功能:利用有限元法 (FEM) 求解偏微分方程 下载地址:https://www.mathworks.com/products/pde.html 15.AI、数据科学和统计学类 统计学与机器学习工具箱(Statistics and Machine Learning Toolbox) 功能:运用统计与机器学习进行数据分析及建模 下载地址:https://www.mathworks.com/products/statistics.html 强化学习工具箱(Reinforcement Learning Toolbox) 功能:使用强化学习设计和训练策略 下载地址:https://www.mathworks.com/products/reinforcement-learning.html 文本分析工具箱(Text Analytics Toolbox) 功能:分析文本数据并建模 下载地址:https://www.mathworks.com/products/text-analytics.html 预测维护工具箱(Predictive Maintenance Toolbox) 功能:设计和测试状态监控和预测性维护算法 下载地址:https://www.mathworks.com/products/predictive-maintenance.html 16.其他类 TCP/UDP/IP 工具箱(TCP/UDP/IP Toolbox 2.0.6) 功能:TCP/IP连接或UDP数据包 下载地址:https://www.mathworks.com/matlabcentral/fileexchange/345-tcp-udp-ip-toolbox-2-0-6 GUI排版工具箱(GUI Layout Toolbox) 功能:用于MATLAB GUI的布局管理对象 下载地址:https://www.mathworks.com/matlabcentral/fileexchange/27758-gui-layout-toolbox 高阶谱分析工具箱(HOSA - Higher Order Spectral Analysis Toolbox) 功能:光谱和多光谱分析,以及时频分布。 下载地址:https://www.mathworks.com/matlabcentral/fileexchange/3013-hosa-higher-order-spectral-analysis-toolbox cvx toolbox 功能:凸优化系统建模 下载地址:http://cvxr.com/cvx/download/ SeDuMi 功能:凸优化 下载地址:http://sedumi.ie.lehigh.edu/ yalmip工具箱 功能:优化建模 下载地址:https://yalmip.github.io/download/ 更多MATLAB工具箱下载地址:https://www.mathworks.com/support/search.html?q=toolbox&page=1

cisen commented 3 years ago

https://www.mathworks.com/matlabcentral/answers/116687-matlab

如果您无法使用 MATLAB 的内置函数或相关工具箱,请确保已安装了函数文件。

如果您知道函数属于哪个工具箱,请通过在您的 MATLAB 命令行窗口中运行以下命令来验证是否已安装该工具箱,以及该工具箱的版本是否与 MATLAB 版本匹配: ver 如果您没有看到工具箱,但您认为已安装它,请尝试将 MATLAB 路径重置为默认值。MATLAB 将工具箱信息存储在缓存文件中。您需要首先更新此缓存,然后重置路径。为此,请执行以下操作:

1.转到“文件”(File) 菜单,再到“预设”(Preferences) 2.转到“常规”(General) 标题。点击“更新工具箱路径缓存”(Update Toolbox Path Cache) 按钮,然后按“确定”(OK)。 3.转到“文件”(File) 菜单,再到“设置路径”(Set Path) 4.点击“默认值”(Default),按“确定”(OK) 进行更改,然后点击“保存”(Save),最后点击“关闭”(Close)。 (如果您向 MATLAB 中添加了任何自定义路径,稍后您将需要恢复它们)

再次运行“ver”来查看是否已安装工具箱。如果没有,您可能需要重新安装该工具箱才能使用此函数。有关安装工具箱的详细信息,请参阅相关解决方案:“如何将其他工具箱安装到现有的 MATLAB 中”。

在 ver 显示您的工具箱之后,运行以下命令来查看您是否可以找到该函数: which -all <函数的名称> 将 <函数的名称> 替换为函数的名称。应向您显示函数文件的路径。如果您获得“未找到 <函数的名称>”的消息,则您可能需要重新安装该工具箱才能使用此函数。

注意:如果该函数的多个实例不在 $MATLABROOT\toolbox 子文件夹中(其中 $MATLABROOT 是您的计算机上的安装文件夹),则您在运行内置函数时可能会遇到问题。有关详细信息,请参阅相关解决方案:“在使用自定义函数时,为什么会收到‘未定义函数或变量’”。

如果您收到错误消息“没有可用的许可证(license)”,则存在与许可相关的问题阻止您使用该函数。要查找发生的错误,您可以使用以下命令: license checkout 替换为包含您的函数的工具箱的合适键名称。要查找许可证键名称,您将需要查看许可证文件中的 INCREMENT 行。有关如何查找许可证文件的信息,请参阅相关解决方案:1-63ZIR6 -“MATLAB 的许可证文件位于何处?”

所有工具箱的许可证键名称都位于 license.dat 文件中的每个 INCREMENT 标签之后。例如: INCREMENT MATLAB MLM 17 00-jan-0000 0 B454554BADECED4258 \ HOSTID=123456 SN=123456 如果您的 license.dat 文件没有 INCREMENT 行,请与您的许可证管理员联系来获取这些 INCREMENT 行。 例如,要测试 Symbolic Math Toolbox 的许可,可以运行以下命令: license checkout Symbolic_Toolbox 正确的测试将产生结果“ANS=1”,否则将出现许可证管理器错误。您可以在下方链接中查找许可证管理器错误来解决错误:

http://www.mathworks.com/support/install.html 或在下面与安装支持团队联系来解决错误:

https://www.mathworks.com/support/contact_us.html 在与支持团队联系时,提供您的许可证编号、您的 MATLAB 版本、您使用的函数和许可证管理器错误(如果适用)。