根据我对稀疏 ODE 系统(更准确地说是半离散 PDE 系统)的经验,使用迭代线性求解器可以大大提高数值效率。据我所知,Assimulo 不允许提供雅可比稀疏模式,但更改线性求解器是解决此问题的另一种方法。
你会做这样的事情:
model = Explicit_Problem(ode_function, y0=y_init, t0=t_init)
simulator = CVode(model)
sim.linear_solver = 'SPGMR'
我不确定这是否也适用于 DAE 系统,但我认为值得一试。