Given real symmetric matrix $\mathbf{M}$ with eigenvalues $\lambda\_i$ and eigenvectors $\mathbf{v}\_i$, the derivative of an eigenvector is $$\dot{\mathbf{v}}\_i = \sum\_{j \ne i} \frac{\mathbf{v}\_j \mathbf{v}\_j^T}{\lambda\_i - \lambda\_j} \dot{\mathbf{M}} \mathbf{v}\_i$$


This is obviously not defined when $\lambda\_i$ is degenerate. However, even if $\mathbf{M}$ contains degenerate eigenvalues, it is still possible to evaluate $\dot{\mathbf{v}}\_i$ so long as $\lambda\_i$ is not itself degenerate.


My question is whether it is possible in this case to evaluate the second derivative, $\ddot{\mathbf{v}}\_i$. Applying the chain rule to the above expression for $\dot{\mathbf{v}}\_i$, I obtain $$\ddot{\mathbf{v}}\_i = \sum\_{j \ne i} \left[ \frac{\dot{\mathbf{v}}\_j \mathbf{v}\_j^T + \mathbf{v}\_j \dot{\mathbf{v}}\_j^T}{\lambda\_i - \lambda\_j} \dot{\mathbf{M}} \mathbf{v}\_i - \frac{\left(\dot{\lambda}\_i - \dot{\lambda}\_j\right)\mathbf{v}\_j \mathbf{v}\_j^T}{\left(\lambda\_i - \lambda\_j\right)^2} \dot{\mathbf{M}} \mathbf{v}\_i + \frac{\mathbf{v}\_j \mathbf{v}\_j^T}{\lambda\_i - \lambda\_j} \left(\ddot{\mathbf{M}} \mathbf{v}\_i + \dot{\mathbf{M}} \dot{\mathbf{v}}\_i\right)\right]$$


This suggests that $\ddot{\mathbf{v}}\_i$ is undefined if $\mathbf{M}$ has *any* degenerate eigenvalues. However, finite difference testing seem to suggest that $\ddot{\mathbf{v}}\_i$ is defined so long as $\lambda\_i$ is not degenerate.


Is $\ddot{\mathbf{v}}\_i$ actually defined in this case? If so, is there an analytical expression for it?


A related side-question: in cases where $\ddot{\mathbf{v}}\_i$ is unambiguously defined, is it necessarily orthogonal to $\mathbf{v}\_i$? I understand the reasoning behind $\dot{\mathbf{v}}^T \mathbf{v} = 0$, but I'm unsure whether the same logic holds when it comes to the second derivative.



Calculating second derivatives of eigenvectors of a matrix with some degenerate eigenvalues
If $\lambda\_i$ is simple, then the eigenvalue and eigenvector are as smooth as your matrix will allow. You start from $(M-\lambda\_i)v\_i=0$, $v\_i^Tv\_i=1$. Differentiating this once yields $(M-\lambda\_i)\dot v\_i+(\dot M-\dot\lambda\_i)v\_i=0$, $\dot v\_i^Tv\_i=0$. From this you calculate $\dot\lambda\_i=v\_i^T\dot Mv\_i$, and the expression for $\dot v\_i$ which you gave. Now take another derivative to obtain $(M-\lambda\_i)\ddot v\_i+2(\dot M-\dot\lambda\_i)\dot v\_i+(\ddot M-\ddot\lambda\_i)v\_i=0$, $\ddot v\_i^Tv\_i+\dot v\_i^T\dot v\_i=0$. You know everything except $\ddot v\_i$ and $\ddot\lambda\_i$. If you multiply the first equation with $v\_i^T$, you obtain $\ddot\lambda\_i$, and subsequently you can find $\ddot v\_i$. If $M$ is smooth enough, you can continue the same procedure indefinitely to obtain derivatives of any order. If $M$ is not symmetric, you can do something similar, but you need the eigenvector of the adjoint.


