यहां कुछ पढ़ने की सूची है। सुनिश्चित नहीं है कि यह आपके लिए बहुत बुनियादी है:
Writing Scientific Software: मूलभूत 'सी ++ में प्रोग्राम सीखना' या जो भी हो, पर एक अच्छा अनुवर्ती।
Parallel Scientific Computing in C++ and MPI: यदि आप अपने आवेदन को समानांतर करने की योजना नहीं बना रहे हैं, तो आपको होना चाहिए।
Engineering and Scientific C++: एक अच्छा, डोमेन-विशिष्ट, सी ++ में प्रोग्रामिंग के लिए परिचय। भाषा विवरण में थोड़ा सा दिनांक है, लेकिन समग्र दृष्टिकोण वृद्ध नहीं है।
मेरा सुझाव है कि आप प्रश्नों के SO उत्तरों के माध्यम से पढ़ते हैं जैसे कि 'मुझे एक बड़ा सी ++ प्रोग्राम कैसे डिजाइन करना चाहिए?' अन्य पुस्तकों पर सलाह के लिए जो ब्याज की हो सकती हैं।
सर्वोत्तम प्रथाओं के रूप में, यहां कुछ सुझाव दिए गए हैं।
- जैसा कि मैंने ऊपर लिखा है, आप शुरू से योजना बना होना चाहिए एक समानांतर कार्यक्रम विकसित करने के लिए: एक बार फिर, मैं अपने प्रारंभिक बिंदु के बारे में सुनिश्चित इसलिए इस में से कुछ भी बुनियादी हो सकता है नहीं कर रहा हूँ। यदि क्लस्टर पर संदेश-पासिंग आपके कप का कप नहीं है, तो कम से कम एक बहु-कोर डेस्कटॉप के लिए साझा मेमोरी प्रोग्रामिंग पर विचार करें। OpenMP जांच के लायक है।
- अपने आप को मौजूदा काम से परिचित बनाएं। BOOST पुस्तकालय शायद आवश्यक हैं। जबकि मैं आपकी खुद की रोलिंग के इरादे की सराहना करता हूं, मौजूदा अच्छी तरह से स्थापित संख्यात्मक पुस्तकालयों जैसे कि बीएलएएस और लैपैक को अनदेखा न करें, जो आपको Netlib पर मिलेगा। आपके विकास प्लेटफ़ॉर्म और टूलसेट के आधार पर आप उन्हें पहले ही इंस्टॉल कर सकते हैं।
- यदि आप एक वैज्ञानिक पृष्ठभूमि से आ रहे हैं, तो आप सॉफ्टवेयर इंजीनियरिंग में अपने ज्ञान और कौशल में सुधार करना चाह सकते हैं। मामले जैसे: स्रोत कोड नियंत्रण; परिक्षण; कोड प्रोफाइलिंग और अनुकूलन; आपके कंपाइलर क्या कर सकते हैं के बारे में गहरा ज्ञान। मेरे अनुभव में कई कम्प्यूटेशनल वैज्ञानिकों के पास इन सभी चीजों में कमजोर पृष्ठभूमि है।
- आपको वास्तव में कोडिंग के रूप में अपने कार्यक्रम को डिजाइन करने और परीक्षण करने के लिए जितना अधिक समय खर्च करने की योजना बनाना चाहिए। कोडिंग शुरू करने से पहले भी अपने आप पर काम करना आवश्यक है कि कार्रवाई की अच्छी योजना हो। शुरुआत में हर विवरण में इसे पूरा करने का कोई कारण नहीं है, लेकिन मानचित्र के बिना क्षेत्र में प्रवेश न करें।
- आप भौतिक दुनिया के पहलू पर चुप हैं जो आप अनुकरण करना चाहते हैं। भौतिक सिमुलेशन के सभी प्रकारों में बहुत सारी पूर्व कला है, यदि आप थोड़ा अधिक विशिष्ट थे तो कुछ और विशिष्ट सुझाव प्रदान करने में सक्षम हो सकते हैं।
स्रोत
2010-09-30 18:12:27
हाय। आपके सहायक और व्यापक उत्तर के लिए बहुत बहुत धन्यवाद। आपके आखिरी बिंदु के बारे में, विचार कुछ नए आणविक गतिशीलता कोड विकसित करना है। यहां कुछ सलाह है? धन्यवाद – flow
परमाणु गतिशीलता मेरे केन से परे है, लेकिन मुझे लगता है कि विकिपीडिया लेख में सॉफ़्टवेयर के कुछ पॉइंटर्स हैं। अगर आपको निरीक्षण के लिए ओपन सोर्स कोड नहीं मिल रहा है, तो मैं बहुत आश्चर्यचकित हूं, और साहित्य व्यापक है। –