Implicit Euler integration scheme for DAEs

differential algebraic equationsnumerical methods

Consider following DAE

\begin{equation}
\begin{bmatrix}
a_{11} & a_{12} & a_{13} & 0\\
a_{21} & a_{22} & a_{23} & 0\\
0 & 0 & 0 & 0
\end{bmatrix}\frac{\mathrm{d}}{\mathrm{d}t}
\begin{bmatrix}
y_{1}\\
y_2 \\
y_3 \\
y_4
\end{bmatrix}
+
\begin{bmatrix}
b_{11} & b_{12} & b_{13} & b_{14}\\
b_{21} & b_{22} & b_{23} & b_{24}\\
b_{31} & b_{32} & b_{33} & b_{34}\\
b_{41} & b_{42} & b_{43} & b_{44}\\
\end{bmatrix}
\begin{bmatrix}
y_{1}\\
y_2 \\
y_3 \\
y_4
\end{bmatrix}
=
\begin{bmatrix}
\gamma_{1}(y_{1},y_2,y_3,y_4)\\
\gamma_2(y_{1},y_2,y_3,y_4) \\
\gamma_3(y_{1},y_2,y_3,y_4) \\
\gamma_4(y_{1},y_2,y_3,y_4)
\end{bmatrix}
\end{equation}

RHS vector $\gamma$ is composed from possibly nonlinear functions.
How can I setup implicit Euler method scheme for this problem? The part which confuses me is the algebraic one. Can you rewrite it in terms of
\begin{equation}
y_i^{k + 1} = y^k + \Delta t f(t^{k+1},y^{k+1})
\end{equation}

How do I incorporate those algebraic constraints in scheme such that I can call some NR solver for each time step $k$?

Best Answer

I believe the first matrix misses a row.

Anyway, applying implicit Euler for ODE and for DAE is straightforward: just take everything except time derivative from the $k+1$-st time step and replace $\frac{dy_i}{dt}$ with $\frac{y^{k+1}_i - y^k_i}{\Delta t}$.

In matrix form you DAE is $$ A \frac{d\mathbf y}{dt} + B \mathbf y = \mathbf \Gamma(\mathbf y) $$ with matrix $A$ being singular. The corresponding implicit Euler would be $$ A \frac{\mathbf y^{k+1} - \mathbf y^k}{\Delta t} + B \mathbf y^{k+1} = \mathbf \Gamma(\mathbf y^{k+1}). $$ Separating knowns from unknowns gives a nonlinear system of equations $$ A \mathbf y^{k+1} + \Delta t B \mathbf y^{k+1} - \Delta t \mathbf \Gamma(\mathbf y^{k+1}) = A \mathbf y^k. $$ You may now apply Newton-Rhapson to this system and hope that the jacobian matrix $$ A + \Delta t B - \Delta t \frac{\partial \mathbf \Gamma}{\partial \mathbf y} $$ is not singular in the neighborhood of your solution. This depends mainly on $\mathbf \Gamma$ so little may be said in advance.