MATLAB 支持有符号/无符号整数、单/双精度浮点数等数值类型。默认以双精度浮点数存储,但可显式转换为整数或单精度类型。所有数值类型均支持基本数组与数学运算。 数值类型转换函数 函数用途 double转双精度浮点数 single转单精度浮点数 int8转 8 位有符号整数 int16转 16 位有符号整数 int32转 32 位有符号整数 int64转 64 位有符号整数 uint8转 8 位无符号整数 uint16转 16 位无符号整数 uint32转 32 位无符号整数 uint64转 64 位无符号整数 示例:不同类型下的乘法运算 x = single([5.32 3.47 6.2
冒号 (:) 是 MATLAB 中最实用的运算符之一,用于创建向量、数组下标索引及指定 for 循环迭代。 创建 1 到 10 的行向量: 1:10 ans = 1 2 3 4 5 6 7 8 9 10 指定步长(如 -5): 100:-5:50 ans = 100 95 90 85 80 75 70 65 60 55 50 使用 π 为步长: 0:pi/8:pi ans = Columns 1-7: 0 0.3927 0.7854 1.1781 1.5708 1.9635 2.3562 Columns 8-9: 2.7489 3.1416
在 MATLAB 中,所有数据类型的变量本质上都是多维数组。向量是一维数组,矩阵是二维数组。 我们已经讨论过向量和矩阵。本章将重点介绍多维数组,但在此之前,先来了解几种特殊的数组类型。 MATLAB 中的特殊数组 本节介绍用于创建特殊数组的函数。这些函数均支持单参数生成方阵、双参数生成矩形数组。 zeros() 函数创建全零数组: 示例: zeros(5) MATLAB 执行后返回 5×5 的全零矩阵: ans = 0 0 0 0 0 0 0 0 0 0 0 0 0 0
矩阵是二维数组,按行输入元素,行间用分号分隔。 创建矩阵 a = [1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8] % 4 行 5 列 元素引用 A(m,n) — 第 m 行第 n 列元素 A(:,n) — 第 n 列所有行(列向量) A(m,:) — 第 m 行所有列(行向量) A(:,m:n) — 第 m 到 n 列子矩阵 A(p:q, m:n) — 行 p-q、列 m-n 子矩阵 示例 a = [1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8]; a(2,5) % 6
向量是一维数组,分行向量与列向量。 创建向量 行向量 r = [7 8 9 10 11] % 空格 r = [7, 8, 9, 10, 11] % 逗号 列向量 c = [7; 8; 9; 10; 11] % 分号 元素引用与切片 v(i) — 第 i 个元素(1 基索引) v(:) — 全部元素列出(转为列向量) v(m:n) — 索引 m 到 n 的子向量 示例 v = [1; 2; 3; 4; 5; 6]; v(3) % 3 v(:) % 1 2 3 4 5 6 rv = 1:9; sub_rv = rv(3:7) % 3
循环让代码块重复执行。MATLAB 提供三种循环形式: #循环类型适用场景 1while条件为真持续执行,先判断后执行 2for遍历已知范围/数组,自动管理循环变量 3嵌套循环循环内再套循环,处理多维遍历 while 循环 while condition statements end 示例:累加直到超过 100 sum = 0; n = 1; while sum <= 100 sum = sum + n; n = n + 1; end for 循环 for index = values statements end values 可为:
决策结构根据条件控制程序流向。MATLAB 提供以下语句: #语句类型说明 1if ... end单分支,条件真执行 2if ... else ... end双分支,假执行 else 块 3if ... elseif ... else ... end多条件链,依次判断 4嵌套 ifif/elseif 内部再含 if 5switch ... case ... otherwise ... end变量与多值匹配,支持字符串 6嵌套 switchswitch 内部再含 switch 语法模板 if-end if condition statements en
MATLAB 运算符天然支持矩阵与数组两种运算模式,点号 . 区分数组逐元素运算。 算术运算符 #运算符与说明 1+ 加法 / 一元正。同尺寸或标量广播。 2- 减法 / 一元负。同尺寸或标量广播。 3* 矩阵乘法(线性代数定义)。列数=行数。 4.* 数组逐元素乘法。同尺寸或标量广播。 5/ 矩阵右除 B/A ≈ B*inv(A)。 6./ 数组逐元素右除。 7\ 矩阵左除 A\B 求解 AX=B。 8.\ 数组逐元素左除。 9^ 矩阵幂(特征值分解)。 10.^ 数组逐元素幂。 11 共轭转置(复数共轭+转置)。 12. 非共轭转置(
MATLAB 无需声明类型,遇新变量自动分配存储。所有数据本质均为矩阵/数组(最小 0×0)。 15+ 基本数据类型 #类型说明 1int88 位有符号整数 2uint88 位无符号整数 3int1616 位有符号整数 4uint1616 位无符号整数 5int3232 位有符号整数 6uint3232 位无符号整数 7int6464 位有符号整数 8uint6464 位无符号整数 9single单精度浮点 10double双精度浮点(默认数值类型) 11logical逻辑值 1/0(true/false) 12char字符/字符串(字符
MATLAB 程序文件统称 M 文件(后缀 .m),分两类: 脚本:顺序命令集合,不接受输入、不返回输出,操作基础工作区变量。 函数:接受输入参数、返回输出,内部变量局部作用域,避免命名冲突。 创建与运行脚本 方式一:命令行 edit % 打开编辑器新建无标题文件 edit prog1.m % 创建/编辑 prog1.m 方式二:IDE 菜单 New → Script,编写后保存为 .m。 示例:统计人员总数 NoOfStudents = 6000; TeachingStaff = 150; NonTeachingStaff = 20; Total =
在命令窗口()输入命令即时执行。以下按功能分类整理高频命令。 会话管理命令 命令功能 clc清空命令窗口 clear清除变量 exist检查文件/变量是否存在 global声明全局变量 help查看帮助主题 lookfor关键词搜索帮助 quit退出 MATLAB who列出变量名 whos详细列出变量 系统操作命令 命令功能 cd切换当前目录 date显示当前日期 delete删除文件 diary开关日志记录 dir / ls列出目录文件 load加载 .mat 文件 path显示/设置搜索路径 pwd显示
MATLAB 中每个变量本质上都是数组/矩阵。标量是 1×1 矩阵,向量是 1×N 或 N×1 矩阵。 基本赋值 x = 3 % 创建 1x1 矩阵 x,值 3 x = sqrt(16) % 表达式赋值,结果 4 关键规则 变量使用前必须赋值 未赋值的表达式结果自动存入 ans 可后续引用 ans sqrt(78) ans = 8.8318 9876/ans ans = 1118.2 多重赋值 a = 2; b = 7; c = a * b c = 14 查看与管理变量 命令作用 who列出变量名 whos详细信息:大小、字节、类
MATLAB 交互环境如同超级计算器,在 提示符下即时执行输入的表达式。 动手实践:基本算术 5 + 5 ans = 10 3 ^ 2 % 3 的 2 次方 ans = 9 sin(pi/2) % 正弦 90° ans = 1 7/0 % 除零 ans = Inf Warning: division by zero 732 * 20.3 ans = 1.4860e+04 特殊常量:pi (π)、Inf (∞)、i/j (√-1)、NaN (非数值)。 分号 (;) 抑制输出 语句末尾加分号不显示结果: x = 3; y = x
本地安装步骤 访问 MathWorks 官网下载安装器(需账号登录,提供商业版、试用版、学生版) 运行安装器,按向导完成安装(几分钟点击完成) 首次启动需激活许可证 MATLAB 桌面环境解析 启动后显示默认布局的“桌面”,包含四大核心面板: Current Folder(当前文件夹) — 管理项目文件与路径 Command Window(命令窗口) — 交互式执行命令,提示符 Workspace(工作区) — 显示所有变量名、值、类型、大小 Command History(命令历史) — 记录已执行命令,支持重运行、创建脚本 各面板可拖拽停靠、最小化、
MATLAB(Matrix Laboratory,矩阵实验室)是一款面向数值计算、可视化与编程的四代高级语言及交互式环境。它以矩阵为核心数据结构,广泛应用于科学计算、工程仿真、数据分析、算法开发等领域。 核心计算能力 MATLAB 在计算数学的各个分支均提供强大支持: 矩阵与数组运算(线性代数核心) 二维/三维绘图与可视化 线性代数、代数方程、非线性函数求解 统计分析、数据挖掘、机器学习预处理 微积分、微分方程数值求解 数值积分、积分变换(傅里叶、拉普拉斯等) 曲线拟合、插值、优化 各类特殊函数(贝塞尔、伽马、误差函数等) 主要特性 高级语言:面向
MATLAB