내 블로그에서 여러 번 소개했던 2차원 방향성 있는 아벨리안 모래쌓기 모형 중 가장 간단한 형태인 Dhar와 Ramaswamy의 모형Vpython을 이용하여 만들어보았다. 아래 그림은 맨 윗줄의 한 자리에서 시작하여 사태가 점점 커지다가 맨 아랫줄 경계까지 사태가 커진 경우이다.

사용자 삽입 이미지

파란색이 무너지기(toppling)가 일어난 자리들이고 노란색은 모래알이 없는 자리, 하얀색은 모래알이 1개 있는 자리를 가리킨다.

예전에도 python을 이용한 시뮬레이션 프로그램을 짜봤는데 이번까지의 경험으로부터 시뮬레이션 동영상을 만드는데 그리 적합한 도구는 아닌 것 같다는 결론을 내린다. Vpython은 물론 좋기는 한데, 개체가 적은 경우(100개 정도까지?)에는 시뮬레이션 속도가 잘 나지만 위의 예처럼 5000개만 되어도 속도가 눈에 띄게 느려진다.

그래도 남들에게 보여줄 게 아니라 모형에 대한 이해를 높이기 위한 것이라면 나쁘지는 않은 듯. 그리고 Vpython 싸이트에 가면 물리학의 기본적인 개념들을 이해하기 위한 것이나 Vpython을 이용한 예제들이 많다. 수업의 보조로 이용하기에 좋을 듯.

---
* 오후 2시 14분 덧붙임

사용자 삽입 이미지

위의 DR 모형보다 크기를 키운, 가로 150, 세로 75 격자 위에서 Hughes와 Paczuski의 비아벨리안(non-Abelian) 모래쌓기 모형을 시뮬레이션한 결과 중 하나. 역시 파란색은 사태 하나를 가리킨다. DR 모형과는 반대로 하얀색이 모래알 없는 칸, 노란색이 모래알 1개 있는 칸이다.

---
* 2007년 12월 4일 오전 10시 19분 덧붙임

사용자 삽입 이미지

또다른 모형의 결과인데, 좀더 입체적으로 그려봤다. 가까이 보이는 쪽에서 시작된 사태가 점점 커지면서 멀리 보이는 쪽으로 진행되는 과정을 볼 수 있다. 웬지 고대의 사막지역에서 일어난 홍수(;;) 같아 보이기도 하고... 그럼 빨간색은 뭐지? 홍수에 목숨을 잃은 사람들의 시체더미인가;;;; 모래쌓기 모형이 아니라 시체쌓기 모형이 되는건가...