我有一个在MATLAB中实现的随机微分方程组。只有4个变量与Euler-Maruyama集成,所以没什么太花哨的......技术细节对于这个问题并不重要。
您如何建议我建立一个网络界面(即让人们在他们的网络浏览器中更改参数和初始条件,然后显示结果)?
第一步应该是将代码翻译成numpy / matplotlib,对吧?
我应该将输出保存为图像还是做一些花哨的HTML5绘图?
是否有任何公开的工具/框架可以轻松为这类事物构建一个漂亮的Web UI?
关于在哪里举办此类活动的任何提示,或者我基本上只限于设置自己的服务器?
答案 0 :(得分:1)
如果目标语言没有限制,我只需翻译为R
并使用RApache
即可。有很多库可以支持这一点。实际上,考虑到R库中可用的代码,您可能不需要重新实现很多代码。
我建议R的原因是我已经移植了大量的Matlab代码以使其可重复使用或打开,并且由于已经开发了库,因此R通常是我最容易的目标。
EDIT / UPDATE:我忽略了使用RStudio作为服务器。这可能是最简单的方法。请参阅此页:http://www.rstudio.org/docs/server/getting_started。
关于在何处进行设置,如果计算量非常有限,您可以查看使用亚马逊的“微实例”。还有一些新创业公司在做云计算。一种选择可能是http://cloudnumbers.com/。
所以,我建议:
我不建议将内容保存到磁盘并重新加载。最好让事情尽可能顺畅地耦合,这样你就不必编写代码来维护服务器或浏览器端的状态。
答案 1 :(得分:1)
如果你想采取R路线,RStudio非常酷。如果你想坚持使用Python,我建议你看一下Femhub。它可能是在Python中进行数值计算的最成熟和最完善的Web界面。 Jut看看“已发布的工作表”示例,看看有什么能力。