dsolve выдает ошибку при попытке решить систему ODE

syms X1(t) X2(t) X3(t) X4(t) X5(t) X6(t) X7(t) X8(t) X9(t) X10(t)
X = [X1; X2; X3; X4; X5; X6; X7; X8; X9; X10];
X0 = X_0;
eqn = diff(X) == -1*A*X;
[X1Sol(t) X2Sol(t) X3Sol(t) X4Sol(t) X5Sol(t) X6Sol(t) X7Sol(t) X8Sol(t) X9Sol(t) X10Sol(t) ] = dsolve(eqn, X0);

Где A - матрица 10x10, а X_0 - вектор-столбец с 10 элементами, значения которых вычисляются заранее. Когда я компилирую этот код, Matlab выдает мне следующую ошибку:

Ошибка при использовании mupadengine/feval (строка 157) Ошибка MuPAD: Ошибка: неверные уравнения. [Ода:: новый]

Ошибка в dsolve>mupadDsolve (строка 325) T = feval(symengine,'symobj::dsolve',sys,x,options);

Ошибка в dsolve (строка 186) sol = mupadDsolve(аргументы, параметры);

Может кто-нибудь сказать мне, что происходит и что такое исправление? Я использую Matlab R2012a.

1 ответ

Я не могу найти ошибку, когда включить X_0 а также A в sysms

syms X1(t) X2(t) X3(t) X4(t) X5(t) X6(t) X7(t) X8(t) X9(t) X10(t) X_0 A
X = [X1; X2; X3; X4; X5; X6; X7; X8; X9; X10];
X0 = X_0;
eqn = diff(X) == -1*A*X;
[X1Sol(t) X2Sol(t) X3Sol(t) X4Sol(t) X5Sol(t) X6Sol(t) X7Sol(t) X8Sol(t) X9Sol(t) X10Sol(t) ] = dsolve(eqn,X0)
Другие вопросы по тегам