簡體   English   中英

Python:如何高效地用雅可比矩陣求解DAE?

[英]Python: How to solve DAE with Jacobian efficiently?

我正在嘗試使用 Assimulo package 來求解一組微分代數方程 (DAE)。 我正在嘗試使用類似於此處顯示的算法。 但是,似乎沒有傳遞稀疏矩陣的選項。 我的雅可比矩陣非常大,大約 3000 x 3000。您知道是否有一種方法可以更高效地求解我的 DAE?

根據我在稀疏 ODE 系統(更准確地說是半離散 PDE 系統)方面的經驗,使用迭代線性求解器可以極大地提高數值效率。 據我所知,Assimulo 不允許提供雅可比稀疏模式,但更改線性求解器是解決此問題的另一種方法。

你會做這樣的事情:

model = Explicit_Problem(ode_function, y0=y_init, t0=t_init)
simulator = CVode(model)
sim.linear_solver = 'SPGMR'

我不確定這是否也適用於 DAE 系統,但我認為值得一試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM