MATLAB和SCILAB各自有哪些优势?

13

我是一名计算机系统工程本科生,我想知道MATLAB和SCILAB除了SCILAB是免费软件之外,在计算机工程师的角度下它们各有什么优势和劣势。

谢谢


这里我也写了一些关于MATLAB FLOSS替代品的内容。 - Foad S. Farimani
3个回答

9

我无法深入细节,因为我没有广泛使用SCILAB。

但是从俯视角度来看,MATLAB是一款非常完善的软件,经过数十年的开发。价格也相应昂贵。它拥有大量专业的包,良好的支持,合理设计的用户界面,通常易于非计算机工程师使用。在工业界也非常普遍,所以在简历上写上它也不错。

但是如果您不需要非常复杂的功能(根据我在本科期间使用MATLAB的经验),并且不需要专业软件的稳健性和完善性,那么SCILAB可能会满足您的需求。

而且由于它基于MATLAB语言,如果您的需求发生变化或者您发现自己在一个默认使用MATLAB的环境中工作,您所学到的东西可以迁移过去。


9

Scilab类似于OpenOffice与MS Office之间的关系,也就是说它不完全是一个克隆版本,而且没有那么精致。虽然您能获得大部分MATLAB的功能,但价格更加合理。

话虽如此,如果您想要一个免费/开源的“假”MATLAB,我个人更喜欢Octave,因为它的语法更接近于MATLAB。

如果您不介意MATLAB兼容性的问题,请尝试一下非常好用的统计语言/环境R


6

Matlab是事实上的工业标准,现在就可以使用,并有一个强大的公司支持它。

Scilab长期以来一直是开源替代品,但老实说,它从未吸引过我。我认为他们或者从未足够相信这个项目,或者你需要太多的钱才能制作出这样一个有效的产品。

而且这真的很遗憾,因为我们迫切需要一个好的开源替代方案,因为开源是在不同平台上非常高效的唯一方法:实际上Matlab非常擅长原型设计小到中等规模的程序,但由于它是闭源的,很难将其扩展到超级计算机等大规模任务上,通常需要完全重写代码。

Sage可能是第三种选择,它具有很大的潜力,我会押注在它身上。请查看它。它不像Scilab那样重新发明轮子,而是将现有软件合并到一个新程序中。它基于Python,在计算领域获得了很大的动力,因为它既易于快速原型设计,又具有足够的灵活性,能够运行在超级计算机或GPGPU等异构平台上。

@ MatlabDoug

在小到中等规模的环境中是可行的,但对于非常大的任务,开源的灵活性是无价的。

从诸如Open-MPI这样的低级工具,可以让您精细调整应用程序,通过像PETSc这样的高级框架,可以减轻您很多工作量,再到JavaPython实现,可以让您专注于算法,忘记更底层语言的许多麻烦。

但真正的证明是,惊人的多数前500个超级计算机都倾向于使用开源替代方案。


@Mascarpone 至于扩展到超级计算机,您是否知道MATLAB有一个工具箱可以做到这一点? http://www.mathworks.com/products/parallel-computing/ - MatlabDoug

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接