- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Octave 中文简明教程
Octave:矩阵计算的新宠
实话实说,MatLab是迄今为止矩阵计算最强大的工具(没有之一)。可惜MatLab是商用的,一般个体还真买不起。MatLab的Windows版本 比Linux版本要好些,这让我不敢轻易断言Windows一无是处,毕竟其下有MatLab这样强悍的软件。以前在Windows下工作,MatLab 一直是我的首选矩阵计算工具,在统计计算工具S-PLUS出现之前,人们快乐地用着MatLab简陋的统计工具箱。后来有了R,它彻底地坐稳了统计计算的 头把交椅,MatLab似乎也无意去争夺全料冠军,但事实上它在很多方面都做得无可挑剔。这让我们这些买不起却很需要MatLab的穷人感慨不 已,MatLab如果是免费的该多好……
为何选择使用octave?
导入文件
Octave与MatLab的一些小区别
布尔值的乘积
逻辑运算符、算术运算符
C-风格的自动增量、赋值、屏幕打印
注意空格
直方图内置函数hist
导入空文件
行续符
if、for等环境的结束符
R和octave命令的对照表
R读入octave导出的数据
为何选择使用octave?
SciLab和octave是开源的且免费的矩阵计算工具,二者都有希望成为矩阵计算的新宠。相比之下,
octave与MatLab的兼容性更高。
octave遵循GPL协议(GNU General Public License),用户可以单独发行octave或者包含在其产品中发行。而scilab则不允许,你只能免费地使用它。
octave没有图形界面,是命令交互的。在某些人眼里这是不可饶恕的缺点,而在另外一些人眼里则是大大的优点。
它们都具备以下特点:以矩阵为基本数据类型,内置支持复数,有内置函数和外部函数库,用户自定义函数的可扩展性等特点。UNIX的很多用户选择使用 octave,看中的就是它与MatLab兼容性好这一事实。随着开源运动的深入人心,octave不断地发展壮大,它会吸引一大批MatLab的使用 者。
GNU octave网站:/
好习惯从头开始:
首先学会使用help,搞不定再到网上查,最后才求人。
学习octave的捷径:读octave的函数源码 。
每个命令都以“;”结束,否则矩阵的具体内容会显示出来。
学会适当地使用内置命令clear,从内存中清除一些无用数据或变元。
如果没有必要,不要轻易改变矩阵大小。
重要的中间结果要保存。
导入文件
octave和MatLab一样用load导入数据文件,譬如
octave A = load data.txt ;
将把data.txt里的数据导入octave并赋给矩阵 A。对于图像文件,octave用imread将图像导入并存为矩阵img,
img = imread(jam.jpg) ;
在octave里显示图像很简单,用命令:
imshow(img) ;
除了jpeg和png格式的图像可以直接导入,其他格式的图像必须经过ImageMagick的convert函数转换后才可读入。ImageMagick是命令行的强大的图像处理工具,convert几乎涵盖了所有格式图像的转换。
如果你关心imread函数的源码,可以去读 /usr/local/share/octave/packages/image-1.0.8/imread.m,该函数把灰度图像导入为MxN矩阵,把彩色图像导入为MxNx3矩阵。具体的帮助文件,可以
help imread ;
或者来个更详细点儿的
help -i imread ;
Octave与MatLab的一些小区别
MatLab用户转而使用octave几乎不需要什么培训,只是要一些小细节上注意一下。下面我们罗列一些octave和MatLab的区别。
布尔值的乘积
X = ones(2,2) ;
prod(size(X)==1)
MatLab和octave的输出是不同的:
Matlab: ??? Function prod is not defined for values of class logical.
Octave: ans = 0
octave输出为0的原因是 size(X) 为
ans =
2 2
逻辑运算符、算术运算符
Octave与MatLab兼容,甚至更为宽松。如,
运算 Matlab octave 或 | “|” 或者“||” 且 或者 否 ~= ~= 或者 != MatLab用 x^2,octave用 x^2 或者 x**2 表示 “x的平方”。Octave用 x**2 是为了照顾GnuPlot的用户。总而言之,octave在运算符方面彻底兼容MatLab,MatLab用户放心大胆地用octave吧,但 octave用户用M
您可能关注的文档
最近下载
- 2024年教师学习《中国共产党纪律处分条例》心得体会.docx VIP
- 道德与法治一年级上册 第一课时 我向国旗敬个礼 课件.pptx
- 电力设施保护宣传专题培训ppt课件.pptx VIP
- 高速路板块光伏项目可行性研究报告.docx
- 华为H19-369 HCSA-Pre-sales-IT认证考试复习(重点)题库(含答案).pdf VIP
- 【人教版】2024-2025学年一年级语文上册教学计划(及进度表).docx
- PCCP管制造及安装质量控制.pdf VIP
- 新人教版数学五年级上册全册各单元教材解读课件.pptx VIP
- 产品问卷调查模板.docx VIP
- 钢板弹簧设计计算程序Ver1.0-20070405.xls
文档评论(0)