rcond
조건수의 역수
설명
예제
조건이 나쁜 행렬의 민감도
조건이 나쁜 행렬이 얼마나 민감한지 알아보겠습니다.
양의 정부호 대칭 행렬이면서 조건이 나쁜 행렬의 대표적인 예로 힐베르트 행렬을 들 수 있습니다. 힐베르트 행렬의 요소는 입니다.
10×10 힐베르트 행렬을 생성합니다.
A = hilb(10);
이 행렬의 조건수의 역수를 구합니다.
C = rcond(A)
C = 2.8286e-14
조건수의 역수가 작으므로 A
는 조건이 나쁜 것입니다.
A
의 조건수는 유사한 선형 연립방정식의 해에 영향을 줍니다. 이 영향을 보기 위해 의 해를 섭동 시스템 의 해와 비교합니다.
1로 구성된 열 벡터를 만들고 를 풉니다.
b = ones(10,1); x = A\b;
이번에는 를 0.01
만큼 변경하고 섭동 시스템을 풉니다.
b1 = b + 0.01; x1 = A\b1;
두 해 x
와 x1
을 비교합니다.
norm(x-x1)
ans = 1.1250e+05
A
는 조건이 나쁘기 때문에 b
가 조금만 변해도 x = A\b
의 해가 크게 변합니다(1e5 수준). 이 시스템은 섭동에 민감합니다.
단위 행렬의 조건 구하기
조건수의 역수가 행렬식보다 특이성을 더욱 정확히 나타내는 측정 수치가 되는 이유를 알아보겠습니다.
5×5의 단위 행렬에 수를 곱한 행렬을 만듭니다.
A = eye(5)*0.01;
이 행렬은 완전 랭크 행렬이며 5개의 동일한 특이값을 같습니다. 이는 svd(A)
를 계산하여 확인할 수 있습니다.
A
의 행렬식을 계산합니다.
det(A)
ans = 1.0000e-10
행렬의 행렬식이 0에 가깝긴 하나, 실제로 A
는 조건이 매우 좋으며 특이 행렬에 가깝지 않습니다.
A
의 조건수의 역수를 계산합니다.
rcond(A)
ans = 1
이 행렬의 조건수의 역수는 1
이므로 조건이 매우 좋습니다. det(A)
대신 rcond(A)
또는 cond(A)
를 사용하여 행렬의 특이성을 확인하십시오.
입력 인수
A
— 입력 행렬
정사각 숫자형 행렬
입력 행렬로, 정사각 숫자형 행렬로 지정됩니다.
데이터형: single
| double
출력 인수
C
— 조건수의 역수
스칼라
조건수의 역수로, 스칼라로 반환됩니다. C
의 데이터형은 A
의 데이터형과 같습니다.
조건수의 역수는 지정된 행렬이 특히 행렬 집합과 얼마나 가까운지를 나타내는 척도 불변 측정 수치입니다.
C
가 0에 가까우면 이 행렬은 유사 특이 행렬이고 조건이 나쁘다고 합니다.C
가 1.0에 가까우면 이 행렬은 조건이 좋은 것입니다.
팁
rcond
는 행렬의 조건을 예측하는 수단으로, 조건수cond
에 비해 효율적이지만 안정성이 떨어집니다.
확장 기능
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
코드 생성 시 이 함수에 대해 희소 행렬 입력값은 지원되지 않습니다.
GPU 코드 생성
GPU Coder™를 사용하여 NVIDIA® GPU용 CUDA® 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
코드 생성 시 이 함수에 대해 희소 행렬 입력값은 지원되지 않습니다.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
버전 내역
R2006a 이전에 개발됨
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)