随机微分方程组的Web接口

时间:2011-08-03 21:00:09

标签: python web-applications matlab numpy matplotlib

我有一个在MATLAB中实现的随机微分方程组。只有4个变量与Euler-Maruyama集成,所以没什么太花哨的......技术细节对于这个问题并不重要。

您如何建议我建立一个网络界面(即让人们在他们的网络浏览器中更改参数和初始条件,然后显示结果)?

第一步应该是将代码翻译成numpy / matplotlib,对吧?

我应该将输出保存为图像还是做一些花哨的HTML5绘图?

是否有任何公开的工具/框架可以轻松为这类事物构建一个漂亮的Web UI?

关于在哪里举办此类活动的任何提示,或者我基本上只限于设置自己的服务器?

2 个答案:

答案 0 :(得分:1)

如果目标语言没有限制,我只需翻译为R并使用RApache即可。有很多库可以支持这一点。实际上,考虑到R库中可用的代码,您可能不需要重新实现很多代码。

我建议R的原因是我已经移植了大量的Matlab代码以使其可重复使用或打开,并且由于已经开发了库,因此R通常是我最容易的目标。

EDIT / UPDATE:我忽略了使用RStudio作为服务器。这可能是最简单的方法。请参阅此页:http://www.rstudio.org/docs/server/getting_started

关于在何处进行设置,如果计算量非常有限,您可以查看使用亚马逊的“微实例”。还有一些新创业公司在做云计算。一种选择可能是http://cloudnumbers.com/

所以,我建议:

  1. 发布有关SDE内容的问题(以获取指向CRAN上正确软件包的指示)。
  2. 安装RStudio并使用包
  3. 试用RStudio服务器
  4. 寻找托管:)
  5. ...
  6. 的利润! :):)
  7. 我不建议将内容保存到磁盘并重新加载。最好让事情尽可能顺畅地耦合,这样你就不必编写代码来维护服务器或浏览器端的状态。

答案 1 :(得分:1)

如果你想采取R路线,RStudio非常酷。如果你想坚持使用Python,我建议你看一下Femhub。它可能是在Python中进行数值计算的最成熟和最完善的Web界面。 Jut看看“已发布的工作表”示例,看看有什么能力。