Matlab: система четырех связанных од - PullRequest
0 голосов
/ 17 апреля 2019

Итак, я работаю над этой проблемой физики, где я сталкиваюсь с системой из четырех связанных дифференциальных уравнений, которые, похоже, не могут найти ответ на

TT0 = 0; %initial release angle Theta
l0 = 1; %initial left line length (in meters)
m = 1;
M = 3;
R = 0.3;
g = 9.8;
mu = 0.5;
syms t Ti(t) Tx(t) TT(t) l(t);
ode1 = (M*g) - Tx == -M*(diff(l,t,2)+R*diff(TT,t,2));
ode2 = m*g*sin(TT) - Ti == m*(R*diff(TT,t,2)-l*(diff(TT,t))^2 + diff(l,t,2));
ode3 = m*g*cos(TT) == m*(R*(diff(TT,t))^2 + 2*diff(l,t)*diff(TT,t) + l*diff(TT,t,2));
ode4 = Tx == Ti*exp(mu*(pi/2 + TT));
odes = [ode1; ode2; ode3; ode4];
conds = [TT(0) == TT0; l(0) == l0;Ti(0) == 0; Tx(0) == M*g];
D = dsolve(odes,conds);

Вот код, который я написал. Существует четыре уравнения и четыре неопределенных, но я получаю эту ошибку при запуске кода:

Error using mupadengine/feval (line 163)

Cannot reduce to the square system because the number of equations
differs from the number of indeterminates.   

Error in dsolve>mupadDsolve (line 332)

T = feval(symengine,'symobj::dsolve',sys,x,options);    

Error in dsolve (line 193)

sol = mupadDsolve(args, options);    

Error in Untitled (line 16)

D = dsolve(odes,conds)

Я искал в Интернете и несколько раз изменял свой код, но, похоже, он не работал. Я буду очень признателен за любую помощь.

...