When the matrix is symmetric and omega is not real, omega and its conjugate (= inverse) give the same eigenvalue, so you have a 2-dimensional eigenspace. R chooses a real basis of this, which is perfectly fine since it's not looking for circulant structure.
For example, > m [,1] [,2] [,3] [,4] [,5] [1,] 1 2 3 3 2 [2,] 2 1 2 3 3 [3,] 3 2 1 2 3 [4,] 3 3 2 1 2 [5,] 2 3 3 2 1 > eigen(m) $values [1] 11.000000 -0.381966 -0.381966 -2.618034 -2.618034 $vectors [,1] [,2] [,3] [,4] [,5] [1,] 0.4472136 0.000000 -0.6324555 0.6324555 0.000000 [2,] 0.4472136 0.371748 0.5116673 0.1954395 0.601501 [3,] 0.4472136 -0.601501 -0.1954395 -0.5116673 0.371748 [4,] 0.4472136 0.601501 -0.1954395 -0.5116673 -0.371748 [5,] 0.4472136 -0.371748 0.5116673 0.1954395 -0.601501 and you can match these columns up with the "canonical" eigenvectors exp(2*pi*1i*(0:4)*j/5) for j = 0,1,2,3,4. E.g., > Im(exp(2*pi*1i*(0:4)*3/5)) [1] 0.0000000 -0.5877853 0.9510565 -0.9510565 0.5877853 which can be seen to be a scalar multiple of column 2. Reid Huntsinger Reid Huntsinger -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Huntsinger, Reid Sent: Monday, May 02, 2005 10:43 AM To: 'Globe Trotter'; Rolf Turner Cc: r-help@stat.math.ethz.ch Subject: RE: [R] eigenvalues of a circulant matrix It's hard to argue against the fact that a real symmetric matrix has real eigenvalues. The eigenvalues of the circulant matrix with first row v are *polynomials* (not the roots of 1 themselves, unless as Rolf suggested you start with a vector with all zeros except one 1) in the roots of 1, with coefficients equal to the entries in v. This is the finite Fourier transform of v, by the way, and takes real values when the coefficients are real and symmetric, ie when the matrix is symmetric. Reid Huntsinger -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Globe Trotter Sent: Monday, May 02, 2005 10:23 AM To: Rolf Turner Cc: r-help@stat.math.ethz.ch Subject: Re: [R] eigenvalues of a circulant matrix --- Rolf Turner <[EMAIL PROTECTED]> wrote: > I just Googled around a bit and found definitions of Toeplitz and > circulant matrices as follows: > > A Toeplitz matrix is any n x n matrix with values constant along each > (top-left to lower-right) diagonal. matrix has the form > > a_0 a_1 . . . . ... a_{n-1} > a_{-1} a_0 a_1 ... a_{n-2} > a_{-2} a_{-1} a_0 a_1 ... . > . . . . . . > . . . . . . > . . . . . . > a_{-(n-1)} a_{-(n-2)} ... a_1 a_0 > > (A Toeplitz matrix ***may*** be symmetric.) Agreed. As may a circulant matrix if a_i = a_{p-i+2} > > A circulant matrix is an n x n matrix whose rows are composed of > cyclically shifted versions of a length-n vector. For example, the > circulant matrix on the vector (1, 2, 3, 4) is > > 4 1 2 3 > 3 4 1 2 > 2 3 4 1 > 1 2 3 4 > > So circulant matrices are a special case of Toeplitz matrices. > However a circulant matrix cannot be symmetric. > > The eigenvalues of the forgoing circulant matrix are 10, 2 + 2i, > 2 - 2i, and 2 --- certainly not roots of unity. The eigenvalues are 4+1*omega+2*omega^2+3*omega^3. omega=cos(2*pi*k/4)+isin(2*pi*k/4) as k ranges over 1, 2, 3, 4, so the above holds. Bellman may have > been talking about the particular (important) case of a circulant > matrix where the vector from which it is constructed is a canonical > basis vector e_i with a 1 in the i-th slot and zeroes elsewhere. No, that is not true: his result can be verified for any circulant matrix, directly. > Such a matrix is in fact a unitary matrix (operator), whence its > spectrum is contained in the unit circle; its eigenvalues are indeed > n-th roots of unity. > > Such matrices are related to the unilateral shift operator on > Hilbert space (which is the ``primordial'' Toeplitz operator). > It arises as multiplication by z on H^2 --- the ``analytic'' > elements of L^2 of the unit circle. > > On (infinite dimensional) Hilbert space the unilateral shift > looks like > > 0 0 0 0 0 ... > 1 0 0 0 0 ... > 0 1 0 0 0 ... > 0 0 1 0 0 ... > . . . . . ... > . . . . . ... > > which maps e_0 to e_1, e_1 to e_2, e_2 to e_3, ... on and on > forever. On (say) 4 dimensional space we can have a unilateral > shift operator/matrix > > 0 0 0 0 > 1 0 0 0 > 0 1 0 0 > 0 0 1 0 > > but its range is a 3 dimensional subspace (e_4 gets ``killed''). > > The ``corresponding'' circulant matrix is > > 0 0 0 1 > 1 0 0 0 > 0 1 0 0 > 0 0 1 0 > > which is an onto mapping --- e_4 gets sent back to e_1. > > I hope this clears up some of the confusion. > > cheers, > > Rolf Turner > [EMAIL PROTECTED] Many thanks and best wishes! ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html ---------------------------------------------------------------------------- -- Notice: This e-mail message, together with any attachments,...{{dropped}} ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html