When eigenvectors are real, they are normalized to 1. How are complex eigenvectors normalized?


If there is at least one floating point number (real or complex) somewhere in the matrix A: Yes, vectors are normalized (with respect to the standard Hermitian inner product #1.Conjugate[#2] &). They are also orthogonalized if eigenspaces of A are known to be orthogonal, e.g. when a represents a normal operator.

With only exact or symbolic entries: No.

The reason for this is that (ortho)normalization is rather inexpensive when performed in floating point numbers, but with entirely exact or symbolic expressions, it has the tendency to bloat the expressions so much that they cannot be handled anymore.

  • $\begingroup$ You misunderstood me. In the case of real eigenvectors, we have floating point numbers, and in case of complex eigenvectors, we also have floating point numbers (by complex, I mean not complicated, but floating point number which has real and imaginary parts). $\endgroup$ – user1765636 Aug 4 '18 at 20:51
  • $\begingroup$ I must admit that I do not understand your symbolism but the wording "orthonormalize" means that you somehow can make those eigenvectors to be orthogonal to one another and in general, the eigenvectors are not orthogonal to each other. The word normalization means that each eigenvector is multiplied by specific number, which in case of real eigenvector is square root of the sum of squares of its component. Please explain in detail your terminology. $\endgroup$ – user1765636 Aug 5 '18 at 21:07
  • $\begingroup$ I don't get what you mean. The norm induced by the Hermitian inner product #1.Conjugate[#2] & is Sqrt[Abs[Conjugate[#].#]] &. This is identical to Norm for complex vectors. And floating point eigenvectors are normalized with respect to precisely this norm. $\endgroup$ – Henrik Schumacher Aug 5 '18 at 22:01
  • $\begingroup$ In order to make everything clear, here is example a = {{2. + 3. I, 1. - 2. I, 4.}, {4. - 3. I, 3. + 1.5 I, -2. I}, {5. + 3. I, 6. + 4. I, 1.7 - 2. I}}; b = Eigenvectors[a] {{0.397675\[VeryThinSpace]+ 0.0415786 I, 0.397957\[VeryThinSpace]- 0.304432 I, 0.767514\[VeryThinSpace]+ 0. I}, {0.701712\[VeryThinSpace]+ 0. I, -0.663209 - 0.157879 I, -0.202508 + 0.0426597 I}, {-0.30459 + 0.404155 I, -0.0862046 - 0.116806 I, 0.850181\[VeryThinSpace]+ 0. I}} Please show me on this example what normalization took place. $\endgroup$ – user1765636 Aug 6 '18 at 21:05
  • $\begingroup$ Norm /@ b returns {1., 1., 1.}. Note that eigenvectors are returned as rows not as columns. $\endgroup$ – Henrik Schumacher Aug 6 '18 at 21:14

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.