Курсовая работа: Исследование неявного метода Эйлера для линейной системы ОДУ с постоянным и переменным шагом

while (t<tfinal)

U=feval(funU, t);

if (t+h)>tfinal, h=tfinal-t; end

yt=(I-A*h/2)\((I-A*h/2)\(y+h/2*B*U)+h/2*B*U);

t=t+h;

eout=[eout;abs(y-yt).'];

tout=[tout;t]; yout=[yout;y.'];

if trace

home, t, h, y

end

end

- test.m

disp('Решаем нежесткую систему:')

pause

disp('Решаем переменный шаг:')

pause

% Переменный шаг

[t1,y1,e1]=rkper1 ('a','b','u',0,3.5,[0.1;0.1],0.01);

[t2,y2,e2]= rkper1 ('a','b','u',0,3.5,[0.5;0.5],0.01);

[t3,y3,e3]= rkper1 ('a','b','u',0,3.5,[1;1],0.01);

plot(t1,y1,t2,y2,t3,y3)

pause

t1e=t1(1:max(size(t1))-1);

t2e=t2(1:max(size(t2))-1);

t3e=t3(1:max(size(t3))-1);

plot(t1e,e1,t2e,e2,t3e,e3)

pause

disp('Решаем постоянный шаг:')

pause;

% Постоянный шаг

К-во Просмотров: 350
Бесплатно скачать Курсовая работа: Исследование неявного метода Эйлера для линейной системы ОДУ с постоянным и переменным шагом