总的来说二者算法相似,只不过ode45比ode23精度要高一些,其他没什么差别。
具体ode是MATLAB专门用于解常微分方程的功能函数;solver有变步长(variable-step)和定步长(fixed-step)两种类型,不同类型有着不同的求解器。ode45求解器属于变步长的一种,采用Runge-Kutta算法;和他采用相同算法的变步长求解器还有ode23。ode45表示采用四阶,五阶Runge-Kutta单步算法,截断误差为(△x)3。解决的是Nonstiff(非刚性)的常微分方程,是解决数值解问题的首选方法。若长时间没结果,应该就是刚性的,换用ode23来解。