首页 > 解决方案 > 在 DiffEqPhysics Julia 中进行一些收敛测试后终止 ode 的集成

问题描述

最近开始熟悉 Julia 的 DiffEqPhysics 和 DifferentialEquations 包。我想知道是否有办法(如回调函数)以一定的输出收敛条件终止求解器。例如,如果在前一步(或一系列先前步骤)中获得的结果与当前步骤的解没有阈值的差异,则在当前步骤之后结束该过程。

标签: juliadifferentialequations.jl

解决方案


是的,您可以使用回调来执行此操作。在回调中,doingterminate!(integrator)将停止集成。在文档中,此示例更详细地显示了使用回调terminate!

TerminateSteadyState但是,您可以从回调库中使用,而不是自己构建,而是在稳定状态下终止。回调库只是一组预先构建的回调,当导数足够小时,这个回调就会终止。


推荐阅读