@ally лучше всего воспользоваться функцией ode45(), она помогает решить дифуры и системы дифференциальных уравнений в подавляющем большинстве случаев.
Привожу пример решения линейного дифференциального уравнения и полученное решение
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
close all; clear all; clc; % дифференциальное уравнение: % y1'=2.4*t^2-1; tspan = [0 5]; % диапазон получения решения y0 = [1 ]; % начальные значения [t,y] = ode45(@(t,y) [2.4*t^2-1], tspan, y0); plot(t,y,'-o'); grid on; title('Решение дифференциального уравнения'); xlabel('t'); ylabel('y'); legend('y1', 'location', 'best'); saveas(gca, 'ODE2.jpg'); |