matlab 兼容,Octave:尽可能使MATLAB兼容

除了使用–traditional选项之外,你无能为力.只是不要使用Octave提供的额外语法.毕竟,Matlab语法是GNU Octave语言的一个子集,由你自己决定只使用那个子集.

编辑:这不是你想要的答案,但有一个很好的理由为什么这是一个不可能的任务(不可能,我的意思是非常困难.唯一的选择是真的只是分叉Octave并改变它直到它是一个确切的克隆.你不要我不想这样做,相信我.想象一下以下的例子. Octave有函数’rows’和’columns’,但Matlab没有.如果您更改了Octave以便这些功能不再存在,那么使用它们的所有其他Octave函数(我猜很多)也会停止工作.

其他人在你成功说服他们的教授接受用Octave编写的作业之前,只要确保你至少尝试编写兼容的代码.

编辑2:我将尝试通过比较这种情况与钢琴来解释(似乎是一个非常好的比较).您可以购买85或88键的钢琴.现在想象Matlab是一把85键的钢琴,而Octave是一把88键的钢琴(如果你想,也可以想象Matlab有3个踏板,而Octave只有2个踏板).两支钢琴之间的唯一区别是,一支钢琴的音调范围略大,即它可以播放更多的音调(来自3个额外的键).但是当你用钢琴演奏一把带有85键的钢琴上的C4和带有88键的钢琴上的C4时,声音是相同的,它们是相同的音符.注释是您可以使用的功能和关键字.他们是一样的.一首钢琴中的音符在另一首钢琴上是相同的音符.

现在,如果你是一位写作音乐的作曲家,你可能想要考虑到这一点.只是不要写任何需要这些额外键的音乐.两种钢琴的音乐都是相同的.如果你有一把88键的钢琴,你不会砍掉3个额外的键,因为你希望它能与85键钢琴兼容.你根本就不玩那些钥匙. 88键的钢琴与85键的钢琴兼容,与Octave与Matlab兼容的方式相同.

如果你想要一个指南提醒你不能使用这些额外的钥匙,我猜你可以在它们上放一些繁文缛节以提醒你不要使用它们.类似地,使用带有文本编辑器的Octave,该编辑器对Octave和Matlab具有不同的语法高亮,因此当您使用不属于Matlab的语法时,它会突出显示不正确.除此之外,你无能为力(除非你计算要求Octave项目,请求Mathworks在Matlab中实现它们或者自己实现它们.我不是说这是粗鲁的讽刺,只是试图详尽无遗).

为了完成,是的,Octave尚未实现所有Matlab的东西,但随着人们开发它,它正在以这种方式移动.它不是一个静态项目(例如,只需查看开发分支的NEWS文件),就可以根据需要开发它们的人来实现.有些函数的行为有所不同,但那些是你可以的错误report(甚至修复,因为它毕竟是免费和开源的).这种不兼容性不是为了烦扰用户而存在的.他们在那里是因为没有人报告或修复过他们.此外,大多数是针对错误或未记录的Matlab功能.

编辑3:您还可以打开matlab不兼容的警告(默认情况下是关闭的).运行警告(‘on’,’Octave:matlab-incompatible’).您可以将其保留在.octaverc文件中.要查看更多警告,请查看warning_ids.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值