ARKODE解读

来自《ark_guide.pdf》


在这里插入图片描述
对于ODE,M是I,PDF,则是a well-conditioned mass matrix,模拟过程中保持不变
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
积分的时间采用的是多阶时间插值法,最高可以去到5阶,这个参数可以由用户设置,比如
ARKStepSetDenseOrder

下面是阶数为0-3时的插值公式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
fE部分,使用显式积分,针对系统nonstiff部分
fI部分,采用隐式积分,针对系统的stiff部分
在这里插入图片描述
ARKODE分为三种类型:ImEx, explicit, and implicit
在这里插入图片描述
系统如果有同时包含stiff,nonstiff,则可以手动拆成两部分,然后赋值给FE,FI,就是公式2.2的两部分
在这里插入图片描述
在这里插入图片描述
nonstiff问题,直接将公式2.2的FI置为NULL,这是ARK会退化成显式的龙格-库塔积分法(ERK)
在这里插入图片描述
stiff问题,最后使用的是classical diagonally-implicit Runge-Kutta methods (DIRK)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ARKODE的步长是自适应的,它会根据局部的误差来调整步长。因此,除了返回给调用的y_n,
ARKODE内部还维持了一个计算需要的y_n

LTE:local truncation error
在这里插入图片描述
误差测试通过,则这一步算成功。
误差测试不通过,则会重新采用新的步长在该点重新计算。
两次失败,h’/h<0.3,如果再失败,则h’/h<0.1.
多次失败,就会停止计算并返回错误信息。
在这里插入图片描述
上次成功的迭代步长h,下次预计的步长h’
两者的比率:𝜂 = h’/h
这个比率的上限在不同的时候是不同的,由𝜂_max描述。

下面是步长调整的流程图
在这里插入图片描述
在这里插入图片描述
有些问题,构建雅可比或预测器的成本是很高的,或者不是很精确的数据不会影响收敛的,这时可能有需要避免步长的微小调整,防止过度计算,带来高昂的计算成本。
因此, 𝜂 ∈ [𝜂𝐿, 𝜂𝑈 ].就不会改变当前步长
在这里插入图片描述
fxedstep,实测绘导致数据的爆炸性增长。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值