matlab可以用python代替吗_Python 会不会替代 MATLAB

展开全部

如果说的是matlab整个产品,我觉e68a843231313335323631343130323136353331333363393630得短时间内是不可能的。

如果是符号计算,matlab的确不行。

即使是matlab比较擅长的有大量矩阵和向量的数值计算,和一些优良的库相比,也不一定效率最高。

但是,matlab发展到今天,这些都不是matlab最重要的部分了。

matlab一直在推广的是model based design,来看个海报:

t;resize,m_lfit,w_600,h_800,limit_1

没错,mathworks在说,他家的软件结合model based design这种设计方法,辅助了一台火星探测器的设计。看到上面的海报里面说的380,000 simulations,你可能觉得这个设计方法中,matlab的产品的作用仅仅是仿真,但是这不一定,看下一个例子:

gt;resize,m_lfit,w_600,h_800,limit_1

这个是个国内的例子,电动汽车的电源管理,注意上面的话:100% of code generated , 这里说的code是C语言代码,这些C代码的target device是嵌入式设备。

这就意味着那不仅仅是仿真了,模型是能够直接生成代码的。

所以,python要取代它。

除了数值计算。

需要开源社区设计出一个比较成熟的仿真软件。

而仿真软件还要能够支持code generation。

这本质上是一堆不同的编译器(嵌入式设备众多,还需要厂家的配合才行)。

PS:

1.

当初Cleve Moler设计matlab是帮学生减轻负担,避免他们去学Fortran(LINPACK)。但是,作为一个工程师的Jack的加入,肯定会把这个东西往工程上靠。那么数值计算是foundation,但是在这个foundation上如何发挥才是使得matlab不一样了的地方。

而这个Foundation的部分,可以在后续的release中慢慢地优化,使用更好的开源实现,或者是直接购买一些商业实现库。

但是,如果发挥出来的整个体系成了不可替代的了,那这就不仅仅是一个数学分析工具了,而是一个从开始的需求分析,模型验证,以及到实现,整个设计流程都包含的工程平台了。

2.

楼主说的不能web,如果要把matlab作为服务器端语言,我确实还没有看到类似的应用。但是,如果只是一些网络应用,比如web crawler,网上其实挺多的。

matlab里面有几个简单的网络接口函数,比如urlread可以读取网页,还有xmlread。

这个函数是用java的库写的,因为matlab里面是集成了JVM的,其实在你的matlab 代码里面可以直接调用java的libraries。

只是,这些属于undocumented范畴,这里有个网站就专门挖掘这些:

Undocumented Matlab

目前的web server一般都是动态生成html页面了。我确实还没有见到这方面的应用。

但是,如果是生称静态的html页面,那么matlab其实一直都可以。

Cleve Moler的博客其实使用matlab写的:

MATLAB Central

上面链接里是Cleve Moler的一篇博客,这片博客里面有图片,有代码,还有文字。

Cleve在写这样一篇博客的时候,其实只是写了一个m文件,里面有注释,在cell mode里面注明了各个地方的title。然后在editor里面publish。

在发布的过程中,matlab会把运行结果中的图也自动加入最后生成的html文件里(图片放在单独文件夹)。

在m文件中还支持Latex,这些会在生称的html被自动转换成文字或者公式的图片。

在那篇博客的文末的右边,有个 “get the matlab code”链接,你可以把它的m文件下载下来自己看下,然后自己发布一下,看看生称的html文件是怎样的。

3.

楼主说的脚本,其实matlab就是一种脚本语言。

这也是为什么它的调试会比较方便。

你不需要一个专门的入口,你可以从m文件的任何一个位置开始运行你的程序。

matlab的编辑器有一个cell mode,使用它,你可以把m中的任何一个你想要单独运行的部分放在一个cell里面,只执行这个cell。

另外,说到windows的操作。

在matlab里面可以直接执行dos命令。

所以在涉及到了windows的比较复杂一点的操作,可以用批处理写好batch,然后在matlab里面调用。

当然,你可以用matlab先生称一个batch,然后运行。

4.

最后,虽然matlab是一个商业软件。

但是在matlab这个商业平台上是有“开源社区”的。

matlab的File Exchange是一个很活跃的社区。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值