先理解MATLAB的“脾气”
MATLAB的核心是矩阵。它默认所有变量都是数组,标量只是1×1的矩阵。理解这一点,很多看似奇怪的语法就顺了:AB是矩阵乘法,A.B才是逐元素相乘。初学者最常见的错误就出在这里——该用点乘的地方漏了点号,结果维度对不上或算错数值。
安装完成后,建议先熟悉三个区域:当前文件夹、命令行窗口、编辑器。日常写代码尽量在编辑器里完成,用脚本文件而不是一条条敲命令,方便修改和复用。
矩阵与索引:编程的地基
创建矩阵用方括号,行内元素用空格或逗号分隔,换行用分号:
A = [1 2 3; 4 5 6; 7 8 9];
索引从1开始,这是MATLAB与C、Python的重要差别。A(2,3)取第二行第三列;A(:,2)取整列;A(2,:)取整行。冒号还能生成序列,1:2:9得到1、3、5、7、9,步长写在中间。
常用函数要尽早记住:size查维度、zeros和ones预分配、eye生成单位阵、linspace生成等距向量。预分配尤其重要,循环里不断扩展数组会显著拖慢速度。
控制流与函数:从脚本到模块
条件与循环的写法直观:
for k = 1:10
if mod(k,2) == 0
disp(k)
end
end
真正的进步来自写函数。函数文件以function开头,文件名与函数名一致。一个规范示例:
function s = mysum(v)
% 计算向量元素之和
s = 0;
for k = 1:numel(v)
s = s + v(k);
end
end
实际项目中,能向量化就向量化,sum(v)比循环快得多。函数要职责单一,输入输出清晰,加上注释说明用途和参数含义。
绘图与调试:验证你的结果
绘图是MATLAB的强项。基本流程是plot画图,xlabel、ylabel、title加标注,legend加图例,grid on开网格。多条曲线可一次传入多个向量,或用hold on叠加。
调试别只靠disp。在编辑器行号旁点红点设断点,运行时程序会停在那里,此时可查看工作区变量、单步执行。遇到报错先读提示信息,MATLAB的错误描述通常直接指出问题所在的行和原因。
养成工程化习惯
- 脚本开头用
clear; clc;清理环境,避免旧变量干扰。 - 变量命名用有意义的名字,别用
a1、tmp堆满工作区。 - 善用
help和doc查函数用法,比搜索引擎更快更准。 - 复杂项目拆成多个函数文件,主脚本只负责流程调度。
按这四条主线走一遍,再找一个小项目练手——比如读取一份表格数据、做统计并画图——MATLAB的编程入门基本就站稳了。