정준 변환 심화 — 흐름은 변환이고, 변환은 흐름이다
정준 변환 심화 — 흐름은 변환이고, 변환은 흐름이다
해밀턴 흐름은 그 자체가 정준 변환이며, 정준 변환은 어떤 함수가 만들어 내는 짧은 흐름이다 — 두 개념이 같은 것임을 심플렉틱 형식으로 묶어 본다.
들어가며
I권 11장에서 우리는 정준 변환(canonical transformation, 이하 CT)을 생성함수 의 관점에서 정의했다. 그 정의는 형식적으로 깔끔했지만, 한 가지 갈증을 남겨 두었다 — 어째서 그 네 함수가 CT를 만들어 내는 일등 공신인가. 답은 간단치 않다. 생성함수의 정체는 사실 더 깊은 한 사실의 그림자 다. 그 사실이 이 장의 주인공이다. 한 문장으로 적으면 “해밀턴 흐름과 정준 변환은 같은 것을 다른 시점에서 본 두 그림이다.” 이 장은 같은 대상에 기하학적 옷을 입힌다.
핵심 주장은 두 줄이다. 첫째, 모든 해밀턴 흐름은 CT이다 — 시간 발전 그 자체가 정준 변환의 1-매개변수 가족을 이룬다는 뜻이다. 단진자가 시간 동안 움직였을 때 위상공간의 점이 옮겨 간 자리는, 처음 점에서 그 자리로 가는 정준 변환을 정의한다. 둘째, 모든 무한소 CT는 어떤 함수 가 만들어 내는 해밀턴 흐름이다 — 무한히 작은 정준 변환을 잡으면 그것을 만들어 내는 위상공간 위의 함수가 항상 하나 존재한다는 뜻이다. 두 줄을 합치면 결론은 한 줄이다 — 함수가 흐름을 만들고, 흐름이 변환이고, 변환이 함수에 대응한다.
이 장을 끝내면 독자는 ” 의 생성자가 곧 해밀토니안이다”라는 한 줄을 자기 언어로 풀어 말할 수 있을 것이다. 이 한 줄은 처음에는 외계어처럼 들리지만, 본론 3을 다 거치고 나면 의외로 단순한 한 가지 사실의 압축이라는 것을 알게 된다. 은 심플렉틱 변환들이 이루는 군이고, 그 군 안에서 무한히 작은 한 발짝 을 만드는 양이 위상공간 위의 함수 — 즉 해밀토니안의 자격을 가진 양 — 이다. 군의 원소(유한한 변환) 하나하나가 어떤 함수가 만들어 내는 짧은 흐름 의 누적이라는 그림이 잡힌다.
미리 학습의 자세 한 가지를 정리해 두자. 이 장에서는 미분형식·내부곱·리 미분 같은 단어가 등장한다. 학부 1·2학년이 처음 마주치는 단어들이고, 처음에는 어렵게 느껴질 수 있다. 다행히 이 장에서 쓰는 사용 방식은 증명 보다 직관 에 가깝다 — 형식의 풀 정의는 일단 옆에 두고, “이 기호는 부호 있는 면적”, “저 연산은 텐서 한 슬롯을 채우는 짓” 같은 한 문장 그림을 잡고 가는 데 집중한다. 본론 2의 카르탕 공식 한 줄을 따라가 보면, 정작 손에 들어와야 하는 결론 — ” 가 흐름을 따라 변하지 않는다” — 은 두 항이 둘 다 0이 되는 한 줄짜리 계산이다. 단어가 무서워도 결론은 단순하다는 것을 잊지 말자.
I권의 풍경 — 라그랑지안 → 르장드르 변환 → 해밀턴 → 푸아송 — 이 끝나는 자리에서 1장의 해밀턴–야코비가 한 발 더 나갔다면, 이 장은 옆 골목으로 한 발 들어가는 셈이다. 1장은 작용 라는 함수 하나 가 운동 전체를 어떻게 담는지를 본 장이었고, 이 장은 정준 변환·해밀턴 흐름·심플렉틱 형식이라는 세 개념이 어떻게 한 가지 사실의 세 얼굴 인지를 본다. 3장의 작용·각변수는 정확히 이 장의 결론을 다차원 적분 가능계에 적용한 결과다. 그러니 이 장은 1장의 옆이자 3장의 앞에 놓인다.
본론은 셋이다. 본론 1은 I권 11장에서 적었던 CT 정의를 — 생성함수 그림에서 한 발 떨어져 — 심플렉틱 2-형식의 보존 이라는 한 줄로 다시 적는다. 야코비안이 심플렉틱 행렬이라는 조건과 푸아송 괄호가 정준 관계를 유지한다는 조건이 같은 사실의 두 얼굴임을 본다. 본론 2는 해밀턴 흐름 가 모든 에 대해 CT임을 카르탕 공식 한 줄로 보인다. 본론 3은 거꾸로, 위상공간 위의 함수 가 어떻게 무한소 CT를 만들어 내는지를 보고, 그렇게 만들어지는 변환들이 이루는 군 — 심플렉틱 군 — 의 정체를 소개한다. 조화진동자 한 예에서 시간 발전이 곧 위상공간 회전이라는 점이 깨끗이 떨어지는데, 그 한 예가 이 장 전체의 결론을 한 손에 쥐어 준다.
한 가지 더 미리 적어 두자. 이 장의 결론은 단순히 “정준 변환의 다른 정의” 한 줄을 더 알아 두자는 정도가 아니다. 흐름·변환·함수 세 가지가 한 그림 안에서 묶인다는 사실은, 나중에 양자역학에서 단위원적(unitary) 변환·해밀토니안·유니터리 군 의 관계로 그대로 옮겨 간다. 고전 해석역학에서 — 위상공간 위의 함수 — 가 짧은 흐름을 만들었듯, 양자역학에서 — 힐버트 공간 위의 에르미트 연산자 — 가 짧은 유니터리 변환 을 만든다. 그 유니터리 변환의 군 이 양자역학의 자리에 들어선다. 두 그림이 정확히 평행한 모양인데, 그 평행성이 학부 양자역학을 처음 마주칠 때 사고의 한 다리가 되어 준다. 이 장의 그림은 그 다리의 고전 쪽 난간 이라고 생각하면 충분하다.
본론 1 — 복습과 시점 전환
I권에서 CT란 새 좌표 가 다시 해밀턴 형식을 따르도록 하는 좌표 변환이었다. 더 정확하게 적으면, 옛 좌표 에서 해밀턴 방정식이 성립할 때 새 좌표 에서도 어떤 새 해밀토니안 에 대해 , 라는 같은 모양의 식이 성립하는 변환을 CT라 불렀다. I권에서는 이 정의를 만족시키는 생성함수 — 의 네 가지 표준형 — 를 알아 두는 데 시간을 쏟았다. 이번에는 같은 대상을 심플렉틱 형식(symplectic form) 의 보존으로 다시 정의한다.
헷갈리기 쉬운 곳 — CT는 단순한 좌표변환이 아니라 해밀턴 형식을 보존하는 변환이다. “변수만 바꿔 보는 작업”이라는 막연한 이미지가 처음에는 떠오르지만, CT의 정의에는 한 단계 더 까다로운 조건이 붙어 있다. 그저 를 로 임의로 바꿔도 새 좌표에서 해밀턴 방정식이 보장되는 것은 아니다. 가령 , 같은 변환을 잡으면 새 좌표의 운동방정식이 해밀턴 모양에서 벗어난다. CT는 운동방정식의 모양 까지 살려 두는 한정된 변환 집합이고, 그래서 흔히 만나는 좌표 변환의 대부분은 CT가 아니다. 본론 1에서 적을 두 동치 조건은 정확히 그 한정 을 식으로 분명히 적어 주는 도구다.
심플렉틱 2-형식 가 어떤 양인지부터 천천히 잡자. 한 단계 단순한 그림에서 출발하면 어렵지 않다. 평면 위에 작은 평행사변형을 그린다 — 한 변이 벡터 , 다른 변이 인 평행사변형이다. 이 평행사변형의 부호 있는 넓이 가 이다. 이 양은 두 벡터의 순서에 반대칭 이다 — , 즉 변을 거꾸로 잡으면 부호가 뒤집힌다. 이 반대칭성이 의 본질이다. 외적·웨지의 모양이 처음에는 낯설지만, “두 벡터가 만드는 미소 평행사변형의 부호 있는 넓이”라는 그림 하나를 꽉 잡으면 된다. 자유도라면 로 각 평면의 부호 있는 넓이를 합친 양이 된다.
는 위상공간의 각 점에서 두 벡터에 면적을 부여하는 반대칭 2-형식이다 — 직관적으로는 ” 평면 위의 미소 평행사변형 넓이”의 일반화이다. CT는 다음 두 동치 조건 중 어느 쪽으로 잡아도 된다.
(a) 야코비안 행렬 가 심플렉틱이다:
(b) 푸아송 괄호가 옛 변수로 계산해도 정준 관계를 유지한다:
두 조건은 같은 사실의 행렬판과 미분판이다. (a)는 야코비안이라는 행렬 에 조건을 거는 형태이고, (b)는 새 좌표들 사이의 푸아송 대수 에 조건을 거는 형태다. 둘이 같음을 확인하는 길은 한 가지다 — 푸아송 괄호의 정의 를 펴 보면 그 안에 가 숨어 있고, 새 좌표의 푸아송 괄호를 행렬 곱으로 적어 보면 라는 조건이 정확히 떨어진다. 한 번 손으로 따라가 보면, 두 조건이 같은 식의 두 표기 라는 사실이 자연스럽게 들어온다.
헷갈리기 쉬운 곳 — 는 반대칭 행렬이다. 정의 식만 보면 단위 행렬 을 두 개 박아 놓은 모양이 신기해 보이지만, 이 의 역할은 단순하다 — 위치와 운동량을 서로 바꿔치기 하는 회전 같은 행렬이다. 처럼 작동한다. 그래서 이 되고( 라서), 라서 반대칭이다. 이 행렬이 위상공간의 “복소구조” 노릇을 한다 — 을 으로 자연스럽게 묶어 주는 도구라고 보면 된다. 양자역학에서 가 의 1차 결합으로 떨어지는 이유도 따지면 이 의 구조 안에 있다.
헷갈리기 쉬운 곳 — 심플렉틱 행렬과 직교 행렬은 형이 다르다. 한 글자 차이로 식이 두 종류로 갈라진다 — 직교 행렬은 , 심플렉틱 행렬은 . 직교는 길이와 각도 를 보존하는 변환의 군 () 이고, 심플렉틱은 부호 있는 면적 을 보존하는 변환의 군 () 이다. 같은 ” = 무엇”꼴이지만 가운데에 가 들어가면 길이 보존, 가 들어가면 면적 보존이라는 결론으로 갈라진다. 회전 변환(직교군의 원소)이 길이를 살리듯, 정준 변환(심플렉틱군의 원소)이 위상공간의 면적을 살린다는 그림이다. 두 군의 차원이 다르다는 점도 짚어 두자 — 은 차원, 은 차원이다. 일 때 의 차원이 3이라 과 같다는 사실도 같은 식이 둘 다 행렬식 1을 함의하기 때문이다.
이제 흐름이라는 대상에 이 잣대를 들이댄다. 본론 1의 시점이 잡혔으니, 본론 2에서 해밀턴 흐름이 (a)와 (b) 중 어느 한쪽 — 사실 둘 다 — 을 만족함을 보이는 일이 남았다. 핵심은 흐름이 시간에 대해 매끄럽게 변하므로, 야코비안의 시간 미분을 분석해 심플렉틱 조건이 흐름을 따라 보존됨 을 보이는 길이 열린다는 사실이다. 이를 위해 한 가지 새 도구 — 리 미분 — 를 들여와야 하는데, 어렵게 느낄 필요는 없다. 리 미분은 “벡터장을 따라 끌고 갈 때 텐서가 어떻게 변하는지”를 재는 미분일 뿐이고, 본론 2에서 한 줄짜리 카르탕 공식으로 답이 떨어진다.
본론 2 — 흐름은 그 자체로 CT다
해밀토니안 가 정의하는 해밀턴 벡터장 는 라는 한 줄로 정의된다. 여기서 는 내부곱(interior product) — 2-형식에 벡터를 하나 끼워 넣어 1-형식으로 줄이는 연산이다. 2-형식은 두 벡터에 수를 대응시키는데, 그중 한 자리에 를 고정시켜 채우고 나머지 한 자리만 비워 두면, 남은 한 벡터에 수를 대응시키는 1-형식이 된다. 그 1-형식이 — 즉 의 그래디언트의 음수 — 와 같다는 것이 의 정의이고, 이걸 좌표로 풀어 보면 라는 익숙한 해밀턴 방정식 우변이 떨어진다. 즉 는 위상공간의 각 점에 화살표를 하나씩 꽂은 그림이고, 그 화살표를 따라 점이 이동하는 운동이 해밀턴 운동이다.
헷갈리기 쉬운 곳 — 내부곱 는 텐서의 슬롯 하나를 채우는 연산이다. 텐서를 “여러 벡터를 입력으로 받아 수를 내놓는 기계”라고 보면, 2-형식 는 슬롯이 둘 인 기계다. 거기에 벡터 를 한 쪽 슬롯에 박아 넣으면 슬롯 하나가 사라지고 1-형식 — 슬롯 하나짜리 기계 — 가 된다. 이 작업이 내부곱이다. 좌표로 풀면 이고, 이면 가 된다. 한 단어로 적자면 “쐐기에 한 자리 채우기”다. 처음에는 추상적이지만, ” 를 첫 슬롯에 박았다”라는 그림만 잡고 식을 따라가면 결국 좌표 표현에서 두 차원이 한 차원으로 줄어드는 작업임이 보인다.
의 흐름 — 즉 가 정의하는 미분방정식의 해 — 을 라고 부른다. 이 가 위상공간의 점 를 시간 후의 점 로 보내는 사상이다. 각 마다 위상공간 위의 변환이 하나씩 정해지고, 그 변환들이 처럼 시간을 따라 한 가족을 이룬다. 처음에는 단순히 “운동방정식의 해”라고 부르던 양에 이렇게 변환 의 옷을 입히면, 본론 1의 잣대 — CT 정의 (a), (b) — 가 비로소 들이밀어진다.
주장: 는 모든 에 대해 CT이다.
증명의 골격은 리 미분(Lie derivative) — 벡터장을 따라 흐를 때 텐서가 어떻게 변하는지 재는 미분 — 의 카르탕 공식이다. 리 미분이 무엇인지 잠깐만 그림으로 잡자. 위상공간 위에 텐서 가 깔려 있고, 점이 벡터장 를 따라 흐른다. 그 흐름을 따라 텐서를 끌어 당기는 작업을 매 시각 반복하면, 각 점에서 텐서값이 어떻게 변해 가는지가 추적된다. 변화율을 점 에서 본 값이 리 미분 다. 함수에 대해서는 라는 익숙한 방향 도함수와 같고, 더 일반적인 텐서 — 가령 2-형식 — 에 대해서는 카르탕의 마법 공식 로 깔끔하게 계산된다.
이라서 첫 항이 사라지고, 자체가 닫혀 있어서 이므로 둘째 항도 사라진다. 두 항이 둘 다 0이라는 사실이 결합되어 이 떨어진다. 결과를 한 문장으로 옮기면 — 는 해밀턴 흐름을 따라 변하지 않는다. 따라서 는 흐름을 따라 보존된다. 보존되는 의 야코비안은 자동으로 심플렉틱이고, 본론 1의 조건 (a)에 의해 는 CT이다.
헷갈리기 쉬운 곳 — 은 가 닫힌 2-형식이라는 사실이다. 카르탕 공식의 둘째 항이 사라지는 이유가 한 줄에 그냥 적혀 있어서 깜빡 넘어가기 쉽다. 의 외미분을 손으로 계산해 보면 이 된다( 이므로 두 항이 모두 0). 형식적으로 가 이미 로 한 번 미분된 모양 — 와 의 쐐기 — 이라서, 외미분을 한 번 더 적용하면 사라진다는 사실이다. 이걸 ” 는 닫혀 있다(closed)“고 부르고, 더 강하게 ” 는 정확 한 형식이다 — 꼴로 적힌다 — 그래서 닫혀 있다”고 말할 수도 있다( 가 그 잠재형식). 이 작은 사실이 카르탕 공식 한 줄을 둘째 항 0 으로 끝내 주는 동력이다.
헷갈리기 쉬운 곳 — 흐름이 CT라는 것은 부피 보존(리우빌)의 일반화다. I권의 리우빌 정리는 “위상공간 부피가 해밀턴 흐름을 따라 보존된다”는 사실이었다. 부피란 차원의 측도이고, 식으로 적으면 ( 번 쐐기 곱) 가 그 부피요소다. 이 보였으니, 그 쐐기 곱 도 흐름을 따라 보존된다 — 이게 리우빌 정리다. 하지만 이번 장의 결론은 더 강하다 — 단순히 차원 부피만 보존되는 것이 아니라, 모든 차원 부분 부피 ( 의 적분) 가 보존된다. 가령 인 계에서 단순 부피()뿐 아니라 평면 위의 면적() 도 보존된다. 이 강한 보존 — 모든 차수의 보존 — 이 흐름이 CT 라는 명제의 알맹이다.
진자의 시간 발전이든 케플러 궤도의 전 구간 적분이든, 그 자체가 위상공간 위의 정준 변환의 1-매개변수 가족이라는 뜻이다. “운동을 푸는 일”과 “정준 변환을 만들어 내는 일”이 사실은 같은 작업의 다른 얼굴이다. 운동방정식을 풀어 까지 적분한 결과를 다른 손으로 적으면, “1초간의 단진자 흐름”이라는 한 정준 변환을 손에 쥔 것과 같다. 단진자의 진자가 1초 동안 흔들리면, 위상공간 위의 모든 점이 동시에 그 변환을 받아 새 자리로 옮겨 간다 — 그 옮겨 가는 사상이 정준 변환이다. 1장에서 본 해밀턴–야코비의 작용 가 정확히 이 1-매개변수 정준 변환을 생성함수 의 옷으로 적는 양이라는 사실은 11장에서 본 그대로다. 흐름·변환·작용이 한 그림으로 묶이는 자리다.
여기서 한 번 더 음미할 만한 것은 어느 시점에서 보느냐 의 자유다. 흐름을 적극적인 시점에서 보면 “점이 시간에 따라 움직인다”는 운동의 그림이고, 수동적인 시점에서 보면 “좌표계가 시간에 따라 변환된다”는 변환의 그림이다. 같은 식 , 가 두 시점에서 다 통하지만, 의미가 다르다 — 적극적 시점에서는 점의 자취고, 수동적 시점에서는 좌표계의 가족이다. 본론 2의 결론은 두 시점이 같은 운동을 기술 하기에 둘 다 맞다는 것을 한 줄 더 강하게 적은 것 — 흐름이 심플렉틱 변환 이라는 한 줄. 그러므로 어떤 시점에서 봐도 위상공간의 부호 있는 면적은 살아남는다.
본론 3 — 무한소 CT와
이제 거꾸로 가 보자. 본론 2가 흐름 → 변환 의 방향이었다면, 이번에는 변환 → 흐름 의 방향이다. 위상공간 위의 매끄러운 함수 를 하나 고른다. 이 가 어떤 짧은 변환을 만들어 내는 자격이 있는지 따져 보자. 작은 매개변수 (epsilon)을 써서
라고 정의하면, 이 변환은 까지 심플렉틱 조건을 만족한다. 손으로 한 번 따라가 보자. 새 좌표가 , 이고 야코비안이 의 모양이라면, 의 1차항이 사라져야 심플렉틱 조건이 까지 만족된다. 1차항을 계산하면 이라는 조건인데, 를 로 적은 정의에 대입해 를 직접 구해 보면 정확히 이 조건이 자동으로 떨어진다 — 푸아송 괄호의 반대칭성과 의 반대칭성이 맞물려 떨어지는 결과다. 즉 는 무한소 CT의 생성자 이다.
운동량은 평행이동의 생성자이고, 각운동량은 회전의 생성자라는 익숙한 그림이 그대로 위상공간 전체로 확장된다. 가령 — 단순히 운동량 — 를 잡으면 , , 이 되어 방향으로 만큼 평행이동하는 변환이 떨어진다. 를 잡으면 축 회전이 떨어진다 — 익숙한 노터 정리의 그림이 정확히 무한소 CT 생성자 의 그림과 같은 것이다. 노터에서 “대칭 ↔ 보존량”이라 적었던 한 줄은 더 깊게는 “대칭 변환의 생성자 = 보존량”이라는 한 줄이다 — 그리고 그 생성자가 위상공간 위의 함수 이고, 그게 본론 2의 의미에서 그 자신의 짧은 흐름 을 만들어 낸다는 사실이 합쳐진다.
헷갈리기 쉬운 곳 — 리 군과 리 대수의 대응 — 군의 원소 vs 무한소 생성자. 이 장에서 유한한 변환 과 무한소 변환 이 둘 다 등장한다. 둘의 관계를 한 번 정리하자. 변환들의 집합이 군을 이루면 — 가령 회전 행렬의 집합 가 그렇다 — 그 군의 원소 하나하나는 유한한 회전 이다. 단위원(항등 변환) 근처에서 군을 보면 무한소 회전 들이 보이는데, 이들이 이루는 벡터공간을 리 대수 라 부른다. 회전군 의 리 대수는 3차원 반대칭 행렬 — 즉 3개의 회전 축에 대응하는 작은 회전들 — 이다. 군의 원소(유한한 변환)와 리 대수의 원소(무한소 생성자)는 지수 함수 로 묶인다. 군이 크고 곡선인 다양체라면, 리 대수는 그 군의 단위원에서의 접평면 같은 선형 공간이다. 처음에는 어렵지만, “군의 원소 = 큰 변환 한 개”, “리 대수의 원소 = 작은 변환의 무한소 방향”이라는 한 줄 구분만 잡고 가면 된다.
심플렉틱 조건을 만족하는 실행렬 전체는 군을 이루며, 이를 심플렉틱 군 이라 부른다. 그 리 대수는 정확히 위상공간 위의 이차 함수 ( 는 대칭, )들이 푸아송 괄호 아래 닫혀 있는 공간이다. 한 번 더 풀어 적으면 — 이차 함수 두 개의 푸아송 괄호는 또 이차 함수다. 이 사실이 그 공간을 리 대수 의 자격으로 만들어 준다 — 푸아송 괄호가 리 대수의 곱셈 노릇을 하는 것이다. 의 원소(유한한 심플렉틱 변환)는 어떤 이차 함수가 만들어 내는 무한소 변환을 적분 한 결과이고, 적분이라는 작업이 바로 본론 2의 의미에서 그 이차 함수를 해밀토니안 삼아 푼 유한 시간 흐름 이다.
헷갈리기 쉬운 곳 — 이차 함수가 만드는 무한소 CT가 의 리 대수다. 왜 이차 함수가 특별한가. 야코비안 이 행렬이므로 선형 변환이고, 무한소로는 같은 1차 형태로 떨어진다. 이 1차 변환이 만들어지려면, 생성자 의 도함수가 의 1차여야 한다 — 즉 자체는 2차 다. 일반적인 함수 가 만들어 내는 변환은 비선형이라서 의 원소(선형 심플렉틱 변환)는 아니지만, 국소적으로는 심플렉틱 이다. 정확히 선형 심플렉틱 변환의 군 의 리 대수는 이차 함수만으로 이루어지고, 비선형 변환은 더 큰 군 — 심플렉토모피즘 군 이라 부르는 무한 차원 군 — 에 들어간다. 학부 수준에서는 “이차 = ”, “일반 = 무한 차원”이라는 한 줄 구분만 알아 두면 충분하다.
가장 깔끔한 예 하나. 를 잡으면 무한소 CT는
이고, 이는 평면 위의 각도 회전이다. 좌표가 로 옮겨 가는데, 이걸 행렬로 적으면 이 된다. 이 작으면 이 행렬은 회전 행렬 와 차수까지 같다. 작은 들을 무한히 누적하면 정확한 회전이 떨어진다 — 작은 변환을 적분해 큰 변환을 얻는 본론 3의 그림의 가장 단순한 사례다.
그런데 이 는 정확히 단위 각진동수 조화진동자의 해밀토니안 이다. 즉, “조화진동자의 시간 발전이 위상공간 회전”이라는 그림은 우연이 아니라 흐름과 CT의 동치성 의 가장 단순한 사례이다.
헷갈리기 쉬운 곳 — 조화진동자가 위상공간 회전이라는 사실의 의미. 한 번 더 천천히 적어 두자. 조화진동자의 해밀턴 방정식은 , — 식의 모양 자체가 회전 식이다. 시간을 따라 적분하면 , 즉 위상공간에서 각도 만큼 회전한 점이 된다. 이 사실은 학부 1학년 진동 단원에서 익숙한 회전벡터(phasor) 그림과 정확히 같다. 본론 3의 시점은 이 회전 그림이 우연이 아니라 필연 이라는 것을 말해 준다 — 해밀토니안이 이차 함수 이라서 위상공간 회전이라는 선형 심플렉틱 변환 을 만들어 내고, 그 회전군이 의 한 부분군이다(의 그림). 시간이 흐른다는 것과 위상공간이 회전한다는 것은 같은 일이다 — 이 일치가 조화진동자가 양자역학에서 가장 풀기 쉬운 계인 이유의 한 줄짜리 뿌리다.
다음 장에서 다룰 작용·각변수도 정확히 같은 시점을 다차원으로 일반화한 것이다. 자유도의 적분 가능계라면, 위상공간을 토러스로 자르고 그 위에서 시간 발전이 개의 독립된 회전 — 즉 각도 변수의 균일 증가 — 으로 떨어진다. 조화진동자가 한 평면 위의 회전이었듯, 적분 가능계는 차원 토러스 위의 동시 회전 이 된다. 그 회전들의 각진동수가 작용 변수 의 함수로 떨어지고, 그 함수가 곧 적분 가능계의 모든 운동을 결정한다. 이 그림이 3장의 출발점이고, 본론 3의 결론이 그 그림의 가장 단순한 1자유도 버전이다.
파이썬으로 확인
단진자의 흐름이 위상공간 면적을 보존하는지 손으로 확인한다. 작은 직사각형 경계를 200개 점으로 표본화해 흐름을 따라 보내고, 1초 간격으로 다각형 넓이를 출력한다.
import numpy as np
# H = p^2/2 - cos q (단진자), 해밀턴 방정식
def f(state):
q, p = state[..., 0], state[..., 1]
return np.stack([p, -np.sin(q)], axis=-1)
# 작은 직사각형 경계 위에 200개 점 (변마다 50개)
def rect_boundary(q0, q1, p0, p1, n_per_side=50):
s = np.linspace(0, 1, n_per_side, endpoint=False)
side1 = np.stack([q0 + (q1-q0)*s, np.full_like(s, p0)], axis=-1)
side2 = np.stack([np.full_like(s, q1), p0 + (p1-p0)*s], axis=-1)
side3 = np.stack([q1 + (q0-q1)*s, np.full_like(s, p1)], axis=-1)
side4 = np.stack([np.full_like(s, q0), p1 + (p0-p1)*s], axis=-1)
return np.concatenate([side1, side2, side3, side4], axis=0)
def shoelace(pts):
x, y = pts[:, 0], pts[:, 1]
return 0.5 * np.abs(np.dot(x, np.roll(y, -1)) - np.dot(y, np.roll(x, -1)))
pts = rect_boundary(0.5, 0.7, 0.0, 0.3)
dt, n_steps = 0.01, 500
print(f"t=0.0 area = {shoelace(pts):.6f}")
for step in range(1, n_steps + 1):
k1 = f(pts)
k2 = f(pts + 0.5*dt*k1)
k3 = f(pts + 0.5*dt*k2)
k4 = f(pts + dt*k3)
pts = pts + (dt/6.0) * (k1 + 2*k2 + 2*k3 + k4)
if step % 100 == 0:
print(f"t={step*dt:.1f} area = {shoelace(pts):.6f}")
코드의 흐름을 한 번 짚자. 단진자를 잡은 이유는 본론 2의 결론 — 해밀턴 흐름은 CT이고, 따라서 위상공간 면적을 보존한다 — 를 가장 단순하면서도 비선형 인 예에서 검증하기 위해서다. 자유 입자나 단순 조화진동자처럼 식이 선형이면 면적 보존이 거의 자명하게 떨어지지만, 단진자처럼 라는 비선형 복원력이 들어가면 직사각형이 늘어지고 휘어지는 모양을 본다. 그래도 본론 2의 정리는 면적이 보존된다고 말한다 — 코드는 그 말이 진짜인지 직접 재 보는 셈이다.
먼저 함수가 해밀턴 벡터장 를 구현한다. 의 해밀턴 방정식을 그대로 옮긴 두 줄이다. 그 다음 rect_boundary 함수가 작은 직사각형의 경계 위에 변마다 50개씩, 도합 200개 의 점을 깐다. 이 200개 점이 위상공간 위에 하나의 폐곡선을 이루고, 흐름을 따라 흘러가면서 그 폐곡선이 어떻게 변형되는지를 추적한다. 직사각형이 으로 작아서 — 한 변의 길이가 0.2 — 초기 면적은 이다.
shoelace 함수는 다각형의 면적을 신발끈 공식 으로 계산한다. 정점들의 좌표 가 순서대로 주어졌을 때, 이 폐다각형의 면적이다. 흐름이 곡선을 휘게 만들어도, 정점만 충분히 촘촘하게 깔려 있으면 신발끈 공식이 그 휜 도형의 면적을 잘 근사한다. 200개 점이라는 표본화 수가 그 정밀도를 보장한다 — 더 작으면 휘어진 곡선을 다각형으로 근사할 때의 오차가 면적값을 왜곡할 수 있다.
시간 적분기는 4차 Runge–Kutta다. 네 단계로 한 스텝 을 진행한다. 4차 RK는 한 스텝의 오차가 라서, 500 스텝(총 시간 5초)을 적분해도 누적 오차가 작다. 그렇지만 RK가 완벽한 심플렉틱 적분기는 아니라는 점은 짚어 둘 만하다 — 엄밀히 말하면 RK는 면적을 정확히 보존하지 않고, 작은 표류(drift)가 누적된다. 더 길게 적분하거나 더 큰 를 잡으면 그 표류가 드러난다. 이 장의 검산 범위(5초, 작은 )에서는 면적 변화가 수준에 묶이므로, 정성적 결론 — 면적이 거의 보존된다 — 은 견고하게 떨어진다.
출력은 1초 간격으로 다섯 번 — — 면적값을 적는다. 직사각형은 점점 길게 늘어지고 휘어지지만, 출력되는 넓이는 모든 시각에서 근방 — 첫 자리 이하 차이가 수준에 묶인다. 흐름이 정준 변환이라는 본론 2의 주장이 숫자로 확인된 것이다. 본론 3의 시점에서는, 단진자가 5초 동안 만들어 낸 위상공간 변환 — — 이 정준 변환이라는 사실의 증거 한 줄 을 손에 쥔 셈이다.
이 검산을 변형해 보고 싶다면, 단진자 대신 조화진동자( 를 로 바꿔서)로 실행하면 면적이 더 깔끔히 보존된다 — 비선형 항이 없으니 RK의 오차도 더 작게 떨어진다. 반대로 더 큰 직사각형(가령 한 변이 1)을 잡으면, 단진자의 비선형성이 도드라져 직사각형이 빠르게 늘어지는 모습이 보이지만 그래도 면적은 보존된다. 한 단계 더 나아가, 4차 RK 대신 심플렉틱 적분기(가령 leapfrog 또는 Stormer–Verlet)를 써 보면 면적 보존이 수치적으로도 정확 하게 떨어진다 — 적분기 자체가 매 스텝을 정준 변환으로 만들어 주기 때문이다. 그 사실이 본론 2의 결론이 수치 풀이의 설계 에까지 영향을 준다는 한 줄짜리 응용이다.
다음 장으로
3장: 적분가능계와 작용·각변수에서는 이 장의 시점을 한 걸음 더 밀어붙인다. 개의 서로 푸아송 가환인 보존량이 있는 계라면, 그 흐름이 만드는 CT는 위상공간을 토러스로 잘라 그 위의 회전으로 정리할 수 있다. 조화진동자가 원 위의 회전이었듯이, 적분가능계는 차원 토러스 위의 회전이 된다. 이 장에서 본 생성자 = 해밀토니안 의 그림이 다차원에서 어떻게 분해되는지, 그리고 그 분해가 적분 가능성이라는 강한 조건과 어떻게 맞물리는지가 3장의 알맹이다. 본론 3의 조화진동자 한 예를 손에 단단히 쥐고 다음 장으로 넘어가면, 추상적인 식들이 그 예의 다차원 확장 으로 자연스럽게 읽힌다.