آموزش متلبتکنولوژی

روش نیوتن رافسون در متلب (آموزش کامل)

هدف این جلسه استفاده از یک مثال اساسی برای نشان دادن نحوه استفاده از روش نیوتن رافسون در متلب است. ما از حل کننده ode45 استفاده می کنیم و از شرایط مرزی در مثال زیر استفاده می کنیم.

نیوتن رافسون در متلب

با شرایط مرزی

Newton-Raphson-method-matlab1

مراحلی که برای روش نیوتن رافسون در متلب باید انجام دهیم در ادامه آورده شده است.

آموزش نیوتن رافسون در Matlab

کد زیر مشکل مقدار اولیه (IVP) را با استفاده از تابع ode45 حل می کند. از روش نیوتن رافسون در فرآیند تکرار برای نزدیک شدن به راه حل دقیق و در نهایت اتمام تکرار استفاده میشود.

در ابتدای مسئله ، ODE (معادله دیفرانسیل معمولی) را به مجموعه ای از معادلات مرتبه اول تقسیم می کنیم و از 1 بعنوان حدس اولیه برای y'(0) استفاده می کنیم.

آموزش نیوتن رافسون در Matlab

کدی که استفاده میکنیم در زیر آورده شده است:

ua=0;
s(1)=1; %حدس اول
s(2)=1.1; %حدس دوم

tb=1;  %بار دوم
target_ub=0;  % هدف

f=@(t,y) [y(2); 1./(1+y(1))^2]; % set of 1st order ODE
rb=@(v) (v-target_ub)  % boundary conditions at b

[t,y]=ode45(f,[0 tb],[ua; s(1)]);
ub(1)=y(end,1);

for (j=2:50) % stop after 50 iteration even if the accuracy is not reached
[t,y]=ode45(f,[0 tb],[ua; s(j)]);
ub(j)=y(end,1);
if abs(rb(ub(j)))<0.001 % quit the for loop if accuracy reached
break
end
s(j+1)=s(j)-rb(ub(j))*(s(j)-s(j-1))/(rb(ub(j))-rb(ub(j-1)));
end

plot(t,y(:,1)) % رسم آخرین راه حل
xlabel('t')
ylabel('y')
grid on

نمودار ما میشود:

نمودار حل شده با روش نیوتن رافسون

5 (1 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

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

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *