Логотип Автор24реферат
Задать вопрос
%
уникальность
не проверялась
Контрольная работа на тему:

Применяя метод Эйлера численно решить дифференциальные уравнения и системы дифференциальных уравнений с данными начальными условиями на отрезке a

уникальность
не проверялась
Аа
1832 символов
Категория
Программирование
Контрольная работа
Применяя метод Эйлера численно решить дифференциальные уравнения и системы дифференциальных уравнений с данными начальными условиями на отрезке a .pdf

Зарегистрируйся в 2 клика в Кампус и получи неограниченный доступ к материалам с подпиской Кампус+ 🔥

Условие

Применяя метод Эйлера, численно решить дифференциальные уравнения и системы дифференциальных уравнений с данными начальными условиями на отрезке a,b с шагами h и h/2 при указанных значениях параметров. y'=x+yy-x, y0=1, a=0, b=1, h=0,1.

Нужно полное решение этой работы?

Решение

Потяни, чтобы посмотреть
Формула метода Эйлера для i+1-го приближения:
yi+1=yi+hfxi,yi;
fx,y=x+yy-x;
x0=0; y0=yx0=1; h=0,1.
Вычисляем c шагом h=0,1
y1=y0+hfx0,y0; y2=y1+hfx1,y1 и т.д.
до тех пор, пока не будет достигнуто x=b=1.
Приведем в таблице результаты вычисления для шага h=0,1 и h1=h2=0,05.
i
x
yh
yh/2
yh-yh/2
n
x
yh
yh/2
yh-yh/2
0 0 1 1 0 11 0,55
1,79801
1 0,05
1,05
12 0,60 1,87176 1,89208 0,02032
2 0,1 1,105 1,1 0,005 13 0,65
1,98852
3 0,15
1,16495
14 0,70 2,06612 2,08708 0,02096
4 0,2 1,22 1,22973 0,00973 15 0,75
2,18754
5 0,25
1,29915
16 0,80 2,26860 2,28972 0,02112
6 0,3 1,35922 1,37298 0,01377 17 0,85
2,39342
7 0,35
1,45094
18 0,90 2,47755 2,49849 0,02094
8 0,40 1,51586 1,53273 0,01687 19 0,95
2,60479
9 0,45
1,61804
20 1,00 2,69165 2,71220 0,02056
10 0,50 1,68756 1,70657 0,01902
Фрагмент консольного вывода результатов программы:
Изобразим решения при h и h/2 на графике.
program Euler;
const
h=0.1; h1=0.05;
var
delta:real;
x,y:array[0..10] of real;
x1,y1:array[0..20] of real;
i,j: integer;
function f(x,y:real):real;
begin
f:=(x+y)/(y-x);
end;
begin
writeln(' Метод Эйлера'); writeln;
writeln(' шаг h = 0,1'); writeln;
x[0]:=0; y[0]:=1;
for i:=0 to 9 do
begin
delta:=h*f(x[i],y[i]);
y[i+1]:=y[i]+delta; x[i+1]:=x[i]+h;
writeln('y = ',y[i+1]:10:5,' x = ',x[i+1]:6:2); readln;
end;
writeln(' шаг h = 0,05'); writeln;
x1[0]:=0; y1[0]:=1;
for i:=0 to 19 do
begin
delta:=h1*f(x1[i],y1[i]);
y1[i+1]:=y1[i]+delta; x1[i+1]:=x1[i]+h1;
writeln('y = ',y1[i+1]:10:5,' x = ',x1[i+1]:6:2); readln;
end;
end.
50% задачи недоступно для прочтения
Переходи в Кампус, регистрируйся и получай полное решение
Получить задачу
Больше контрольных работ по программированию:
Все Контрольные работы по программированию
Закажи контрольную работу

Наш проект является банком работ по всем школьным и студенческим предметам. Если вы не хотите тратить время на написание работ по ненужным предметам или ищете шаблон для своей работы — он есть у нас.