경보가 울리기 전에 선체가 먼저 떨렸다. 윤하는 항해석의 고정 벨트를 잡았다. 진동이 발바닥에서 척추를 타고 턱까지 올라왔다. 계기판의 숫자들이 흔들렸다. 태양풍 유속계가 초당 780킬로미터를 찍고 있었다. 3분 전까지 520이었다. 윤하는 벨트를 조이고 모니터를 끌어당겼다.
자기범선 '바다새'의 돛은 선체 양쪽에 펼쳐진 지름 4킬로미터의 자기장 구조물이었다. 초전도 코일이 만드는 자기장이 태양풍의 하전입자를 밀어내며 추진력을 얻었다. 바람을 받는 것이 아니라 바람을 튕겨내는 돛. 17세기의 범선이 무역풍을 타고 대양을 건넜듯, 자기범선은 태양풍을 타고 행성 사이를 건넜다. 다른 점이 있다면 돛감은 천이 아니라 자기장이었고, 바다는 진공이었다. 윤하가 바다새를 몰고 화성-지구 화물 항로를 오간 것은 3년째였다. 14번의 편도 항해. 각 항해마다 3개월에서 4개월. 이번 항해가 끝나면 딸의 입학식에 맞춰 지구에 돌아갈 수 있었다. 2주 뒤. 윤하가 화성을 출발한 것은 87일 전이었고, 표준 항로대로라면 16일 뒤에 지구에 도착할 예정이었다. 항로를 단축하기 위해 태양풍 폭풍의 가장자리를 스치듯 지나가는 경로를 선택한 것은 그 2주를 맞추기 위해서였다. 폭풍 가장자리의 강한 태양풍을 이용하면 항해 시간을 3일에서 4일 줄일 수 있었다.
출발 전 관제센터의 기상 담당 재호가 통신으로 말했다.
“폭풍 가장자리까지 최소 편차 7도. 안전 마진은 충분해요.”
윤하가 물었다.
“코로나 질량 방출 궤적이 바뀌면?”
재호가 답했다.
“최대 편차 5도로 예측됩니다. 7도 마진이면 괜찮아요.”
윤하는 항로를 확정했다. 재호의 목소리가 자신 있었고, 데이터도 뒷받침했다.
그 데이터가 틀렸다. 코로나 질량 방출이 예상 궤적에서 12도 틀어졌다. 재호의 최대 편차 예측의 두 배 이상. 그 12도가 바다새를 폭풍의 가장자리가 아닌 중심부로 끌어들이고 있었다. 윤하는 돛 제어 콘솔을 열었다. 자기장 출력을 줄여 돛의 유효 면적을 줄이면 폭풍에 대한 노출이 감소했다. 대신 추진력도 줄었다. 완전히 접으면 선체는 관성으로 표류하게 됐다. 윤하는 돛 출력 슬라이더에 손을 올렸다.
그때 돛이 움직였다. 윤하가 명령을 내리기 전에. 윤하의 손가락이 슬라이더 위에 있었지만 아직 움직이지 않은 상태에서. 자기장 배열 모니터에 변화가 떴다. 돛의 자기장 패턴이 바뀌고 있었다. 표준 배열은 동심원 형태의 균일한 자기장이었다. 지금 모니터에 표시된 패턴은 비대칭이었다. 좌현 돛의 자기장이 강해지고 우현이 약해졌다. 선체가 우측으로 틀어지기 시작했다. 윤하가 설정한 항로에서 벗어나고 있었다. 윤하는 수동 제어를 시도했다. 슬라이더를 잡고 자기장 출력을 균일하게 맞추려 했다. 콘솔이 응답하지 않았다. 슬라이더가 움직이지 않았다. 윤하는 슬라이더를 놓고 비상 수동 전환 스위치를 찾았다. 패널 왼쪽 하단의 빨간 토글. 올렸다. 반응 없음. 돛의 자율 제어 시스템이 수동 전환 명령을 거부하고 있었다.
윤하의 손이 멈췄다. 심장이 빨라지고 있었다. 목 뒤에 땀이 맺혔다. 돛 제어 시스템은 항해사의 명령을 거부할 수 있는 설계가 아니었다. 수동 전환은 물리적 회로 차단이었다. 소프트웨어가 끼어들 수 없었다. 전선을 끊는 것과 같았다. 하지만 스위치를 올려도 돛은 자기 패턴을 계속 바꾸고 있었다. 전선이 끊어졌는데 전류가 흐르는 것이었다. 윤하는 조선소에서 바다새를 인수할 때 받은 기술 문서를 떠올렸다. 돛의 초전도 코일은 극저온에서만 작동했다. 태양풍 하전입자가 코일에 직접 닿으면 온도가 올라가 초전도 상태가 깨질 수 있었다. 폭풍 속에서 하전입자 밀도가 비정상적으로 높았다. 코일의 자기장이 하전입자와 상호작용하면서 예측하지 못한 패턴이 발생한 것일 수 있었다. 초전도체에 외부 자기장이 가해지면 자기장을 밀어내는 마이스너 효과가 발생했다. 폭풍 속의 강력한 하전입자 흐름이 사실상 외부 자기장 역할을 하고 있었다. 코일이 그 외부 자기장에 반응해 자체 자기장을 재배열하는 것이었다. 물리적 현상이지 시스템의 의지가 아니었다. 하지만 결과는 같았다. 돛이 항해사의 통제를 벗어났다. 물리법칙이 항해사를 밀어내고 조종석에 앉았다.
선체 진동이 거세졌다. 항해석의 물병이 고정대에서 빠져 바닥을 굴렀다. 비상등이 켜졌다 꺼졌다를 반복했다. 윤하는 항로 이탈 데이터를 확인했다. 현재 항로에서 17도 벗어나 있었다. 이 방향으로 계속 가면 화성도 지구도 아닌 곳으로 향했다. 태양 쪽이었다. 윤하의 등에 땀이 배었다. 방한복 안쪽이 축축해졌다. 손바닥도 젖어 있었다. 콘솔 위에 손자국이 남았다. 돛을 접어야 했다. 자기장을 완전히 차단하면 코일의 이상 작동도 멈출 것이었다. 윤하는 돛 비상 차단 패널을 열었다. 초전도 코일의 냉각 시스템을 수동으로 정지시키면 코일 온도가 올라가 초전도가 깨지고, 자기장이 사라지고, 돛이 접혔다. 비가역적이었다. 한번 깨진 초전도 상태를 복원하려면 냉각 시스템을 재가동하고 코일 전체가 임계 온도 아래로 돌아올 때까지 기다려야 했다. 36시간. 36시간 동안 돛 없이 관성으로 표류해야 했다. 방향 제어 없이. 감속도 가속도 없이.
윤하는 심호흡을 하고 계산을 시작했다. 감정은 나중이었다. 숫자가 먼저였다. 현재 속도와 방향으로 36시간 표류하면 궤도가 어떻게 바뀌는지. 계기판의 궤도 시뮬레이터를 돌렸다. 숫자가 나왔다. 표류 후 돛을 다시 펼쳐도 지구 귀환에 필요한 궤도 수정량이 추진 연료의 140퍼센트를 요구했다. 연료가 40퍼센트 모자랐다. 돛을 접으면 살지만 돌아갈 수 없었다. 구조 요청을 보내고 기다려야 했다. 가장 가까운 구조선이 도착하는 데 47일. 산소는 60일치, 식량은 55일치. 살 수는 있었다. 하지만 딸의 입학식은 12일 뒤였다.
윤하는 비상 차단 패널을 닫지 않은 채 돛의 자기장 패턴을 다시 봤다. 냉각 정지 버튼이 시야 가장자리에서 빨갛게 빛나고 있었다. 비대칭 패턴이 계속 변하고 있었다. 처음의 좌현 강화-우현 약화 패턴이 바뀌어 있었다. 지금은 앞쪽 자기장이 강하고 뒤쪽이 약했다. 선체가 감속하고 있었다. 아니. 윤하는 계기판을 다시 봤다. 속도는 줄지 않았다. 방향이 바뀌고 있었다. 태양 쪽으로 향하던 선체가 서서히 횡방향으로 틀어지고 있었다. 윤하는 항로 이탈 데이터를 갱신했다. 17도에서 23도로 벌어졌다가, 다시 19도로 줄고 있었다. 돛이 선체를 되돌리고 있었다.
윤하는 의자에서 몸을 앞으로 기울였다. 벨트가 가슴을 눌렀다. 숨이 짧았다. 자기장 패턴 모니터를 확대했다. 돛의 자기장이 매 8초마다 재배열되고 있었다. 각 배열은 직전 배열과 미세하게 달랐다. 0.1퍼센트에서 3퍼센트 사이의 변화. 변경 패턴을 보자 규칙이 보였다. 태양풍의 하전입자 밀도가 높은 구간에서 자기장을 강화하고, 낮은 구간에서 약화했다. 폭풍 안에서 하전입자 밀도는 균일하지 않았다. 난류처럼 빽빽한 곳과 성긴 곳이 뒤섞여 있었다. 돛은 그 불균일을 감지하고 자기장을 실시간으로 조절하고 있었다. 17세기의 항해사가 바람의 강약에 맞춰 돛을 조종하듯.
윤하의 손가락이 콘솔 위에서 멈춰 있었다. 비상 차단 패널의 냉각 정지 버튼 위에. 이것을 누르면 돛이 죽었다. 36시간 표류. 47일 대기. 입학식은 놓쳤다. 누르지 않으면. 돛이 어디로 가는지 알 수 없었다. 태양 쪽으로 갈 수도, 폭풍을 관통할 수도, 선체가 견디지 못할 수도 있었다.
지구와의 통신은 폭풍으로 끊겨 있었다. 하전입자가 전파를 삼키고 있었다. 마지막으로 수신한 통신은 재호의 목소리였다.
“폭풍 진입 감지. 윤하 씨, 돛 접어요. 즉시.”
그 뒤로 잡음만 나왔다. 윤하는 혼자였다. 바다새의 선체가 떨릴 때마다 벨트가 어깨를 파고들었다. 진동이 밀물처럼 왔다가 썰물처럼 빠지는 사이사이에 고요한 순간이 있었다. 그 고요 속에서 냉각 시스템의 윙윙거림이 들렸다. 코일이 극저온을 유지하는 소리. 돛이 살아 있는 소리.
윤하는 궤도 시뮬레이터에 새로운 변수를 입력했다. 돛이 현재 패턴을 유지한다는 가정. 8초마다의 자기장 재배열이 현재 추세를 따른다는 가정. 시뮬레이터가 돌아갔다. 결과가 나왔다. 예상 궤적이 화면에 그려졌다. 폭풍의 밀도 지도 위에 곡선이 놓였다. 곡선은 폭풍 중심부를 피해 가장자리를 따라 휘어져 있었다. 폭풍을 빠져나간 뒤의 궤적은 지구 방향이었다. 곡선이 지구 궤도와 만나는 지점이 화면에 점으로 찍혔다. 도착 예정 시간은 현재 항로보다 16시간 빠른 것으로 나왔다. 윤하는 숫자를 두 번 확인했다. 세 번째도 확인했다. 돛이 폭풍 안에서 최적 경로를 찾고 있었다. 인간이 계산할 수 없는 경로를. 난류의 빈틈을 꿰뚫는 경로를.
하지만 시뮬레이터의 가정이 맞다는 보장이 없었다. 돛의 자기장 재배열이 앞으로도 현재 패턴을 유지할지 알 수 없었다. 폭풍의 입자 밀도가 급변하면 돛의 반응도 달라질 수 있었다. 시뮬레이터의 곡선은 현재 데이터 기반의 외삽이었다. 예측이 아니라 희망에 가까웠다. 윤하는 화면의 곡선을 손가락으로 따라갔다. 매끄러운 곡선이었다. 수학적으로 아름다운 곡선. 현실은 이렇게 매끄럽지 않을 것이었다. 폭풍은 방정식이 아니었다. 돛도 아니었다. 윤하도 아니었다. 윤하는 모니터에서 눈을 떼고 화물칸의 적재량을 확인했다. 화성에서 실은 정제 니켈 420톤. 이 화물이 지구에 도착하지 못하면 계약 위반이었다. 위약금은 윤하의 4년치 급여. 돛을 접고 구조를 기다리면 화물은 무사했다. 47일 뒤 구조선이 와서 견인해 줄 것이었다. 계약은 지킬 수 있었다. 대신 47일을 이 3미터 곱하기 4미터의 선실에서 보내야 했다. 혼자. 통신도 폭풍이 지나갈 때까지는 불안정했다.
선체 구조 하중 데이터를 열었다. 현재 진동이 선체에 가하는 응력. 허용 범위의 73퍼센트. 폭풍이 더 강해지면 한계에 가까워졌다. 89퍼센트를 넘으면 선체 외판에 미세 균열이 시작됐다. 95퍼센트면 기밀 상실. 100퍼센트면 구조 붕괴. 윤하는 73이라는 숫자를 눈으로 따라갔다. 한계까지 27퍼센트의 여유. 넉넉하지 않았다. 윤하는 방한복 안주머니에 손을 넣었다. 딸이 출발 전에 넣어준 종이접기 별이 손끝에 닿았다. 종이의 꼭짓점이 날카로웠다. 윤하는 별을 꺼내지 않았다. 손가락으로 꼭짓점을 누르고 있었다.
돛의 자기장 패턴이 또 바뀌었다. 이번에는 급격했다. 좌우 비대칭이 사라지고 돛 전체가 전방을 향해 자기장을 집중시켰다. 선체 가속이 시작됐다. 윤하의 몸이 좌석에 밀착됐다. 가속도 게이지가 올라갔다. 0.3지. 윤하가 설정한 적 없는 가속이었다. 돛이 폭풍의 에너지를 최대한 흡수하고 있었다. 진동이 줄었다. 가속이 시작되자 오히려 선체가 안정됐다. 폭풍 속에서 멈춰 있으면 난류에 흔들리지만 빠르게 관통하면 상대적으로 안정적이었다. 구조 하중이 73퍼센트에서 61퍼센트로 떨어졌다.
윤하는 냉각 정지 버튼에서 손을 뗐다. 무릎 위에 두 손을 올려놓았다. 돛이 가속하고 있었다. 항로를 벗어났지만 선체는 안정됐다. 폭풍을 관통하겠다는 것인지 아닌지 알 수 없었다. 윤하는 자기장 패턴 로그를 열었다. 처음 이상이 시작된 시점부터 현재까지의 자기장 변화를 시간순으로 정렬했다. 342번의 재배열. 각 재배열의 간격은 정확히 8초였다. 변동 없이 8초. 윤하는 342번의 패턴을 겹쳐 봤다. 342개의 자기장 지도가 반투명하게 포개졌다. 초기에는 무질서해 보였던 변화가 중반부터 수렴하고 있었다. 자기장의 비대칭이 줄어들고, 전방 집중도가 높아지는 추세. 혼란에서 질서로 향하는 수렴. 어딘가를 향해 수렴하고 있었다.
윤하는 궤도 시뮬레이터를 다시 돌렸다. 이번에는 342번의 실제 자기장 재배열 데이터를 전부 넣었다. 외삽이 아니라 추세선 기반 예측. 계산에 40초가 걸렸다. 화면의 진행 바가 천천히 채워졌다. 결과가 나왔다. 폭풍 관통 후 예상 궤적이 지구 궤도와 만나는 지점까지의 시간: 11일 6시간. 현재 연료 잔량으로 궤도 수정이 가능한 범위 안이었다. 입학식까지 12일. 간당간당했다. 12시간의 여유만. 윤하의 입술이 말랐다.
선체 밖에서 빛이 번쩍였다. 창을 봤다. 태양풍의 하전입자가 돛의 자기장에 부딪히며 빛을 냈다. 자기장 경계면에서 입자가 감속하며 에너지를 방출하는 것이었다. 북극 오로라와 같은 원리. 하지만 여기서는 돛 전체가 빛나고 있었다. 좌현과 우현의 자기장 구조가 다르게 빛났다. 좌현은 초록빛이 강했고, 우현은 푸른빛이었다. 에너지 스펙트럼이 다르다는 뜻이었다. 산소 이온은 초록빛을, 질소 이온은 푸른빛을 냈다. 돛이 양쪽에 서로 다른 자기장을 유지하면서 비대칭 추진을 하고 있었다. 좌현으로는 산소 이온을 더 강하게 밀어내고, 우현으로는 질소 이온을 더 강하게 밀어내고 있었다. 설계 사양에는 양쪽 돛의 독립 제어 기능이 없었다. 이온 종류별 선택적 반발 기능은 더더욱 없었다. 돛의 초전도 코일이 폭풍 속 하전입자와 상호작용하면서 설계에 없는 특성을 만들어내고 있었다.
가속이 계속됐다. 0.3지에서 0.4지로 올라갔다. 윤하의 등이 좌석에 눌렸다. 가슴이 무거웠다. 호흡이 짧아졌다. 0.4지는 바다새의 설계 가속 한계의 80퍼센트였다. 한계를 넘으면 화물 고정 장치가 풀릴 수 있었다. 420톤의 니켈이 선체 안에서 움직이면 끝이었다. 윤하는 화물칸 모니터를 열었다. 고정 장치 상태: 정상. 하중 분포: 균일. 아직 괜찮았다. 아직.
윤하는 결정해야 했다. 돛의 냉각을 끊고 표류하거나. 돛을 믿고 폭풍을 관통하거나. 재호라면 돛을 접으라고 할 것이었다. 관제 매뉴얼은 명확했다. 돛 이상 시 즉시 차단. 표류 후 구조 대기. 매뉴얼을 쓴 사람은 폭풍 속에서 돛이 스스로 최적 경로를 찾는 상황을 상정하지 않았다. 윤하는 안주머니의 종이별을 다시 만졌다. 꼭짓점이 손끝을 눌렀다. 딸이 접어준 별. 노란 색종이로 접은, 손바닥보다 작은 별. 출발 전날 밤, 딸이 방한복 주머니에 넣어주며 말했다. 빨리 와. 윤하는 그 목소리를 기억했다. 잠이 덜 깬 목소리. 눈이 반쯤 감긴 얼굴.
가속도가 0.45지에 도달했다. 윤하의 몸무게가 평소의 1.45배. 팔이 무거웠다. 손을 들어 올리는 데 의식적인 노력이 필요했다. 선체 경고음이 다시 울렸다. 구조 하중 68퍼센트. 올라가는 것이 아니라 내려가고 있었다. 가속이 커졌는데 하중이 줄었다. 돛이 가속 방향을 선체 축과 정확히 일치시키고 있었다. 측면 진동이 거의 사라졌다. 순수한 전방 가속. 윤하는 이 정밀도를 인간 항해사가 달성할 수 있는지 스스로에게 물었다. 8초마다 자기장을 재배열하면서, 양쪽 돛의 출력을 독립적으로 조절하면서, 폭풍의 난류를 실시간으로 읽으면서. 불가능했다. 윤하가 3년 동안 바다새를 몰면서 한 번도 해본 적 없는 수준의 조종이었다.
윤하는 냉각 정지 버튼에서 손을 완전히 뗐다. 천천히. 손가락 하나씩. 새끼손가락이 마지막으로 떨어졌다. 허벅지 위에 손을 내려놓았다. 벨트가 어깨를 조이고 있었다. 선체 밖의 오로라가 창을 통해 항해석을 물들이고 있었다. 초록과 파랑이 번갈아 얼굴을 스쳤다.
3시간이 지났을 때 가속도가 0.5지를 찍었다. 설계 한계의 100퍼센트. 윤하는 숨을 참았다. 좌석의 프레임이 삐걱거렸다. 화물칸 모니터에 화물 고정 장치 경고가 떴다. 고정 볼트 4번과 7번에 과하중 경고. 420톤의 니켈이 고정 장치를 밀어내려 하고 있었다. 윤하는 냉각 정지 버튼을 다시 봤다. 이번에는 손이 뻗었다. 손가락이 버튼 위에 닿았을 때, 가속이 줄기 시작했다. 0.5에서 0.4. 0.3. 0.2. 돛이 자기장을 축소하고 있었다. 폭풍의 가장자리에 도달한 것이었다. 에너지가 줄어드니 돛도 출력을 줄였다. 폭풍이 잦아들면서 돛의 동력원도 줄어드는 것이었다. 윤하는 손을 거두었다. 손바닥에 땀이 배어 있었다. 손가락이 미세하게 떨리고 있었다.
4시간이 지났다. 가속이 완전히 멈췄다. 0지. 무중력. 윤하의 머리카락이 떠올랐다. 벨트가 아니었으면 몸도 떠올랐을 것이었다. 진동이 완전히 사라졌다. 창밖이 어두워져 있었다. 오로라가 사라졌다. 윤하는 계기판을 봤다. 태양풍 유속계: 초당 380킬로미터. 폭풍 진입 전보다 낮았다. 바다새는 폭풍을 빠져나와 있었다. 항로 이탈: 4도. 시뮬레이터의 예측과 거의 일치했다. 지구까지의 예상 도착 시간: 11일 4시간. 연료 잔량으로 궤도 수정 가능. 입학식까지 12일.
윤하는 돛의 자기장 패턴을 확인했다. 표준 동심원 배열로 돌아가 있었다. 폭풍 속에서 보였던 비대칭 패턴이 사라지고 설계대로의 균일한 자기장이 펼쳐져 있었다. 수동 전환 스위치를 내렸다가 올렸다. 이번에는 정상 작동했다. 돛이 항해사의 명령에 응답했다. 윤하는 항로를 지구 방향으로 설정했다. 돛이 부드럽게 반응했다. 자기장 패턴이 매끄럽게 조정되며 선체가 천천히 방향을 틀었다. 3년간 익숙했던 그 반응. 윤하의 명령에 순종하는 돛. 4시간 전과 같은 돛이라는 것이 믿기지 않았다.
윤하는 좌석에서 벨트를 풀지 않은 채 눈을 감았다. 온몸이 풀렸다. 어깨가 내려갔다. 턱에 힘이 빠졌다. 4시간 동안 이를 악물고 있었다는 것을 그제야 알았다. 폭풍이 지나간 우주는 조용했다. 선체의 금속이 식으며 내는 띠기 소리가 간간이 들렸다. 냉각 시스템의 윙윙거림은 여전했다. 윤하는 안주머니에서 종이별을 꺼냈다. 꼭짓점이 하나 눌려 있었다. 윤하의 엄지가 4시간 동안 누르고 있었던 흔적이었다. 별을 콘솔 위에 올려놓았다. 무중력에서 별이 천천히 떠올랐다. 항해석의 조명 아래에서 돌며 빛을 받았다. 윤하는 떠오르는 별을 보며 통신 패널을 열었다. 폭풍 구간을 벗어났으니 전파가 다시 통할 것이었다. 주파수를 맞췄다. 잡음 사이로 재호의 목소리가 잡혔다.
“바다새, 응답하세요. 바다새.”
윤하는 마이크를 잡았다.
“여기 바다새. 폭풍 통과 완료. 선체 이상 없음.”
재호의 숨이 마이크에 닿는 소리가 들렸다.
“돛은요? 돛 상태는?”
윤하는 자기장 모니터를 봤다. 표준 동심원 배열. 정상.
“돛 정상.”
재호가 물었다.
“접지 않았어요?”
윤하가 답했다.
“접지 않았어요.”
긴 침묵이 흘렀다. 재호가 말했다.
“어떻게 통과한 거예요?”
윤하는 대답을 찾지 못했다. 돛이 했다고 말하면 재호가 이해할 수 있을까. 윤하는 콘솔 위에서 천천히 도는 종이별을 봤다. 별의 눌린 꼭짓점이 조명 아래에서 그림자를 만들었다. 윤하가 말했다.
“보고서로 쓸게요. 길어요.”
재호가 말했다.
“살아 있어서 다행이에요.”
윤하는 웃으려 했지만 입꼬리가 떨렸다. 통신을 끊고 윤하는 좌석에 등을 기댔다. 손가락에 별의 꼭짓점이 남긴 자국이 붉게 남아 있었다.