Numpilot
손안의 수치해석/3부 계산의 기초

폰의 한계와 타협 — 무엇을 포기했나

19 / 30
2026-08-11 · 읽는 데 9분

타협의 목록

지금까지 여러 편에 걸쳐 “이건 포기했다”는 이야기가 흩어져 나왔다. 이 편에서 한자리에 모은다.

왜 이런 정리가 필요한가. 자기 도구의 한계를 아는 것이 그 도구를 쓸 수 있게 만들기 때문이다. 무엇을 못 하는지 모르는 채로 쓰면, 못 하는 영역에서 나온 답을 그대로 믿게 된다.

1. 차원: 2차원

포기한 것 — 3차원 형상 계산.

이유 — 계산량. 2차원에서 만 개인 격자가 3차원에서는 백만 개가 된다. 그리고 14편의 조건 때문에 시간 단계도 함께 늘어난다.

결과에 미치는 영향 — 15편에서 본 대로, 절단면 방향으로 빠져나가는 열이 계산되지 않는다. 실제보다 뜨겁게 나온다.

언제 문제가 되나 — 형상이 한 방향으로 길지 않을 때. 넓적한 판이나 정육면체에 가까운 덩어리는 2차원 근사가 나쁘다. 손잡이처럼 한 방향으로 긴 것은 괜찮다.

2. 형상: 정해진 도형만

포기한 것 — 임의 형상, CAD 가져오기.

이유 — 격자 자동 생성의 불안정성(17편), 기본값 부재(9편).

결과에 미치는 영향 — 실물의 세부가 반영되지 않는다. 모서리 곡률, 작은 구멍, 리브, 표면 요철.

언제 문제가 되나 — 그 세부가 열의 흐름을 지배할 때. 예를 들어 방열을 위해 일부러 만든 핀 구조는 단순 도형으로 근사하면 완전히 다른 답이 나온다.

3. 물성: 온도에 무관하게 고정

포기한 것 — 온도에 따라 변하는 물성.

이유 — 데이터가 필요하고 기본값이 없다(9편).

결과에 미치는 영향 — 온도 범위가 넓을 때 오차가 커진다. 대부분의 재료는 온도가 오르면 열전도율이 변한다.

언제 문제가 되나 — 수백 도의 온도 차가 있을 때. 프라이팬 정도(200도 범위)에서는 대개 감당할 만하다.

4. 열전달 경로: 복사 무시

포기한 것 — 복사에 의한 열 이동.

이유 — 계산이 비선형이 되어 무거워진다. 그리고 표면 상태(반사율)에 대한 값이 필요하다.

결과에 미치는 영향 — 뜨거운 물체는 복사로도 열을 잃는다. 그걸 무시하면 실제보다 뜨겁게 나온다.

언제 문제가 되나 — 온도가 높을 때. 복사는 온도의 네제곱에 비례하므로 고온에서 급격히 중요해진다. 수백 도를 넘으면 무시할 수 없다.

5. 시간: 대개 정상 상태

포기한 것 — 과도 상태 계산을 기본으로 하지 않는다.

이유 — 시간 단계를 수십만 번 반복해야 하고, 14편의 안정 조건 때문에 시간 간격을 작게 잡아야 한다.

결과에 미치는 영향 — “3분 후 온도”를 알 수 없다. 최종 도달 온도만 나온다. 그리고 최종 도달 온도는 실제 사용 중 온도보다 항상 높다.

언제 문제가 되나 — 짧게 쓰는 물건. 실제로는 그 온도에 도달하기 전에 사용이 끝난다면, 계산 결과는 과하게 안전한 쪽으로 치우친다.

6. 정밀도: 성긴 격자

포기한 것 — 촘촘한 격자.

이유 — 계산 시간. 그리고 15편의 “몇 초 안에 답”이라는 목표.

결과에 미치는 영향 — 온도가 급하게 변하는 곳의 값이 부정확하다. 특히 서로 다른 재료가 만나는 경계면.

언제 문제가 되나 — 관심 지점이 급변 구간에 있을 때. 18편의 확인 계산으로 부분적으로 대응한다.

편향의 방향을 모아보면

여기서 중요한 관찰이 있다. 위 타협들의 영향 방향을 모아보자.

타협 방향
2차원 근사 뜨겁게
복사 무시 뜨겁게
정상 상태 뜨겁게
보수적 대류 계수 (16편) 뜨겁게
형상 단순화 경우에 따라 다름
물성 고정 경우에 따라 다름
성긴 격자 경우에 따라 다름

앞의 넷이 모두 같은 방향이다. 그리고 이건 우연이 아니다. 의도적으로 그렇게 골랐다.

열 문제에서는 “실제보다 뜨겁게”가 안전한 방향이다. 계산에서 손잡이가 45도면 실제로는 그보다 낮을 가능성이 높다. 그러면 “계산에서 안전하면 실제로도 안전하다”고 말할 수 있다.

이게 근사를 다루는 실용적인 태도다. 오차를 없애려 하지 않고, 오차의 방향을 통제한다.

그런데 이 태도에 함정이 있다

정직하게 짚어야 할 것이 있다. 안전 쪽으로 기운 답은 다른 종류의 오류를 만든다.

계산에서 손잡이가 62도로 나왔다고 하자. 위험하다는 판단이 나온다. 그래서 설계를 바꾼다. 두껍게 하고, 재료를 바꾸고, 무게가 늘고 비용이 올라간다.

그런데 실제로는 48도였을 수 있다. 원래 설계로도 괜찮았던 것이다.

즉 보수적인 계산은 불필요한 대책을 유발한다. 안전 쪽 오류는 사고를 막지만 낭비를 만든다.

그래서 우리 도구의 성격을 정확히 말하면 이렇다.

  • “안전하다”는 결론은 신뢰할 수 있다. 보수적으로 계산해도 안전하면 실제로 안전하다.
  • “위험하다”는 결론은 확인이 필요하다. 과하게 나온 것일 수 있다.

이 비대칭을 사용자에게 알려야 한다. 우리 시스템은 위험 판정이 나올 때 “이 결과는 보수적으로 계산된 상한입니다. 더 정확한 검토가 필요할 수 있습니다”라고 표시한다.

무엇을 포기하지 않았나

마지막으로 반대쪽도 정리해 두자. 여러 것을 포기했지만 지키기로 한 것이 있다.

답이 물리적으로 일관될 것. 에너지가 보존되고, 열이 차가운 쪽에서 뜨거운 쪽으로 흐르지 않고, 조건을 바꿨을 때 답이 상식적인 방향으로 움직일 것. 이건 정밀도와 무관한 최소 요건이다.

같은 입력에 같은 답이 나올 것. 실행할 때마다 답이 달라지면 도구로 쓸 수 없다.

한계를 표시할 것. 다룰 수 없는 문제가 들어왔을 때 그럴듯한 답을 내지 않고 “이건 범위 밖입니다”라고 말할 것.

마지막 항목이 가장 중요하다. 범위를 좁힌 도구의 가장 위험한 실패는 범위 밖의 문제에 답을 내는 것이다.

다음 편에서는 이 모든 근사를 안고도 답을 검증하는 방법들을 다룬다. 3부의 마지막이다.


다음 편 예고 — 검증: 답이 맞다는 걸 어떻게 아는가. 실물 없이, 정답 없이 계산 결과를 확인하는 세 가지 방법.