daetools::reduceRedundanciesУпростите систему дифференциальных алгебраических уравнений первого порядка путем устранения уравнений, содержащих посторонние корни и переменных
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
[newEqs,newVars,solvedEquations,constantVariables,replacedVariables,otherEquations] := daetools::reduceRedundancies(eqs,vars)
[newEqs, newVars, solvedEquations, constantVariables, replacedVariables, otherEquations] := daetools::reduceRedundancies(eqs, vars) устраняет простые уравнения из системы дифференциальных алгебраических уравнений первого порядка eqs. Это возвращает список остающихся уравнений, список остающихся переменных и еще четыре списка, содержащие информацию об устраненных уравнениях и переменных. Для получения дополнительной информации смотрите Возвращаемые значения.
Используйте daetools::reduceRedundancies упростить систему пяти дифференциальных алгебраических уравнений в четырех переменных к системе двух уравнений в двух переменных.
Создайте следующую систему пяти дифференциальных алгебраических уравнений для четырех переменных состояния: x1(t), x2(t), x3(t), и x4(t). Эта система также содержит символьные параметры a1, a2, a3, a4BC, и параметр функционирует f(t) это не переменная состояния.
eqs := [a1*diff(x1(t),t)+a2*diff(x2(t),t) = b*x4(t),
a3*diff(x2(t),t)+a4*diff(x3(t),t) = c*x4(t),
x1(t) = 2*x2(t),
x4(t) = f(t),
f(t) = sin(t)];
vars := [x1(t), x2(t), x3(t), x4(t)]
![]()
Используйте daetools::reduceRedundancies устранить уравнения, содержащие посторонние корни и соответствующие переменные состояния.
[newEqs, newVars, solvedEquations, constantVariables, replacedVariables, otherEquations ] := daetools::reduceRedundancies(eqs, vars):
Отобразите новые уравнения и новые переменные.
newEqs; newVars

![]()
Отобразите уравнения что daetools::reduceRedundancies используемый, чтобы заменить те переменные состояния от vars это не появляется в newEqs.
solvedEquations
![]()
Отобразите те переменные состояния от vars тот daetools::reduceRedundancies замененный постоянными значениями.
constantVariables
![]()
Отобразите те переменные состояния от vars тот daetools::reduceRedundancies замененный выражениями в терминах других переменных.
replacedVariables
![]()
Отобразите те уравнения от eqs это не содержит ни одной из переменных состояния vars.
otherEquations
![]()
|
Список или вектор уравнений или выражений в переменных состояния |
|
Список или вектор идентификаторов или выражений, таких как |
Вложенный список, содержащий следующие списки:
Список новых уравнений
Список тех переменных, которые остаются в новой системе ДАУ
Список уравнений, которые не появляются в newEqs
Список уравнений [y1 = value1(t), y2 = value2(t),...] определение тех из переменных [y1,y2,...] (содержавшийся в исходных уравнениях eqs и исходный vars) это было устранено из eqs. В newEqs, они заменяются значениями.
Список уравнений [y1 = Y1(t,x,diff(x,t),...), y2 = Y2(t,x,diff(x,t),...),...] определение тех из переменных ]y1,y2,...] (в исходном vars) это было устранено в терминах переменных, которые находятся все еще в newVars. (Как правило, уравнения, включающие только две переменные, используются, чтобы устранить одну из переменных.)
Список уравнений, которые не содержат ни одной из переменных. Эти уравнения не появляются в newEqs.