我正在使用称为'dsolve'的MATLAB工具来解决ODE,但由于我有很多疑问,所以无法解决。就像我的情况一样,我只需要第2个方程,但是我有4个。问题是如何使用符号工具将其删除。
odequations = [diff(h(t), t, t) == (26*h(t))/25
(11683563954355*theta(t))/1099511627776;
diff(theta(t), t, t) == (4296857747895619*theta(t))/562949953421312 -
(400*h(t))/1043;
0 == 0;
0 == 0]
我尝试过简化(折旧),但没有成功。
我的错误消息如下所示。
Error using mupadengine/feval (line 187)
Invalid initial conditions.
Error in dsolve>mupadDsolve (line 340)
T = feval(symengine,'symobj::dsolve',sys,x,options);
Error in dsolve (line 194)
sol = mupadDsolve(args, options);
您可以使用isAlways
删除多余的方程式。
isAlways
>> syms a
>> eqs = [a == 10;
a == a;
0 == 0];
>> eqs(isAlways(eqs)) = []
eqs =
a == 10
将对非冗余的方程式发出警告,您可以通过调用以下方法来加以抑制:
isAlways