Numerical method for solving linear matrix differential equation

433 Views Asked by At

What numerical methods for solving differential equations are particularly well suited for solving matrix differential equations of the form

$$ \frac{dF}{dt} = A(t)F(t) ; \ \ \ F(0)= v $$

where function $F : \mathbb{R} \to \mathbb{R}^n$ is differentiable and function $A : \mathbb{R} \to \mathbb{R}^{n \times n}$ is continuous?

1

There are 1 best solutions below

0
On BEST ANSWER

As mentioned in the comment there is a lot of methods for solving such system. Depending on the information on $A(t)$ you have (is it a symmetric non-negative matrix ? a symplectic one ? etc.) and the accuracy you need the answer may vary.

For example the simplest method is to replace the time derivative by $(F(t_{n+1})-F(t_n))/\Delta t$.

This leads to two different discretization

  • The explicit Euler method $$\frac{F(t_{n+1})-F(t_n)}{\Delta t}=A(t_n)F(t_n)$$ i.e $$F(t_{n+1})=(Id +\Delta t A(t_n) ) F(t_n).$$

  • The implicit Euler method $$\frac{F(t_{n+1})-F(t_n)}{\Delta t}=A(t_{n+1})F(t_{n+1})$$ i.e $F(t_{n+1})$ is solution of the system $$(Id -\Delta t A(t_{n+1}) ) F(t_{n+1})= F(t_n).$$

The explicit method is straightforward but can be unstable when the implicit one is much more stable but require to solve a linear system at each step. So depending on the context you may choose one or the other.