홀로노믹 구속 조건

고전역학에서, **홀로노믹 구속 조건**()은 위치 변수(및 시간) 사이의 관계로 다음과 같은 형태로 표현될 수 있다.

f(u_1, u_2, u_3,\ldots, u_n, t) = 0

여기서 \{ u_1, u_2, u_3, \ldots, u_n \}는 시스템을 기술하는(구속되지 않은 위상 공간에서)  일반화 좌표이다. 예를 들어, 구 표면에 놓이도록 구속된 입자의 운동은 홀로노믹 구속 조건을 따르지만, 입자가 중력의 영향으로 구에서 떨어질 수 있다면 구속 조건은 비홀로노믹이 된다. 첫 번째 경우, 홀로노믹 구속 조건은 다음 방정식으로 주어질 수 있다.

r^2 - a^2 = 0

여기서 r은 반지름 a인 구의 중심으로부터의 거리이며, 두 번째 비홀로노믹 경우는 다음으로 주어질 수 있다.

r^2 - a^2 \geq 0

다음과 같은 속도 의존 구속 조건(또한 반홀로노믹 구속 조건이라고도 함)은

f(u_1,u_2,\ldots,u_n,\dot{u}_1,\dot{u}_2,\ldots,\dot{u}_n,t)=0

일반적으로 홀로노믹이 아니다.

## 홀로노믹 시스템
고전역학에서 시스템은 시스템의 모든 구속 조건이 홀로노믹인 경우 **홀로노믹**()으로 정의될 수 있다. 구속 조건이 홀로노믹이려면 함수로 표현될 수 있어야 한다.
 f(u_1,\ u_2,\ u_3,\ \ldots,\ u_n,\ t)=0, \, 
즉, **홀로노믹 구속 조건**은 좌표 u_j에만 의존하며 시간 t에 의존할 수도 있다. 속도나 t에 대한 어떤 고차 미분에도 의존하지 않는다. 위에 제시된 형태로 표현될 수 없는 구속 조건은 비홀로노믹 구속 조건이다.

### 서론
위에서 설명했듯이 홀로노믹 시스템은 (간단히 말해) 시스템의 구성 요소 위치 변화만을 시간 경과에 따라 알면 시스템의 상태를 추론할 수 있는 시스템이며, 속도나 구성 요소들이 서로 상대적으로 움직인 순서를 알 필요가 없다. 이와 대조적으로, 비홀로노믹 시스템은 종종 시스템의 상태 변화를 결정하기 위해 시간 경과에 따른 구성 요소의 속도를 알아야 하는 시스템이거나, 움직이는 부분이 실제 또는 상상의 구속 표면에 묶일 수 없는 시스템이다. 홀로노믹 시스템의 예로는 갠트리 크레인, 진자, 로봇 팔 등이 있다. 비홀로노믹 시스템의 예로는 세그웨이 PT, 외발자전거, 자동차 등이 있다.

### 용어
**구성 공간** \mathbf{u}는 시스템 구성 요소의 변위를 자유도별로 하나씩 나열한다. 구성 공간을 사용하여 설명할 수 있는 시스템을 경성이라고 한다.

 \mathbf{u}=\begin{bmatrix}u_1 & u_2 &\ldots& u_n \end{bmatrix}^\mathrm{T} 

**사건 공간**은 구성 공간과 동일하지만, 시스템의 시간 경과에 따른 변화를 나타내기 위해 변수 t가 추가된다(시스템을 설명하는 데 필요한 경우). 구성 공간만으로 설명할 수 없고 사건 공간을 사용하여 설명해야 하는 시스템을 류동성이라고 한다. 많은 시스템은 경성으로도 류동성으로도 설명할 수 있다. 예를 들어, 진자의 전체 허용 운동은 경성 구속 조건으로 설명할 수 있지만, 진자의 시간 경과에 따른 운동은 류동성 구속 조건으로 설명해야 한다.

 \mathbf{u} = \begin{bmatrix}u_1 & u_2 &\ldots& u_n & t\end{bmatrix}^\mathrm{T} 

**상태 공간** \mathbf{q}는 구성 공간에 구성 공간의 각 항의 속도를 나타내는 항이 추가된 것이다.

 \mathbf{q}=\begin{bmatrix}\mathbf{u} \\\mathbf{\dot{u}} \end{bmatrix}=\begin{bmatrix}u_1 &\ldots& u_n & \dot{u}_1&\ldots& \dot{u}_n\end{bmatrix}^\mathrm{T} 

**상태-시간 공간**은 시간 t를 추가한다.

 \mathbf{q} = \begin{bmatrix}\mathbf{u} \\\mathbf{\dot{u}} \end{bmatrix}=\begin{bmatrix}u_1 &\ldots& u_n & t&\dot{u}_1&\ldots& \dot{u}_n\end{bmatrix}^\mathrm{T} 

### 예시
#### 갠트리 크레인
섬네일|축이 표시된 갠트리 크레인의 그래픽
오른쪽에 표시된 것처럼, 갠트리 크레인은 화살표로 표시된 3개 축으로 후크를 움직일 수 있는 오버헤드 크레인이다. 직관적으로 우리는 크레인이 홀로노믹 시스템이어야 한다고 추론할 수 있다. 왜냐하면 구성 요소의 주어진 움직임에 대해, 구성 요소가 움직이는 순서나 속도는 중요하지 않기 때문이다. 즉, 주어진 시작 조건에서 각 구성 요소의 총 변위가 동일하다면, 모든 부품과 시스템 전체는 동일한 상태로 끝날 것이다. 수학적으로 이것을 다음과 같이 증명할 수 있다.

시스템의 구성 공간을 다음과 같이 정의할 수 있다.
\mathbf{u} = \begin{bmatrix} x \\ y \\ z \end{bmatrix}

크레인의 각 구성 요소가 "0" 위치에서 벗어난 정도를 파란색, 녹색, 주황색 구성 요소에 대해 각각 B, G, O라고 말할 수 있다. 좌표계의 방향과 배치는 시스템이 홀로노믹인지 여부에는 중요하지 않지만, 이 예시에서는 구성 요소가 축과 평행하게 움직인다. 좌표계의 원점이 크레인의 뒤쪽-아래쪽-왼쪽에 있다면, 위치 구속 방정식은 다음과 같이 쓸 수 있다.
(x-B) + (y-G) + (z-(h-O)) = 0

여기서 h는 크레인의 높이이다. 선택적으로, 모든 상수를 변수 뒤에 놓는 표준 형태로 간소화할 수 있다.
x+y+z-(B+G+h-O) = 0

홀로노믹 형태로 구속 방정식을 유도했으므로(특히, 우리의 구속 방정식은 f(x, y, z) = 0 형태를 가지며 \{x, y, z\} \in \mathbf{u}이다), 이 시스템이 홀로노믹이어야 함을 알 수 있다.

#### 진자
frame|right|단순 진자
오른쪽에 표시된 것처럼, 단순 진자는 추와 끈으로 구성된 시스템이다. 끈은 위쪽 끝이 고정점에 부착되어 있고, 아래쪽 끝은 추에 부착되어 있다. 늘어나지 않는 끈의 길이는 일정하다. 이 시스템은 다음 홀로노믹 구속 조건을 따르기 때문에 홀로노믹이다.

 {x^2+y^2} - L^2=0, 

여기서 (x,\ y)는 추의 위치이고 L은 끈의 길이이다.

#### 강체
강체의 입자들은 다음 홀로노믹 구속 조건을 따른다.

(\mathbf{r}_i - \mathbf{r}_j)^2 - L_{ij}^2=0, \, 

여기서 \mathbf{r}_i, \mathbf{r}_j는 각각 입자 P_i와 P_j의 위치이고, L_{ij}는 그들 사이의 거리이다. 주어진 시스템이 홀로노믹이라면, 시스템 구성 요소에 추가 부품을 강체적으로 부착해도 비홀로노믹이 되지 않는다. (즉, 자유도가 줄어들지 않는다고 가정하면, 다시 말해 구성 공간이 변하지 않는다고 가정하면 말이다.)

### 퍼피안 형식

구속 조건의 다음 미분 형식을 고려해보자.

\sum_j\ A_{ij} \, du_j+A_i \, dt=0

여기서 A_{ij},A_i는 i번째 구속 방정식에 대한 미분 du_j,dt의 계수이다. 이 형식을 **퍼피안 형식**() 또는 **미분 형식**()이라고 한다.

만약 미분 형식이 적분 가능하다면, 즉, 다음 등식을 만족하는 함수 f_i(u_1,\ u_2,\ u_3,\ \ldots,\ u_n,\ t)=0가 있다면,

df_i=\sum_j\ A_{ij} \, du_j+A_i \, dt=0

이 구속 조건은 홀로노믹 구속 조건이다. 그렇지 않으면 비홀로노믹이다. 따라서 모든 홀로노믹 구속 조건과 일부 비홀로노믹 구속 조건은 미분 형식을 사용하여 표현될 수 있다. 이 방식으로 표현될 수 없는 비홀로노믹 구속 조건의 예로는 일반화된 속도에 의존하는 것들이 있다. 퍼피안 형식의 구속 방정식에서, 구속 조건이 홀로노믹인지 비홀로노믹인지는 퍼피안 형식이 적분 가능한지 여부에 달려 있다. 퍼피안 형식 구속 조건의 적분 가능성(또는 불가능성)을 확인하는 테스트에 대한 설명은 아래 홀로노믹 구속 조건에 대한 범용 테스트를 참조하라.

### 홀로노믹 구속 조건에 대한 범용 테스트

시스템의 구속 방정식이 퍼피안 구속 조건 형태로 작성될 때, 시스템이 홀로노믹인지 여부를 결정하는 수학적 테스트가 존재한다.

하나의 구속 방정식 또는 i개의 구속 방정식 세트에 대해 (시간을 나타내는 변수도 포함될 수 있음에 유의한다. 위에서 A_i\in A_{ij}이고 \, dt \in du_j인 형태이다):
\sum_j^n\ A_{ij} \, du_j=0; \, 

다음 테스트 방정식을 사용할 수 있다.
A_\gamma\left(\frac{\partial A_\beta}{\partial u_\alpha}-\frac{\partial A_\alpha}{\partial u_\beta}\right) + A_\beta \left(\frac{\partial A_\alpha}{\partial u_\gamma} - \frac{\partial A_\gamma}{\partial u_\alpha}\right) + A_\alpha \left(\frac{\partial A_\gamma}{\partial u_\beta} - \frac{\partial A_\beta}{\partial u_\gamma}\right) = 0
여기서 \alpha,\beta,\gamma=1,2,3\ldots n이며, 각 구속 방정식에 대해 \binom n 3 = \frac{n(n-1)(n-2)}{6}개의 테스트 방정식 조합이 모든 i개의 구속 방정식 세트에 대해 존재한다.

다시 말해, 세 변수로 구성된 시스템은 구속 방정식의 \alpha, \beta, \gamma 항이 1, 2, 3 항인 하나의 테스트 방정식으로 한 번 테스트되어야 하지만 (순서는 상관없다), 네 변수로 구성된 시스템을 테스트하려면 \alpha, \beta, \gamma 항이 구속 방정식의 1, 2, 3, 1, 2, 4, 1, 3, 4, 2, 3, 4 항인 네 개의 다른 테스트 방정식으로 최대 네 번 테스트되어야 한다 (각 테스트에서 순서는 상관없다). 다섯 변수로 구성된 시스템의 경우, 그 사실을 확인하기 위해 홀로노믹 시스템에서 열 번의 테스트를 수행해야 하며, 세 개의 구속 방정식 세트가 있는 다섯 변수 시스템의 경우 서른 번의 테스트를 수행해야 한다 (변수 변경과 같은 단순화가 수행되어 그 수를 줄일 수 없다고 가정한다). 이러한 이유로, 세 변수 이상 시스템에 이 방법을 사용할 때는 해당 시스템이 홀로노믹인지 여부에 대한 상식을 사용하는 것이 좋으며, 시스템이 그렇지 않을 가능성이 있는 경우에만 테스트를 진행하는 것이 좋다. 또한, 어떤 테스트가 먼저 실패할지 예측하고 그것부터 시작하여 성공할 가능성이 있는 테스트는 처음에는 건너뛰는 것이 수학적 직관을 사용하는 것이 가장 좋다.

모든 테스트 방정식이 모든 구속 방정식에 대한 모든 조합 세트에서 참이면 시스템은 홀로노믹이다. 단 하나의 테스트 조합이라도 거짓이면 시스템은 비홀로노믹이다.

#### 예시
퍼피안 형식의 구속 방정식으로 설명되는 다음 동적 시스템을 고려해보자.
\cos(\theta) dx + \sin(\theta)dy + \left[y\cos(\theta) - x\sin(\theta)\right] d\theta = 0

검사를 통해 구성 공간은  \mathbf{u}=\begin{bmatrix}x & y & \theta \end{bmatrix}^\mathrm{T} 임을 알 수 있다. 구성 공간에 세 개의 항만 있기 때문에 하나의 테스트 방정식만 필요할 것이다.
대입을 위해 구속 방정식의 항을 다음과 같이 정리할 수 있다.
A_\alpha =\cos\theta
A_\beta = \sin\theta
A_\gamma = y\cos\theta-x\sin\theta
u_\alpha = dx
u_\beta = dy
u_\gamma = d\theta

항들을 대입하면, 우리의 테스트 방정식은 다음과 같이 된다.
\left(y\cos\theta - x\sin\theta\right) \left[\frac{\partial}{\partial x}\sin\theta - \frac{\partial}{\partial y}\cos\theta\right] + \sin\theta \left[\frac{\partial}{\partial \theta}\cos\theta - \frac{\partial}{\partial x}(y\cos\theta-x\sin\theta)\right] + \cos\theta \left[\frac{\partial}{\partial y}(y\cos\theta - x\sin\theta) - \frac{\partial}{\partial \theta}\sin\theta\right] = 0

모든 편미분을 계산한 후, 우리는 다음을 얻는다.
(y\cos\theta - x\sin\theta) \left[0 - 0\right] + \sin\theta \left[-\sin\theta-(-\sin\theta)\right] + \cos\theta \left[\cos\theta-\cos\theta\right] = 0

간단히 하면 다음과 같다.
0=0
우리의 테스트 방정식이 참임을 알 수 있으므로, 시스템은 홀로노믹이어야 한다.

테스트를 마쳤지만, 이제 시스템이 홀로노믹임을 알았으므로 홀로노믹 구속 방정식을 찾고자 할 수 있다. 퍼피안 형식의 각 항을 적분하여 하나의 방정식으로 통합하려고 시도할 수 있으며, 다음과 같이 된다.
\int \cos\theta \, dx = x\cos\theta + f(y, \theta)
\int \sin\theta \, dy = y\sin\theta + f(x, \theta)
\int \left(y\cos\theta - x\sin\theta\right) d\theta = y\sin\theta + x\cos\theta + f(x, y)

적분 결과를 결합하여 홀로노믹 구속 방정식을 찾는 것은 쉽다.
y\sin\theta+x\cos\theta+C = 0
여기서 C는 적분 상수이다.

#### 상수 계수의 구속 조건
모든 미분 계수가 상수인 주어진 퍼피안 구속 조건, 다시 말해 다음 형식의 구속 조건:
\sum_j\ A_{ij} \, du_j+A_i \, dt=0; \;\{A_{ij}, A_{i} ;\,j = 1,2,\ldots;\,i = 1,2,\ldots\}\in\mathbb{R}

이 구속 조건은 홀로노믹이어야 한다.

다음과 같이 이를 증명할 수 있다: 위에서 설명한 것처럼 모든 미분 계수가 상수인 퍼피안 형식의 구속 시스템을 고려하자. 이 구속 시스템이 홀로노믹인지 테스트하기 위해 범용 테스트를 사용한다. 테스트 방정식에는 합이 0이어야 하는 세 개의 항이 있음을 알 수 있다. 따라서 모든 가능한 테스트 방정식의 세 항 각각이 0이라면, 모든 테스트 방정식은 참이며 시스템은 홀로노믹이다. 각 테스트 방정식의 각 항은 다음과 같은 형태이다.
A_3\left(\frac{\partial A_2}{\partial u_1} - \frac{\partial A_1}{\partial u_2}\right)
여기서:
*A_1, A_2, A_3는 주어진 구속 조건 i에 대한 A_{ij};\,j = 1,2,\ldots와 A_{i}의 조합(총 \binom n 3 = n (n - 1) (n - 2) / 6개의 조합)이다.
*u_1, u_2, u_3는 u_j;\,j = 1,2,\ldots와 dt의 해당 조합이다.
또한, i개의 테스트 방정식 세트가 있다.

우리는 정의상 모든 A_n이 상수임을 알 수 있다. 미적분학에서 어떤 상수의 어떤 미분(전미분 또는 편미분)도 0이라는 것은 잘 알려져 있다. 따라서 각 편미분을 다음과 같이 줄일 수 있다.
A_3\big(0-0\big)

따라서 각 항은 0이고, 각 테스트 방정식의 좌변은 0이며, 각 테스트 방정식은 참이고 시스템은 홀로노믹이다.

#### 두 개 또는 한 개의 변수로 이루어진 구성 공간
퍼피안 구속 조건으로 설명될 수 있고 구성 공간 또는 상태 공간에 두 개 또는 한 개의 변수만 있는 모든 시스템은 홀로노믹이다.

이를 다음과 같이 증명할 수 있다. 다음과 같이 설명되는 구성 공간 또는 상태 공간을 가진 동적 시스템을 고려해보자.
 \mathbf{u}=\begin{bmatrix}u_1 & u_2 \end{bmatrix}^\mathrm{T} 

만약 시스템이 상태 공간으로 설명된다면, 우리는 단순히 u_2가 우리의 시간 변수 t와 같다고 말한다. 이 시스템은 퍼피안 형식으로 다음과 같이 설명될 것이다.
A_{i1} \, du_1 + A_{i2} \, du_2=0

i개의 구속 조건 세트를 갖는다. 시스템은 범용 테스트를 사용하여 테스트될 것이다. 그러나 범용 테스트는 구성 또는 상태 공간에 세 개의 변수를 필요로 한다. 이를 수용하기 위해, 우리는 단순히 구성 또는 상태 공간에 더미 변수 \lambda를 추가하여 다음을 형성한다.
 \mathbf{u}=\begin{bmatrix}u_1 & u_2 & \lambda\end{bmatrix}^\mathrm{T}

더미 변수 \lambda는 정의상 시스템의 어떤 것도 측정하지 않으므로, 퍼피안 형식에서 그 계수는 0이어야 한다. 따라서 우리는 퍼피안 형식을 다음과 같이 수정한다.
A_{i1} \, du_1 + A_{i2} \, du_2 + 0 \, d\lambda = 0

이제 우리는 다음과 같이 테스트를 사용할 수 있다. 구속 조건 세트가 있는 경우 주어진 구속 조건 i에 대해:
0 \left(\frac{\partial A_{i2}}{\partial u_1} - \frac{\partial A_{i1}}{\partial u_2}\right) + A_{i2} \left(\frac{\partial A_{i1}}{\partial \lambda} - \frac{\partial}{\partial u_1}0\right) + A_{i1} \left(\frac{\partial}{\partial u_2} 0 - \frac{\partial A_{i2}}{\partial \lambda}\right) = 0

:\frac{\partial}{\partial \lambda} f(u_1, u_2) = 0임을 깨달으면, 더미 변수 \lambda가 시스템을 설명하는 데 사용되는 계수에 나타날 수 없기 때문에, 테스트 방정식이 모든 구속 방정식 세트에 대해 참이어야 하므로 시스템은 홀로노믹이어야 한다. 구성 또는 상태 공간에 하나의 실제 변수와 두 개의 더미 변수를 사용하여 유사한 증명을 수행하여 퍼피안 형식으로 설명될 수 있는 1자유도 시스템도 항상 홀로노믹임을 확인할 수 있다.

결론적으로, 퍼피안 형식으로 비홀로노믹 시스템을 모델링하는 것이 가능하더라도, 두 개 이하의 자유도(자유도 수는 구성 공간의 항 수와 같음)를 가진 퍼피안 형식으로 모델링할 수 있는 모든 시스템은 홀로노믹이어야 한다는 것을 알 수 있다.

**중요 참고:** 테스트 방정식이 실패한 이유는 더미 변수와 따라서 테스트에 포함된 더미 미분이 실제 구성 또는 상태 공간 변수의 함수인 모든 것을 0으로 미분하기 때문이다. 다음 구성 또는 상태 공간을 가진 시스템:
 \mathbf{u}=\begin{bmatrix}u_1 & u_2 & u_3\end{bmatrix}^\mathrm{T}

그리고 하나 이상의 구속 조건이 퍼피안 형식인 구속 조건 세트:
A_{i1} du_1+A_{i2} du_2+0du_3=0

시스템이 홀로노믹임을 보장하지 않는다. 비록 하나의 미분 계수가 0이라 하더라도, 구성 또는 상태 공간에 설명된 자유도가 여전히 세 개이기 때문이다.

### 독립적인 일반화 좌표로의 변환
홀로노믹 구속 방정식은 시스템의 일부 종속 변수를 쉽게 제거하는 데 도움이 될 수 있다. 예를 들어, 구속 방정식 f_i의 매개변수인 x_d를 제거하려면, 가능하다고 가정하고 방정식을 다음 형태로 재배열할 수 있다.

x_d=g_i(x_1,\ x_2,\ x_3,\ \dots,\ x_{d-1},\ x_{d+1},\ \dots,\ x_N,\ t), \, 

그리고 위의 함수를 사용하여 시스템의 모든 방정식에서 x_d를 대체한다. 이것은 일반적으로 물리 시스템에 대해 항상 수행될 수 있는데, f_i의 미분이 연속적이라면 음함수 정리에 의해 해 g_i가 어떤 열린집합에서 보장된다. 따라서 종속 변수 x_d의 모든 발생을 제거하는 것이 가능하다.

물리 시스템에 N개의 자유도가 있다고 가정하자. 이제 시스템에 h개의 홀로노믹 구속 조건이 부과된다. 그러면 자유도의 수는 m=N - h로 줄어든다. 시스템의 운동을 완전히 설명하기 위해 m개의 독립적인 일반화 좌표 (q_j)를 사용할 수 있다. 변환 방정식은 다음과 같이 표현될 수 있다.

x_i=x_i(q_1,\ q_2,\ \ldots,\ q_m,\ t)\ ,\qquad i=1,\ 2,\ \ldots N. \, 

### 물리 시스템의 분류
고전 물리학을 엄격하고 체계적으로 연구하려면 시스템을 분류해야 한다. 이전 논의를 바탕으로 물리 시스템을 홀로노믹 시스템과 비홀로노믹 시스템으로 분류할 수 있다. 많은 정리와 방정식의 적용 가능성 조건 중 하나는 시스템이 홀로노믹 시스템이어야 한다는 것이다. 예를 들어, 물리 시스템이 홀로노믹 시스템이고 모노제닉 시스템이라면, 해밀턴의 원리는 라그랑주 방정식의 정확성에 대한 필요충분조건이다.

## 같이 보기
* 비홀로노믹 시스템
* 고랴체프-차플리긴 탑
* 퍼피안 구속 조건
* 우드와디아-칼라바 방정식

## 각주

분류:고전역학