我工作的一個(C++,OpenGL的)項目中,我需要有很多的顆粒,其影響海誓山盟,如果我是正確的,這是被稱爲人身問題。有人知道這樣的算法有什麼解決方案。快速nbody算法/解決方案(用OpenGL/C++ /?)
我知道巴恩斯小屋算法,也許我可以窺視周圍的OpenCL,雖然我不只是想知道,如果你可以用於其他的解決方案。
我將創建將有很多的代碼:
for(int i = 0; i < num_particles; ++i) {
for(int j = i+1, j < num_particles; ++j)
dist = distance(particles[i],particles[j]);
if(dist > limit) {....}
}
}
親切的問候, 北河三
Thanks Staffan!你也許知道一些關於這樣的數據結構的好書嗎? – pollux 2010-07-28 20:47:22
查覈[計算幾何](http://www.amazon.com/Computational-Geometry-Applications-Mark-Berg/dp/3642096816/ref=sr_1_1?ie=UTF8&s=books&qid=1280350460&sr=8-1)由Mark de Berg等人這是計算幾何的一個很好的介紹,有Kd-trees,quadtrees和delaunay三角剖分等。您可以瀏覽亞馬遜的TOC。 – Staffan 2010-07-28 20:57:55