前言:
此刻小伙伴们对“matlab arm”大约比较关心,小伙伴们都需要知道一些“matlab arm”的相关文章。那么小编也在网上汇集了一些有关“matlab arm””的相关资讯,希望各位老铁们能喜欢,姐妹们快快来了解一下吧!哈工大和哈工程被禁止使用的 MATLAB 软件,到底是个什么软件?
简单地说,是工业软件。
近几十年来,电脑和软件的普及,对我们的日常生活意义重大,可是对于理科生来说,MATLAB 软件的重要性,再怎么强调也不过分。
MTALAB 到底是个啥?
MATLAB,从字面上来看,是 MATrix LABoratory(矩阵实验室)的缩写,是美国 The MathWorks 公司研发的一款商业数学软件,广泛应用于算法开发、数据可视化、数据分析和数值计算的科研应用环境。
1980 年左右,美国新墨西哥大学教授克里夫·莫勒尔,为了让动手能力欠缺的学生“方便地使用”LINPACK 和 EISPACK,无需繁琐重复地执行远程批处理和“编辑-链接-加载和执行”的过程,师道尊严爆棚,义无反顾地用 FORTRAN 语言编写了第一版 MATLAB ,虽然这版软件只能进行简单的矩阵运算,比如矩阵转置、计算行列式和本征值,但是对于大学生来说显然够了。
毕竟莫勒尔教授为了提升教学质量,不惜自己开发一款软件,学生们还能说什么呢?
不管怎么说,第一版 MATLAB 因为实用、易用而且好用,被学术同仁和大学生热烈转发,下载量达到了两三百,莫勒尔教授的内心激动得无以言表,决定创业了。
但是,有两个狂热的 MATLAB 粉丝,也就是杰克·李特(学生)和斯蒂夫·班格尔(朋友),郑重其事地对莫勒尔教授说,“你编写软件的 FORTRAN 语言太老了,虽然做数值计算更好用,但是 C 语言是通用性语言。”
莫勒尔教授一想,还真是这个理儿,可是他挠挠头说,“可是我太忙了。”
杰克·李特和斯蒂夫·班格尔马上齐声说,“我们来干!”
没想到一干就是一年半,这两位美国程序大牛,用C语言重新编写了 MATLAB 软件,并增加了新功能和系统控制工具箱,其中一些代码甚至直到今天还在使用。
为了参股董事会,这样的决心没谁了。
1984 年,“三个火枪手”杰克·李特、克里夫·莫勒尔和斯蒂夫·班格尔特,合伙成立了 MathWorks 公司,将备受好评的 MATLAB 推向市场。
“从创业的第一天起,你每天要面对的是困难和失败,而不是成功。”这话说的一点没错,不但适用于中国大学生,也适用于美国教授。因为当 C 语言重写的 MATLAB 1.0 版本在拉斯维加斯举行的“IEEE 决策与控制会议”正式推出后,第一份订单只卖出了10份拷贝。
但他们用心血浇灌的软件,收获更多的是惊喜:根据 MathWorks 自己的数据,直到 2010 年 4 月,世界上有 180 多个国家超过 300 万工程师和科学家,在使用 MATLAB 和 Simulink。鉴于 C 语言版 MATLAB 软件的大受好评,MathWorks 公司于 1992 年推出价格优惠的学生版,于 1993 年推出 Windows 版 PC-MATLAB,并于 1995 年推出 Linux 版 Pro-MATLAB,基本完成了 MATLAB 软件的“套娃”衍生。
MTALAB到底有多重要?
从课堂教学工具到商业化软件,MATLAB 软件承受的担子越来越重。
如今的 MATLAB 虽然增加了很多功能,比如编程语言的面向对象支持,toolbox 的扩充增加,还有图形界面的丰富功能,但是其核心还是矩阵计算,所以大家很容易看到,矩阵计算是MATLAB最基本的数据类型。
矩阵,一听就很高科技,事实上也的确如此。
不管是应用广泛的 CAE 仿真,还是如火如荼的人工智能,都是建立在矩阵计算的基础上。可以说矩阵计算,就是数字化工业的核心,那么在这个时代,MATLAB 到底能发挥什么作用呢?
首先,MATLAB 是一种面向科学与工程计算的高级语言,允许以数学形式的语言编写程序,比BASIC、FORTRAN 和 C 语言都要更加接近于我们书写数学计算公式的思维方式。甚至可以说,用MATLAB 编写程序,就像是在草稿纸上排列公式和求解问题,因而对于理科生和科研人员来说,MATLAB 编写简单,编程效率高,而且通俗易懂。
其次,MATLAB 是对代码、文件和数据进行管理的开发环境;是按迭代的方式探查、设计及求解问题的交互式工具;可用于包括线性代数、统计、傅里叶分析、筛选、优化以及数值积分等的数学函数;用于可视化数据的二维和三维图形函数;用于构建自定义的图形用户界面的各种工具,还可用于基于MATLAB 的算法与外部应用程序和语言集成的各种函数。
当然,MATLAB 再厉害也不是万能的,尘世间总有些事情它做不到:
比如大规模并行矩阵计算、工业级软件产品开发,ARM 与边缘计算设备。
这主要是因为 MATLAB 的短板就是大规模并行计算,而且工业级软件产品的研发中,我们基本看不到MATLAB 的影子,反倒是开源语言 Python 后来居上,占据着工业级矩阵计算的半壁江山;此外MATLAB的通用性并不好,比如无法在 ARM 处理器上运行,而且体量巨大,无法部署在大量使用 ARM 的移动产品和边缘、工控和国产设备。
随着 5G 时代和工业互联网的普及,作为 80 后,MATLAB 在中国市场负担沉重、步履蹒跚,早就已经力不从心了。
MATLAB 真的不可替代吗?
提出这个问题确实很扎心,毕竟哈工大和哈工程的教授和学生,现在还有些烦躁。
但实事求是地说,Octave 就是 MATLAB 的直接替代品,或者说“仿制品”。
这是两个几乎一模一样,只有细微差别的软件产品,相似率高达95%以上,在商业授权上如同 Windows 和 Linux ,也就是 MATLAB 付费,Octave 开源。
GNU Octave 是一种采用高级编程语言的主要用于数值分析的软件,有助于科研人员以数值方式解决线性和非线性问题,并使用和 MATLAB 兼容的语言进行数值实验,还可以作为面向批处理的语言使用。
令人欢欣鼓舞的是, Octave 是 GNU 计划的一部分,是“GNU通用公共许可证”条款下的“自由软件”。
之所以说,Octave 是 MATLAB 的主要替代软件,是因为:
Octave 和 MATLAB 的软件操作界面相似;
Octave 和 MATLAB 的语法绘图功能相似;
大量开源代码同时支持 Octave 和 MATLAB。
而且,Octave 可以直接运行大部分的 MATLAB 源程序;而 MATLAB 程序除非涉及到比较特殊的工具箱,基本上只需要简单改写即可在 Octave 中运行。
“既生瑜,何生亮。”
在世界工业软件市场,MATLAB 和 Octave 就像是当年的 windows 和 Linux:
禁止使用付费软件?那就用开源软件呗!
开源软件不好用?那就定制维护一下接着用!
不香吗?
标签: #matlab arm