是否有适用于Java的免费开源僵硬集成库?
我目前正在使用Apache Commons Math Library中的Dormand-Prince 8(5,3)集成商。我正在为我的模型实现DAE近似,所以我可以使用这个积分器,但我有兴趣在直接ODE系统上尝试一个刚性求解器进行比较。
我搜索过,但似乎找不到任何直接的答案。类似于MATLAB for Java中的ode15s解算器?
答案 0 :(得分:3)
是的,Apache Commons Math library中的所有求解器主要用于非僵硬问题。 DormandPrince853Integrator
是一个很好的一般选择,但即使对于轻度僵硬的问题,它也可能表现不佳。
您可能会查找LSODE/ODEPACK的实现或直接调用此版本的C或FORTRAN版本。开源Matlab替代方法Octave使用lsode
来解决ODE(还有一些R和Python接口)。
您可以阅读Matlab的ode15s
背后的算法以及本文中的其他方法:
升。 F. Shampine和M. W. Reichelt," MATLAB ODE Suite",SIAM Journal on Scientific Computing,18-1,1997,PDF link,DOI:10.1137/S1064827594276424
答案 1 :(得分:1)
根据horchler的回答,您可以查看JavaOdeInt ,它提供了基于Fortran的解算器的界面。