Boost 对于刚性系统,如果我们不能得到解析雅可比矩阵怎么办?

Boost 对于刚性系统,如果我们不能得到解析雅可比矩阵怎么办?,boost,odeint,Boost,Odeint,我使用的是boost::numeric::odeint rosenbrock4积分器。问题是我不能得到解析雅可比矩阵,有什么解决办法吗?你可以用数值格式来计算近似的雅可比矩阵。但这必须由您自己或其他库来实现。odeint不提供此功能 出于好奇:你找不到雅可比矩阵的系统到底是什么?如果rhs是不可微的,你可能会在数值计算中遇到其他问题。可能涉及到一些测量数据,因此很难得到导数和雅可比数。我认为我们应该在todo列表中列出雅可比数的近似方法。但实现这种方法需要一些时间。同样,对于大型刚性常微分方程,

我使用的是boost::numeric::odeint rosenbrock4积分器。问题是我不能得到解析雅可比矩阵,有什么解决办法吗?

你可以用数值格式来计算近似的雅可比矩阵。但这必须由您自己或其他库来实现。odeint不提供此功能


出于好奇:你找不到雅可比矩阵的系统到底是什么?如果rhs是不可微的,你可能会在数值计算中遇到其他问题。

可能涉及到一些测量数据,因此很难得到导数和雅可比数。我认为我们应该在todo列表中列出雅可比数的近似方法。但实现这种方法需要一些时间。同样,对于大型刚性常微分方程,例如数百个方程,手动推导雅可比矩阵会非常困难。特别是当这些微分方程中有复杂的或非线性的表达式时。我想一个近似方法是非常必要的。我真的很喜欢ODEINT,当我解决大型刚性系统时,它不实用,因为实现雅可比矩阵很困难。试试
lsoda
。看看我的叉子。自述文件还链接到其他实现。