2016-09-21 1 views
0

복잡한 4 * 4 매트릭스 M의 고유 값 및 고유 벡터를 계산할 때 질문이 있습니다. 의 예로 들어 보자 :Matlab에서 특정 정규화 조건으로 고유 값 및 고유 벡터를 얻는 방법

M =

[7.71 0.88 -0.47i 0.11i을;

0.8819.09 0.11i -0.02i;

-0.47i 0.11i-7.71-0.88;

0.11i은 -0.88 -3.44.]

D은 고유 값이며, M*V=D*V, 여기 V = [a1, a2, i *b1, i *b2], 같은 -0.02i입니다. a1,a2,b1,b2은 실수 값이고 i은 허수 색인입니다. 우리는 MATLAB에서 직접 명령 eig(M)을 사용하는 경우

, 그것은 norm(V)=sqrt(a1^2+a2^2+b1^2+b2^2)=1

와 고유 값을 줄 것이다하지만 지금은 누군가가 힌트를 얻는 경우에 의견을 주시기 바랍니다 조건 a1^2+a2^2+(i *b1)^2+(i *b2)^2=1 대신 norm(V)=1

와 고유 값이 필요합니다. 고마워요.

안부, 상징적 인 도구 상자가 필요로하는 솔루션의 첫 번째 부분에 대한 마이크

+0

예제에서 a1, a2, i * b1, i * b2는 고유 벡터 중 하나의 요소 인 것으로 보입니다. 놈의 계산을 위해서는 norm (V) = sqrt (abs (a1)^2 + abs (a2)^2 + abs (b1)^2 + abs (b2)^2) = 1 ; 맞다. 질문에 M 행렬을 추가하십시오. 정교하고 정확하게 당신이하고 싶은 것을 설명하십시오. – rahnema1

+0

안녕하세요 rahnema1, 내가 계산에 eig를 사용하면 자동으로 표준 (V) = 1로 고유 벡터를 정규화합니다. 그러나 이제는 고유 벡터의 새로운 정규화로 계산하려고합니다. – Mike22LFC

+0

답변 됨 업데이트 됨! – rahnema1

답변

0

. 나는 손의 상징적 인 도구 상자를 가지고 있지 않기 때문에 그래서 맥시마에 의해 솔루션을 제공 :

당신이 고유 벡터를 형성하는 4 개 복소수 말 있습니다

A: a1 + %i * a2; 
B: b1 + %i * b2; 
C: c1 + %i * c2; 
D: d1 + %i * d2; 

%i 기호는 허수 단위를 나타냅니다. 벡터의 노름 (2)는 다음

sqrt(cabs(A)^2 + cabs(B)^2 + cabs(C)^2 + cabs(D)^2). 

여기 cabs 복잡한 절대치를 의미한다. 그래서 우리는 수를 찾는 v 등 우리가에 의해 벡터의 요소를 나누면 결과 벡터는이 속성을 가지고 : 우리는 v에 대한 방정식을 해결할 수

(cabs(A/v)^2 + cabs(B/v)^2 + (%i * cabs(C/v))^2 + (%i * cabs(D/v))^2) = 1; 

:

A: a1 + %i * a2; 
B: b1 + %i * b2; 
C: c1 + %i * c2; 
D: d1 + %i * d2; 
eq: (cabs(A/v)^2 + cabs(B/v)^2 + (%i * cabs(C/v))^2 + (%i * cabs(D/v))^2) - 1; 
solve(eq , v); 

결과를 :

v = sqrt([a1^2 + a2^2 + b1^2 + b2^2 - c1^2 - c2^2 - d1^2 - d2^2 ]) 
    =sqrt (cabs(A)^2 + cabs(B)^2 - cabs(C)^2 - cabs(D)^2) 

고유 벡터 정규화를위한 MATLAB 코드 :

M=[... 

7.71 0.88 -0.47i 0.11i; 

0.88 19.09 0.11i -0.02i; 

-0.47i 0.11i -7.71 -0.88; 

0.11i -0.02i -0.88 -3.44]; 

% with nobalance eigenvector do not necessarily normalized 
[VEC, D] = eig(M, 'nobalance'); 
ABS2 = abs(VEC).^2; 
ABS2(3:4,:) = -ABS2(3:4,:); 
v = sqrt(sum(ABS2,1)); 
VEC = bsxfun(@rdivide,VEC, v) 
관련 문제