In addition to solving linear systems (with the backslash operator), Matlab performs many other matrix computations. Among the most useful is the computation of eigenvalues and eigenvectors with the eig command. If A is a square matrix, then ev = eig(A) returns the eigenvalues of A in a vector, while [V,D] = eig(A) returns the spectral decomposition of A: V is a matrix whose columns are eigenvectors of A, while D is a diagonal matrix whose diagonal entries are eigenvalues. The equation AV = VD holds. If A is diagonalizable, then V is invertible, while if A is symmetric, then V is orthogonal ( ).
Here is an example:
>> A = [1 3 2;4 5 6;7 8 9] A = 1 3 2 4 5 6 7 8 9 >> eig(A) ans = 15.9743 -0.4871 + 0.5711i -0.4871 - 0.5711i >> [V,D] = eig(A) V = -0.2155 0.0683 + 0.7215i 0.0683 - 0.7215i -0.5277 -0.3613 - 0.0027i -0.3613 + 0.0027i -0.8216 0.2851 - 0.5129i 0.2851 + 0.5129i D = 15.9743 0 0 0 -0.4871 + 0.5711i 0 0 0 -0.4871 - 0.5711i >> A*V-V*D ans = 1.0e-14 * -0.0888 0.0777 - 0.1998i 0.0777 + 0.1998i 0 -0.0583 + 0.0666i -0.0583 - 0.0666i 0 -0.0555 + 0.2387i -0.0555 - 0.2387i
There are many other matrix functions in Matlab, many of them related to matrix factorizations. Some of the most useful are: