用于非线性动态系统仿真的软件

时间:2014-01-14 11:24:03

标签: matlab simulation scilab stochastic

我正在寻找一个软件包(免费更好),可以用于最小编码的随机动态系统仿真。例如,它应该允许我通过指定:

来建模系统
Xn = AXn−1 + Vn, 
Yn = BXn + α Wn

其中X是州,Y观察,A,B矩阵,VnWn是具有不同pdf的噪声源,例如normal,T,等。

我已经尝试过scilabR了。虽然它们似乎非常强大,但它似乎并没有通过指定上述方程式来为创建模型提供直接支持。

2 个答案:

答案 0 :(得分:1)

如果噪音是高斯噪音,那么你所拥有的stochastic differential equation (SDE)就是recurrence relation。如果您正在寻找具有“直接支持”这类系统的东西,您应该指定它们所代表的物理 - 经济模型,神经模型,卡尔曼滤波等 - 而不仅仅是抽象方程,因为这些包通常是用应用程序编写的。心。

Matlab确实有Econometrics toolbox,它通常不包含在大多数安装中,但也可以解决财务以外的一般SDE问题。对于免费选项,您还可以查看我的SDETools,这是一个用于SDE数值解法的Matlab工具箱,它与Matlab自己的ODE解算器(如ode45非常相似)。您需要将递归关系转换为微分方程。当然,如果你想要最快的代码(随机模拟可以),那么为你的特定问题编写Euler-Maruyama方法总是更好。

如果你正在寻找能够做你想做的事情而不必深入了解基础数学,你很可能会失去运气。此外,如果您的噪音不是高斯噪音,那么规则就不同了,您可能需要了解jump processesalpha-stable distributions的家庭。

答案 1 :(得分:0)

“Open modellica”(https://www.openmodelica.org)可能正是您所寻找的。