Why x*V is different by the V*D when I use the eig function?

조회 수: 1 (최근 30일)
Traian Preda
Traian Preda 2014년 9월 11일
댓글: Matt J 2014년 9월 11일
Hi,
I have the following x matrix. And I try to get the right eigenvectors of it using eig? It seems that when I do the product x*V=V*D the results are different. Have this to do with the fact that my matrix is not symmetric? In this case is any option of the eig function to get me the proper right eigenvectors. Thank you
x=[ [-0.308342500000000 -0.00214464000000000 0.0151461300000000 0.00824288000000000 0.00989276000000000 0.0124386100000000 0.00264512000000000 0.00866431000000000 0.0116075100000000 0.00320392000000000 0.00278671000000000 0.00149626000000000;-0.00265658000000000 -0.121676300000000 0.00564436000000000 0.00238015000000000 0.00424764000000000 0.00588706000000000 -0.000863060000000000 0.00469262000000000 0.00678557000000000 0.000689910000000000 -0.00119440000000000 -0.00716666000000000;0.0107642900000000 0.00192612000000000 -0.320937700000000 0.00805248000000000 0.0148254700000000 0.0206676400000000 -0.00345190000000000 0.00606270000000000 0.00823877000000000 0.00199755000000000 0.00131798000000000 -0.000817610000000000;0.0508680800000000 0.0185830800000000 0.101506100000000 -1.21076200000000 0.0802179500000000 0.115666400000000 -0.00754153000000000 0.0270814400000000 0.0365313200000000 0.00948934000000000 0.00735254000000000 0.000670960000000000;0.0307724700000000 0.0142414800000000 0.0643488500000000 0.0266672900000000 -0.886164400000000 0.0810198500000000 -0.00178717000000000 0.0158865000000000 0.0213394900000000 0.00575626000000000 0.00480359000000000 0.00184064000000000;0.0233513400000000 0.0135427100000000 0.0515144600000000 0.0250104400000000 0.0468383700000000 -0.613540200000000 0.00117468000000000 0.0116026500000000 0.0155001000000000 0.00438241000000000 0.00396955000000000 0.00270523000000000;0.0559105900000000 -0.0404564600000000 0.0518365000000000 0.000652430000000000 0.0562101800000000 0.0924429400000000 -1.14120900000000 0.0398392800000000 0.0555777500000000 0.0101110600000000 0.000862140000000000 -0.0283818200000000;0.0609296000000000 0.0594911000000000 0.0504506900000000 0.0286767100000000 0.0319623200000000 0.0392238000000000 0.0120725100000000 -1.39778700000000 0.107400600000000 -0.0416587600000000 0.00800827000000000 0.0169831700000000;0.0487410800000000 0.0482542000000000 0.0402743200000000 0.0229235600000000 0.0254899100000000 0.0312555200000000 0.00972080000000000 0.0492022500000000 -1.05963200000000 -0.0526606800000000 0.00732498000000000 0.0141274000000000;0.0840965800000000 0.0520060500000000 0.0734459900000000 0.0403322100000000 0.0476786100000000 0.0596631500000000 0.0137920700000000 -0.0575738400000000 -0.0862827700000000 -1.08902400000000 -0.0306083200000000 -0.00111990000000000;0.0812610900000000 0.0172178200000000 0.0751533200000000 0.0397974000000000 0.0499812100000000 0.0637146700000000 0.0101769700000000 0.0741493400000000 0.117631700000000 -0.0109123000000000 -1.12310800000000 -0.0280327400000000;0.000943080000000000 -0.000857920000000000 0.00100616000000000 0.000488290000000000 0.000705260000000000 0.000933580000000000 1.72500000000000e-05 0.000779430000000000 0.00112694000000000 0.000114870000000000 -0.000197680000000000 -0.172684800000000;]

채택된 답변

Matt J
Matt J 2014년 9월 11일
편집: Matt J 2014년 9월 11일
No, asymmetry shouldn't prevent the equation from being satisfied to within numerical precision. But I don't see a numerically significant error,
>> [V,D]=eig(x);
>> diff=x*V-V*D;
>> max(abs(diff(:)))
ans =
1.7365e-15
  댓글 수: 6
Traian Preda
Traian Preda 2014년 9월 11일
but then what is the V matrix from the [V,S,D]=svd(x) ?
Matt J
Matt J 2014년 9월 11일
V would in that case be the left singular vectors of x, or equivalently, the eigen-vectors of x*x'. See

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Linear Algebra에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by