0

I need to calculate an approximate value of the Von Neumann entropy

\begin{equation} S = - \text{Tr} ( \rho \log_2 \rho ) \end{equation}

for a variable $N\times N$ matrix $\rho$ very often. My last approach was to diagonalize \begin{equation} \rho = S \text{diag}(\lambda_1, \dots, \lambda_N) S^{-1} \end{equation}

excatly by calculating the eigenvalues, then using the QR-algorithm to calculate $S$ and finally applying the rule \begin{equation} \log_2 \rho = S \text{diag}(\log_2(\lambda_1), \dots, \log_2(\lambda_N))S^{-1} \end{equation}

which consumes far too much cpu time. Does anyone know a method, how to approximately diagonalize $\rho$ or at least how to approximatel calculate $S$ numerically?

1 Answers1

0

If $\rho$ is symmetric (usually the case, I believe?) then it suffices to find the eigenvalues of $\rho$. Then $$S= -\sum_i \lambda_i \log_2 \lambda_i$$

H. H. Rugh
  • 35,236