태양계 크기

내 이 세상 도처에서 쉴 곳을 찾아보았으나, 마침내 찾아낸, 컴퓨터가 있는 구석방보다 나은 곳은 없더라.

태양계 크기

인터넷에서 '태양계' 또는 영어로 'solar system'을 검색하면 많은 그림을 볼 수 있다. 그러나 대부분의 그림이 각 행성간 거리를 축소해 표시한다. 정확한 비율로 표현하면 그림 대부분이 빈 공간으로 나올 것이다.

태앙의 지름은 1,392,700 km, 지구의 지름은 12,742 km, 지구와 태양간 평균 거리는 150,000,000 km다. 계산기를 두드려 보면 태양의 지름은 지구 지름의 109배, 태양과 지구 사이의 거리는 태양 지름의 108배 정도임을 알 수 있다.

즉, 태양의 지름을 1 m라 하면 지구의 지름은 대략 9 mm, 태양과 지구 사이의 거리는 108 m가 된다. 운동장에서 지름 1 m짜리 애드벌룬을 놓고 태양이라 하면 거기서 108 m 밖에 지름 1 cm보다도 작은 조그만 구슬이 지구가 되는 것이다.

좋은 비유긴 하지만 한 눈에 들어오지 않는다. 태양을 좀더 작게 생각 해보자. 책상에 500원짜리 동전을 놓고 이걸 태양이라 해 보자. 500원 동전 지름은 2.65 cm이므로 지구는 대략 0.24 mm가 되고, 동전에서 2.86 m 떨어진 곳에 있게 된다.

재미삼아 이 비율로 아래와 같이 그림을 그려봤다. 태양계 행성을 모두 넣으려면 그림이 너무 커지므로 지구까지만 그렸다. 수성, 금성, 지구 모두 태양 지름의 1/100 이하라 그림에서는 아주 작은 점으로밖에 나타나지 않는다.

수성은 태양에 가장 가까운 행성이지만 태양으로부터 얼마나 멀리 떨어져 있는지 그림을 아래로 스크롤하며 살펴보기 바란다. 그리고 수성, 금성, 지구가 서로 얼마나 멀리 떨어져 있는지도 확인하기 바란다.

그림에서는 그나마 행성이 일직선으로 나열되어 서로 가장 가까울 때를 묘사한 것이다. 금성이 태양 반대편에 가 있다면 지구-금성 간 거리는 1.7 AU로 가장 가까울 때인 0.3 AU의 6배 가까이 늘어난다.

태양부터 지구까지 실제 축척 그림

그림 시작 부분을 화면 위에 맞춘 다음 33번 페이지 다운하니 지구가 나타났다. 페이지 다운 횟수는 화면 크기에 따라 다를 것이다. 지구는 달을 가지고 있으므로 달의 공전궤도도 그림에 표시했다.

이렇게 태양에서 지구까지의 거리를 1 AU라 한다. 화성, 목성, 천왕성, 해왕성, 명왕성까지 거리는 다음과 같다. 태양에서 지구까지 33번 페이지 다운 키를 눌러야 할 때, 다른 행성까지는 얼마나 눌러야 할 지는 33 \times AU 로 간단히 계산할 수 있다.

행성거리 (km)거리 (AU)페이지 다운
수성46,127,000 km0.4 AU12
금성107,780,000 km0.7 AU23
지구149,480,000 km1.0 AU33
화성219,090,000 km1.5 AU50
목성741,270,000 km5.2 AU172
토성1,472,400,000 km9.5 AU314
천왕성2,943,600,000 km19.8 AU654
해왕성4,473,900,000 km30.0 AU990
명왕성*5,900,000,000 km39.0 AU1,287

(2006년 국제천문연맹 총회에서 행성의 기준을 새로 정하면서 명왕성은 에리스, 세레스 등과 함께 왜행성으로 분류된다.)

태양에서 화성까지는 페이지 다운을 50번 해야 한다. 여기까지는 해볼만 할 것이다. 그러나 화성보다 멀리 있는 외행성에 도달하기 위해 페이지 다운 키를 수 백 번씩 누르고 싶지는 않을 것이다.

또 브라우저에서 캔버스 크기를 무한정 늘릴 수 있는 것은 아니다. 지금 글을 작성하는 환경에서는 캔버스 높이가 28493px를 넘으면 그림을 표시하지 못한다. 지금 축척이라면 화성까지는 겨우 그릴 수 있을 것 같다.

위 그림에서는 태양 지름을 200px로 나타냈다. 태양 크기를 줄이면 더 많은 행성을 표시할 수 있지 않을까? 지금도 수성, 금성, 지구가 점으로밖에 보이지 않는데, 태양 크기를 줄이면 수성, 금성, 지구, 화성은 그저 위치만 표시해야 할 것이다.

캔버스 크기 제한을 고려했을 때, 해왕성까지 나타내려면 태양 지름을 10px 이하로 그려야 한다. 태양을 이렇게 작게 그리면 목성, 토성, 천왕성, 해왕성 같은 거대 행성도 점으로밖에 나타내지 못한다.

여기에 카이퍼벨트와 오르트 구름까지 포함하면 태양계의 반지름은 100,000 AU, 1.6광년에 달한다. 즉 태양에서 출발한 빛이 1.6년이 지나야 태양계의 가장자리까지 갈 수 있는 것이다.

그러나 태양계도 은하계의 관점에서 본다면 한 점으로밖에 보이지 않는다. 우리 은하의 직경은 105,700 광년으로 알려져 있다. 빛의 속도로도 우리 은하계를 가로지르는 데 10만 년 넘게 걸리는 것이다.

거대한 우주를 생각하면 인생이 한없이 초라하고 허무하게 느껴진다. 이 작은 지구에, 조그만 방구석에 쪼그리고 앉아 Rust 컴파일러와 씨름을 하고 있는 게 얼마나 허망한 일인가.

업데이트

처음에는 그림을 캔버스에 그렸지만, 레티나 디스플레이에서 그림이 이상하게 표현되거나(사파리) 아예 표시되지 않는(크롬) 문제를 발견했다. 코드 수정으로 문제를 해결하려 했지만 여기에 시간을 많이 쓰고 싶지도 않았다.

결국 캔버스 그림을 이미지 파일로 저장한 다음 이미지 파일을 표시하도록 수정했다. 파일 크기가 400 kb가 넘어 js 파일보다 200배 가까이 커졌지만, 디스플레이에 따른 미묘한 문제를 회피할 수 있다. 방문자가 많지 않으니 큰 문제는 아닐 것이다.