24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1078  |  回复: 5

glazio

铁虫 (小有名气)

[求助] 如何计算多粒子聚集体系的最大长度

如果有某团聚体由N个球形粒子(相同尺寸、质量)组成,该使用什么算法找到该团聚体中相聚最远的两个粒子,并由此得到团聚体的最大长度L呢?团聚体的模型请参考这个链接( http://v.youku.com/v_show/id_XNDQyMzYzODEy.html )

我的想法是首先得到该团聚体的重心G,然后以G为起始点寻找距它最远的粒子A,最后再以A为起始点寻找距离最远的点B,这样A和B之间的距离就是L。

[ Last edited by glazio on 2012-8-23 at 12:55 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
jjdg: 金币+2, 感谢应助 2012-08-25 00:24:44
双重循环计算距离,如果比当前最大距离大,更新最大距离(如果需要这2个粒子的信息,将下标也存储),如果将粒子两两距离看做一个矩阵,你只需要计算上三角(或者下三角),内存循环从当前坐标往大取.类似
CODE:
// 初始化,将粒子的中心坐标存入particle.centre[N],下标范围[0,N-1]
maxDist = 0;
ind1 = 0;
ind2 = 0;
for (int i=0;i {
        for (int j=i+1;j         {
                curDist = computeDistance(particle.centre[ind1],particle.centre[ind2]);
                if (curDist>maxDist)
                {
                        maxDist = curDist;
                        ind1 = i;
                        ind2 = j;
                }
        }
}
// 打印输出maxDist和ind1,ind2

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2012-08-23 15:40:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

glazio

铁虫 (小有名气)

可能我没说清楚,我现在只会用python,而在1楼中我提到的那个计算方法自己可以用python实现,但是算法受人质疑不够强壮。所以在这里求助大神
1. 能否给出算法描述、伪代码或python代码?参考链接或文献均可
2. 2楼的算法好象是对所有粒间距里进行循环计算,那么有无比较强壮的算法,而且考虑到需要用python实现,该算法的效率较高?

抱歉没说清楚而让libra大神误会,现在能否针对这两个问题指点一下?
3楼2012-08-23 16:00:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

luxuia

铁虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
jjdg: 金币+1, 感谢应助 2012-08-25 00:24:37
glazio: 金币+5, ★★★很有帮助, 谢谢你的建议 2012-08-25 22:12:41
求凸包,凸包算法详查google。复杂度O(nlogn).
4楼2012-08-24 17:18:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

glazio

铁虫 (小有名气)

按照luxuia的建议搜了一下,好像这个问题需要用三维凸包的旋转卡壳算法解决。感觉我打开了一个潘多拉盒子,谢谢你的建议!
5楼2012-08-25 22:10:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

glazio

铁虫 (小有名气)

libra大神在2楼给出的代码是最容易实现的,送红花一朵聊表谢意。
6楼2012-08-25 23:18:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 glazio 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 295求调剂 +15 xndjjj 2026-04-04 16/800 2026-04-06 23:07 by chenzhimin
[考研] 285求调剂 +12 哦呦呼o 2026-04-04 12/600 2026-04-06 23:04 by chenzhimin
[考研] 一志愿苏州大学材料工程(085601)专硕有科研经历三项国奖两个实用型专利一项省级立项 +11 大火山小火山 2026-04-05 11/550 2026-04-06 22:55 by yunlongyang
[考研] 一志愿华东理工085601材料工程303分求调剂 +6 a1708 2026-04-06 6/300 2026-04-06 22:37 by guanxin1001
[考研] 304求调剂 +4 luoye0105 2026-04-05 4/200 2026-04-06 21:05 by 木子君1218
[考研] 一志愿武理车辆专硕总分 281 求调剂 +3 上岸研究生. 2026-04-02 3/150 2026-04-06 16:46 by 小月儿呀呀
[考研] 材料专硕283求调剂 +17 试试看呗 2026-04-04 18/900 2026-04-06 09:24 by 286640313
[考研] 315求调剂 +5 &123456789 2026-04-05 5/250 2026-04-05 19:55 by nepu_uu
[考研] 考研调剂生寻找导师 +3 顾瞻考研啊 2026-04-05 3/150 2026-04-05 18:18 by 啵啵啵0119
[考研] 一志愿同济大学323分(080500)求调剂 +8 yikeniu 2026-04-01 8/400 2026-04-05 18:15 by cql1109
[考研] 296求调剂 +3 汪!?! 2026-04-05 5/250 2026-04-05 17:38 by 蓝云思雨
[考研] 085601,一志愿厦大334复试被刷求调剂 +13 曾仰之 2026-04-03 15/750 2026-04-04 20:13 by dongzh2009
[考研] 085701求调剂 +7 龚禹铭 2026-04-04 8/400 2026-04-04 13:49 by 小小树2024
[考研] 278求调剂 +6 Yy7400 2026-04-03 6/300 2026-04-04 09:53 by zhangdingwa
[考研] 求调剂不挑专业 +3 xrh030412 2026-04-01 3/150 2026-04-03 14:40 by 氮气气气
[基金申请] 请问共同通讯和共同一作的认可度问题 10+4 psa1234 2026-04-01 10/500 2026-04-03 11:08 by Kittylucky
[考研] 能源动力 调剂 +3 不破不立0 2026-04-02 3/150 2026-04-02 12:46 by ffffjjjj
[考研] 314求调剂 +11 1xiaojun23 2026-03-31 12/600 2026-04-02 12:31 by 1xiaojun23
[考研] 一志愿北交材料工程总分358 +5 cs0106 2026-04-01 7/350 2026-04-01 11:45 by wangjy2002
[考研] 求调剂,一志愿北林食品与营养095500,301分,已过六级,有科研经历 +4 快乐储蓄罐 2026-03-31 4/200 2026-04-01 09:26 by JourneyLucky
信息提示
请填处理意见