# Fit a system of linear ODEs from several experiments

Assume we are given several initial vectors $x^{(1)},\ldots,x^{(r)} \in \mathbb{R}^n$, where the dimension $n=6$ (in any event a number below 10) , and the number of initial vectors $r$ is in the range of 10000 to 20000. Also all entries of the vectors are real numbers between $0$ and $1$, if that helps.

We now consider the system of linear ODEs \begin{equation} \frac{d}{dt} x = A_p(t) \cdot x + b_p(t), \end{equation} with respective initial vectors $x^{(p)}$, where $A_p(t)$ is a real valued $n \times n$ matrix and $b_p(t)$ is a real $n$-dimensional vector. (For the sake of simplicity we can assume $A_p$ and $b_p$ to be constant.)

Now we assume that $(i,j)$-th coefficients of $A_p(t)$ are of the form \begin{equation} A_p(t)_{ij} = \sum_{k=1}^m v_{pk} \cdot h_{ijk}(t) + c_{ij}(t) \end{equation}

and the $i$-th coefficients $b_p(t)$ of the form \begin{equation} b_p(t)_{i} = \sum_{k=1}^m v_{pk} \cdot h_{ik}(t) + d_{i}(t). \end{equation} Here $m$ is a number around 1000. Hence, in both $A_p(t)_{ij}$ and $b_p(t)_{i}$ we do have components that are universial for that particular matrix/vector position over all $p$, namely $c_{ij}(t)$ and $d_{i}(t)$ and we do have components that are known and fixed for each individual $p$ and all positions in a matrix resp. vector, namely the real numbers $v_{pk}$, and we do have components to do depend on the position in the matrix but not on the $p$, and which are unknown, namely $h_{ijk}(t)$ resp $h_{ik}(t)$.

Now to each initial vector $x^{(p)}$ we are given a state vector $y^{(p)}$ after some time $t_0$. That means we have bunch of experiments where we know the start point $x^{(p)}$ and end point $y^{(p)}$ and the time distance $t_0$ and we know/assume that the dynamics is described by the system of linear ODEs from above.

Can we get out the $h_{ijk}(t), c_{ij}(t), h_{ik}(t)$ and $d_{i}(t)$ by combining all these experiments?

Here I am not interested just in a theoretic answer, but more in an applied one where a robust approach is outlined with which I can get out those functions resp. some values at the start or end or some intermediate values. (Also R/Matlab packages and commands, that do help me here, would be welcomed.)

It seems a case for system identification (e.g. http://es.mathworks.com/products/sysid/) but I do not get the dependence on $p$, does it stand both for the initial value and the time-varying parameters $A$, $b$?
If you have a set of observations $x(t_i)$ at instants $t_i$, at the end of the day you have a regression problem with all data, which can also be formulated in recurrent form.
• Miguel, many thanks for your comment! The $A_p$'s and $b_p$'s are each making up an individual system of linear ODEs. However, the $A_p$'s resp. the $b_p$'s are related to each other in many ways and have identical time dependent functions, but which are multiplied with different prefactors depending on p. Hope that clarifies things! Aug 17, 2015 at 14:12