Matlab快速入门五分钟教程(原创)

本文目录
[隐藏]

Matlab是一款非常简单易学的数学软件,拥有强大的矩阵运算、数据处理、图像绘制等功能,深受广大师生和工程师喜爱。

作为初学者,建议分一下三步进行学习:

  • 基于命令窗学习,熟悉常用操作和命令;
  • 撰写单个脚本文件,掌握结构化编程;
  • 采用脚本文件调用函数文件,设计模块化算法。

入门第一步,命令窗操作

在进行操作前,强烈建议读者下载MATLAB Primer(学习圣经,任意一版都行),然后把第一章快速入门快速扫描一遍,花不了十分钟,但可以让你的后续学习快很多。如果嫌前三十页太多,那么请把前13页看完,不能再少了。

matlab-primer

the most useful tutorial for matlab

然后打开matlab,我们将会看到主页面,找到命令窗(command window,一般是靠中间底部),然后就可以开始敲命令了。

首先尝试的是四则运算,加减乘除,比如 1+ 2,回车,显示ans=3;

然后是变量赋值,比如x=5, 回车,显示x=5;

继续是数组赋值,比如 x = [1,2,3],回车,显示一个数组(1行3列),此处,逗号表示列分割符,如果想要换行,数字后改用分号,比如x=[1;2;3];

接下来是常用的命令,比如clc 清除屏幕显示,clear 清除工作区所有变量,disp() 在命令窗显示括号内内容等;

最后,一个最重要的命令help,命令窗输入help(clc),括号内填入想要了解的对象clc,然后matlab就会自动打开帮助页,里面会有详尽的解释,有心情就多看看解释,着急的话直接copy例子到命令窗口运行。

至此,相信大家对于matlab已经有了感性的认识,下面我们准备进行功能更强大的草稿式编程。

入门第二步,单脚本编程

对于简单的编程,命令窗直接输入就够了,但如果程序相对复杂,可以把所有的Matlab命令集中在一个后缀为m的文件里面(这个文件可能是一个完整的程序,俗称脚本文件,也可能是一个模块,俗称函数文件)。

采用集中命令的好处就是方便调试,极大的提高了编程效率,这里我们先学习脚本文件编程,需要到编辑窗口操作。

菜单栏选择新建脚本文件,进入编辑窗(editor)打开的空白文档,首先输入程序注释,每行以百分号%开始,百分号之后的内容在matlab执行时自动被忽略,只是用于提示用户相关信息(比如时间,作者,程序用途等等),然后保存文件,比如singleScript.m。

下面我们尝试绘制一段正弦曲线,对应代码如下:

x = 0:pi/10:2*pi;
y = sin(x);
plot(x,y)

点击运行(run),假如命令窗口没有任何错误提示的话,我们会看到一个新的窗口(figure)弹出并显示对应曲线。

细心地读者可能会发现,前两行后面多了分号,这是告诉matlab不要进行回显操作,如果移除分号,那么x和y的值就会显示在命令窗。

至此,一个简单的脚本文件撰写已经完成,对于实际中需要解决的问题,一般会包含若干判断或循环,这就涉及到程序结构设计问题,听起来很高端,但是利用matlab实现起来很简单,因为脚本语言俗称草稿式编程,可以想到哪里写到哪里,非常灵活。

结构设计最常用的是if判断和for循环,请读者在命令窗利用help查看对应example,稍有编程基础就可立马上手。

最后,补充一点,尽可能多利用快捷键,比如运行F5,单步运行F10,帮助F1,设置断点F12等等,这些不必强求,在使用过程中慢慢熟悉和体会。

入门第三步,多脚本编程

有了前面的基础,我们基本可以解决科研和工程中的常见问题,但是如果程序太长,比如成千上万行,且部分程序在功能上相对独立,这时可以考虑采用模块化设计,即编写函数文件,再利用主程序调用函数。这样做的最大好处就是增强程序可读性。

实际上,我们每次调用matlab内部的函数时,其实就有一个对应函数文件,比如在命令窗输入sin,全选plot,点击右键选择“open selection”,我们就会看到一个名为sin.m的文件,这就是一个的函数文件,不过这个文件比较特殊,只有注释,这是因为最后一行提示该函数为内建函数(build-in function)。

虽然我们可以编写自己的函数文件,但matlab很友好的为我们准备了相关的例子,为何不用呢?

命令窗输入function,鼠标全选function,按下F1打开help文件,找到example (function with One Output),对应代码如下:

function y = average(x)
if ~isvector(x)
error('Input must be a vector')
end
y = sum(x)/length(x);
end

将上述代码保存为average.m文件,切记与脚本文件不同,函数文件名必须与函数名一致,不然程序就找不到该函数而停止运行。

保存完毕后,在命令窗输入average([1:99]),回车,得到ans=50。至此,一个简单的函数文件编写完毕,如果需要在另一个脚本里面调用该函数,只需要按照命令窗运行的代码输入即可,是不是很方便?

最最宝贵的三条经验

通过前面的介绍,相信大家对matlab有了更为理性的认识,当然这里的介绍的只是抛砖引玉,给大家建立matlab学习的信心,后续需要大家在实践中不断加强,不停积累。最后给大家分享最为宝贵三条经验:

  1. 磨刀不误砍柴工!尽可能把前面介绍的matlab primer快速扫描一遍,这是经过N次修订后最全面最简洁的教程。
  2. 代码自已一个一个的敲!matlab变量无需申明,区分大小写,这给编程带来很大灵活,但也给初学者埋下隐患,特别是喜欢粘贴复制代码的同志,不要以为你看到的就是你看到的,有些代码你就是调到死也不通,因为某些特殊代码不对你显示(空白),但matlab会读取。
  3. 坚信你不是第一个发现问题的人!对于初学者遇到的问题,可能千奇百怪,但上百万人的用户一起用的话,再特殊的问题也是很普遍的了,所以遇到问题先从help查找,无果的话,再google,再无果的话,调整你的问题描述再google,实在不行的话上网发帖或直接给我发邮件(非常乐意解答)。

最后,祝大家Matlab学得开心,用的顺心。

评论已关闭。

Alexa