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 이전에 개발됨