के साथ अनुकूली चरण आकार का उपयोग scipy.integrate.ode
के लिए (संक्षिप्त) दस्तावेज कहता है कि दो विधियां (dopri5
और dop853
) में नियंत्रण नियंत्रण और घने आउटपुट हैं। उदाहरणों और कोड को स्वयं देखकर, मैं केवल एक इंटीग्रेटर से आउटपुट प्राप्त करने का एक बहुत ही सरल तरीका देख सकता हूं। अर्थात्, ऐसा लगता है कि आप बस कुछ निश्चित डीटी द्वारा इंटीग्रेटर को आगे बढ़ाएं, उस समय फ़ंक्शन मान प्राप्त करें, और दोहराएं।scipy.integrate.ode
मेरी समस्या में काफी परिवर्तनीय टाइमकैल्स हैं, इसलिए मैं आवश्यक सहनशीलता प्राप्त करने के लिए मूल्यांकन करने के लिए आवश्यक समय पर मूल्यों को प्राप्त करना चाहता हूं। यही है, शुरुआती चीजें धीरे-धीरे बदल रही हैं, इसलिए उत्पादन समय कदम बड़ा हो सकता है। लेकिन जैसे ही चीजें दिलचस्प होती हैं, आउटपुट समय के चरणों को छोटा होना चाहिए। मैं वास्तव में बराबर अंतराल पर घने आउटपुट नहीं चाहता हूं, मैं बस अनुकूली फ़ंक्शन का उपयोग करने के लिए समय कदम चाहता हूं।
संपादित करें: घने उत्पादन
इससे संबंधित एक धारणा (लगभग विपरीत) "घने उत्पादन", है जिससे कदम उठाए के रूप में बड़े स्टेपर लेने के लिए परवाह है के रूप में कर रहे हैं, लेकिन समारोह के मूल्यों अंतर्वेशित (आमतौर पर स्टेपर की शुद्धता के बराबर सटीकता के साथ) जो भी आप चाहते हैं। scipy.integrate.ode
अंतर्निहित फोर्टन स्पष्ट रूप से सक्षम है, लेकिन ode
में इंटरफ़ेस नहीं है। दूसरी ओर, odeint
, एक अलग कोड पर आधारित है, और स्पष्ट रूप से घने आउटपुट करता है। (जब भी ऐसा होता है, तो आप हर बार आउटपुट कर सकते हैं, और देखें कि आउटपुट के समय से इसका कोई लेना-देना नहीं है।)
तो मैं अभी भी अनुकूलता का लाभ उठा सकता हूं, जब तक कि मैं आउटपुट समय चरणों पर निर्णय ले सकता हूं जो मैं समय से पहले चाहता हूं। दुर्भाग्यवश, मेरे पसंदीदा सिस्टम के लिए, मुझे यह भी नहीं पता कि अनुमानित टाइमकैल्स समय के कार्यों के रूप में क्या हैं, जब तक कि मैं एकीकरण चलाता हूं। तो मुझे घने आउटपुट की इस धारणा के साथ एक इंटीग्रेटर कदम उठाने के विचार को गठबंधन करना होगा।
ध्यान रखें कि अभी के लिए (संस्करण 0.16) आपको 'set_sitialout() '** ** ** set_initial_value()' से पहले कॉल करना होगा या हलआउट नहीं कहा जाएगा। –