معادلات دیفرانسیل معمولی – مسایل مقدار اولیه

Ordinary Differential Equation - initial value problems(IVP)

با عرض سلام خدمت دوستان ،در این پست می خواهم یک سری مسایل مقدار اولیه را به وسیله زبان برنامه نویسی Matlab برای یادآوری ارائه کنم همانطور که می دانید با توجه به رابطه اویلر داریم.

dy/dt=f(t,y) , Euler method :  yi+1=yi+h*f(t,y)

با جایگذاری تابع مثال زیر در رابطه بالا برنامه زیر را داریم در این برنامه میزان خطا روش اویلر هم محاسبه شده است

dy/dt=2t-y , [0,1],  y(0)=-1,  N=10

% Euler method

% dy/dt=2t-y 

clc

clear

n=input(‘number=’);

t0=input(‘initial point=’);%t=[t0,tf]

tf=input(‘end point=’);

y(1)=input(‘initial function point=’);%megdare avalie , in soal y(0)=-1

h=(tf-t0)/n;

t=t0:h:tf;

% euler

for i=1:n

    y(i+1)=y(i)+h*(2*t(i)-y(i));

end

yexact=exp(-t)+2*t-2;

error=abs(y-yexact)%mohaseb khata

plot(t,yexact,’b’,t,y,’r’);%rasm tabe

xlabel(‘X’);%mehvar x

ylabel(‘Y’);%mehvar y

legend(‘yexact’,’y’);

بعد از اجرا برنامه می بینیم که آبی بالاتر از قرمزه!!!

  • matlab

دانلود ام فایل برنامه بالا ومثال 2(Higher order Tylor series method)ومثال 3(Mid point, Runge_Kutta 2)آورده شده است دانلود

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

Applied Mathematics and Modeling for Chemical Engineers. Richard G. Rice

An Introduction to numerical method A Matlab Approach.A.kharab

An Introduction to Computational Fluid Dynamics.THE FINITE VOLUME METHOD.H.K.versteog…

Numerical heat transfer and fluid flow.S.patankar