"सबसे सरल" से मेरा मतलब है कि खरोंच से सीखना और उसे लागू करना सबसे सरल है। मुझे आशा है कि मेरे प्रश्न का उत्तर कम या ज्यादा दिया जा सकता है।
"सबसे सरल" से मेरा मतलब है कि खरोंच से सीखना और उसे लागू करना सबसे सरल है। मुझे आशा है कि मेरे प्रश्न का उत्तर कम या ज्यादा दिया जा सकता है।
जवाबों:
दो आयामों में, वेग-वर्टिसिटी फॉर्मूलेशन को लागू करने के लिए सबसे सरल है क्योंकि चर ढह गए हैं, लेकिन सीमा की स्थिति जटिल हो सकती है और यह समस्या का कम प्रत्यक्ष बयान है। आदिम परिवर्तनीय योगों के लिए, हार्लो और वेल्च (1965) की कंपित ग्रिड परिमित अंतर विधि शुरू करने के लिए एक शानदार जगह है।
आप एक बहुत ही सरल, अभी तक काफी कुशल, समाधान विधि (चोरिन के विभाजन की विधि) का पूरी तरह से प्रलेखित कार्यान्वयन पा सकते हैं ।
अन्य लोकप्रिय तरीकों के चयन के लिए, इस पुस्तक के अध्याय 21 पर एक नज़र डालें ।
अस्वीकरण: मैं डेमो प्रोग्राम और पुस्तक दोनों का (सह) लेखक हूं। पुस्तक को मुफ्त में डाउनलोड किया जा सकता है।
सरलतम हमेशा आपके विशेष हितों और जरूरतों के सापेक्ष होने वाला है। मैं एंडर्स के साथ सहमत हूं कि, सरल ज्यामिति वाले डोमेन पर अयोग्य प्रवाह के लिए, यदि आप उपयोग और सटीकता दोनों को प्राथमिकता दे रहे हैं, तो आपको प्रोजेक्शन विधि (यानी, चोरिन की विभाजन विधि) को हराने के लिए कड़ी मेहनत करनी होगी।
थोड़ा और विस्तार में जाने के लिए, विधि प्रश्न [1] में पेश किया गया है। अधिक आधुनिक, द्वितीय-क्रम, अनुमानित प्रक्षेपण विधि को [2] में अच्छी तरह से समझाया गया है। प्रेरणा यह है कि पूर्ण असंगत नवियर-स्टोक्स समीकरणों को हल करने के लिए वेग क्षेत्र और दबाव के लिए एक साथ हल करने की आवश्यकता होती है, और परिणामस्वरूप रैखिक प्रणाली बल्कि बीमार होती है। प्रक्षेपण विधि प्रत्येक समय कदम को वेग से हल करने में पिछले टाइमस्टेप से दबाव का उपयोग करके इस समस्या को समाप्त करती है, इसके बाद एक दबाव अद्यतन होता है, जो अनिवार्य रूप से लागू करता है कि वेग क्षेत्र अपरिवर्तनीय रहता है।
इसे लागू करने के लिए, आपको कुछ अन्य घटकों की आवश्यकता होगी, लेकिन सभी को आसानी से सीखा और प्रोग्राम किया जा सकता है।
दबाव के समाधान के लिए, मान लें कि आप लगातार घनत्व वाले सिस्टम में रुचि रखते हैं, आपको पॉइसन के समीकरण को हल करना होगा। बेशक, इस समस्या से संपर्क करने के लिए दर्जनों एल्गोरिदम हैं, लेकिन अब तक लागू करने के लिए सबसे आसान - अगर शायद पूरी तरह से समझ में नहीं आता है - संयुग्म ढाल (सीजी) एल्गोरिदम है। मैंने जो सीजी पढ़ा है, उसके सबसे अच्छे स्पष्टीकरणों में से एक जोनाथन शेवचुक द्वारा लिखा गया था और यहां पाया जा सकता है । आपको निश्चित रूप से पूरे पेपर को पढ़ने की आवश्यकता नहीं है, हालांकि, बस एल्गोरिथ्म को लागू करने में सक्षम होना चाहिए।
नवियर-स्टोक्स में संवहन शब्द को संभालने के लिए आपको एक और एल्गोरिथ्म की आवश्यकता होगी। कई आयामों में, सबसे अधिक लचीली विधियों, जैसे गोडुनोव, के मजबूत कार्यान्वयन का प्रोग्रामिंग काफी चुनौतीपूर्ण हो सकता है। हालाँकि, बशर्ते आप अपेक्षाकृत मामूली रेनॉल्ड्स संख्या (यानी गैर-नगण्य चिपचिपाहट के साथ) के साथ प्रवाह में रुचि रखते हैं, अनिवार्य रूप से गैर-ऑसिलेटरी (ईएनओ) तरीकों में से एक बिल को कार्यान्वयन में आसानी के मामले में अच्छी तरह से फिट बैठता है। [3] में सिद्धांत और कार्यान्वयन दोनों का एक उत्कृष्ट अवलोकन है।
आपको एक अंतर्निहित विधि, आमतौर पर क्रैंक-निकोलसन का उपयोग करके चिपचिपा शब्द को संभालने की आवश्यकता होगी। यह प्रक्षेपण विधि के कागजात के बारे में विस्तार से बताया गया है, और आप आसानी से मैट्रिक्स के लिए तटरक्षक का उपयोग कर सकते हैं बशर्ते कि चिपचिपापन स्थिर हो।
[१] ए जे चोरिन, नवियर-स्टोक्स समीकरणों के न्यूमेरिकल समाधान , जे। मैथ। गणना।, 22 (1968), पीपी। 745-762
[२] ए। अल्मग्रेन, जेबी बेल, और डब्ल्यू। सिगमेस्ज़क, एक अनुमानित प्रक्षेपण के आधार पर असंगत नवियर-स्टोक्स समीकरणों के लिए एक संख्यात्मक विधि , एसआईएएम जे। विज्ञान। कंप्यूटर। 17 (1996), पीपी 258-369।
[३] एस। ओशर और आर। फेडकीव, लेवल सेट मेथड्स एंड डायनामिक इम्प्लिक्ट सर्फेस । स्प्रिंगर-वर्लग न्यूयॉर्क,। अनुप्रयुक्त गणितीय विज्ञान, 153, 2002
कंप्यूटर ग्राफिक्स और गेम्स ने हाल के वर्षों में द्रव सिमुलेशन में रुचि का एक बड़ा विस्फोट देखा है। यहां जोस स्टैम का एक शानदार पेपर है, जिसमें रियलटाइम एप्लिकेशन के लिए एक सॉल्वर के निहितार्थ की चर्चा है। सोर्स कोड को समझना बहुत आसान है। मुझे नहीं पता कि यह कितना सही है, लेकिन यह वही हो सकता है जो आप खोज रहे हैं।
एक और वास्तव में अच्छा और सरल तरीका विवेक के लिए सेलुलर ऑटोमेटोन का उपयोग कर रहा है। इस तरह के बहुत सारे मॉडल हैं, जिनमें LBA, FHP और बहुत कुछ शामिल हैं। ये वास्तव में बहुत अच्छे हैं क्योंकि वे आधुनिक कंप्यूटरों पर एक वास्तविक समय सिमुलेशन प्रदान कर सकते हैं और GPUs पर अच्छी तरह से paralellized और भाग सकते हैं। उनके कुछ नुकसान भी हैं और परिणाम दृढ़ता से लागू जाली के आकार पर निर्भर हैं। स्क्वायर जाली अपर्याप्त है क्योंकि इसमें घूर्णी स्वतंत्रता का अभाव है और वॉन कार्मन वोर्टिस को चौकोर आकार दिया जाएगा जो अच्छा नहीं है :)