Main Content

logm

행렬 로그(Matrix Logarithm)

설명

L = logm(A)A의 주요 행렬 로그이고, expm(A)의 역함수입니다. 출력값 L은 각 고유값이 엄격하게 범위 π에서 π 사이의 허수부를 갖는 고유한 로그입니다. A가 특이 행렬이거나 음의 실수축에 고유값을 가지면 주요 로그가 정의되지 않은 것입니다. 이 경우 logm은 비주요 로그를 계산하고 경고 메시지를 반환합니다.

예제

[L,exitflag] = logm(A)logm의 종료 상황을 설명하는 스칼라 exitflag를 반환합니다.

  • exitflag = 0이면 알고리즘이 성공적으로 완료된 것입니다.

  • exitflag = 1이면 계산해야 할 행렬 제곱근이 너무 많은 것입니다. 그러나 계산된 L 값은 여전히 정확할 수 있습니다.

예제

모두 축소

행렬 A의 행렬 지수를 계산합니다.

A = [1 1 0; 0 0 2; 0 0 -1];
Y = expm(A)
Y = 3×3

    2.7183    1.7183    1.0862
         0    1.0000    1.2642
         0         0    0.3679

Y의 행렬 로그를 계산하여 원래 행렬 A를 재생성합니다.

P = logm(Y)
P = 3×3

    1.0000    1.0000   -0.0000
         0         0    2.0000
         0         0   -1.0000

log(A)는 0의 로그를 계산하기 때문에 하위(Inferior) 결과를 생성합니다.

Q = log(A)
Q = 3×3 complex

   0.0000 + 0.0000i   0.0000 + 0.0000i     -Inf + 0.0000i
     -Inf + 0.0000i     -Inf + 0.0000i   0.6931 + 0.0000i
     -Inf + 0.0000i     -Inf + 0.0000i   0.0000 + 3.1416i

입력 인수

모두 축소

입력 행렬로, 정사각 행렬로 지정됩니다.

데이터형: single | double
복소수 지원 여부:

  • A가 실수 대칭 행렬이거나 복소수 에르미트(Hermitian)이면 logm(A)는 A와 같은 유형 및 같은 형태를 갖게 됩니다.

  • A = [0 1; 0 0]과 같은 일부 행렬에는 로그, 실수 또는 복소수가 없으므로 logm 결과를 예상할 수 없습니다.

알고리즘

logm에 사용되는 알고리즘은 [1][2]에 설명되어 있습니다.

참고 문헌

[1] Al-Mohy, A. H. and Nicholas J. Higham, “Improved inverse scaling and squaring algorithms for the matrix logarithm,” SIAM J. Sci. Comput., 34(4), pp. C153–C169, 2012

[2] Al-Mohy, A. H., Higham, Nicholas J. and Samuel D. Relton, “Computing the Frechet derivative of the matrix logarithm and estimating the condition number,” SIAM J. Sci. Comput.,, 35(4), pp. C394–C410, 2013

확장 기능

버전 내역

R2006a 이전에 개발됨

참고 항목

| |