دانلود کد متلب روش نیوتن رافسون برای حل دستگاه معادلات غیر خطی با فانکشن نویسی

75 خریدها
#
instock
89,900 تومان

توضیحات

حل دستگاه معادلات غیر خطی

در این پست ، روش نیوتون رافسون و کد متلب آن برای حل دستگاه معادلات غیر خطی ارائه داده می شود. روش ارائه شده در این بخش روش عددی است که می تواند برای حل معادلات که به طور کلی به عنوان غیر خطی استفاده شوند.

f(x) = 0

از آنجا که راه حل دقیق نیست، الگوریتم روش ارائه شده در اینجا، راه حل دقیق را برای معادله f (x) = 0 ارائه نخواهند داد. در عوض، الگوریتم معادله را در تلرانس یا خطای مجاز، ε که ارضا کند، متوقف کنیم.

مقدار x که معادله غیر خطی f (x) = 0 ارضا شود، یعنی x=xr، حل یا ریشه معادله در یک خطا از واحد ε خواهد بود.

 

روش نیوتن-رافسون

یک سیستم معادلات غیر خطی n در n ناشناخته داده شده به صورت زیر در نظر بگیرید.

f1(x1,x2,…,xn) = 0

f2(x1,x2,…,xn) = 0

.

.

.

fn(x1,x2,…,xn) = 0

 

سیستم را می توان در یک عبارت یکتا با استفاده از بردارها به صورت زیر نوشت، یعنی:

f(x) = 0

جایی که بردار x شامل متغیرهای مستقل است و بردار f شامل توابع (fi (x است.

اگر x = x0 (یک بردار) نشان دهنده اولین حدس برای راه حل باشد، تقریب  های متوالی از حل آن حاصل می شود:

xn+1 = xn – J ⋅f(xn) = xn – ∆xn

به طوری که ∆xn = xn+1 – xn.

که در آن J و f  به ترتیب معرف ژاکوبین و معادلات غیرخطی است.

در این فایل کد روش نیوتون-رافسون (روش مماسی) برای حل دسته معادلات غیرخطی در متلب قرار داده شده است.
این کد به گونه ای نوشته شده است که اگر معادله مورد نظر، با حدس اولیه داده شده، قابل حل باشد (همگرا باشد) آن را حل کرده و تعداد مراحل و مقدار بدست آمده در هر مرحله را نشان خواهد داد. اما اگر معادله مورد نظر، با حدس اولیه داده شده قابل حل نباشد(غیرهمگرا باشد)، پیغامی مبنی بر غیر همگرا بودن نشان خواهد داد.

لازم به ذکر است که برنامه متلب به صورت فانکشن نوشته شده است و تنها با فشردن کلید F5 در قسمت Main_Newton برنامه اجرا شده و جواب معادله را باز می گرداند. برای تغییر دستگاه معادلات و حل معادلات دلخواه از توضیحات داخل فانکشن استفاده کنید و از نمونه مثال های حل شده، الگو برداری نمایید.

پسورد فایل : www.mechhome.ir

 

 

1 دیدگاه برای دانلود کد متلب روش نیوتن رافسون برای حل دستگاه معادلات غیر خطی با فانکشن نویسی

  1. نمره 4 از 5

    آرمان

    با سلام سوالی داشتم
    میخواستم ببینم میشه این برنامه رو به صورت دینامی نوشت ؟
    یعنی در طول برنامه امکان تغییر اندازه دستگاه ( تعداد معادلات) وجود داشته باشه

دیدگاه خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

کلمات کلیدی

error: Content is protected !!