Fortran Coder

楼主: 13613529432
打印 上一主题 下一主题

[通用算法] 请教关于刚性球重叠的处理

[复制链接]

17

帖子

3

主题

0

精华

入门

F 币
73 元
贡献
45 点

规矩勋章

7#
 楼主| 发表于 2020-8-29 12:56:02 | 只看该作者
风平老涡 发表于 2020-8-29 11:42
你这个应该和刚性分子运动模拟很相近,可以查一下这方面的资料。中心思想就是在任一时间 t 每一个粒子都 ...

前辈,我已经算到这一步了,算出一时刻t每个粒子受周围的邻近粒子影响的速度,然后每个粒子按照他自己的速度运动一步,但是运动完后,会有些粒子重叠,刚性分子不允许重叠,这个重叠后怎么处理呢?
回复

使用道具 举报

213

帖子

2

主题

0

精华

宗师

F 币
2126 元
贡献
875 点

规矩勋章

6#
发表于 2020-8-29 11:42:56 | 只看该作者
13613529432 发表于 2020-8-29 09:48
前辈,您的意思是每一步都判断每一个球给定距离范围内包含的球是吧。每一个粒子所受的碰撞是这些粒子的总 ...

你这个应该和刚性分子运动模拟很相近,可以查一下这方面的资料。中心思想就是在任一时间 t 每一个粒子都有一组位置,速度和邻近粒子表。根据邻近粒子与中心粒子的距离,用牛顿定律算出中心粒子所受力的总和及加速度。这样就能算出中心粒子在 t + dt 时的位置,速度及新的邻近粒子表。
回复

使用道具 举报

17

帖子

3

主题

0

精华

入门

F 币
73 元
贡献
45 点

规矩勋章

5#
 楼主| 发表于 2020-8-29 09:48:53 | 只看该作者
风平老涡 发表于 2020-8-28 20:47
每一个粒子都建立一个表(List),这个表中包涵所有邻近粒子。对每一个粒子的碰撞就是所有另邻近粒子碰撞的 ...

前辈,您的意思是每一步都判断每一个球给定距离范围内包含的球是吧。每一个粒子所受的碰撞是这些粒子的总和,那求出这些碰撞后怎么处理呢?让粒子在运动一步还是怎么处理呢
回复

使用道具 举报

213

帖子

2

主题

0

精华

宗师

F 币
2126 元
贡献
875 点

规矩勋章

地板
发表于 2020-8-28 20:47:11 | 只看该作者
每一个粒子都建立一个表(List),这个表中包涵所有邻近粒子。对每一个粒子的碰撞就是所有另邻近粒子碰撞的总和。
回复

使用道具 举报

17

帖子

3

主题

0

精华

入门

F 币
73 元
贡献
45 点

规矩勋章

板凳
 楼主| 发表于 2020-8-28 18:19:32 | 只看该作者

系统中很多个粒子,碰撞处理的话如何考虑它和周围粒子的作用情况呢?
回复

使用道具 举报

250

帖子

2

主题

0

精华

宗师

F 币
1731 元
贡献
872 点

规矩勋章

沙发
发表于 2020-8-28 16:35:30 | 只看该作者
按碰撞处理
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-23 14:57

Powered by Tencent X3.4

© 2013-2024 Tencent

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