做算法仿真的朋友,MATLAB代码里的函数名是不是总让你记混?2026年了,别再每次用都去Google了。我整理了这份A-G的高频函数对照表,全是实战里摸爬滚打总结出来的干货。
MATLAB的核心是矩阵,这一块的函数用得最频繁。
绝对值与取整。abs不用多说,求模或者ASCII码值。ceil、floor、fix这三个取整函数容易搞混。ceil是向正无穷取整(天花板),floor是向负无穷取整(地板),fix是直接截断小数部分向零取整。做图像处理或者量化分析时,用错一个结果能差出去十万八千里。
三角函数与反三角函数。除了常规的sin、cos,反三角函数的用法要注意。atan2(y,x)比atan(y/x)更安全,它能根据x和y的符号判断象限,输出范围是[-pi, pi],不会出现90度和270度分不清的情况。
矩阵操作。diag既能提取对角线元素,也能生成对角矩阵。eye生成单位阵。size和length要分清,size返回行列数,length只返回最长维的长度。
画图不是为了好看,是为了找Bug。
二维绘图。plot是基础,semilogx和loglog在做频率响应分析(Bode图)时必用。如果你想画带误差棒的曲线,用errorbar,这在实验数据处理中非常加分。
三维与特殊图形。画三维曲面用surf或mesh。contour画等高线,contourf是填充等高线,看势场分布特别直观。comet和comet3能画彗星轨迹,做动画演示效果很棒,比静态图更有冲击力。
图形句柄。想精细化控制图形,得懂句柄。gcf是获取当前图形窗口句柄,gca是获取当前坐标轴句柄。比如set(gca, 'FontSize', 12)就能把坐标轴的字号改成12号。
代码写得再牛,不会读文件、不会控制流程也是白搭。

文件与路径。用pwd看当前路径,cd切换路径。dir列出目录下所有文件。fopen打开文件,fread读二进制,fprintf写数据。注意,fclose一定要记得关文件,不然文件句柄会被占满,下次就打不开了。
逻辑判断。all和any的区别:all是“全为真才真”,any是“有一个真就真”。在判断矩阵是否全为正或者是否存在NaN时,这两个函数配合isnan用,效率极高。
循环与中断。for和while循环里,break是直接跳出循环,continue是跳过本次循环剩下的代码,直接进入下一次迭代。别搞混了,不然死循环能让你电脑卡死。
有几个坑我当年踩过,你们别再踩了。
eval慎用。虽然eval('x=1')能执行字符串命令,看起来很灵活,但它会拖慢运行速度,而且不利于代码调试。能用函数句柄(Function Handle)解决的,尽量别用eval。
稀疏矩阵。如果你的矩阵大部分是0(比如邻接矩阵),记得用sparse转换成稀疏矩阵。不然一个10000x10000的全矩阵,内存直接爆炸。
随机数种子。做仿真实验时,记得用rng(1)固定随机数种子。这样每次跑出来的结果都一样,方便复现Bug。不然这次报错,下次跑又好了,你会怀疑人生的。
这份表虽然只到G,但覆盖了80%的日常需求。把这些函数练熟,写MATLAB代码就跟说话一样自然。
武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks 等。