reduceDifferentialOrder
Reduces a system of higher-order differential equations to first order.
Category: Mathematics > Equation Solving
Syntax
[eqs1, vars1] = reduceDifferentialOrder(eqs, vars)
Returns equivalent first-order equations and the enlarged variable list.
Description
For each derivative of order two or more, a new variable is introduced for the next lower derivative and the equations are rewritten with it. For y'' + y = 0 the output has the equations Dyt' + y = 0 and Dyt - y' = 0. This is the first step before massMatrixForm or daeFunction.
Input arguments
eqs- Vector of symbolic differential equations.
vars- Vector of the unknown symbolic functions.
Output arguments
eqs1- System of first-order equations.
vars1- Original variables plus the new ones, named like
Dyt(t), that stand for derivatives.
Example
Second-order equation
syms y(t)
[eq1, vars1] = reduceDifferentialOrder(diff(y,t,2) + y == 0, y)
Output
eq1 =
y(t) + diff(Dyt(t), t)
Dyt(t) - diff(y(t), t)
vars1 =
y(t)
Dyt(t)