机械荟萃山庄

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 813|回复: 2

四阶RK,算死机了。

[复制链接]
发表于 2024-9-4 13:16:36 | 显示全部楼层 |阅读模式




很简单的一个二阶微分,Kgf, KTu是常数,初值u0, H0都给定了。
位移一阶导数等于速度,速度一阶导数等于加速度。
数学积分,是别想了,分离变量,速度就先积不出来。


四阶龙格库塔,嵌套,分段数一变再变,步长越来越大,电脑依旧算一次死机一次。
直接嵌套,计算每个位移点值,需要的每个速度点值,都是从速度初值算起,即使现在的CPU硬件资源也撑不起。

无奈,先把速度分段数取为位移分段数的2倍,离散序列先算好,存起来,这样u(τn+h/2)就都有了着落。
然后再算位移,速度点值取用即可,居然就可以了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

参与人数 4威望 +12 收起 理由
拉斯特 + 3 很给力!
Fluid + 3
ylan + 3 很给力!
零件工程师 + 3

查看全部评分

回复

使用道具 举报

发表于 2024-9-11 07:05:14 | 显示全部楼层
或许可以处理得更直接, 如你的第一步,高阶常微分先降阶成几个一阶常微分方程组。但之后不要每一个变量单独积再拼起来,按方程组用 4thRK 直接解,两个初始条件只需要在第一步用。 显式时间积分,不存在迭代收敛,应该非常快。

点评

就是中间的临时存储还是要的。之前比较疯狂,是一个数都不存,对于任何一个解,都是函数调用,从初值一路算过来,省内存,但CPU就不行了。  发表于 2024-9-11 12:40
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|机械荟萃山庄 ( 辽ICP备16011317号-1 )

GMT+8, 2024-11-22 15:32 , Processed in 0.102058 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表