In the question "Derivative of eigenvectors of a matrix with respect to its components", Liviu Nicolaescu has provided an answer valid for a real matrix. As outlined in the following, the same proof applies to Hermitian matrices, but it is incomplete.

Let us consider an Hermitian matrix $H$ ($H^\dagger = H$). Its eigenvectors satisfy

$$(H-\lambda_i) v_i = 0 \quad\text{with}\quad \lambda_i \in \mathbb{R} \quad\text{and}\quad v_j^\dagger v_i=\delta_{ij}.$$

From the derivative of the first relation one gets $$(H - \lambda_i) \dot v_i + (\dot H - \dot \lambda_i) v_i = 0 \quad\rightarrow\quad \dot \lambda_i = v_i^\dagger \dot H v_i.$$

Considering the eigendecomposition of $\dot v_i$ combined with the previous equation, one gets $$\dot v_i = \sum \alpha_{ij}v_j \quad\rightarrow\quad \alpha_{ij} = \frac{v_j^\dagger \dot H v_i}{\lambda_i-\lambda_j}\quad\text{for}\quad i\ne j.$$

From the derivative of $v_i^\dagger v_i=1$, one gets $Re(v_i^\dagger \dot v_i)=Re(\alpha_{ii})=0$.

So far everything is compatible with the case of real matrices, BUT what is the value of $Im(\alpha_{ii})$??

From numerical experiments I can surely state that $Im(\alpha_{ii})$ is non-zero and it has an order of magnitude compatible with the values of $\alpha_{ij}$. But I cannot find any way to derive its analytical expression.

  • $\begingroup$ Normalization does not determine $v_i$ uniquely, since you can always multiply by a complex number of modulus 1. If you want a unique eigenvector, you need to impose another constraint. $\endgroup$ Feb 28, 2021 at 13:47

1 Answer 1


This is first order perturbation theory, see Wikipedia. As explained there (search for "Since the overall phase is not determined in quantum mechanics"), you need to use the freedom you have to multiply the eigenstate by a complex phase vector, to ensure that $\alpha_{ii}$ is real and hence zero.

More precisely, the phase ambiguity is resolved by demanding that the inner product $\langle v_i^{(0)}|v_i^{(n)}\rangle$ of the zeroth order eigenstate $v_i^{(0)}$ and the $n$-th order correction $v_i^{(n)}$ is real for each $n$. To first order this implies $\langle v_i^{(0)}|v_i^{(1)}\rangle=0$, but in higher order this overlap is nonzero. For example, $\langle v_i^{(0)}|v_i^{(2)}\rangle=-\tfrac{1}{2}\langle v_i^{(1)}|v_i^{(1)}\rangle$. These notes gives a clear derivation.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.