Main Content

inv

기호 행렬의 역행렬

설명

예제

D = inv(A)는 기호 행렬 A의 역행렬을 반환합니다.

예제

모두 축소

기호 숫자로 구성된 행렬의 역행렬을 계산합니다.

A = sym([2 -1 0; -1 2 -1; 0 -1 2]);
D = inv(A)
D = 

(34121412112141234)

기호 스칼라 변수로 구성된 행렬의 역행렬을 계산합니다.

syms a b c d
A = [a b; c d];
D = inv(A)
D = 

(dad-bc-bad-bc-cad-bcaad-bc)

기호 숫자가 포함된 힐베르트 행렬의 역행렬을 계산합니다.

D = inv(sym(hilb(4)))
D = 

(16-120240-140-1201200-27001680240-27006480-4200-1401680-42002800)

4×4 블록 행렬의 역행렬을 구합니다.

C=[A02,202,2B]

여기서 AB는 2×2 부분행렬입니다. 표기법 02,2는 0으로 구성된 2×2 부분행렬을 나타냅니다.

기호 행렬 변수를 사용하여 블록 행렬의 부분행렬을 표현합니다.

syms A B [2 2] matrix
Z = symmatrix(zeros(2))
Z = 02,2
C = [A Z; Z B]
C = 

(A02,202,2B)

행렬 C의 역행렬을 구합니다.

D = inv(C)
D = 

(A02,202,2B)-1

역행렬의 요소를 표시하기 위해 symmatrix2sym을 사용하여 결과를 기호 행렬 변수에서 기호 스칼라 변수로 변환합니다.

D1 = symmatrix2sym(D)
D1 = 

(A2,2σ2-A1,2σ200-A2,1σ2A1,1σ20000B2,2σ1-B1,2σ100-B2,1σ1B1,1σ1)where  σ1=B1,1B2,2-B1,2B2,1  σ2=A1,1A2,2-A1,2A2,1

행렬 다항식 a0 I2+A의 역행렬을 계산합니다. 여기서 A는 2×2 행렬입니다.

행렬 A를 기호 행렬 변수로 만들고 계수 a0을 기호 스칼라 변수로 만듭니다. 행렬 다항식을 a0A를 파라미터로 갖는 기호 행렬 함수 f로 만듭니다.

syms A [2 2] matrix
syms a0
syms f(a0,A) [2 2] matrix keepargs
f(a0,A) = a0*eye(2) + A
f(a0, A) = a0I2+A

inv 함수를 사용하여 f의 역행렬을 구합니다. 결과는 스칼라, 벡터, 행렬을 입력 인수로 받는 symfunmatrix 유형의 기호 행렬 함수입니다.

fInv = inv(f)
fInv(a0, A) = a0I2+A-1

symfunmatrix2symfun을 사용하여 symfunmatrix 데이터형에서 symfun 데이터형으로 결과를 변환합니다. 결과는 스칼라를 입력 인수로 받는 기호 함수입니다.

gInv = symfunmatrix2symfun(fInv)
gInv(a0, A1_1, A1_2, A2_1, A2_2) = 

(A2,2+a0σ1-A1,2σ1-A2,1σ1A1,1+a0σ1)where  σ1=A1,1a0+A2,2a0+a02+A1,1A2,2-A1,2A2,1

입력 인수

모두 축소

입력 행렬로, 정사각 숫자형 행렬, 기호 스칼라 변수로 구성된 정사각 행렬, 정사각 기호 행렬 변수, 정사각 기호 행렬 함수 또는 정사각 크기를 갖는 기호 표현식으로 지정됩니다.

데이터형: single | double | sym | symmatrix | symfunmatrix

  • 기호 변수를 많이 사용한 행렬 계산은 속도가 느릴 수 있습니다. 계산 속도를 높이려면 일부 변수에 지정된 값을 대입하여 기호 변수의 개수를 줄이십시오.

버전 내역

R2006a 이전에 개발됨

모두 확장

참고 항목

| |