- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Octave学习笔记
Octave 学习笔记
2013-6-29 Simon
flysyq@
Octave 是一个类似于Matlab 的数值计算软件,对Matlab 的功能和语法兼容性很高,其
他的兼容软件还有 Scilab 和 Freemat 软件,不过相对而言,Octave 的兼容性最高,考虑到
Matlab 高昂的价格,如果不喜欢使用盗版软件的话,可以采用 Octave 软件作为Matlab 的代
替品,经济学常用的DSGE 模型的软件 Dynare 就同时对 Matlab 和 Octave 提供支持。
Octave 的官方网站为/software/octave/ ,Octave 同时支持Linux 和
Windows 系统,本人使用的是Windows 7 ,在Windows 可选的环境是 Cygwin 和 MinGW ,这
两个都是 Windows 环境下对类Unix 系统的模拟环境,相对而言,MinGW 更简单一些,下载
MinGW 的版本,我下载的版本为Octave3.6.4_gcc4.6.27z ,是一个解压缩包,不需要
安装,下载之后按照包里带的说明文件配置快捷方式即可,另外也可以直接找到bin 目录下
可执行文件 octave.exe 直接运行即可。Octave 没有提供Matlab 的GUI 界面,默认是命令行界
面,不过也可以找到第三方的 GUI 界面,如 GUI Octave,也是开源免费的,Google 一下就
可以找到下载地址。
Octave 本身提供的功能如果觉得不够,可以试着在网上找相应的包,如默认情况下
Octave 不提供符号运算功能,可以从/projects/octave/files/Octave
%20Windows%20binaries/Octave%203.6.4%20for%20Windows%20MinGW%20installer/下载一
些常用的包,我下载的是 Octave3.6.4_gcc4.6.2_pkgs7z,安装过程在其中的说明文
件可以找到,在此略过。
Octave 自带的文档虽然有些简略,缺少例子,但也值得一看,在安装目录下的
doc\octave 下既有html 也有pdf 版本,其中的 octave.pdf 值得一看,其中的内容很广,除了包
括常见的语法之外,还有画图、矩阵操作、算术、线性代数、非线性方程、稀疏矩阵、数值
积分、微分方程、统计、多项式操作、插值、几何、信号处理、图像和音频处理等等,虽然
缺少足够的例子,但是可以给我们提供一个直观的感觉,看到底 Octave 能做什么。
陈杰的《Matlab 宝典》中目录大致也是包含这些内容,不过 Octave 缺少 Simulink 仿真
系统,这可能和 Octave 的用户及开发者有关,他们属于比较高端的用户,认为仿真系统对
现实应用较为陈旧,还不如自己写代码。
初步尝试了一下 Scilab、Freemat 、Octave 和 Matlab ,感觉大部分Matlab 拥有的函数
Octave 都有,并且函数名称基本一致,只不过某些参数值的可选范围不如Matlab 广,或者
缺少一些参数,这些在实际应用中有时候需要注意一下,如插值命令 interp1 ,在陈杰的书里
有一个 interp1(t,p,x,’v5cubic’) ,在octave 中就无法运行,但 interp1(t,p,x,’spline’)和
interp1(t,p,x,’cubic’)就可以运行;
学习经历:
1. 前置说明
Matlab 和 Octave 都是数值计算软件,所以其必然存在误差,所以在某些情况下,
可能会出现应该为整数,但得到的结果却和理想情况相差一小点的情况,不过目
前来说,软件做了大量的优化,在常用函数中基本都看不到这种情况,但自己编
写函数中要特别注意,避免在比较相等的时候出现问题,只要两者在误差范围内
就可以认为其相等,octave 默认提供了一个非常小的误差项 eps,默认值为
2.22044604925031e-016 。
文档评论(0)