न्यूटन-क्रायलोव कब एक उपयुक्त सॉल्वर नहीं है?


16

हाल ही में मैं अलग - अलग नॉन-लीनियर सॉल्वर्स को स्कैपी से तुलना कर रहा हूं और विशेष रूप से स्किपी कुकबुक में न्यूटन-क्रिलोव उदाहरण से प्रभावित था जिसमें वे कोड के लगभग 20 लाइनों में गैर-रेखीय प्रतिक्रिया शब्द के साथ एक दूसरे क्रम के अंतर समीकरण समीकरण को हल करते हैं।

मैंने गैर-रेखीय पॉइसन समीकरण ( जिसे पॉइसन-बोल्टज़मैन समीकरण भी कहा जाता है , इन पेजों में पृष्ठ 17 देखें) को सेमीकंडक्टर हेटरोस्ट्रक्चर के लिए हल करने के लिए उदाहरण कोड को संशोधित किया है , जिसमें फॉर्म है

2φएक्स2-(एक्स)(पी(एक्स,φ)-n(एक्स,φ)+एन+(एक्स))=0

(यह अवशिष्ट फलन है जो सॉल्वर को दिया जाता है।)

यह एक इलेक्ट्रोस्टैटिक्स समस्या है जहाँ और फार्म लिए अरेखीय कार्य हैं । यहां विवरण महत्वपूर्ण नहीं हैं, लेकिन बिंदु यह है कि गैर-रैखिक फ़ंक्शन साथ तेजी से भिन्न होता है, इसलिए अवशिष्ट फ़ंक्शन एक विशाल श्रेणी ( में थोड़े बदलाव के साथ भिन्न हो सकते हैं। में ।n(एक्स,φ)पी(एक्स,φ)nमैं(एक्स)-(मैं(एक्स,φ)-)φ10-6-1016)φ

मैं स्काइप के न्यूटन-क्रायलोव के साथ इस समीकरण को संख्यात्मक रूप से हल करता हूं, लेकिन यह कभी नहीं जुटेगा (वास्तव में यह हमेशा याकूब की गणना के साथ एक त्रुटि की रिपोर्ट करेगा)। मैंने न्यूटन- क्रायलोव सॉल्वर से fsolve (जो MINPACK संकर पर आधारित है) पर स्विच किया और पहली बार काम किया!

क्या सामान्य कारण हैं कि न्यूटन-क्रायलोव कुछ समस्याओं के लिए एक अच्छा फिट नहीं है? क्या इनपुट समीकरणों को किसी तरह वातानुकूलित करने की आवश्यकता है?

टिप्पणी करने के लिए शायद अधिक जानकारी की आवश्यकता है, लेकिन आपको क्या लगता है कि इस मामले में fsolve क्यों काम किया है?


मेरे पास न्यूटन-क्रायलोव के साथ जेकोबियन के साथ असफल होने का एक ही मुद्दा था, और पाया कि "lgmres" से सिर्फ "gmres" ( sol = newton_krylov(func, guess, method='gmres')) की विधि को बदलने से समस्या ठीक हो गई। निश्चित रूप से क्यों नहीं, लेकिन इस मुद्दे के साथ कोई और भी ऐसा करने पर विचार कर सकता है।
आर्थर डेंट

जवाबों:


18

ऐसे दो मुद्दे हैं जिनसे आपका सामना होने की संभावना है।

बीमार कंडीशनिंग

सबसे पहले, समस्या अशिक्षित है, लेकिन यदि आप केवल एक अवशिष्ट प्रदान करते हैं, तो न्यूटन-क्रायलोव अपने महत्वपूर्ण अंकों को आधे से दूर फेंक रहे हैं, जो कि याकूब की कार्रवाई प्राप्त करने के लिए अवशिष्ट को अलग करते हुए:

जे[एक्स]yएफ(एक्स+εy)-एफ(एक्स)ε

यदि आप एक विश्लेषणात्मक जेकबियन प्रदान करते हैं, तो आपको सभी अंक (जैसे, डबल परिशुद्धता में 16) रखने के लिए मिलते हैं। क्रायलोव के तरीके आंतरिक उत्पादों पर भी निर्भर करते हैं, इसलिए यदि आपका जेकोबियन की धुन के अनुकूल नहीं है, तो यह प्रभावी रूप से विलक्षण है और क्रिलोव गलत समाधानों को स्थिर या वापस कर सकता है। यह प्रत्यक्ष सॉल्वरों को परिवर्तित होने से भी रोक सकता है। कभी-कभी आप ट्रैडीएबल कंडीशनिंग के साथ मोटे ग्रिड में समरूप करने के लिए मल्टीग्रिड तरीकों का उपयोग कर सकते हैं। जब एक समस्या को बेहतर कंडीशनिंग के साथ तैयार नहीं किया जा सकता है, तो यह क्वाड सटीक में काम करने लायक हो सकता है। (यह उदाहरण के लिए PETSc द्वारा समर्थित है।)1016

ध्यान दें कि समान मुद्दे क्वैसी-न्यूटन विधियों पर लागू होते हैं, हालांकि बिना परिमित भिन्नता के। गैर-कॉम्पैक्ट ऑपरेटरों (उदाहरण के लिए, विभेदक समीकरण) के साथ समस्याओं के लिए सभी स्केलेबल तरीकों को प्रीकंडिशनिंग के लिए जेकोबियन जानकारी का उपयोग करना चाहिए।

यह संभावना है कि fsolveया तो जैकबियन जानकारी का उपयोग नहीं किया था या यह कि एक "ढाल मूल" विधि के साथ प्रगति करने के लिए एक डॉगल विधि या एक शिफ्ट का उपयोग किया था, एक अनिवार्य रूप से विलक्षण जैकोबियन के बावजूद (यानी, परिमित भिन्नता "शोर" का एक बहुत होगा) परिमित परिशुद्धता अंकगणित)। यह स्केलेबल नहीं है और fsolveसमस्या का आकार बढ़ने पर संभावना धीमी हो जाती है।

वैश्वीकरण

यदि रैखिक समस्याओं को सही ढंग से हल किया जाता है, तो हम रैखिक समस्या (क्रायलोव) से संबंधित समस्याओं को बाहर निकाल सकते हैं और गैर-समस्या के कारण उन पर ध्यान केंद्रित कर सकते हैं। स्थानीय मिनीमा और नॉनसेम्यूट फीचर्स को धीमा अभिसरण या ठहराव का कारण बनाते हैं। Poisson-Boltzmann एक सहज मॉडल है इसलिए यदि आप एक अच्छा पर्याप्त प्रारंभिक अनुमान लगाते हैं, तो न्यूटन द्विघात रूप से परिवर्तित हो जाएगा। अधिकांश वैश्वीकरण रणनीतियों में अंतिम पुनरावृत्तियों के लिए एक उच्च गुणवत्ता वाले प्रारंभिक अनुमान का उत्पादन करने के लिए किसी प्रकार की निरंतरता शामिल है। उदाहरणों में ग्रिड निरंतरता (उदाहरण के लिए, पूर्ण मल्टीग्रिड), पैरामीटर निरंतरता, और स्यूडोट्रांसेन्ट निरंतरता शामिल हैं। उत्तरार्द्ध आमतौर पर स्थिर-राज्य की समस्याओं पर लागू होता है, और कुछ वैश्विक अभिसरण सिद्धांत प्रदान करता है, कॉफ़ी, केली और कीज़ (2003) देखें । एक खोज इस पत्र को बदल देती है, जो आपके लिए उपयोगी हो सकता है:Shestakov, मिलोविच, और Noy (2002) छद्म क्षणिक निरंतरता और परिमित तत्व विधि का उपयोग करते हुए nonlinear Poisson-Boltzmann समीकरण का समाधान । स्यूडोट्रांसेन्ट निरंतरता का संबंध लेवेनबर्ग-मार्क्वार्ड एल्गोरिथम से निकटता से है।

आगे की पढाई

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.