cdf2rdf
복소수 대각 형식(Complex Diagonal Form)을 실수 블록 대각 형식(Real Block Diagonal Form)으로 변환
설명
[
는 실수 행렬 Vnew
,Dnew
] = cdf2rdf(V
,D
)X
에 대해 [V,D] = eig(X)
또는 [V,D] = eigs(X,___)
의 출력값을 복소수 대각 형식에서 실수 대각 형식으로 변환합니다. 이 연산은 X
의 고유값이 D
에서 표현되는 방식을 변환하고 X*Vnew = Vnew*Dnew
가 되도록 V
를 변환합니다.
복소수 대각 형식에서
D
는 주대각선에 켤레 복소수 고유값 쌍이 있는 대각 행렬입니다.대각선에 있는 고유값 중 일부는 실수일 수 있지만, 켤레 복소수 고유값 쌍은 나란히 인접해 있다고 가정됩니다.
실수 대각 형식에서
Dnew
는 대각선에 실수 고유값이 있고, 복소수 고유값은 주대각선을 따라 배치된 2×2 실수 블록으로 표현됩니다.
예제
복소수 대각 행렬을 실수 블록 대각 행렬로 변환하기
실수 행렬의 고유값과 고유벡터를 계산하고 켤레 복소수 고유값 쌍을 실수 블록으로 변환합니다.
실수 행렬의 고유값과 고유벡터를 찾습니다.
X = [1 1 1 1 1 0 4 5 1 1 0 -5 4 1 1 0 0 2 3 1 0 0 -3 -2 1]; [V,D] = eig(X)
V = 5×5 complex
1.0000 + 0.0000i -0.0179 - 0.1351i -0.0179 + 0.1351i 0.1593 - 0.4031i 0.1593 + 0.4031i
0.0000 + 0.0000i 0.0130 - 0.6214i 0.0130 + 0.6214i 0.0704 - 0.0267i 0.0704 + 0.0267i
0.0000 + 0.0000i 0.6363 + 0.0000i 0.6363 + 0.0000i -0.1261 + 0.1032i -0.1261 - 0.1032i
0.0000 + 0.0000i 0.1045 - 0.2087i 0.1045 + 0.2087i -0.2279 - 0.4161i -0.2279 + 0.4161i
0.0000 + 0.0000i -0.1156 + 0.3497i -0.1156 - 0.3497i 0.7449 + 0.0000i 0.7449 + 0.0000i
D = 5×5 complex
1.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
0.0000 + 0.0000i 3.8801 + 5.1046i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
0.0000 + 0.0000i 0.0000 + 0.0000i 3.8801 - 5.1046i 0.0000 + 0.0000i 0.0000 + 0.0000i
0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 2.1199 + 0.7018i 0.0000 + 0.0000i
0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 2.1199 - 0.7018i
D
는 하나의 실수 고유값과 두 쌍의 켤레 복소수 고유값을 포함합니다.
Dnew
가 실수 블록 대각 형식이고 Vnew
가 X*Vnew = Vnew*Dnew
를 충족하도록 V
와 D
를 변환합니다.
[Vnew,Dnew] = cdf2rdf(V,D)
Vnew = 5×5
1.0000 -0.0253 -0.1911 0.2253 -0.5701
0 0.0184 -0.8789 0.0996 -0.0378
0 0.8999 0 -0.1784 0.1459
0 0.1478 -0.2951 -0.3222 -0.5885
0 -0.1634 0.4946 1.0534 0
Dnew = 5×5
1.0000 0 0 0 0
0 3.8801 5.1046 0 0
0 -5.1046 3.8801 0 0
0 0 0 2.1199 0.7018
0 0 0 -0.7018 2.1199
Dnew
에는 여전히 실수 고유값이 있지만 켤레 복소수 고유값 쌍은 2×2 블록으로 대체되었습니다.
입력 인수
V
— 우고유벡터 행렬
행렬
우고유벡터 행렬로, [V,D] = eig(X)
또는 [V,D] = eigs(X,___)
가 반환하는 행렬로 지정됩니다.
데이터형: single
| double
복소수 지원 여부: 예
D
— 대각 고유값 행렬
행렬
대각 고유값 행렬로, [V,D] = eig(X)
또는 [V,D] = eigs(X,___)
가 반환하는 행렬로 지정됩니다. D
의 대각선에 있는 고유값 중 일부는 실수일 수 있지만, 켤레 복소수 고유값 쌍은 나란히 인접해 있다고 가정됩니다.
eigs
가 고유값과 고유벡터의 부분 집합을 반환하므로 요청된 고유값 개수는 켤레 복소수 쌍의 절반을 포함할 수도 있습니다. D
입력값이 불완전한 켤레 복소수 쌍을 포함하는 경우 cdf2rdf
는 오류를 반환합니다.
데이터형: single
| double
복소수 지원 여부: 예
출력 인수
Vnew
— 변환된 우고유벡터 행렬
행렬
변환된 우고유벡터 행렬로, 행렬로 반환됩니다. V
의 고유벡터는 X*Vnew = Vnew*Dnew
가 성립하도록 변환됩니다. 입력 고유벡터 행렬 V
가 유니타리 행렬이면 Vnew
도 유니타리 행렬입니다. 변환 후에는 Vnew
의 개별 열은 더 이상 X
의 고유벡터가 아니지만 Dnew
의 2×2 블록과 관련된 Vnew
의 각 벡터 쌍의 범위는 불변 벡터입니다.
Dnew
— 변환된 대각 고유값 행렬
행렬
변환된 대각 고유값 행렬로, 블록 대각 실수 행렬로 반환됩니다. D
의 켤레 복소수 고유값 쌍은 Dnew
의 대각선을 따라 배치된 2×2 실수 블록으로 대체됩니다.
확장 기능
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
GPU 배열
Parallel Computing Toolbox™를 사용해 GPU(그래픽스 처리 장치)에서 실행하여 코드 실행 속도를 높일 수 있습니다.
이 함수는 GPU 배열을 완전히 지원합니다. 자세한 내용은 GPU에서 MATLAB 함수 실행하기 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2006a 이전에 개발됨R2021a: 반올림 오차를 줄이도록 알고리즘이 개선됨
계산에서 부동소수점 반올림 오차를 줄이도록 모든 입력 행렬에 대한 알고리즘이 개선되었습니다.
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)