daetools::isLowIndexDAEПроверяйте, ниже ли дифференциальный индекс системных уравнений, чем 2
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
daetools::isLowIndexDAE(eqs,vars)
daetools::isLowIndexDAE(eqs,vars) проверки, если система eqs из полулинейных дифференциальных алгебраических уравнений первого порядка (ДАУ) имеет низкий дифференциальный индекс. Если дифференциальным индексом системы является 0 или 1, isLowIndexDAE возвращает TRUE. Если дифференциальный индекс eqs выше, чем 1, затем daetools::isLowIndexDAE возвращает FALSE.
Количество уравнений eqs должен совпадать с количеством переменных vars.
Проверяйте, имеет ли система полулинейных ДАУ первого порядка минимум (0 или 1Дифференциальный индекс.
Создайте следующую систему двух дифференциальных алгебраических уравнений. Здесь, x(t) и y(t) переменные состояния системы.
eqs := [diff(x(t),t) = x(t) + y(t), x(t)^2 + y(t)^2 = 1]; vars := [x(t), y(t)]

![]()
Используйте daetools::isLowIndexDAE проверять дифференциальный порядок системы. Дифференциальным порядком этой системы является 1. Для систем индекса 0 и 1, daetools::isLowIndexDAE возвращает TRUE.
daetools::isLowIndexDAE(eqs, vars)
![]()
Проверяйте, имеет ли следующая система ДАУ низкий или высокий дифференциальный индекс. Если индекс выше, чем 1, затем используйте daetools::reduceDAEIndex уменьшать его.
Создайте следующую систему двух дифференциальных алгебраических уравнений. Здесь, x(t)yt , и z(t) переменные состояния системы.
eqs := [diff(x(t),t) = x(t) + z(t),
diff(y(t),t) = f(t),
x(t) = y(t)];
vars := [x(t), y(t), z(t)]
![]()
Используйте daetools::isLowIndexDAE проверять дифференциальный индекс системы. Для этой системы, daetools::isLowIndexDAE возвращает FALSE. Это означает, что дифференциальным индексом системы является 2 или выше.
daetools::isLowIndexDAE(eqs, vars)
![]()
Используйте daetools::reduceDAEIndex переписать систему так, чтобы дифференциальным индексом был 1. Новая система имеет одну дополнительную переменную состояния, Dyt(t).
[newEqs, newVars, transform, oldIndex] :=
daetools::reduceDAEIndex(eqs, vars):
newEqs;
newVars![]()
![]()
daetools::reduceDAEIndex также возвращает дифференциальный индекс исходной системы.
oldIndex
![]()
Проверяйте, ниже ли дифференциальный порядок новой системы, чем 2.
daetools::isLowIndexDAE(newEqs, newVars)
![]()
|
Список или вектор уравнений или выражений в переменных состояния |
|
Список или вектор идентификаторов или выражений, таких как |
TRUE или FALSE.