충돌 모델과 원주율

수학적 개념이나 문제를 시각화해서 재미있게 표현하는 최애 채널 중 하나인 3Blue1Brown의 이번 영상.

위 그림처럼 완전 탄성 충돌과 마찰력이 없는 조건에서 1kg의 물체 A와 10^{2n}kg의 물체 B를 벽면, A, B의 순서가 되도록 나란히 놓은 뒤 선상에서 B를 움직여 A와 충돌시키고나면, 더 이상 충돌이 일어나지 않을 때까지의 충돌 횟수가 원주율의 첫 n+1 자리수가 된다는 것. (엄밀히는 1의 오차까지 있을 수도 있다) 위의 경우는 충돌 횟수가 3141회가 된다.

증명 파트는 곧 올라올 예정인데 레퍼런스 페이퍼의 증명이 워낙 짧고 간단해서 이쪽 읽어도 될 듯. 아래는 그를 요약한 내용.

질량 m, M을 갖는 A, B의 좌표를 각각 x, y 좌표로 대응시킨 configuration space에서 이 계가 움직이는 과정을 path로 그리면 위 그림과 같게 나오는데, 이걸 y축 방향으로 \sqrt{M/m}배 늘린 선형변환 후에는 angle 내에서 입사각=반사각을 따르는 반사 모델이 된다고 한다. 좀 계산 복잡한 증명이 될 것 같지만 모멘텀과 에너지가 유지된다는 조건을 벡터 방정식으로 생각하면 의외로 매우 간단하게 증명된다.

Source: https://doi.org/10.1070/RD2003v008n04ABEH000252

반사란 곧 반사면에 대해 대칭시킨 상황에서의 직선이동을 뜻하므로 위 그림처럼 반사면마다 angle의 카피를 붙여놓는 식으로 생각했을 때, angle의 각이 \alpha라면 그 충돌 횟수는 대략 \frac{\pi}{\alpha}이 된다. 해당 케이스에서는 정확히 \lfloor \frac{\pi}{\arctan(10^{-n})} \rfloor이 된다. \frac{\pi}{\arctan(10^{-n})} \sim \frac{\pi}{10^{-n}}이고 그 차이가 \pi \cdot 10^{-n}보다 작기 때문에, 이 충돌 횟수는 거의 웬만하면 \lfloor 10^n \pi \rfloor, 즉 원주율의 첫 n+1 자리수가 된다. 이 부분은 conjecture이고, 엄밀하게는 일어날 확률은 적지만 오차가 1까지 있을 수도 있다는 것.


3Blue1Brown에 해답편이 올라왔다.

앞에서는 두 물체의 위치를 좌표로 잡았다면, 여기에서는 속도를 좌표로 잡았다. 즉 x,y 좌표가 \sqrt{M}v_1, \sqrt{m}v_2가 되도록 잡은 것.

그러면 에너지가 일정하단 점에서, 현재 상태에 해당하는 점은 반드시 주어진 원주 위에 놓여야 하고, 두 물체가 부딪히면 모멘텀이 일정해 기울기가 -\sqrt{M/m}인 직선 위를 움직여야 하고 물체와 벽이 부딪히면 v_2의 부호만 바뀐다는 점에 의해 상태를 나타내는 점은 위 그림처럼 원주 위에 등장해야 하며, 바뀌는 횟수가 곧 충돌 횟수이다.

그러면 등장하는 모든 호들의 원주각이 \arctan(\sqrt{m/M})으로 일정하게 나오기 때문에 충돌은 총 \displaystyle \lfloor \frac{\pi}{\arctan(\sqrt{m/M})} \rfloor회 일어난다. 결과는 동일하지만, 이쪽이 훨씬 더 기하학적으로 직관적임.

트윗 타래를 정리. (2019/01/15)

Update (2019/01/20): 3Blue1Brown의 해답편 추가

References

[1] G. Galperin, “Playing pool with pi (The number pi from a billiard point of view)” Regular and Chaotic Dynamics, 8(4), January 2003, DOI: 10.1070/RD2003v008n04ABEH000252

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중