जवाबों:
एल्गोरिदम की एक विस्तृत विविधता है; बार्न्स हट एक लोकप्रिय विधि है, और फास्ट मल्टीपोल विधि एक अधिक परिष्कृत ओ ( एन ) विकल्प है।
दोनों विधियां एक पेड़ डेटा संरचना का उपयोग करती हैं जहां नोड्स अनिवार्य रूप से पेड़ के प्रत्येक स्तर पर अपने निकटतम पड़ोसियों के साथ बातचीत करते हैं; आप पर्याप्त गहराई पर प्रक्रियाओं के सेट के बीच पेड़ को विभाजित करने के बारे में सोच सकते हैं, और फिर उन्हें केवल उच्चतम स्तरों पर सहयोग कर सकते हैं।
आप हाल ही में एक कागज petascale मशीनों पर महिला पुरूष पुरूष पर चर्चा पा सकते हैं यहाँ ।
को देखो फास्ट Multipole विधि । यह अत्यधिक स्केलेबल और । यह सटीक और लागत के बीच व्यापार की अनुमति देता है। यहां एक उदाहरण है जहां यह एक GPU क्लस्टर पर 42 Tflops पर चलाया जाता है ।
वैकल्पिक स्रोत के रूप में, आप मेष-आधारित इवाल्ड जैसी विधियों को भी देख सकते हैं। "कण जाल" विधियों (जैसे PPPM और चिकनी कण जाल Ewald) की उत्पत्ति खगोल भौतिकी के लिए आकाशगंगाओं के सिमुलेशन में निहित है; आरोपों का कनेक्शन एक अनजाने साइड इफेक्ट था (जो कि अंततः मूल उपयोग से आगे निकल गया)।
अभी हाल ही में, बहुस्तरीय समन विधियों पर कुछ साहित्य भी आए हैं जो कि तेज गुणन विधियों और बार्न्स-हट की भावना में हैं, लेकिन विभिन्न परिस्थितियों में लाभ प्रदान कर सकते हैं (अधिक सामान्य और लचीली ज्यामिति, कुछ दक्षता लाभ आदि)।
के लिए शास्त्रीय गुरुत्वाकर्षण एन-शरीर समस्या , मुझे लगता है कि निम्नलिखित दो कागजात बल मूल्यांकन चरण के लिए समानांतर कार्यान्वयन की हिम्मत पर चर्चा में एक अच्छा काम करते हैं। यद्यपि कागजात एक GPU कार्यान्वयन पर चर्चा करते हैं, वे समानांतरवाद पर चर्चा करने और एल्गोरिदम का विवरण प्रदान करने के लिए एक अच्छा काम करते हैं:
नाइलैंड, हैरिस और प्रिन्स का यह पत्र GPU के लिए CUDA में प्रत्यक्ष एन-बॉडी एल्गोरिथम प्रस्तुत करता है।
योकोटा और बारबा के इस दूसरे पेपर में जीरो-कंप्यूटिंग के संदर्भ में ट्रेब्लो और फास्ट मल्टीपोल एल्गोरिथ्म पर भी अच्छी चर्चा है।
एन-बॉडी न्यूमेरिकल सिमुलेशन की सटीकता के बारे में आपके प्रश्न थोड़े अधिक शामिल हैं और बहुत सारे महत्वपूर्ण विवरण हैं कि एक उत्तर कई पुस्तकों को स्पॉन कर सकता है। मुझे लगता है कि ऐसा करने के लिए सबसे अच्छा विचार आपको पुस्तक संदर्भ के एक जोड़े को देना है। मैं सुझाव देता हूँ:
Sverre J. Aarseth द्वारा गुरुत्वाकर्षण N- शरीर सिमुलेशन
हॉकनी और ईस्टवुड द्वारा कणों का उपयोग करते हुए कंप्यूटर सिमुलेशन । (क्षमा करें कोई पीडीएफ संस्करण नहीं)
यदि आपको एक सरल कार्यान्वयन दृष्टिकोण की आवश्यकता है जो कि स्पर्शोन्मुख अर्थ में इष्टतम नहीं है, तो आप सभी-एकत्रित संचार कार्यों का उपयोग करने पर विचार कर सकते हैं। चूंकि प्रत्येक एन-निकायों को अन्य निकायों के गुरुत्वाकर्षण प्रभाव को जानने की आवश्यकता है, इसलिए प्रत्येक प्रोसेसर के लिए संपूर्ण डेटासेट जानना आवश्यक है। यह वही है जो ऑल-इकट्ठा ऑपरेशन करते हैं। एक अच्छी किताब है: माइकल जे। क्वीन (2004) द्वारा MPI और OPENMP के साथ C में समानांतर प्रोग्रामिंग जो पृष्ठ 82 पर ठीक इसी विषय पर चर्चा करता है। यह आपको एक शुरुआत देने के लिए देखने लायक हो सकता है।