Eigenvectors and the null function
    9 ビュー (過去 30 日間)
  
       古いコメントを表示
    
I have a matrix D and I want to find eigenvectors using the null-function and known eigenvalues:
D = [2    -1;
    -1     3];
eigs = eig(D);
q1 = null(D-eigs(1)*eye(2)) %first eigenvector
q2 = null(D-eigs(2)*eye(2)) %second eigenvector
The answer I get is 2×0 empty double matrix, however the eigenvectors should be
[q,l] = eig(D_tilde)
>> q =
   -0.8507   -0.5257
   -0.5257    0.8507
How do I get those values of eigenvectors?
0 件のコメント
回答 (1 件)
  Christine Tobler
    
 2020 年 4 月 7 日
        I'm getting those two eigenvectors when I copy your code into MATLAB:
>> D = [2    -1;
    -1     3];
eigs = eig(D);
q1 = null(D-eigs(1)*eye(2)) %first eigenvector
q2 = null(D-eigs(2)*eye(2))
q1 =
    0.8507
    0.5257
q2 =
    0.5257
   -0.8507   
But round-off errors can change between different versions and machines. Try passing a different tolerance as the second input to null, that should allow it to find an output x = null(M) even if M*x is larger than the default tolerance.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

