सेकेंट मेथड (छेदिका विधि): Difference between revisions
(Created page with "{{Use American English|date = March 2019}} {{Short description|Root-finding method}} Image:Secant method.svg|thumb|300px|सेकेंट विधि के पहले...") |
No edit summary |
||
Line 1: | Line 1: | ||
{{Short description|Root-finding method}} | {{Short description|Root-finding method}} | ||
[[Image:Secant method.svg|thumb|300px|सेकेंट | [[Image:Secant method.svg|thumb|300px|सेकेंट मेथड के पहले दो पुनरावृत्तियाँ। लाल वक्र फलन f दिखाता है, और नीली रेखाएं छेदक हैं। इस विशेष मामले के लिए, सेकेंट मेथड दृश्य मूल में परिवर्तित नहीं होगी।]][[संख्यात्मक विश्लेषण]] में, '''सेकेंट मेथड''' ('''छेदिका विधि''') क रूट-फाइंडिंग एल्गोरिदम है जो फलन ''f'' की जड़ को बेहतर ढंग से अनुमानित करने के लिए सेकेंट लाइनों की जड़ों के उत्तराधिकार का उपयोग करता है। सेकेंट मेथड को न्यूटन की विधि का एक सीमित-अंतर सन्निकटन माना जा सकता है। हालाँकि, सेकेंट मेथड न्यूटन की विधि से 3000 वर्ष से भी अधिक पुरानी है।<ref>{{Cite journal|last1=Papakonstantinou|first1=Joanna|last2=Tapia|first2=Richard|date=2013|title=एक आयाम में सेकेंट विधि की उत्पत्ति और विकास|url=https://www.jstor.org/stable/10.4169/amer.math.monthly.120.06.500|journal=American Mathematical Monthly|volume=120|issue=6|pages=500–518|doi=10.4169/amer.math.monthly.120.06.500|jstor=10.4169/amer.math.monthly.120.06.500 |s2cid=17645996 |via=JSTOR}}</ref> | ||
==विधि== | ==विधि== | ||
किसी | किसी फलन का शून्य ज्ञात करने के लिए {{mvar|f}}, सेकेंट मेथड को [[पुनरावृत्ति संबंध]] द्वारा परिभाषित किया गया है। | ||
:<math> | :<math> | ||
x_n | x_n | ||
Line 11: | Line 9: | ||
= \frac{x_{n-2} f(x_{n-1}) - x_{n-1} f(x_{n-2})}{f(x_{n-1}) - f(x_{n-2})}. | = \frac{x_{n-2} f(x_{n-1}) - x_{n-1} f(x_{n-2})}{f(x_{n-1}) - f(x_{n-2})}. | ||
</math> | </math> | ||
जैसा कि इस सूत्र से देखा जा सकता है, दो प्रारंभिक मान {{math|''x''<sub>0</sub>}} और {{math|''x''<sub>1</sub>}} ज़रूरत है। आदर्श रूप से, उन्हें वांछित शून्य के | जैसा कि इस सूत्र से देखा जा सकता है, दो प्रारंभिक मान {{math|''x''<sub>0</sub>}} और {{math|''x''<sub>1</sub>}} ज़रूरत है। आदर्श रूप से, उन्हें वांछित शून्य के निकटम चुना जाना चाहिए। | ||
==विधि की व्युत्पत्ति== | ==विधि की व्युत्पत्ति== | ||
Line 34: | Line 32: | ||
==अभिसरण== | ==अभिसरण== | ||
पुनरावृत्त करता है <math>x_n</math> सेकेंट | पुनरावृत्त करता है <math>x_n</math> सेकेंट मेथड का मूल में अभिसरण होता है <math>f</math> यदि प्रारंभिक मान <math>x_0</math> और <math>x_1</math> मूल के पर्याप्त निकट हैं। [[अभिसरण का क्रम]] है <math>\varphi</math>, जहाँ | ||
:<math>\varphi = \frac{1+\sqrt{5}}{2} \approx 1.618</math> | :<math>\varphi = \frac{1+\sqrt{5}}{2} \approx 1.618</math> | ||
गोल्डेन रेश्यो हैl विशेष रूप से, अभिसरण सुपर रैखिक है, लेकिन पूरी तरह से [[द्विघात अभिसरण]] नहीं है। | |||
यह परिणाम केवल कुछ तकनीकी स्थितियों के तहत ही मान्य है, अर्थात् <math>f</math> दो बार निरंतर अवकलनीय हो और प्रश्न में मूल सरल हो (अर्थात् बहुलता 1 के साथ)। | यह परिणाम केवल कुछ तकनीकी स्थितियों के तहत ही मान्य है, अर्थात् <math>f</math> दो बार निरंतर अवकलनीय हो और प्रश्न में मूल सरल हो (अर्थात् बहुलता 1 के साथ)। | ||
यदि प्रारंभिक मान मूल के पर्याप्त | यदि प्रारंभिक मान मूल के पर्याप्त निकट नहीं हैं, तो इस बात की कोई गारंटी नहीं है कि सेकेंट मेथड अभिसरण करती है। काफी निकट की कोई सामान्य परिभाषा नहीं है, लेकिन मानदंड का संबंध इस बात से है कि अंतराल पर कार्य कितना गतिशील है <math>[x_0, x_1]</math>. उदाहरण के लिए, यदि <math>f</math> उस अंतराल पर अवकलनीय है और वहाँ एक बिंदु है <math>f' = 0</math> अंतराल पर, तो एल्गोरिथ्म अभिसरण नहीं हो सकता है। | ||
==अन्य | ==अन्य मूल-खोज विधियों के साथ तुलना== | ||
सेकेंट | सेकेंट मेथड के लिए आवश्यक नहीं है कि मूल कोष्ठक में रखा जाए, जैसा कि [[द्विभाजन विधि]] में होता है, और इसलिए यह हमेशा अभिसरण नहीं होता है। [[झूठी स्थिति विधि]] (या {{lang|la|regula falsi}}) सेकेंट मेथड के समान सूत्र का उपयोग करता है। हालाँकि, यह फॉर्मूला लागू नहीं होता है <math>x_{n-1}</math> और <math>x_{n-2}</math>, सेकेंट मेथड की तरह, लेकिन चालू <math>x_{n-1}</math> और अंतिम पुनरावृति पर <math>x_k</math> ऐसा है कि <math>f(x_k)</math> और <math>f(x_{n-1})</math> एक अलग संकेत है. इसका मतलब यह है कि झूठी स्थिति विधि हमेशा अभिसरण करती है; हालाँकि, केवल अभिसरण के एक रैखिक क्रम के साथ। सेकेंट मेथड के रूप में अभिसरण के सुपर-रेखीय क्रम के साथ ब्रैकेटिंग को झूठी स्थिति विधि में सुधार के साथ प्राप्त किया जा सकता है (देखें रेगुला फाल्सी # सुधार% 20in% 20रेगुला% 20 फाल्सी | रेगुला फाल्सी § रेगुला फाल्सी में सुधार) जैसे कि [[आईटीपी विधि]] या [[इलिनोइस विधि]]. | ||
छेदक विधि का पुनरावृत्ति सूत्र न्यूटन की विधि के सूत्र से प्राप्त किया जा सकता है | छेदक विधि का पुनरावृत्ति सूत्र न्यूटन की विधि के सूत्र से प्राप्त किया जा सकता है | ||
Line 51: | Line 49: | ||
<math>f'(x_{n-1}) \approx \frac{f(x_{n-1}) - f(x_{n-2})}{x_{n-1} - x_{n-2}} \approx {\frac {f(x_{n-1}+{\frac {\epsilon }{2}})-f(x_{n-1}-{\frac {\epsilon }{2}})}{\epsilon }}</math> | <math>f'(x_{n-1}) \approx \frac{f(x_{n-1}) - f(x_{n-2})}{x_{n-1} - x_{n-2}} \approx {\frac {f(x_{n-1}+{\frac {\epsilon }{2}})-f(x_{n-1}-{\frac {\epsilon }{2}})}{\epsilon }}</math> | ||
सेकेंट | सेकेंट मेथड की व्याख्या एक ऐसी विधि के रूप में की जा सकती है जिसमें व्युत्पन्न को एक सन्निकटन द्वारा प्रतिस्थापित किया जाता है और इस प्रकार यह एक [[अर्ध-न्यूटन विधि]] है। | ||
यदि हम न्यूटन की विधि की तुलना सेकेंट | यदि हम न्यूटन की विधि की तुलना सेकेंट मेथड से करते हैं, तो हम देखते हैं कि न्यूटन की विधि तेजी से अभिसरण करती है (φ≈1.6 के विरुद्ध क्रम 2)। हालाँकि, न्यूटन की पद्धति के लिए दोनों के मूल्यांकन की आवश्यकता है <math>f</math> और इसका व्युत्पन्न <math>f'</math> प्रत्येक चरण पर, जबकि सेकेंट मेथड के लिए केवल मूल्यांकन की आवश्यकता होती है <math>f</math>. इसलिए, सेकेंट मेथड कभी-कभी व्यवहार में तेज़ हो सकती है। उदाहरण के लिए, यदि हम मान लें कि मूल्यांकन कर रहे हैं <math>f</math> इसके व्युत्पन्न का मूल्यांकन करने में जितना समय लगता है और हम अन्य सभी लागतों की उपेक्षा करते हैं, हम सेकेंट मेथड के दो चरण कर सकते हैं (त्रुटि के लघुगणक को एक कारक φ से घटाकर)<sup>2</sup> ≈ 2.6) न्यूटन की विधि के एक चरण के समान लागत के लिए (त्रुटि के लघुगणक को कारक 2 से कम करना), इसलिए सेकेंट मेथड तेज़ है। यदि, हालांकि, हम व्युत्पन्न के मूल्यांकन के लिए समानांतर प्रसंस्करण पर विचार करते हैं, तो न्यूटन की विधि समय में तेज़ होने के बावजूद इसके लायक साबित होती है, हालांकि अभी भी अधिक कदम खर्च करती है। | ||
==सामान्यीकरण== | ==सामान्यीकरण== | ||
ब्रोयडेन की विधि एक से अधिक आयामों के लिए सेकेंट | ब्रोयडेन की विधि एक से अधिक आयामों के लिए सेकेंट मेथड का सामान्यीकरण है। | ||
निम्नलिखित ग्राफ़ | निम्नलिखित ग्राफ़ फलन f को लाल रंग में और अंतिम सेकंड लाइन को बोल्ड नीले रंग में दिखाता है। ग्राफ़ में, छेदक रेखा का x अंतःखंड, f के मूल का एक अच्छा सन्निकटन प्रतीत होता है। | ||
[[Image:Secant method example code result.svg|center]] | [[Image:Secant method example code result.svg|center]] | ||
==कम्प्यूटेशनल उदाहरण== | ==कम्प्यूटेशनल उदाहरण== | ||
नीचे, सेकेंट | नीचे, सेकेंट मेथड को [[पायथन (प्रोग्रामिंग भाषा)]] प्रोग्रामिंग भाषा में लागू किया गया है। | ||
फिर इसे | फिर इसे फलन का मूल ढूंढने के लिए लागू किया जाता है {{math|''f''(''x'') {{=}} ''x''<sup>2</sup> − 612}} प्रारंभिक बिंदुओं के साथ <math>x_0 = 10</math> और <math>x_1 = 30</math> | ||
<सिंटैक्सहाइलाइट लैंग = पायथन3 > | <सिंटैक्सहाइलाइट लैंग = पायथन3 > | ||
def secant_method(f, x0, X1, पुनरावृत्तियों): | def secant_method(f, x0, X1, पुनरावृत्तियों): | ||
सेकेंट | सेकेंट मेथड का उपयोग करके परिकलित मूल लौटाएँ। | ||
रेंज (पुनरावृत्तियों) में i के लिए: | रेंज (पुनरावृत्तियों) में i के लिए: | ||
x2 = x1 - f(x1) * (x1 - x0) / फ्लोट(f(x1) - f(x0)) | x2 = x1 - f(x1) * (x1 - x0) / फ्लोट(f(x1) - f(x0)) | ||
Line 79: | Line 77: | ||
वापसी x ** 2 - 612 | वापसी x ** 2 - 612 | ||
मूल = secant_method(f_example, 10, 30, 5) | |||
प्रिंट (एफ | प्रिंट (एफ मूल: {मूल} ) # मूल: 24.738633748750722 | ||
</सिंटैक्सहाइलाइट> | </सिंटैक्सहाइलाइट> |
Revision as of 00:10, 23 July 2023
संख्यात्मक विश्लेषण में, सेकेंट मेथड (छेदिका विधि) क रूट-फाइंडिंग एल्गोरिदम है जो फलन f की जड़ को बेहतर ढंग से अनुमानित करने के लिए सेकेंट लाइनों की जड़ों के उत्तराधिकार का उपयोग करता है। सेकेंट मेथड को न्यूटन की विधि का एक सीमित-अंतर सन्निकटन माना जा सकता है। हालाँकि, सेकेंट मेथड न्यूटन की विधि से 3000 वर्ष से भी अधिक पुरानी है।[1]
विधि
किसी फलन का शून्य ज्ञात करने के लिए f, सेकेंट मेथड को पुनरावृत्ति संबंध द्वारा परिभाषित किया गया है।
जैसा कि इस सूत्र से देखा जा सकता है, दो प्रारंभिक मान x0 और x1 ज़रूरत है। आदर्श रूप से, उन्हें वांछित शून्य के निकटम चुना जाना चाहिए।
विधि की व्युत्पत्ति
आरंभिक मानों से प्रारंभ करना x0 और x1, हम बिंदुओं के माध्यम से एक रेखा बनाते हैं (x0, f(x0)) और (x1, f(x1)), जैसा कि ऊपर चित्र में दिखाया गया है। ढलान-अवरोधन रूप में, इस रेखा का समीकरण है
इस रैखिक फलन का मूल, अर्थात् का मान है x ऐसा है कि y = 0 है
फिर हम इस नए मान का उपयोग करते हैं x जैसा x2 और प्रयोग करते हुए प्रक्रिया को दोहराएँ x1 और x2 के बजाय x0 और x1. हम समाधान करते हुए इस प्रक्रिया को जारी रखते हैं x3, x4, आदि, जब तक कि हम परिशुद्धता के पर्याप्त उच्च स्तर (के बीच पर्याप्त छोटा अंतर) तक नहीं पहुंच जाते xn और xn−1):
अभिसरण
पुनरावृत्त करता है सेकेंट मेथड का मूल में अभिसरण होता है यदि प्रारंभिक मान और मूल के पर्याप्त निकट हैं। अभिसरण का क्रम है , जहाँ
गोल्डेन रेश्यो हैl विशेष रूप से, अभिसरण सुपर रैखिक है, लेकिन पूरी तरह से द्विघात अभिसरण नहीं है।
यह परिणाम केवल कुछ तकनीकी स्थितियों के तहत ही मान्य है, अर्थात् दो बार निरंतर अवकलनीय हो और प्रश्न में मूल सरल हो (अर्थात् बहुलता 1 के साथ)।
यदि प्रारंभिक मान मूल के पर्याप्त निकट नहीं हैं, तो इस बात की कोई गारंटी नहीं है कि सेकेंट मेथड अभिसरण करती है। काफी निकट की कोई सामान्य परिभाषा नहीं है, लेकिन मानदंड का संबंध इस बात से है कि अंतराल पर कार्य कितना गतिशील है . उदाहरण के लिए, यदि उस अंतराल पर अवकलनीय है और वहाँ एक बिंदु है अंतराल पर, तो एल्गोरिथ्म अभिसरण नहीं हो सकता है।
अन्य मूल-खोज विधियों के साथ तुलना
सेकेंट मेथड के लिए आवश्यक नहीं है कि मूल कोष्ठक में रखा जाए, जैसा कि द्विभाजन विधि में होता है, और इसलिए यह हमेशा अभिसरण नहीं होता है। झूठी स्थिति विधि (या regula falsi) सेकेंट मेथड के समान सूत्र का उपयोग करता है। हालाँकि, यह फॉर्मूला लागू नहीं होता है और , सेकेंट मेथड की तरह, लेकिन चालू और अंतिम पुनरावृति पर ऐसा है कि और एक अलग संकेत है. इसका मतलब यह है कि झूठी स्थिति विधि हमेशा अभिसरण करती है; हालाँकि, केवल अभिसरण के एक रैखिक क्रम के साथ। सेकेंट मेथड के रूप में अभिसरण के सुपर-रेखीय क्रम के साथ ब्रैकेटिंग को झूठी स्थिति विधि में सुधार के साथ प्राप्त किया जा सकता है (देखें रेगुला फाल्सी # सुधार% 20in% 20रेगुला% 20 फाल्सी | रेगुला फाल्सी § रेगुला फाल्सी में सुधार) जैसे कि आईटीपी विधि या इलिनोइस विधि.
छेदक विधि का पुनरावृत्ति सूत्र न्यूटन की विधि के सूत्र से प्राप्त किया जा सकता है
छोटे के लिए, परिमित-अंतर सन्निकटन का उपयोग करके :
सेकेंट मेथड की व्याख्या एक ऐसी विधि के रूप में की जा सकती है जिसमें व्युत्पन्न को एक सन्निकटन द्वारा प्रतिस्थापित किया जाता है और इस प्रकार यह एक अर्ध-न्यूटन विधि है।
यदि हम न्यूटन की विधि की तुलना सेकेंट मेथड से करते हैं, तो हम देखते हैं कि न्यूटन की विधि तेजी से अभिसरण करती है (φ≈1.6 के विरुद्ध क्रम 2)। हालाँकि, न्यूटन की पद्धति के लिए दोनों के मूल्यांकन की आवश्यकता है और इसका व्युत्पन्न प्रत्येक चरण पर, जबकि सेकेंट मेथड के लिए केवल मूल्यांकन की आवश्यकता होती है . इसलिए, सेकेंट मेथड कभी-कभी व्यवहार में तेज़ हो सकती है। उदाहरण के लिए, यदि हम मान लें कि मूल्यांकन कर रहे हैं इसके व्युत्पन्न का मूल्यांकन करने में जितना समय लगता है और हम अन्य सभी लागतों की उपेक्षा करते हैं, हम सेकेंट मेथड के दो चरण कर सकते हैं (त्रुटि के लघुगणक को एक कारक φ से घटाकर)2 ≈ 2.6) न्यूटन की विधि के एक चरण के समान लागत के लिए (त्रुटि के लघुगणक को कारक 2 से कम करना), इसलिए सेकेंट मेथड तेज़ है। यदि, हालांकि, हम व्युत्पन्न के मूल्यांकन के लिए समानांतर प्रसंस्करण पर विचार करते हैं, तो न्यूटन की विधि समय में तेज़ होने के बावजूद इसके लायक साबित होती है, हालांकि अभी भी अधिक कदम खर्च करती है।
सामान्यीकरण
ब्रोयडेन की विधि एक से अधिक आयामों के लिए सेकेंट मेथड का सामान्यीकरण है।
निम्नलिखित ग्राफ़ फलन f को लाल रंग में और अंतिम सेकंड लाइन को बोल्ड नीले रंग में दिखाता है। ग्राफ़ में, छेदक रेखा का x अंतःखंड, f के मूल का एक अच्छा सन्निकटन प्रतीत होता है।
कम्प्यूटेशनल उदाहरण
नीचे, सेकेंट मेथड को पायथन (प्रोग्रामिंग भाषा) प्रोग्रामिंग भाषा में लागू किया गया है।
फिर इसे फलन का मूल ढूंढने के लिए लागू किया जाता है f(x) = x2 − 612 प्रारंभिक बिंदुओं के साथ और <सिंटैक्सहाइलाइट लैंग = पायथन3 > def secant_method(f, x0, X1, पुनरावृत्तियों):
सेकेंट मेथड का उपयोग करके परिकलित मूल लौटाएँ। रेंज (पुनरावृत्तियों) में i के लिए: x2 = x1 - f(x1) * (x1 - x0) / फ्लोट(f(x1) - f(x0)) x0, x1 = x1, x2 # यहां एक रोक मानदंड लागू करें (नीचे देखें) वापसी x2
def f_example(x):
वापसी x ** 2 - 612
मूल = secant_method(f_example, 10, 30, 5)
प्रिंट (एफ मूल: {मूल} ) # मूल: 24.738633748750722
</सिंटैक्सहाइलाइट>
उपरोक्त एक अच्छा रोक मानदंड होना बहुत महत्वपूर्ण है, अन्यथा, फ़्लोटिंग पॉइंट संख्याओं की सीमित संख्यात्मक सटीकता के कारण, एल्गोरिदम बहुत अधिक पुनरावृत्तियों के लिए चलने पर गलत परिणाम दे सकता है। उदाहरण के लिए, उपरोक्त लूप तब रुक सकता है जब इनमें से कोई एक पहले पहुंच जाए: abs(x0 - x1) < tol, या abs(x0/x1-1) < tol, या abs(f(x1)) < tol. [2]
टिप्पणियाँ
- ↑ Papakonstantinou, Joanna; Tapia, Richard (2013). "एक आयाम में सेकेंट विधि की उत्पत्ति और विकास". American Mathematical Monthly. 120 (6): 500–518. doi:10.4169/amer.math.monthly.120.06.500. JSTOR 10.4169/amer.math.monthly.120.06.500. S2CID 17645996 – via JSTOR.
- ↑ "MATLAB TUTORIAL for the First Course. Part 1.3: Secant Methods".
यह भी देखें
- मिथ्या स्थिति विधि
संदर्भ
- Avriel, Mordecai (1976). Nonlinear Programming: Analysis and Methods. Prentice Hall. pp. 220–221. ISBN 0-13-623603-0.
- Allen, Myron B.; Isaacson, Eli L. (1998). Numerical analysis for applied science. John Wiley & Sons. pp. 188–195. ISBN 978-0-471-55266-6.
बाहरी संबंध
- Secant Method Notes, PPT, Mathcad, Maple, Mathematica, Matlab at Holistic Numerical Methods Institute
- Weisstein, Eric W. "Secant Method". MathWorld.