Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

MATLAB Problems

  1. Oct 21, 2007 #1
    This is a MATLAB question. I am trying to find the eigenvalues of a matrix with both real and complex numbers. This is my session.

    >> A=[1/sqrt(2),i/sqrt(2),0; -1/sqrt(2),i/sqrt(2),0; 0,0,1]

    A =

    0.7071, 0 + 0.7071i, 0
    -0.7071, 0 + 0.7071i, 0
    0, 0, 1.0000

    >> eig(A)

    ans =

    0.9659 - 0.2588i
    -0.2588 + 0.9659i
    1.0000

    However, matrix A is unitary, so [tex]|\lambda|[/tex] should equal 1. This is true for the third eigenvalue, but not for the other two. I even noticed that MATLAB fails to confirm A is unitary:

    A =

    0.7071, 0 + 0.7071i, 0
    -0.7071, 0 + 0.7071i, 0
    0, 0, 1.0000

    >> B=[1/sqrt(2),-1/sqrt(2),0; i/sqrt(2),i/sqrt(2),0;0,0,1]

    B =

    0.7071, -0.7071, 0
    0 + 0.7071i, 0 + 0.7071i, 0
    0, 0, 1.0000

    >> A*B

    ans =

    0, -1, 0
    -1, 0, 0
    0 , 0, 1

    Why is MATLAB giving me incorrect answers? It was even doing this for me yesterday when I was dealing with real matricies. It was giving me eigenvalues with imaginary components when they were, in fact, all real. What's the deal?
     
  2. jcsd
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Can you help with the solution or looking for help too?
Draft saved Draft deleted



Similar Discussions: MATLAB Problems
  1. Matlab problem (Replies: 4)

  2. Matlab problem (Replies: 0)

  3. MATLAB problem (Replies: 5)

  4. MATLAB problem (Replies: 1)

Loading...