0

When using eig function in Matlab, it seems that this function has already normalize the values of the eigenvalues. Do we need to write some lines of code to normalize the eigenvalues after using the eig function.

Miriam Farber
  • 18,986
  • 14
  • 61
  • 76
kgk
  • 649
  • 1
  • 10
  • 23

2 Answers2

3

The function eig in MATLAB normalizes the eigenvectors (not the eigenvalues).

See the following from the documentation:

[V,D] = eig(A) returns matrix V, whose columns are the right eigenvectors of A such that AV = VD. The eigenvectors in V are normalized so that the 2-norm of each is 1.

Miriam Farber
  • 18,986
  • 14
  • 61
  • 76
1

Eigenvectors can vary by a scalar, so a computation algorithm has to choose a particular scaled value of an eigenvector to show you. eig chooses 2-norm = 1. Just look at the eigenvector definition to see why: AV=VD. V shows up on both sides, so you can multiple V by anything without affecting the equation.

Eigenvalues do not vary. Look again at AV=VD. D is only on one side, so it can't be scaled.

Peter
  • 14,559
  • 35
  • 55