حل معادلات دیفرانسیل معمولی در متلب
برای آموزش نحوه استفاده از ode45 نوسانگر واندرپل تحت نیروی واداشته را در نظر می گیریم که معادله دیفرانسیل آن بصورت زیر نوشته می شود:
گام اول- بازنویسی مسئله بشکل مجموعه ای از معادلات مرتبه یک. در مورد نوسانگر واندرپل با تغییر متغیر y1‘=y2 دو معادله دیفرانسیل مرتبه یک حاصل میشود،
گام دوم- کد نمودن ODE های مرتبه یک، پس از بازنویسی معادلات مطابق گام اول باید ان معادلات را برای بکارگیری ode45 کد نماییم. تابع باید بشکل زیر باشد،
dydt=odefun(t,y)
function dydt=vdp1(t,y)
epsilon=5;
w=2.466;
f=5;
dydt=[y(2) ; epsilon*(1-y(1)^2)*y(2)-y(1)+f*cos(w*t)];
گام سوم- استفاده از یک حل کننده (solver) برای مسئله، همانگونه که گفته شد میخواهیم از ode45 استفاده نماییم. تابع ode45 سه ورودی یا آرگومان دارد. اولین آرگومان تابعی است که آنرا گام دوم خلق کردیم، دومین آرگومان بازه مربوط به متغیر مستقل است که در مورد مسئله ما همان بازه زمانی t است و نهایتا آرگومان سوم بردار شرایط اولیه است.دقت کنید که تابع حتما باید دو آرگومان یکی مربوط به متغیر مستقل (در اینجا t) و دیگری مربوط به متغیرهای وابسته (در اینجا y) داشته باشد حتی اگر هیچکدام در تابع های مرتبه یک ظاهر نشوند. کد زیر سیستم واندپل را تحت عنوان تابع vdp1 نشان میدهد. y(1) و y(2) ورودی های بردار دوعنصری y هستند.
در این مثال بازه زمانی [0 100] و مقادیر اولیه y(1)=1.2 و y(2)=0 را مطابق زیر در ode45 قرار می دهیم،
[t,y]=ode45(@vdp1,[0 100],[1.2 0]);
گام چهارم- مشاهده خروجی، اینکار را براحتی با استفاده از plot می توان انجام داد.در این مثال برای پذرفتن vdp1 بعنوان یک تابع ا @ استفاده شده است. خروجی ode45 برداری از زمان t و ماتریس پاسخ y اس. هر سر y مطابق با زمانیست که توسط سطر متناظر در t معرفی میشود. نخستین ستون y متناظر با y(1) و ستون دوم آن متناظر با y(2) است.
plot(y(:,1),y(:,2))
xlabel(‘y1’)
ylabel(‘y2’)
با این توضیحات برنامه vdp1 با فرم نهایی و ساده زیر نوسانگر واندپل را در فضای فاز شبیه سازی میکند.
function vonerpol
% vonderpole oscilator – ode45
[t,y]=ode45(@vdp1,[0 100],[1.2 0]);
plot(y(:,1),y(:,2))
xlabel(‘y1’)
ylabel(‘y2’)
function dydt=vdp1(t,y)
epsilon=5;
w=2.466;
f=5;
dydt=[y(2) ; epsilon*(1-y(1)^2)*y(2)-y(1)+f*cos(w*t)];
مقاله متلب,مطلب,متلب,مقاله برق,مقاله قدرت,مقاله مطلب,مقاله سیمولینک,دانلود متلب,دانلود مقاله متلب,مقالهmatlab ,آموزش متلب,مطلب,متلب,آموزش برق,آموزش قدرت,آموزش مطلب,آموزش سیمولینک,دانلود متلب,دانلود آموزش متلب,آموزشmatlab ,پروژه متلب,مطلب,متلب,پروژه برق,پروژه قدرت,پروژه مطلب,پروژه سیمولینک,دانلود متلب,دانلود پروژه متلب,پروژهmatlab ,