isLowIndexDAE

Tests whether a DAE system has differential index 0 or 1.

Category: Mathematics > Equation Solving

Syntax

tf = isLowIndexDAE(eqs, vars)

Returns true if the system is of low index and can be solved numerically as is.

Description

Numerical DAE solvers such as ode15s and ode15i cope with index 0 or 1, but not with higher indices. A false result means the system must first be reduced, for instance with reduceDAEIndex, before it is converted with daeFunction or massMatrixForm.

Input arguments

eqs
Vector of symbolic equations.
vars
Vector of the unknown symbolic functions.

Output arguments

tf
Logical scalar.

Example

A semi-explicit system of index 1

syms x(t) y(t)
eqs = [diff(x,t) == y, x + y == 1];
isLowIndexDAE(eqs, [x y])
Output
ans = logical
   1

Notes

reduceDAEIndex is not yet implemented in MatLivre.

See also

daeFunction massMatrixForm incidenceMatrix reduceDifferentialOrder