roma1990Попробуйте в Матлабе что-нибудь вроде:
Код:
function dy = ode_fun(t,y,f1,f2,f3)
% Легенда:
% y(1) - x
% y(2) - dx/dt
% y(3) - y
% y(4) - dy/dt
% y(5) - z
% y(6) - dz/dt
dy = [
y(2);
f1(t,y(1),y(2),y(3),y(4));
y(4);
f2(t,y(1),y(2),y(3),y(4));
y(6);
f3(t,y(5),y(6));
];
Код выше сохранить в файл ode_fun.m и расположить на пути, который виден Матлабу. Выполнить следующий код:
Код:
% задать вид функций f1,f2,f3, например, f1 = @(t,y1,y2,y3,y4) t+y1+y2+y3+y4
y0 = [1 0 1 0 1 0];
T_max = 1; % секунда
tspan = [0 T_max];
[T Y] = ode45(@(t,y) ode_fun(t,y,f1,f2,f3), tspan, y0);
plot3(Y(:,1),Y(:,3),Y(:,5));
По желанию ode45 заменить на ode15s.