Я хочу запрограммировать передний эйлер для системы дифференциального уравнения om 4. К ним относятся:Передвижной эйлер для системы из 4 DE в MATLAB
x'(t)=u
y'(t)=v
u'(t)=-kx*u*V
v'(t)=-g-ky(v*V)
, где кх, ку и г являются постоянными и V = SQRT (и^2 + у^2)
Первое, что у меня dones является то, что я назвал:
w_1'=x'
w_2'=y'
w_3'=u'
w_4'=v'
так что я могу выразить 4 систему DE в терминах ш:
w_3
w_4
-kx*w_3+sqrt((w_3)^2+(w_4)^2)
-g-ky*w_4*(sqrt((w_3)^2+(w_4)^2)
Теперь код MATLAB:
x0 = 0;
N = 16000;
h = 2./N;
kx=0.020;
ky=0.065;
g=9.81;
x_i = [0 ; 1.5; 19*cos(45); 19*sin(45)]; % initialconditons
for i = 1:N;
x_n = x0 + (i-1).*h;
diff=[x_n;x_n;-kx*(x_n*sqrt((x_n).^2+(x_n).^2));-g-ky*x_n*sqrt((x_n).^2+(x_n).^2)];
e= x_i + h.*diff; %euluerforward
end
Это все верно? или я должен заменить x_n на intialconditions? как X_i (3) и т.д.
Ну очень отличается от моей проблемы ? – John