What is the solution to this vector differential equation?

416 Views Asked by At

What is the solution to the matrix differential equation: $$ \frac{dx}{dt} = \boldsymbol{A}x(t) + \boldsymbol{B}u$$

Where, $ x(0) = x_0 $, $A_{n \times n}$ is a square matrix and $B_{n\times1}$ is $n\times1$ matrix

Assuming u is constant for the time interval $[0, T]$

Also please refer me to a resource where I can learn to solve this types of equations, because solving the equations were not covered in my linear algebra course.

3

There are 3 best solutions below

4
On BEST ANSWER

Define the change of variables $z(t):=\exp(-At)x(t)$. We then obtain

$$\dot{z}(t)=-Az(t)+\exp(-At)\dot{x}(t)$$

and thus

$$\dot{z}(t)=-Az(t)+\exp(-At)(Ax(t)+Bu(t))$$

which yields

$$\dot{z}(t)=\exp(-At)Bu(t),$$

where we have used the fact that $\exp(-At)A=A\exp(-At)$. Integrating from 0 to $t$, we obtain

$$z(t)=z(0)+\int_0^t\exp(-As)Bu(s)ds.$$

Since $z(0)=x_0$ and $x(t)=\exp(At)z(t)$, we obtain

$$x(t)=\exp(At)x_0+\int_0^t\exp(A(t-s))Bu(s)ds.$$

This is the general solution to your equation. Any textbook on (linear) dynamical systems or on state-space methods for control theory will address this.

When the input is constant and the matrix $A$ is invertible, we can arrive to the following expression by simply evaluating the integral

$$x(t)=\exp(At)x_0+A^{-1}(\exp(At)-I)Bu.$$

2
On

Often, matrix differential equations can be solved by "the obvious extension" of the scalar analogue of the equation. Here, let's think of $x(t)$ as a scalar-valued function of $t$, satisfying $x'=ax+b$ with scalars $a,b$. This is a "separable" differential equation, with heuristic for solving it being to move all the $x$'s to one side, and $t$'s to the other: ${dx\over ax+b}=dt$. Then integrate: ${1\over a}\log(ax+b)=t+C$ with constant of integration $C$. Rearranging to express $x$ in terms of $t$, $x=a^{-1}(Ce^{at}-b)$ (with a different arbitrary $C$).

This suggests that the matrix/vector version would be the same "but with capital letters" :), namely, that $x'=Ax+B$ should give $x=A^{-1}(e^{tA}C-B)$ [corrected earlier typo], with constant vector $C$ determined by the initial condition. Then we check that this does work. (And, indeed, even in the scalar case, if we're jittery about separating the $dx$ and $dt$, we can check that the heuristic does give a correct outcome.)

I'm out of touch with contemporary textbooks, but I'd wager that most introductory "differential equations" texts would treat such equations.

EDIT: Also, the ordinary differential equations of the form $u''+au'+u=0$ are well-studied (solutions of the "indicial/characteristic" equation $\lambda^2+a\lambda+b=0$ give two linearly independent solutions $e^{\lambda t}$... with exception for double root, etc.)

And, to find the "$C$" determined by the initial condition in the example at hand, set $t=0$ in the general solution, obtaining $x_o=A^{-1}(C-B)$. Solving for $C$, this is $C=Ax_o+B$, etc...

1
On

$ \def\A{A^{-1}} \def\E{e^{At}} \def\x{\dot x} \def\z{\dot z} \def\qiq{\quad\implies\quad} $Define the following vector variables $$\eqalign{ c &= \A Bu &\qiq Ac=Bu \\ z &= x+c &\qiq \z=\x\\ }$$ and substitute them into the differential equation $$\eqalign{ \x &= Ax + Bu \\ \z &= A(x+c) &= Az \\ }$$ Solve the latter ODE for $z$, then back-substitute to find the solution for $x$ $$\eqalign{ z &= \E z_o \\ (x+c) &= \E(x_0+c) \\ x &= \E x_0 + \left(\E-I\right)c \\ &= \E x_0 + \left(\E-I\right)\A Bu \\\\ }$$