Я сделал свой код так,
function DK = pendulum_cartesian(t,K)
g = 9.8; l = sqrt(K(1)^2 + K(2)^2);
DK = zeros(4,1);
DK(1) = K(3);
DK(2) = K(4);
DK(3) = ( (-K(1)*K(3)^2) - (K(1)*K(4)^2) + K(1)*K(2)*g )/(l^2);
DK(4) = ( (-K(2)*K(3)^2) - (K(2)*K(4)^2) - (K(1)^2)*g )/(l^2);
theta = atan(K(2)/K(1));
plot(t,theta);
end
и я напечатал,
[t, K] = ode45 (@pendulum_cartesian, [0,10], [0.1,0.00017,0.1,0])
но в тэте нет никакой ценности, и она ничего не составляет.
где проблема?
Ответы:
Предполагая, что ваши уравнения и ваш код правильный.
Вот что я использовал для функции:
Затем запустите с:
источник