روش رانگ کوتا (RK)

12627 بازدید

در این پست قصد داریم یک برنامه به زبان MATLAB بنویسیم که یک معادله دیفرانسیلی را با روش رانگ کوتا ( Runge Kutta) مرتبه 4 حل کند.

الگوریتم حل در روش رانگ کوتا بصورت زیر می باشد:

 

runge kutta

 

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

y’=1+y2

در این مثال، مقدار گام (h) را برابر 0.1 در نظر گرفته و مقادیر اولیه بصورت  x0=0 و y0=0 تعریف شده اند. تعداد مراحل نیز n=20 می باشد.

 h=0.1    ;   x= 0.1  to  1.6

کد نوشته شده به زبان متلب بصورت زیر می باشد:

      
x0=0;

y0=0;

      n=20;
      
      h=0.1;
      
      f=inline('y^2+1','x','y');
      
      X=zeros(1,n)
      
      Y=zeros(1,n)
      
      X(1)=x0
      
      Y(1)=y0
      
      for ii=1:n
      
          k1=h*(f(X(ii),Y(ii)));
      
          k2=h*(f(X(ii)+h/2,Y(ii)+k1/2));
      
          k3=h*(f(X(ii)+h/2,Y(ii)+k2/2));
      
          k4=h*(f(X(ii)+h,Y(ii)+k3));
      
          Y(ii+1)=Y(ii)+1/6*(k1+2*k2+2*k3+k4);
      
      end
      
fprintf('y= %.10f\n', y(i+1));

 

نتیجه این برنامه بصورت زیر می باشد:

y = 3.6279391965

 

مطالب مرتبط

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

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

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

نویسنده : آدرس سایت : ایمیل :
کد روبرو را وارد نمایید
captcha


0

شبکه های اجتماعی

دانشنامه تخصصی مهندسی ایران را در شبکه های اجتماعی دنبال کنید

0 0
درخواست نرم افزار
در صورتی که نیاز به مشاوره در مورد اطلاعات و اخبار نرم افزارها دارید، با ما تماس بگیرید.
    همکاران ما در سریع ترین زمان ممکن پاسخگو شما خواهند بود.