Octave

  • 1.MATLAB
  • 2. Octave
  • 3.二者的区别
  • 4.Octave学习
  • 5.Octave历史
  • 6.ubantu环境下使用

1.MATLAB

MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。

2. Octave

Octave是一种高层解释类编程语言,旨在解决线性和非线性的数值计算问题。Octave为GNU项目下的开源软件,早期版本为命令行交互方式,4.0.0版本发布基于QT编写的GUI交互界面。
Octave语法与Matlab语法非常接近,可以很容易的将matlab程序移植到Octave。同时与C++,QT等接口较Matlab更加方便。
Octave是一种科学计算软件,它提供了方便的互动命令列接口来解决线性与非线性的数值运算问题,并可将计算结果可视化,与高价的商业软体MATLAB语法几乎兼容。

Octave的在线版本也是免费的,网址:octave-online.net,可以在手机,平板上访问,非常方便。

3.二者的区别

1、占用空间:Octave比较小,安装程序只有几十兆;而Matlab非常庞大,最新版的安装程序大约8G。Matlab之所以zhi那么庞大,是因为有大量的面向各种应用领域的工具箱,Octave无法相比的。
2、用户界面:Matlab经过那么多年的发展,而且又是商业软件,这方面肯定更胜一筹。以前Octave没有调试程序的GUI,现在据说已经有了,但应该比不上Matlab。
3、语法方面:Octave最初便是模彷Matlab而设计,语法基本上与Matlab一致,严谨编写的代码应同时可在Matlab及Octave运行,但也有很多细节上差别。一些软件开发小组也使用两者兼容的语法,直接开发可以同时在Matlab和Octave使用的程序。
4、费用方面:Octave是完全免费的(并且是开源的),而Matlab是商业软件,价格很昂贵。支持软件的自由著作权的人可以尝试一下Octave。

4.Octave学习

octave是一门科学计算语言,类似于matlab,一个非常大的优点是占用内存非常小,所以广受机器学习爱好者的喜欢。主要用于数值计算,是一门面向批处理的高级语言。主要用于线性和非线性计算,数值型线性代数,统计分析及其他数值实验。
具体的学习资料可以参考知乎:
油管6集教学视频:

5.Octave历史

Octave最初被构想(大约在1988年),是由威斯康星大学麦迪逊分校的James B. Rawlings和得克萨斯大学的John G. Ekerdt编写的有关化学反应器设计的本科水平教科书的配套软件。
最初设想了一些非常专业的工具来解决化学反应器设计问题。后来,在看到这种方法的局限性之后,选择尝试构建一个更加灵活的工具。仍然有些人认为应该只使用Fortran,因为它是工程学的计算机语言,但是每次尝试这样做时,学生们都花了太多时间试图弄清为什么他们的Fortran代码失败并导致失败。没有足够的时间来学习化学工程。
相信在像Octave这样的交互式环境中,大多数学生将能够快速掌握基础知识,并在短短几个小时内自信地开始使用它。全职开发始于1992年春季。第一个alpha发行版是1993年1月4日,而1.0版是1994年2月17日发行的。从那时起,Octave经过了几次重大修订,包括在Debian GNU / Linux, openSUSE和许多其他GNU / Linux发行版。
在1997年7月的Linux Journal中,有一篇review关于Octave。显然,Octave现在不仅仅只是另一个课件包,它在教室之外的用途有限。尽管我们最初的目标有些模糊,但我们知道我们想创造一种能够使学生解决现实问题的东西,并且除了化学反应器设计问题外,他们还可以用于其他方面。如今,全球有成千上万的人在教学,研究和商业应用中使用Octave。几乎每个人都认为Octave这个名字与音乐有关,但实际上它是作者的前教授Octave Levenspiel的名字,他曾写过一本有关化学反应工程的著名教科书,并且以快速进行“封底”计算。我们希望该软件将使许多人能够同样轻松地进行更宏大的计算。鼓励每个人根据GNU通用公共许可(GPL)的条款与他人共享该软件。还鼓励您通过编写和贡献其他功能来帮助使Octave更加有用,并报告可能存在的任何问题。

6.ubantu环境下使用

terminal下输入提示如下

根据提示执行:sudo snap install octave

完成安装后键入:octave

demo:

Octave(open source版的matlab)介绍Octave online的使用相关推荐

  1. matlab和python的语言_四大机器学习编程语言对比:R、Python、MATLAB、Octave

    本文作者是一位机器学习工程师,他比较了四种机器学习编程语言(工具):R.Python.MATLAB 和 OCTAVE.作者列出了这些语言(工具)的优缺点,希望对想开始学习它们的人有用. 图源:Pixa ...

  2. 传统公司部署OpenStack(t版)简易介绍(二)——Keystone组件部署

    传统公司部署OpenStack(t版)简易介绍(二)--Keystone组件部署 一.OpenStack组件安装的顺序 二.创建数据库实例和数据库用户(ct控制节点) 三.安装.配置keystone. ...

  3. 智能群算法的CEC2017测试集 纯matlab版以及matlab与C++版 代码以及详细使用说明

    CEC2017 用于智能群算法性能测试评价.废话少说.我在网上搜不到纯matlab代码.滥竽充数的太多.这里我给大家分享 纯matlab版,MATLAB与c++交叉编译版的CEC2017. 我的文件: ...

  4. 传统公司部署OpenStack(t版)简易介绍(九)——控制台部署

    传统公司部署OpenStack(t版)简易介绍(九)--控制台部署 一.创建flat外部网络.创建内部交换网络.创建项目路由 二.上传cirros镜像 三.创建实例类型 四.创建实例.打通内外网 一. ...

  5. 传统公司部署OpenStack(t版)简易介绍(八)——Dashboard模块部署

    传统公司部署OpenStack(t版)简易介绍(八)--Dashboard模块部署 一.安装服务(c1) 二.重启服务(c1) 三.重启 ct 节点的 memcache 服务 四.验证操作 一.安装服 ...

  6. 传统公司部署OpenStack(t版)简易介绍(七)——cinder模块部署

    传统公司部署OpenStack(t版)简易介绍(七)--cinder模块部署 一.创建数据库实例和角色 二.创建用户.修改配置文件 三.在计算节点c2配置Cinder 四.ct节点查看卷列表 总结 一 ...

  7. 传统公司部署OpenStack(t版)简易介绍(六)——neutron模块部署

    传统公司部署OpenStack(t版)简易介绍(六)--neutron模块部署 一.ct 控制节点创建数据库neutron,并进行授权 二.c1.c2 节点(以c1为例) 三.ct 节点验证 总结 一 ...

  8. 传统公司部署OpenStack(t版)简易介绍(五)——nova模块部署

    传统公司部署OpenStack(t版)简易介绍(五)--nova模块部署 一.nova组件部署位置 二.ct节点Nova服务配置 三.c1节点配置Nova服务(c2节点一样,只是配置文件的IP不同) ...

  9. 传统公司部署OpenStack(t版)简易介绍(四)——placement模块部署

    传统公司部署OpenStack(t版)简易介绍(四)--placement模块部署 一.创建数据库实例和数据库用户 二.创建Placement服务用户和API的endpoint 三.测试 总结 一.创 ...

最新文章

  1. 中国机器人产业发展报告(2018)正式发布!
  2. C++、C#控制台应用程序暂停下来的方法
  3. 指向函数的指针--转
  4. 把普通的git库变成bare库
  5. 20150203一些移动端H5小bug解决
  6. Redis-3.2.4服务搭建
  7. 设置linux的console为串口【转】
  8. api k8s restful 创建pods_Kind:一个容器创建K8S开发集群
  9. Android: 一个两点触控的案例
  10. Linux下安装Mysql详解
  11. 基于Python的图书馆后台管理系统
  12. MYSQL查看操作日志
  13. 颠覆Web前端开发的HTML5技术
  14. video call BT audio音频流程
  15. SNIFFER(嗅探器)基础知识
  16. 手机端和pc端浏览器兼容性问题
  17. spring security——学习笔记(day05)-实现自定义 AuthenticationProvider身份认证-手机号码认证登录
  18. excel高级功能-分级显示
  19. 2021年中国家具行业现状及未来趋势分析:线上渠道将成为新增长点[图]
  20. il和idl区别_MinoxidilMax出品 Dualgen 15% Minoxil脫髮治療的用藥心得

热门文章

  1. 2行代码实现小程序分享到朋友圈功能
  2. 一文教你 Dubbo 服务性能压测(with JMeter)
  3. 高并发之并发容器,了解多少(从入门到超神)
  4. 蓝桥杯-最短路(floyd算法)
  5. theme vscode 护眼_VS code 豆沙绿护眼主题
  6. 计算机网络(二)计算机网络 体系结构和OSI参考模型 | 思维导图
  7. 使用jsoup解析html
  8. 基于JWT的Token认证机制实现
  9. java中异常处理机制
  10. [转]讲解安装Ubuntu nfs配置系统