حل معادلات غیر خطی با دقت بالا
روش تکرار نیوتن یکی از روشهای قدرتمند و پرکاربرد در زمینه حل معادلات غیر خطی است. این روش با استفاده از مشتق تابع، به دنبال یافتن ریشههای یک معادله غیر خطی میگردد.
در این مطلب، ابتدا روش تکرار نیوتن را توضیح میدهیم و سپس با استفاده از نمونه کد متلب، نحوه پیادهسازی و استفاده از آن را به طور کامل شرح میدهیم. همچنین چند مثال کاربردی را برای نشان دادن قدرت این روش در حل مسائل مختلف بررسی خواهیم کرد.
فرض کنید میخواهیم ریشه یک معادله غیر خطی ` f(x) = 0` را با استفاده از لگوها پیدا کنیم.
1. **تخمینی اولیه:** یک تخمین اولیه ` x_0 ` برای ریشه معادله انتخاب میکنیم. برای این کار، یک لگو را در نقطه
`x_0` روی محور x قرار میدهیم.
2. **تکرار:** با استفاده از فرمول زیر، به صورت تکراری مقدار جدید {`x_{i+1 ` را محاسبه میکنیم:
( x_{i+1} = x_i - f(x_i)/f'(x_i
که ( `f'(x ` مشتق اول تابع ( `f(x ` است. برای انجام این کار، لگویی را با رنگ آبی در نقطه `x _i ` قرار میدهیم و سپس یک لگو با رنگ قرمز را در نقطه( `f(x_ i` روی محور y قرار میدهیم. سپس یک لگو با رنگ زرد را به عنوان شیب خط مماس در نقطه `x_i ` رسم میکنیم.
نقطه برخورد خط مماس با محور x (یعنی{`x_{i+1}`) را پیدا میکنیم.
3. **توقف:** تکرارها تا زمانی ادامه مییابند که اختلاف بین دو مقدار متوالی { ` x_i` و `x_{i+1 ` به اندازه کافی کوچک باشد
کد متلب
کد متلب زیر یک تابع به نام ` newton_method ` را پیادهسازی میکند که ریشه معادله غیر خطی ` f(x) = 0 ` را با استفاده از روش تکرار نیوتن محاسبه میکند:
مثال کاربردی
**مثال 1: یافتن ریشه معادله غیر خطی `x^3 - 2x - 5 = 0`**
اقای بارو توجه کنند-!!