Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
12
Добавлен:
01.05.2014
Размер:
222.21 Кб
Скачать

Решение методом Рунге Кутта

function z=F1(u)

z=u;

function z=F2(u0,u1,x)

z = exp(-x).*((-4)*x-12)-2*u1-5*u0;

clear

clc

format long e;

xs = 0;

xf = 6;

u0(1) = -4;

u1(1)= 13;

x(1)=xs;

n=500;

h=(xf-xs)/n;

for k=1:n

i=max(size(x));

k1(1)=h*F1(u1(i));

k1(2)=h*F2(u0(i),u1(i),x(i));

k2(1)=h*F1(u1(i)+k1(1)/2);

k2(2)=h*F2(u0(i)+k1(2)/2,u1(i)+k1(2)/2,x(i)+h/2);

k3(1)=h*F1(u1(i)+k2(1)/2);

k3(2)=h*F2(u0(i)+k2(2)/2,u1(i)+k2(2)/2,x(i)+h/2);

k4(1)=h*F1(u1(i)+k3(1));

k4(2)=h*F2(u0(i)+k3(2),u1(i)+k3(2),x(i)+h);

u0(i+1)=u0(i)+(k1(1)+2*k2(1)+2*k3(1)+k4(1))/6;

u1(i+1)=u1(i)+(k1(2)+2*k2(2)+2*k3(2)+k4(2))/6;

x(i+1)=x(i)+h;

end

plot(x,u0)

xx=0:0.1:3;

hold on

q=exp(-xx).*(-xx-3)+exp(-xx).*(-cos(2*xx)+5*sin(2*xx));

plot(xx,q,'o');

grid;

hold off;

Графики точного решения и полученного методом Рунге Кутта:

Часть 2

Файл fder41 описание заданного уравнения

function z=fder41(t,y)

z=[-7*y(1)+15*y(2);-6*y(1)+12*y(2)]

Файл fx.m решение заданной системы уравнений

function Fx=fx(q);

Fx=15*exp(3*q)-15*exp(2*q);

Файл fy.m решение заданной системы уравнений

function Fy=fy(q)

Fy=10*exp(3*q)-9*exp(2*q);

Файл rab41

clear

clc

xs=0;

xf=1;

[X,Y]=ode23(@fder41,[xs xf],[0,1]);

plot(X,Y);

grid

hold on

t=xs:0.1:xf;

plot(t,fx(t),'o');

plot(t,fy(t),'o');

hold off

Графики решений

Соседние файлы в папке Лабораторная работа №4