clc
clear
close all
% Исходные данные
n = 20;
x0 = 0;
x1 = 1;
y0 = 6;
% Шаг интегрирования
h = (x1-x0)/n;
% Начальные условия
x = zeros(1,n+1);
y = zeros(1,n+1);
x(1) = x0;
y(1) = y0;
% Правая часть уравнения
f = @(x,y) 1 + 2*y/(x-2);
% Метод Рунге-Кутты 4-го порядка
for i = 1:n
k1 = f(x(i),y(i));
k2 = f(x(i)+h/2,y(i)+h*k1/2);
k3 = f(x(i)+h/2,y(i)+h*k2/2);
k4 = f(x(i)+h,y(i)+h*k3);
x(i+1) = x(i) + h;
y(i+1) = y(i) + h*(k1+2*k2+2*k3+k4)/6;
end
% Точное решение
Y = x.^2 - 5*x + 6;
% Построение графика
figure(1)
plot(x,y,'bo-',x,Y,'r-')
grid on
xlabel('x')
ylabel('y')
title('Метод Рунге-Кутты, вариант 13')
legend('Численное решение','Точное решение')
clc
clear
close all
% Исходные данные
n = 20;
x0 = 0;
x1 = 1;
y0 = 6;
% Шаг интегрирования
h = (x1-x0)/n;
% Начальные условия
x = zeros(1,n+1);
y = zeros(1,n+1);
x(1) = x0;
y(1) = y0;
% Правая часть уравнения
f = @(x,y) 1 + 2*y/(x-2);
% Улучшенный метод Эйлера
for i = 1:n
k1 = f(x(i),y(i));
yp = y(i) + h*k1;
k2 = f(x(i)+h,yp);
x(i+1) = x(i) + h;
y(i+1) = y(i) + h*(k1+k2)/2;
end
% Точное решение
Y = x.^2 - 5*x + 6;
% Построение графика
figure(1)
plot(x,y,'bo-',x,Y,'r-')
grid on
xlabel('x')
ylabel('y')
title('Улучшенный метод Эйлера, вариант 13')
legend('Численное решение','Точное решение')
clc
clear
close all
% Исходные данные
n = 20;
x0 = 0;
x1 = 1;
y0 = 6;
% Шаг интегрирования
h = (x1-x0)/n;
% Начальные условия
x = zeros(1,n+1);
y = zeros(1,n+1);
x(1) = x0;
y(1) = y0;
% Правая часть уравнения
f = @(x,y) 1 + 2*y/(x-2);
% Метод Эйлера
for i = 1:n
x(i+1) = x(i) + h;
y(i+1) = y(i) + h*f(x(i),y(i));
end
% Точное решение
Y = x.^2 - 5*x + 6;
% Построение графика
figure(1)
plot(x,y,'bo-',x,Y,'r-')
grid on
xlabel('x')
ylabel('y')
title('Метод Эйлера, вариант 13')
legend('Численное решение','Точное решение')