
Python
Matlab和M脚本语言,本质上并非通用编程语言。其最初的设计是为工程设计人员和科学家进行数值计算而打造的工具,用现在流行的说法来讲,就是一种领域特定语言(DSL)。不过,Matlab的功能日益强大,用户群也越发广泛,它还在持续朝着通用编程语言的方向发展,像是增添了面向对象编程(OOP)的特性,也增加了对.NET、
Python等语言的支持。在发展进步的进程里,很庆幸MathWorks
公司始终不忘初心。它本就是一个矩阵实验室(Matrix Laboratory),是进行矩阵计算的地方,就像一个大型计算器。所以,学习Matlab时,首先要将其视作卡西欧函数计算器。遇到数字相关的问题,就打开Matlab,在>>提示符后输入内容,按回车键得出结果。学习Matlab与其他编程语言有所不同。它无需基础,不用进行环境配置,也不用学会编程与调试。找台装有Matlab的
电脑,双击打开,找到>>,就能开始学习了。错误代价极低,学习起点也很低,这便是Matlab学习的第一步。我家孩子才上二年级,就已经能在Windows和
linux系统的
电脑上打开Matlab了。在Matlab里输入1+1再回车,能得出结果2;输入sin(2 * pi / 3)再回车,也能得到结果0.8660。这样很不错。要是出错的话,Matlab只会用红色字体显示错误信息,而不会弹出对话框,也不会要求重新编译、重启、重新配置或者重新安装。这就是Matlab学习的第一步,是不是很不错?当然,一名成熟的工程师或者即将成为科学家的后备天才,不会满足于标量。他们会用向量表示更高维度的数据,以高阶张量描述协变和逆变关系,阐述高阶空间的转换和变换。Matlab的第二步,是从数字转换到张量。这时候线性代数知识就能发挥作用了,像矩阵乘法、转置、求逆、求行列式等一系列操作都可派上用场。Matlab的第三步是从计算迈向绘图。在计算向量、矩阵时,会产生新需求,即对计算结果进行可视化。标量计算结果可直接查看,但向量、矩阵计算结果需绘制成图表才能更直观地理解。Matlab绘图功能很强,能绘制多种类型图表,像线图、柱状图、饼图、散点图、等高线图、三维图等。Matlab绘图函数包含诸多参数,能设置线型、颜色、标记、标题、坐标轴等内容。
只需学会使用help plot或者doc plot命令,就能查看更多参数、示例及其他相关函数。前面的标量计算、矩阵计算和绘图能够解决不少问题。在这个过程里,压根不需要太多编程知识,像文件、脚本、函数这些基本概念都无需了解,只是计算个数、画个图罢了。不过接下来的路会稍微有点颠簸。
一般而言,工程师或研究人员掌握这些,足以应对常规科研工作。最后再来说说这个系列文章。最初我是写到哪儿算哪儿,可写着写着就来了兴致,打算写300篇。我觉得最后也许写不到300篇,但我会把相关的内容都梳理一遍,把重要的知识点和技巧写出来。最后有如下几个认知: