일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 파이썬
- 이진탐색트리
- Class
- 델
- 2P1L
- 자료형
- 피보나치 수열
- BST
- 계단 오르기
- 벡터 해석
- 선적분
- 백트래킹
- 코드업
- 최단 경로
- auto-encoder
- cURL
- 딕셔너리
- 강화학습
- Asteroid RL
- Python
- 함수
- 회로이론
- 벡터해석
- 자바
- dictionary
- java
- 미분 방정식
- 신경망
- 소행성
- 딥러닝
- Today
- Total
Zeta Oph's Study
[벡터 해석학] 델 연산자 (Del Operator) - (4) 회전 (Curl) 본문
드디어 델 연산자 4번째 글, 회전(Curl)입니다...! 그래디언트, 발산, 회전 중 가장 어려워 보이고, 복잡하지만, 그만큼 재미있으니 무서워 보인다고 도망가지 말고, 한번 읽어보세요
Curl
$$\nabla\times\mathbf{F}=\begin{vmatrix} \mathbf{\hat{i}} & \mathbf{\hat{j}} & \mathbf{\hat{k}} \\ \frac{\partial}{\partial x} & \frac{\partial}{\partial y} & \frac{\partial}{\partial z} \\ F_1 & F_2 & F_3 \end{vmatrix}\\=(\frac{\partial F_3}{\partial y}-\frac{\partial F_2}{\partial z})\mathbf{\hat{i}}+(\frac{\partial F_1}{\partial z}-\frac{\partial F_3}{\partial x})\mathbf{\hat{j}}+(\frac{\partial F_2}{\partial x}-\frac{\partial F_1}{\partial y})\mathbf{\hat{k}}$$
( $\mathbf{F}(x, y, z)=F_1(x, y, z)\mathbf{\hat{i}}+F_2(x, y, z)\mathbf{\hat{j}}+F_3(x, y, z)\mathbf{\hat{k}}$ )
Curl(회전)은 델 연산자와 벡터 함수를 외적하는 연산입니다. 발산과 마찬가지로, 연산의 대상이 벡터 함수여야 하죠. 발산과 다른 점은, 결과 또한 벡터라는 것입니다.
Curl 연산은 무엇을 의미할까요? "회전"이라는 이름에서 짐작할 수 있듯이, 특정 점에서의 회전량을 구하는 연산입니다.
물리에서 회전을 나타내는 물리량으로 각속도가 있는데, xy평면에서 반시계 방향으로 회전하는 각속도 벡터는 +z방향, 시계 방향으로 회전하는 각속도 벡터는 -z 방향이라는 것을 기억하시나요? Curl도 마찬가지 입니다. 특정 점에서 Curl 연산의 결과는, 그 점에 해당하는 회전을 나타내는 벡터입니다. xy평면상 점을 예시로 돌면 아래 그림처럼 되는 것이죠.
왼쪽 그림은 점 주위에 시계 방향으로 도는 벡터장이 형성되어 있으니 curl 연산의 결과는 -z 방향의 벡터이고, 가운데 그림은 점 주위로 회전의 경향이 보이지 않으므로 결과가 영벡터, 오른쪽 그림은 점 주위로 반시계 방향으로 도는 벡터장이 형성되어 있으니 결과가 +z방향의 벡터인 것입니다.
이런 개념을 왜 도입한 것일까요? 강이 흐르는 것을 생각해봅시다. 전체적으로 보면 곧게 흐르는 강일 수도 있지만, 지형에 따라 각각의 점에서는 조금씩 굽이치며 흐를 것입니다. 지형이 급격하게 변하여 그 점에서 갑작스럽게 물살이 휠 수도 있고, 좁은 곳에서 넓은 곳으로 나와 강물이 퍼지며 말릴수도 있습니다. 이러한 상황에서 각 점에서 물살이 회전하는 정도는 어떻게 표현할까요?
바로 이런데서 curl을 쓸 수 있는 것입니다. 강물의 속도를 나타낸 벡터장에 curl 연산을 적용하면, 각 점에서 강물이 회전하는 정도를 파악할 수 있는 것이죠.
그러면 curl의 식이 어떻게 나왔는지 유도해봅시다.
벡터장 $\mathbf{F}(x, y, z)=F_1(x, y, z)\mathbf{\hat{i}}+F_2(x, y, z)\mathbf{\hat{j}}+F_3(x, y, z)\mathbf{\hat{k}}$이 있고, 우선 $xy$평면에서의 회전량을 구해볼 것입니다. 회전량을 파악하기 쉽도록, 그림과 같이 가로길이 $2\Delta x$, 세로길이 $2\Delta y$인 프로펠러를 생각해봅시다. 이 상황에서는, 벡터장의 두 성분에 의한 회전량이 있습니다. (1)-(2) 방향과 (3)-(4) 방향의 회전량이 있겠죠.
(1)-(2) 회전량부터 구해봅시다. 반시계 방향 회전을 $+$로 두면, (1)지점에서는 $+y$방향 벡터가, (2)지점에서는 $-y$방향 벡터가 양수의 회전량을 만들 것입니다. 두 지점에서 같은 방향의 회전을 유발하는 방향이 다르므로, 회전량은 (1)지점에서의 $y$방향 벡터 크기에서 (2)지점에서의 $y$방향 벡터 크기를 빼준 것이 됩니다.
$$F_2(x+\Delta x, y)-F_2(x-\Delta x, y)$$
(1)-(2)의 길이 $2\Delta x$로 나누어 단위 길이당 회전량을 구하고, $xy$평면에서의 반시계 방향 회전이므로 단위벡터 $\mathbf{\hat{k}}$를 붙여줍니다.
$$\frac{F_2(x+\Delta x, y)-F_2(x-\Delta x, y)}{2\Delta x}\mathbf{\hat{k}}$$
이제 $\Delta x$에 극한을 취해 0으로 보내주면, 미소길이에 해당하는 회전량이 나오게 되는데, 위 식은 $x$만 변하고 $y$값은 고정된, $x$에 대한 $F_2$의 편미분 형태이므로 아래와 같이 쓸 수 있습니다.
$$\lim_{\Delta x\to0}\frac{F_2(x+\Delta x, y)-F_2(x-\Delta x, y)}{2\Delta x}\mathbf{\hat{k}}=\frac{\partial F_2}{\partial x}\mathbf{\hat{k}}$$
같은 방법으로, (3)-(4) 회전량도 구해줍니다. 그런데, $y$값이 $y+\Delta y$인 점에서 $-x$방향 벡터가 반시계 방향 회전을 유발하고, $y-\Delta y$인 점에서 $+x$방향 벡터가 반시계 방향 회전을 유발합니다. 즉, (1)-(2) 회전량과 같은 방식으로 구할 수 있지만, $-$부호가 붙는 다는 사실을 알 수 있죠. 따라서 아래와 같습니다.
$$\lim_{\Delta y\to0}-\frac{F_1(x, y+\Delta y)-F_1(x, y-\Delta y)}{2\Delta y}\mathbf{\hat{k}}=-\frac{\partial F_1}{\partial y}\mathbf{\hat{k}}$$
따라서, 총 회전량은 (1)-(2) 회전량과 (3)-(4) 회전량을 더한 벡터가 될 것입니다. 이것이 $xy$평면에서의 2차원 curl입니다.
$$(\nabla\times\mathbf{F})_{2D, xy}=(\frac{\partial F_2}{\partial x}-\frac{\partial F_1}{\partial y})\mathbf{\hat{k}}$$
같은 방식으로, $yz, zx$ 평면에 대해서도 2차원 curl을 구해줍니다.
$$(\nabla\times\mathbf{F})_{2D, yz}=(\frac{\partial F_3}{\partial y}-\frac{\partial F_2}{\partial z})\mathbf{\hat{i}}$$
$$(\nabla\times\mathbf{F})_{2D, zx}=(\frac{\partial F_1}{\partial z}-\frac{\partial F_3}{\partial x})\mathbf{\hat{j}}$$
(어떤 평면에서의 회전을 나타내는 벡터는 그 평면에 수직인 벡터로 주어집니다. 따라서 $yz$평면에서의 회전 벡터는 $\mathbf{\hat{i}}$, $zx$평면에서의 회전 벡터는 $\mathbf{\hat{j}}$로 되는 것입니다.)
최종적으로, 위 결과를 종합하여 3차원 curl을 쓰면 아래와 같습니다.
$$\nabla\times\mathbf{F}=(\frac{\partial F_3}{\partial y}-\frac{\partial F_2}{\partial z})\mathbf{\hat{i}}+(\frac{\partial F_1}{\partial z}-\frac{\partial F_3}{\partial x})\mathbf{\hat{j}}+(\frac{\partial F_2}{\partial x}-\frac{\partial F_1}{\partial y})\mathbf{\hat{k}}$$
그런데 이 식은 꽤나 복잡해 보입니다. 그치만 우리는 델 연산자를 $\nabla=\frac{\partial}{\partial x}\mathbf{\hat{i}}+\frac{\partial}{\partial y}\mathbf{\hat{j}}+\frac{\partial}{\partial z}\mathbf{\hat{k}}$로 정의했으므로, 위 식을 외적을 사용하여 아래와 같이 편하게 표기할 수 있는 것이죠.
$$\nabla\times\mathbf{F}=\begin{vmatrix} \mathbf{\hat{i}} & \mathbf{\hat{j}} & \mathbf{\hat{k}} \\ \frac{\partial}{\partial x} & \frac{\partial}{\partial y} & \frac{\partial}{\partial z} \\ F_1 & F_2 & F_3 \end{vmatrix}$$
크. 이게 훨씬 깔끔한 것 같습니다.
Curl이 회전하는 정도를 나타내는 것은 알겠습니다. 그러면 이제 정확히 어떤 값이 나오는지를 살펴보려고 합니다.
$z$축을 중심축으로 도는 원판 위의 한 점을 생각해봅시다. 이 점의 위치벡터는 $\mathbf{r}=x\mathbf{\hat{i}}+y\mathbf{\hat{j}}$이고, 각속도 벡터는 $\vec{\omega}=\omega\mathbf{\hat{k}}$입니다. 그렇다면 이 점에서의 속도 벡터 $\mathbf{v}=\vec{\omega}\times\mathbf{r}=\begin{vmatrix} \mathbf{\hat{i}} & \mathbf{\hat{j}} & \mathbf{\hat{k}} \\ 0 & 0 & \omega \\ x &y & 0 \end{vmatrix}=(-y\omega)\mathbf{\hat{i}}+(x\omega)\mathbf{\hat{j}}$입니다.
이 속도 벡터 $mathbf{v}$에 대해 curl 연산을 적용해보면,
$$\nabla\times\mathbf{v}=\begin{vmatrix} \mathbf{\hat{i}} & \mathbf{\hat{j}} & \mathbf{\hat{k}} \\ \frac{\partial}{\partial x} & \frac{\partial}{\partial y} & \frac{\partial}{\partial z} \\ -y\omega & x\omega & 0 \end{vmatrix}=\frac{\partial}{\partial x}(x\omega)+\frac{\partial}{\partial y}(y\omega)=2\omega$$
즉, curl 연산의 결과는 회전 각속도의 2배입니다.
Curl 연산을 사용할 때 생각해야 할 것이 하나 있습니다. Curl 연산은 한 점에서의 회전량을 나타내는 연산입니다. 전체적으로는 회전하고 있더라도, 그 점에서의 회전이 0이라면 curl의 결과도 0이라는 것이죠. 예를 들어, 원운동을 하는 강물이 있을 때 중심 점에서만 curl이 0이 아니고 그 외 점에서는 0이라면 그 강물 위 종이배는 회전(자전) 없이 강물을 따라 원운동만 하다가 중심에 도달하면 회전(자전)을 한다는 것입니다.
이렇게 회전(curl)에 대해 다루어 보았습니다. 복잡해 보일 수 있지만, 연산 자체가 신기하기도 하고, 앞으로 나올 신기한 벡터 해석학의 여러 정리를 이해하는데 필수적이기 때문에 반드시 넘어가야할 산인 것 같습니다.
'수학 > 벡터 해석학' 카테고리의 다른 글
[벡터 해석학] Hessian Matrix (1) | 2023.09.15 |
---|---|
[벡터 해석학] Jacobian Matrix (1) | 2023.08.24 |
[벡터 해석학] 델 연산자 (Del Operator) - (3) 발산 (Divergence) (2) | 2023.08.06 |
[벡터 해석학] 델 연산자 (Del Operator) - (2) 그래디언트 (Gradient) (1) | 2023.08.04 |
[벡터 해석학] 델 연산자 (Del Operator) - (1) 델 연산자 소개 (1) | 2023.08.02 |