1. 개요
카를 구스타프 야코프 야코비가 고안한 행렬. 일반적으로는 모든 독립변수가 모든 성분에 대해 미분가능한 다변수 벡터함수 [math(\mathbf{f}: \mathbb{R}^n \rarr \mathbb{R}^m)](단, [math(\mathbf{f} = (f_i ((x_j)_{j=1}^n)))_{i=1}^m)])의 편도함수를 각 성분에 따라 배치한 [math(m×n)] 행렬 [math(J)]를 의미하며, 이때 [math(J_{ij} = \dfrac{\partial f_i}{\partial x_j})]이다. 특히 학부 미적분학에서는 다변수 벡터함수가 차원이 서로 같은 유클리드 공간 사이에서 정의되기 때문에 야코비 행렬은 정사각행렬이 된다. 그래서 다중적분에서 다변수 치환적분을 해야 할 때 그 행렬식을 이용해 보정하는 좌표계 변환법으로 자주 사용된다. 이 때문인지 학부 미적분학에서는 '야코비 행렬식'을 야코비안으로 부르기도 한다.2. 좌표계 변환
앞서 언급한 바와 같이 다중적분에서 미분소 [math({\rm d}A)], [math({\rm d}V)], [math({\rm d}S)] 등을 같은 차원의 좌표계로 변환하는 데에 야코비 행렬식이 사용된다. 좌표계마다 축의 방향과 눈금의 크기가 다르기 때문에, 좌표계 변환을 할 때 이를 보정해주어야 하는데, 이 보정하는 역할을 하는 것이 야코비안이다.
예를 들어, 면적분의 좌표계를 바꾸기 위해 [math((x,y))]로 표현되는 좌표를 [math((r,\theta))]로 바꿔줄 때 야코비안 [math(J = \begin{vmatrix} \begin{aligned} \dfrac{\partial x}{\partial r} \\ \dfrac{\partial y}{\partial r} \end{aligned} & \begin{aligned} \dfrac{\partial x}{\partial \theta} \\ \dfrac{\partial y}{\partial \theta} \end{aligned} \end{vmatrix} = \begin{vmatrix} \begin{aligned} \cos \theta \\ \sin \theta \end{aligned} & \begin{aligned} -r\sin \theta \\ r\cos \theta \end{aligned} \end{vmatrix} = r)]을 이용해
[math({\rm d}A = {\rm d}x \,{\rm d}y = |J| \,{\rm d}r \,{\rm d}\theta = r \,{\rm d}r \,{\rm d}\theta)] |
덧붙여 야코비안은 행렬식 안에 편미분이 들어가기 때문에 식 자체의 크기가 꽤 크다. 이를 간단하게 표기하기 위해서, 다음과 같은 표기법들을 사용하기도 한다.
[math(J = \begin{vmatrix} \begin{aligned} \dfrac{\partial x}{\partial r} \\ \dfrac{\partial y}{\partial r} \end{aligned} & \begin{aligned} \dfrac{\partial x}{\partial \theta} \\ \dfrac{\partial y}{\partial \theta} \end{aligned} \end{vmatrix} = \left| \dfrac{\partial (x,\,y)}{\partial (r,\,\theta)}\right| )] |
[math(J = \begin{vmatrix} \begin{aligned} \dfrac{\partial x}{\partial r} \\ \dfrac{\partial y}{\partial r} \end{aligned} & \begin{aligned} \dfrac{\partial x}{\partial \theta} \\ \dfrac{\partial y}{\partial \theta} \end{aligned} \end{vmatrix} = \begin{pmatrix} x_r & x_{\theta} \\ y_r & y_{\theta} \end{pmatrix} )] |
일반적으로는 [math(n)]개의 변수를 마찬가지로 [math(n)]개의 변수로 치환하기 때문에 [math(n)]차 정사각행렬의 행렬식의 형태를 띄게 되는데, 미분기하학 등의 분야에서는 변수를 줄여서 매개화를 시키는 경우에 한해서 정사각행렬이 아닌 야코비 행렬만을 따지기도 한다. 예를 들면 다음과 같은 경우가 있다.
사상 [math({\bf x}: D(\subseteq\mathbb R^2)\to\mathbb R^3)]가 다음과 같이 정의되어 있다고 하자.
[math({\bf x}(u,\,v)=(x(u,\,v),\,y(u,\,v),\,z(u,\,v)))] |
이 경우, 이 사상은 벡터장에 의해 정의된 3차원상의 평면으로 나타나며, 이 사상의 야코비 행렬은 다음과 같이 표기한다.
[math(J=\dfrac{\partial (x,\,y,\,z)}{\partial (u,\,v)})] |
이 행렬은 [math(J = \begin{pmatrix} \begin{aligned} \dfrac{\partial x}{\partial u} \\ \dfrac{\partial y}{\partial u} \\ \dfrac{\partial z}{\partial u} \end{aligned} & \begin{aligned} \dfrac{\partial x}{\partial v} \\ \dfrac{\partial y}{\partial v} \\ \dfrac{\partial z}{\partial v} \end{aligned} \end{pmatrix})]의 [math(3\times2)] 행렬이 되는데, 당연히 행렬식을 구할 수는 없으니 의미가 없어보이지만, 이 행렬의 전치행렬에 3차원 좌표계의 기저벡터[math((U_1, U_2, U_3))]를 추가하여 행렬식을 구성. 즉 벡터로 변환하게 되면 다음과 같다.
[math(J^{T *} = \begin{vmatrix} \begin{aligned} U_1 \\ \dfrac{\partial x}{\partial u} \\ \dfrac{\partial x}{\partial v} \end{aligned} & \begin{aligned} U_2 \\ \dfrac{\partial y}{\partial u} \\ \dfrac{\partial y}{\partial v} \end{aligned} & \begin{aligned} U_3 \\ \dfrac{\partial z}{\partial u} \\ \dfrac{\partial z}{\partial v} \end{aligned} \end{vmatrix}=\left(\dfrac{\partial y}{\partial u}\dfrac{\partial z}{\partial v}-\dfrac{\partial z}{\partial u}\dfrac{\partial y}{\partial v},\,\dfrac{\partial z}{\partial u}\dfrac{\partial x}{\partial v}-\dfrac{\partial x}{\partial u}\dfrac{\partial z}{\partial v},\,\dfrac{\partial x}{\partial u}\dfrac{\partial y}{\partial v}-\dfrac{\partial y}{\partial u}\dfrac{\partial x}{\partial v}\right))]
그런데 이 벡터는 [math(\bf x)]를 [math(u)]와 [math(v)]로 편미분한 두 미분벡터 [math({\bf x}_u,\,{\bf x}_v)]의 외적과 정확히 일치한다. 이런 식으로 야코비안은 반드시 정사각행렬이 아니더라도 다양한 분야에서 사용된다.
2.1. 유도
벡터를 이용한 넓이 공식 및 다변수 함수의 전미분으로부터 유도할 수 있다.[2] 아래 예시는 2차원 직교좌표계에서 극좌표계로 변환하는 과정에서 야코비안을 유도하는 방법이다.[math({\rm d}x)], [math({\rm d}y)]는 서로 독립이며 각각 [math(x)]축, [math(y)]축에 평행한 미소(smallness 또는 infinitesimals) 길이므로 단위 벡터 [math({\bf e_1} = \begin{pmatrix} 1 \\ 0 \end{pmatrix})], [math({\bf e_2} = \begin{pmatrix} 0 \\ 1 \end{pmatrix})]를 이용하여 나타내면 각각
[math(\begin{aligned} {\rm d}x {\bf e_1} &= {\bf dx} = \begin{pmatrix} {\rm d}x \\ 0 \end{pmatrix} \\ {\rm d}y {\bf e_2} &= {\bf dy} = \begin{pmatrix} 0 \\ {\rm d}y \end{pmatrix} \end{aligned})] |
[math(\begin{Vmatrix} {\bf dx} & {\bf dy} \end{Vmatrix} = \begin{Vmatrix} {\rm d}x & 0 \\ 0 & {\rm d}y \end{Vmatrix} = | {\rm d}x{\rm d}y |)] |
한편 [math(x,\,y)]가 극좌표 매개변수 [math(r,\,\theta)]로 나타낼 수 있는 함수 [math(x(r,\,\theta))], [math(y(r,\, \theta))]라고 할 때 각각의 전미분 [math({\rm d}x,\,{\rm d}y)]는 다음과 같이 된다.
[math(\begin{aligned} {\rm d}x &= \frac{\partial x}{\partial r} {\rm d}r + \frac{\partial x}{\partial \theta} {\rm d}\theta \\ {\rm d}y &= \frac{\partial y}{\partial r} {\rm d}r + \frac{\partial y}{\partial \theta} {\rm d}\theta \end{aligned})] |
[math(\mathrm dr)], [math(\mathrm d\theta)]도 서로 독립이며 [math(\mathrm dx)], [math(\mathrm dy)]처럼 벡터로 나타낼 수 있으므로 위 전미분 식의 미소 길이를 모두 벡터로 대체한다.
[math(\begin{aligned} {\bf dx} &= \dfrac{\partial x}{\partial r} {\bf dr} + \dfrac{\partial x}{\partial \theta} {\bf d}\boldsymbol\theta = \dfrac{\partial x}{\partial r} \begin{pmatrix} {\rm d}r \\ 0 \end{pmatrix} + \dfrac{\partial x}{\partial \theta} \begin{pmatrix} 0 \\ {\rm d}\theta \end{pmatrix} = \begin{pmatrix} \begin{aligned} \dfrac{\partial x}{\partial r}{\rm d}r \\ \dfrac{\partial x}{\partial \theta}{\rm d}\theta \end{aligned} \end{pmatrix} \\ {\bf dy} &= \dfrac{\partial y}{\partial r} {\bf dr} + \dfrac{\partial y}{\partial \theta} {\bf d}\boldsymbol\theta = \dfrac{\partial y}{\partial r} \begin{pmatrix}{\rm d}r \\ 0 \end{pmatrix} + \dfrac{\partial y}{\partial \theta} \begin{pmatrix} 0 \\ {\rm d}\theta \end{pmatrix} = \begin{pmatrix} \begin{aligned} \dfrac{\partial y}{\partial r}{\rm d}r \\ \dfrac{\partial y}{\partial \theta}{\rm d}\theta \end{aligned} \end{pmatrix} \end{aligned})] |
[math(\begin{Vmatrix} {\bf dx} & {\bf dy} \end{Vmatrix} = \begin{Vmatrix} \begin{aligned} \dfrac{\partial x}{\partial r}{\rm d}r \\ \dfrac{\partial x}{\partial \theta}{\rm d}\theta \end{aligned} & \begin{aligned} \dfrac{\partial y}{\partial r}{\rm d}r \\ \dfrac{\partial y}{\partial \theta}{\rm d}\theta \end{aligned} \end{Vmatrix} = \begin{Vmatrix} \begin{pmatrix} {\rm d}r & 0 \\ 0 & {\rm d}\theta \end{pmatrix} \begin{pmatrix} \begin{aligned} \dfrac{\partial x}{\partial r} \\ \dfrac{\partial x}{\partial \theta} \end{aligned} & \begin{aligned} \dfrac{\partial y}{\partial r} \\ \dfrac{\partial y}{\partial \theta} \end{aligned} \end{pmatrix} \end{Vmatrix})] |
[math(\begin{aligned} \begin{Vmatrix} \begin{pmatrix} {\rm d}r & 0 \\ 0 & {\rm d}\theta \end{pmatrix} \begin{pmatrix} \begin{aligned} \dfrac{\partial x}{\partial r} \\ \dfrac{\partial x}{\partial \theta} \end{aligned} & \begin{aligned} \dfrac{\partial y}{\partial r} \\ \dfrac{\partial y}{\partial \theta} \end{aligned} \end{pmatrix} \end{Vmatrix} &= \begin{Vmatrix} \left( \begin{pmatrix} {\rm d}r & 0 \\ 0 & {\rm d}\theta \end{pmatrix} \begin{pmatrix} \begin{aligned} \dfrac{\partial x}{\partial r} \\ \dfrac{\partial x}{\partial \theta} \end{aligned} & \begin{aligned} \dfrac{\partial y}{\partial r} \\ \dfrac{\partial y}{\partial \theta} \end{aligned} \end{pmatrix} \right)^\mathrm T \end{Vmatrix} = \begin{Vmatrix} \begin{pmatrix} \begin{aligned} \dfrac{\partial x}{\partial r} \\ \dfrac{\partial y}{\partial r} \end{aligned} & \begin{aligned} \dfrac{\partial x}{\partial\theta} \\ \dfrac{\partial y}{\partial \theta} \end{aligned} \end{pmatrix} \begin{pmatrix} {\rm d}r & 0 \\ 0 & {\rm d}\theta \end{pmatrix} \end{Vmatrix} \\ &= \begin{Vmatrix} \begin{aligned} \dfrac{\partial x}{\partial r} \\ \dfrac{\partial y}{\partial r} \end{aligned} & \begin{aligned} \dfrac{\partial x}{\partial\theta} \\ \dfrac{\partial y}{\partial\theta} \end{aligned} \end{Vmatrix} \begin{Vmatrix} {\rm d}r & 0 \\ 0 & {\rm d}\theta \end{Vmatrix} = |J| | {\rm d}r{\rm d}\theta | \end{aligned})] |
일반적으로 [math({\rm d}x{\rm d}y)], [math({\rm d}r{\rm d}\theta)]가 양의 값이 되도록 좌표축을 잡으므로 그 결과는 아래와 같다.
[math({\rm d}x{\rm d}y = |J|{\rm d}r{\rm d}\theta)] |
3차원 직교좌표계를 원통좌표계 및 구면좌표계로 변환하는 과정에서 얻어지는 야코비안도 같은 방법으로 유도할 수 있다. 성분이 많아지니 계산이 번거로워질 뿐이다.
2.2. 예시
- 직교 좌표계 → 극좌표계로의 변환
양수 [math(a)], [math(b)]에 대하여 [math(J = \begin{vmatrix} \begin{aligned} \dfrac{\partial x}{\partial r} \\ \dfrac{\partial y}{\partial r} \end{aligned} & \begin{aligned} \dfrac{\partial x}{\partial \theta} \\ \dfrac{\partial y}{\partial \theta} \end{aligned} \end{vmatrix} = \begin{vmatrix} x_r & x_{\theta} \\ y_r & y_{\theta} \end{vmatrix} )] 이므로
[math(\begin{cases} \begin{aligned} x &= ar \cos \theta \\ y &= br \sin \theta \end{aligned} \end{cases})]에서[math(|J| = \begin{Vmatrix} a \cos \theta & -ar \sin \theta \\ b \sin \theta & br \cos \theta \end{Vmatrix} = ab|r|)]
[math(r)]이 음수가 안 되도록 범위를 잡으면 [math(|J| = abr)]
[math(a \ne b)] 일 때 타원이며 [math(a=b)]일 때 원. 두 경우 모두 [math(r)]의 범위가 [math(0 \le r \le 1)]로 주어지는 특징이 있다. 원에 한해서는 그냥 [math(a=b=1)]로 하고 반지름 [math(R)]에 대해 [math(r)]의 범위를 [math(0 \le r \le R)]로 잡아도 된다.
- 공간 좌표계 → 원통 좌표계로의 변환
[math(\begin{cases} \begin{aligned} x &= r \cos \theta \\ y &= r \sin \theta \\ z &= \zeta \end{aligned} \end{cases})]에서[math(|J| = \begin{Vmatrix} \cos \theta & -r \sin \theta & 0 \\ \sin \theta & r \cos \theta & 0 \\ 0 & 0 & 1 \end{Vmatrix} = |r|)]
[math(xy)]평면에 평행한 단면이 타원일 경우 역시 위의 값에 [math(ab)]를 곱한다. [math(r)]이 음수가 안 되도록 범위를 잡으면 절댓값 기호를 그냥 벗길 수 있다.
- 공간 좌표계 → 구좌표계로의 변환
[math(\begin{cases} \begin{aligned} x &= r \sin \theta \cos \phi \\ y &= r \sin \theta \sin \phi \\ z &= r \cos \theta \end{aligned} \end{cases})]에서[math(|J| = \begin{Vmatrix} \sin \theta \cos \phi & r \cos \theta \cos \phi & -r \sin \theta \sin \phi \\ \sin \theta \sin \phi & r \cos \theta \sin \phi & r \sin \theta \cos \phi \\ \cos \theta & -r \sin \theta & 0 \end{Vmatrix} = {\left| r^2 \sin \theta \right|} = r^2 | \sin \theta| )]
[math(\sin \theta)]값이 음수가 안 되도록 범위를 잡으면[4] 절댓값 기호를 그냥 벗길 수 있다. - 타원이나 마름모꼴에서
[math(\begin{cases} \begin{aligned} u &= x+y \\ v &= x-y \end{aligned} \end{cases} \Leftrightarrow \begin{cases} \begin{aligned} x &= \dfrac{u+v}2 \\ y &= \dfrac{u-v}2 \end{aligned} \end{cases})]에서[math(|J| = \begin{Vmatrix} \begin{aligned} \dfrac 12 \\ \dfrac 12 \end{aligned} & \begin{aligned} \dfrac 12 \\ -\dfrac 12 \end{aligned} \end{Vmatrix} = \left| -\dfrac 12 \right| = \dfrac 12)]
또는
[math(\begin{cases} \begin{aligned} u &= 2x-y \\ v &= y \end{aligned} \end{cases} \Leftrightarrow \begin{cases} \begin{aligned} x &= \dfrac{u+v}2 \\ y &= v \end{aligned} \end{cases})]에서[math(|J| = \begin{Vmatrix} \dfrac 12 & \dfrac 12 \\ \\ 0 & 1 \end{Vmatrix} = \dfrac 12)]
3. 연립 상미분방정식
선형대수학 Linear Algebra | |||||
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px)" {{{#!folding [ 펼치기 · 접기 ] {{{#!wiki style="margin: -5px -1px -11px" | <colbgcolor=#006ab8> ▲ 대수학 | ||||
기본 대상 | 일차함수 · 벡터 · 행렬 · 선형 변환 | ||||
대수적 구조 | 가군(모듈) · 벡터 공간 · 내적 공간 · 노름 공간 | ||||
선형 연산자 | <colbgcolor=#006ab8> 기본 개념 | 연립방정식(1차 · 2차) · 행렬곱 · 단위행렬 · 역행렬과 크라메르 공식 · 가역행렬 · 전치행렬 · 행렬식(라플라스 전개) · 주대각합 | |||
선형 시스템 | 기본행연산과 기본행렬 · 가우스-조르당 소거법 · 행사다리꼴 · 행렬표현 · 라그랑주 보간법 | ||||
주요 정리 | 선형대수학의 기본정리 · 차원 정리 · 가역행렬의 기본정리 · 스펙트럼 정리 | ||||
기타 | 제곱근행렬 · 멱등행렬 · 멱영행렬 · 에르미트 행렬 · 야코비 행렬 · 방데르몽드 행렬 · 아다마르 행렬 변환 · 노름(수학) · 벡터장 | ||||
벡터공간의 분해 | 상사 · 고유치 문제 · 케일리-해밀턴 정리 · 대각화(대각행렬) · 삼각화 · 조르당 분해 | ||||
벡터의 연산 | 노름 · 거리함수 · 내적 · 외적(신발끈 공식) · 다중선형형식 · ∇ · 크로네커 델타 | ||||
내적공간 | 그람-슈미트 과정 · 수반 연산자(에르미트 내적) | ||||
다중선형대수 | 텐서 · 텐서곱 · 레비치비타 기호 | }}}}}}}}} |
연립 상미분방정식(system of ODE)에서도 야코비안을 사용할 수 있다. 비동차 상미분방정식(non-homogeneous ODE)의 임계점(critical point) 근처에서 그 거동을 알아보기 위해, 비동차항을 행렬로 근사하여 선형성을 부여한 뒤 값을 대입하여 해 곡선(solution curve)의 개형을 알아본다. [math(n)]원 일차연립방정식에서는 [math(n×n)] 야코비 행렬이 쓰인다. 기계 학습 등에서 다변수 함수의 기울기를 담고 있어서 실생활의 최적화 문제를 수식으로 정리하는데 도움이 되는 편이라, 의외로 자주 접하게 되는 표현.
임계점 근방에서 [math(x'(t), y'(t))]가 잘 정의될 때, 2차원 연립 상미분방정식이 아래와 같이 주어져 있다고 하자. 단, 임계점에서 [math(f, g)]의 함숫값은 0이다.
[math(\begin{pmatrix} x' \\ y' \end{pmatrix} = \begin{pmatrix} f(x, y) \\ g(x, y) \end{pmatrix})]
이 연립 상미분방정식을 선형화하기 위해 야코비 행렬을 사용하자. 임계점 근방에서 [math(x'(t))]와 [math(y'(t))]는 다음과 같이 선형 근사된다.
[math( \begin{pmatrix} x' \\ y' \end{pmatrix} \approx J \begin{pmatrix} x \\ y \end{pmatrix})]
여기서 야코비 행렬은 [math( J = \begin{pmatrix} \frac{\partial f}{\partial x} & \frac{\partial f}{\partial y} \\ \frac{\partial g}{\partial x} & \frac{\partial g}{\partial y} \end{pmatrix})]이다.[5]
이 식에서 [math(x(t))]와 [math(y(t))]는 임계점 근처에서의 값, [math(J)]는 원 미분방정식을 선형화한 새로운 연립 상미분방정식의 동적 거동을 표현한다.
마지막으로, 비동차항을 고려하면 다음과 같은 형태로 정리할 수 있다.
[math(\begin{pmatrix} x' \\ y' \end{pmatrix} = J \begin{pmatrix} x \\ y \end{pmatrix} + \begin{pmatrix} h_1(t) \\ h_2(t) \end{pmatrix})]
여기서 [math( \begin{pmatrix} h_1(t) \\ h_2(t) \end{pmatrix} )]는 시간 t에 따라 변하는 비동차항이 된다.
[1] 이 개념의 창안자 야코비가 독일인이라 J를 반모음 [j\]로 읽는 독일어식 독음을 따와 '야코비안'이라는 표기법이 사용된다. 다만 -ian이라는 데모님을 붙이는 것은 영어식 표현이므로 입말로는 J를 [d͡ʒ\]로 읽는 영어식 독법을 따라 '자코비안'이라고 하기도 한다. 독일어로는 Jacobi-Matrix가 주류지만 Jacobian에 대응하는 Jacobische가 종종 사용되기도 한다.[2] 엄밀하게는 미분형식에 대해 크라메르 공식을 이용하는 방식을 이용한다. [math(x, y)] 쌍과 [math(u, v)] 쌍이 서로 독립적이기 때문에 각각의 1-형식인 [math({\rm d}x, {\rm d}y)]와 [math({\rm d}u, {\rm d}v)]가 각각에 대해 독립적이 되는지라 선형대수를 접목시킬 수 있고, 그 결과가 야코비안으로 나오는 것.[3] 정확히는 두 벡터의 외적으로 얻어진 벡터의 크기인데 이를 라플라스 전개로 분해하면 이렇게 된다.[4] 보통 두 각의 범위를 [math(0 \le \theta \le \pi)], [math(0 \le \phi \le 2\pi)]로 잡는 것도 이 때문이다.[5] 테일러 전개 시 고차항(higher-order term)을 생략하고 1차 근사만 남긴다는 의미로 [math(\approx)]를 사용했다. 다시 말하면, 정확한 평형점에서의 값 +1차 미분으로만 선형화한다는 뜻.