eig: different base

조회 수: 2 (최근 30일)
Uwe Brauer
Uwe Brauer 2018년 4월 23일
답변: Uwe Brauer 2018년 4월 23일
Please look at the following example:
clear all
A= ([1 1 1; 1 1 1; 1 1 1])
% the eigenvalues of that matrix are l1=0 (alg mult=2) l2=3 (alg mult=1)
% the following matrix contains eigen vectors (not the same base as matlab uses)
V2=[-1 -1 1;2 -1 1; -1 2 1]
% Check
Z=A*V2(:,1) % OK
Z=A*V2(:,2) % OK
Z=A*V2(:,3) % OK
so far so good but matlab does it differently
[V,D]=eig(A)
V
V = [ -1, -1, 1; 1, 0, 1; 0, 1, 1]
is there any way to force Matlab to chose a different base?
regards
Uwe Brauer
  댓글 수: 2
Torsten
Torsten 2018년 4월 23일
If you knew a basis in advance, you didn't have to use "eig".
Best wishes
Torsten.
John D'Errico
John D'Errico 2018년 4월 23일
MATLAB does not use any explicit basis for the eigenvectors. If there are eigenvalues of multiplicity>1, then the eigenvectors are not unique, and MATLAB will choose them as it wants. You cannot control that. And as Torsten says, if you know what they are, then why use eig in the first place?

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

답변 (1개)

Uwe Brauer
Uwe Brauer 2018년 4월 23일
thanks for the clarification.
my reason was, basically, curiosity, nothing else.

카테고리

Help CenterFile Exchange에서 Operating on Diagonal Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by