我想实现一个隐式 ODE 求解器,但不知道当微分方程 (DE) 具有以下形式的不连续性时该怎么办:
更常见的类型:
不太常见,因为它只出现在一个 DE
我正在尝试自己实现它,因为它是一组大规模耦合、相同的 DE,并且由于我们的管道,我们希望在 Matlab 的 GPU 上运行它们。我考虑过调整/修改 Matlab ode15,但我仍然想要雅可比的精确评估,因为系统有大约 10k 个状态变量,所以对雅可比进行数值近似会很昂贵。
我通常考虑在不连续性之后重新启动 ODE 求解器,但我不确定在实践中如何做到这一点:我是否在不连续性周围定义一个区域,然后简单地检查求解器是否到达它,然后重新启动?
对于第二种不连续性,我认为这是形式函数序列的适当限制
所以雅可比将被分段定义为\,的 0和的。