Derivative of eigenvectors of a symmetric matrix-valued function

2.9k Views Asked by At

Given a real symmetric $3\times3$ matrix $\mathsf{A}_{ij}$ and its derivative (w.r.t. some parameter, let's call it time) $\dot{\mathsf{A}}_{ij}$, I want to measure/obtain the rotation (rate and direction) of the eigenvectors (the eigenvectors of a real symmetric matrix form an orthonormal matrix). How can this be done?

Edit Since the eigenvectors of a real symmetric matrix are mutually orthogonal, the change of the eigenvectors can only be an overall rotation. An infinitesimal rotation is uniquely determined by the rate $\boldsymbol{\omega}$ such that $\dot{\boldsymbol{x}}=\boldsymbol{\omega}\times\boldsymbol{x}$ for any vector $\boldsymbol{x}$. My question then becomes how to obtain $\boldsymbol{\omega}$.

4

There are 4 best solutions below

0
On BEST ANSWER

The symmetric 3x3 matrix has 3 orthonormal eigenvectors $\boldsymbol{e}_i$ with associated eigenvalues $\lambda_i$ and can be written $$ \boldsymbol{\mathsf{A}} = \sum_i \lambda_i \boldsymbol{e}_i \otimes \boldsymbol{e}_i, $$ where $\otimes$ denotes the outer (tensor) product. The triad of eigenvectors rotates as $\dot{\boldsymbol{e}}_i = \boldsymbol{\omega}\times\boldsymbol{e}_i$. Differentiating the above expression for $\boldsymbol{\mathsf{A}}$ we find therefore $$ \dot{\boldsymbol{\mathsf{A}}} = \sum_i \dot{\lambda}_i \boldsymbol{e}_i \otimes\boldsymbol{e}_i + \sum_{\mathrm{cyclic}} \boldsymbol{\omega}\cdot\boldsymbol{e}_1(\lambda_2-\lambda_3)(\boldsymbol{e}_2 \otimes\boldsymbol{e}_3 + \boldsymbol{e}_3 \otimes\boldsymbol{e}_2). $$ Multiplying from left and right by $\boldsymbol{e}_i$ and $\boldsymbol{e}_j$ and exploiting their orthonormality, we find $$ \dot{\lambda}_i = \boldsymbol{e}_i\cdot\dot{\boldsymbol{\mathsf{A}}}\cdot\boldsymbol{e}_i \qquad\text{and}\qquad \boldsymbol{\omega} = \sum_{\mathrm{cyclic}} \frac{\boldsymbol{e}_2\cdot\dot{\boldsymbol{\mathsf{A}}}\cdot\boldsymbol{e}_3}{\lambda_2-\lambda_3}\boldsymbol{e}_1. $$

0
On

Suppose that a given (differentiable) matrix-valued function $\mathrm A : \mathbb R \to \mbox{Sym}_n(\mathbb R)$, where $\mbox{Sym}_n(\mathbb R)$ denotes the set of $n \times n$ real symmetric matrices, does have a time-varying spectral decomposition

$$\mathrm A (t) = \mathrm V (t) \, \Lambda (t) \,\mathrm V^\top (t)$$

where the columns of orthogonal matrix $\mathrm V (t)$ and the diagonal entries of diagonal matrix $\Lambda (t)$ at a given $t$ are the (unit) eigenvectors and eigenvalues of $\mathrm A (t)$, respectively.

Differentiating with respect to time, we obtain a nonlinear matrix differential equation in $\rm V$ and $\Lambda$

$$\dot{\mathrm A} (t) = \dot{\mathrm V} (t) \, \Lambda (t) \,\mathrm V^\top (t) + \mathrm V (t) \, \dot\Lambda (t) \,\mathrm V^\top (t) + \mathrm V (t) \, \Lambda (t) \,\dot{\mathrm V}^\top (t)$$

where $\dot{\mathrm A}$ serves as known input. From $\mathrm A (0)$, we obtain initial conditions $\mathrm V (0)$ and $\Lambda (0)$. We have:

  • $\binom{n+1}{2}$ ordinary differential equations.

  • $n^2$ (algebraic) quadratic equations (to ensure that $\mathrm V$ stays orthogonal).

  • $n^2 + n = (n+1) n = 2\binom{n+1}{2}$ functions to determine.

Unfortunately, I do not know how to solve this matrix ODE. In fact, I am not even sure that a time-varying spectral decomposition of a symmetric matrix-valued function is actually legal.

4
On

We start, as usual, with the equality $Av=\lambda v$ where $v^Tv=1$ and $A$ is a $C^1$ function. It is absolutely necessary that the considered eigenvalue $\lambda$ is simple - then $\lambda,v$ are $C^1$ function- otherwise, $v$ may be non-continuous.

Proposition. Under the above hypothesis, $\lambda',v'$ are functions of $A,A',\lambda,v$. More precisely,

$\lambda'=v^TA'v,v'=w-(v^Tw)v$ where $w\in(A-\lambda I)^{-1}((v^TA'v)v-A'v)$.

Proof. We obtain $A'v+Av'=\lambda'v+\lambda v',v'^Tv=v^Tv'=0,v^TA=\lambda v^T,v^TAv'=0$.

Moreover, $v^TA'+v'^TA=\lambda'v^T+\lambda v'^T$ implies $v^TA'v=\lambda'$.

$A'v+Av'=(v^TA'v)v+\lambda v'$ implies $(A-\lambda I)v'=(v^TA'v)v-A'v$ and, finally, $v'=w+kv$, where $w\in (A-\lambda I)^{-1}((v^TA'v)v-A'v)$. It remains to calculate $k$; $v^Tv'=v^Tw+kv^Tv$ implies $k=-v^Tw$ and we are done.

0
On

In order to simplify the algebra, let me first without loss of generality rotate into a coordinate frame where the eigenvectors are the Cartesian basis, $$ \boldsymbol{\mathsf{A}} = \begin{pmatrix} \lambda_1 & 0 & 0 \\ 0 & \lambda_2 & 0 \\ 0 & 0 & \lambda_3 \end{pmatrix}, \quad\text{and}\quad \dot{\boldsymbol{\mathsf{A}}} = \begin{pmatrix} \dot\lambda_1 & a & b \\ a & \dot\lambda_2 & c \\ b & c & \dot\lambda_3 \end{pmatrix} $$ with some coefficients $a$, $b$, and $c$. The above relation for $\dot{\boldsymbol{\mathsf{A}}}$ follows from loup blanc's $\dot\lambda=\boldsymbol{v}^T\cdot\dot{\boldsymbol{\mathsf{A}}}\cdot\boldsymbol{v}$. We now express the derivatives of the eigenvectors as rotation, i.e. $\dot{\boldsymbol{v}}=\boldsymbol{\omega}\times\boldsymbol{v}$, giving $$ \dot{\boldsymbol{v}}_1 = \begin{pmatrix} 0 \\ \omega_z \\ -\omega_y \end{pmatrix},\quad \dot{\boldsymbol{v}}_2 = \begin{pmatrix} -\omega_z \\ 0 \\ \omega_x \end{pmatrix},\quad \dot{\boldsymbol{v}}_3 = \begin{pmatrix} \omega_y \\ -\omega_x \\ 0 \end{pmatrix}. $$ Inserting these into loup blanc's relation $ (\boldsymbol{\mathsf{A}}-\lambda\boldsymbol{\mathsf{1}})\cdot\dot{\boldsymbol{v}} = \dot\lambda \boldsymbol{v} - \dot{\boldsymbol{\mathsf{A}}}\cdot \boldsymbol{v} $ we see that each eigenvalue determines the components of $\boldsymbol{\omega}$ perpendicular to its eigenvector and that $\dot\lambda$ drops out of the relation. We find $$ \dot{\boldsymbol{\mathsf{A}}} = \begin{pmatrix} \dot\lambda_1 & \omega_z(\lambda_1-\lambda_2) & \omega_y(\lambda_3-\lambda_1) \\ \omega_z(\lambda_1-\lambda_2) & \dot\lambda_2 & \omega_x(\lambda_2-\lambda_3) \\ \omega_y(\lambda_3-\lambda_1) & \omega_x(\lambda_2-\lambda_3) & \dot\lambda_3 \end{pmatrix}. $$ Finally, generalizing for a general coordinate frame, we have $$ \boldsymbol{\omega} = \frac{\boldsymbol{v}_2^T\cdot\dot{\boldsymbol{\mathsf{A}}}\cdot\boldsymbol{v}_3}{\lambda_2-\lambda_3}\boldsymbol{v}_1 + \frac{\boldsymbol{v}_3^T\cdot\dot{\boldsymbol{\mathsf{A}}}\cdot\boldsymbol{v}_1}{\lambda_3-\lambda_1}\boldsymbol{v}_2 + \frac{\boldsymbol{v}_1^T\cdot\dot{\boldsymbol{\mathsf{A}}}\cdot\boldsymbol{v}_2}{\lambda_1-\lambda_2}\boldsymbol{v}_3 . $$ In particular, as pointed out by loup blanc, the derivatives of the eigenvectors, i.e. $\boldsymbol{\omega}$, are only well-defined if the eigenvalues are distinct. However, unlike what loup blanc has claimed in a comment, the values for $\omega_i$ obtained from different eigenvalues agree (this makes sense, since $\dot{\boldsymbol{\mathsf{A}}}$ contains six independent numbers, the same as the number of unknowns $\dot\lambda_i$ and $\boldsymbol{\omega}$).