
다리가 무너지기 전에 계산한다 — 수치해석 FEM·FDM·FVM 완전 가이드
다리는 왜 무너지고, 비행기는 왜 나는가? 수백 년간 인류가 자연을 예측해 온 수치해석의 세 기둥 — 유한차분법, 유한요소법, 유한체적법의 원리와 역사, 실전 사례를 처음부터 끝까지 풀어본다.

다리는 왜 무너지고, 비행기는 왜 나는가? 수백 년간 인류가 자연을 예측해 온 수치해석의 세 기둥 — 유한차분법, 유한요소법, 유한체적법의 원리와 역사, 실전 사례를 처음부터 끝까지 풀어본다.
1940년 11월 7일, 미국 워싱턴주. 개통한 지 불과 4개월 된 타코마 내로스 교(Tacoma Narrows Bridge)가 시속 64km의 바람에 마치 리본처럼 뒤틀리다가 붕괴했다. 당시 촬영된 영상은 현대 공학 교육에서 가장 많이 인용되는 실패 사례 중 하나로 남아 있다.
설계자들은 정적 하중(자동차, 자체 무게)에 대해서는 충분한 계산을 수행했다. 하지만 바람과 구조물 사이의 동적 상호작용 — 공진(resonance)과 공탄성 플러터(aeroelastic flutter) — 을 정확히 예측하지 못했다. 당시 기술로는 이런 비선형 동적 문제를 수학적으로 풀 방법이 거의 없었다.
"자연의 방정식을 종이 위에서 풀 수 없다면, 컴퓨터에게 시켜야 한다."
이것이 수치해석(Numerical Analysis)의 출발점이다. 해석적으로 풀 수 없는 편미분방정식을 컴퓨터가 풀 수 있는 대수 방정식으로 변환하는 것. 오늘날 자동차 충돌 시뮬레이션, 항공기 공력 해석, 반도체 열관리, 날씨 예보, 원자력 발전소 안전성 평가까지 — 현대 문명의 거의 모든 공학적 의사결정 뒤에는 수치해석이 있다.
이 글은 수치해석의 세 기둥인 유한차분법(FDM), 유한요소법(FEM), 유한체적법(FVM)을 처음부터 끝까지 풀어보는 가이드다. 공학 배경 없이도 핵심 원리를 이해할 수 있도록 직관적 비유와 시각 자료를 풍부하게 담았다. 동시에, PINN(Physics-Informed Neural Networks) 시리즈의 "제0편"으로서 — 왜 AI 기반 시뮬레이션이 필요해졌는지를 역사적 맥락에서 자연스럽게 연결한다.
물리 세계의 거의 모든 현상은 편미분방정식(PDE, Partial Differential Equation)으로 기술된다. 몇 가지 대표적인 예를 보자.
열전도 방정식 — 열이 물질 내부에서 어떻게 퍼지는가:
나비에-스토크스 방정식 — 유체가 어떻게 흐르는가:
탄성 평형 방정식 — 구조물이 힘을 받았을 때 어떻게 변형되는가:
문제는 이 방정식들 대부분이 해석적 해(closed-form solution)가 없다는 것이다. 단순한 기하 형상과 경계조건에서만 손으로 풀 수 있고, 실제 공학 문제 — 자동차의 복잡한 곡면, 터빈 날개 주변의 난류 — 에서는 수학적 해를 구하는 것이 사실상 불가능하다.
수치해석의 핵심 아이디어는 놀라울 정도로 단순하다.
연속적인 공간과 시간을 유한개의 점(또는 요소, 체적)으로 나누고, 무한소 미분을 유한한 차분으로 근사한다.
등산로의 정확한 경사를 알고 싶다고 하자. 이상적으로는 모든 지점에서의 순간 기울기(미분값)를 알아야 한다. 하지만 현실에서는 불가능하다.
대신 이렇게 한다: 등산로를 따라 10미터 간격으로 말뚝을 박고, 각 말뚝의 고도를 측정한 뒤, 인접한 말뚝 사이의 고도차 / 거리를 계산한다. 이것이 바로 유한차분(finite difference)의 원리다.
말뚝 간격이 좁을수록 정확해지지만, 측정 비용(= 계산 비용)은 늘어난다. 이 정확도와 비용 사이의 균형이 수치해석의 영원한 주제다.
이 아이디어를 수학적으로 체계화한 것이 바로 FDM, FEM, FVM이다. 각각은 연속 문제를 이산화하는 서로 다른 전략을 사용한다.
수치해석의 역사는 컴퓨터 이전부터 시작된다.
18세기 수학의 거인 레온하르트 오일러(Leonhard Euler)는 상미분방정식의 수치 해법으로 지금 우리가 "오일러 방법"이라고 부르는 기법을 제시했다. 핵심은 미분을 차분으로 바꾸는 것이다:
이 단순한 아이디어가 유한차분법(FDM)의 출발점이었다. 물론 오일러 시대에는 컴퓨터가 없었기에 손 계산의 한계가 있었지만, 개념 자체는 260년이 지난 오늘날에도 그대로 쓰인다.
영국의 수학자 루이스 프라이 리처드슨(Lewis Fry Richardson)은 FDM을 대기 역학에 적용해 날씨를 예측하려 했다. 그는 유럽을 격자로 나누고, 각 격자점에서의 기압·온도·풍속 변화를 수작업으로 계산했다. 6시간 예보를 내는 데 6주가 걸렸고, 결과는 완전히 틀렸다.
하지만 그의 비전은 시대를 앞서 있었다. 그는 저서에서 64,000명의 "인간 컴퓨터"가 거대한 홀에 앉아 실시간으로 기상 계산을 수행하는 장면을 상상했다. 이것은 사실상 오늘날 슈퍼컴퓨터 기상 모델의 정확한 예언이었다.
2차 세계대전 이후, 항공 산업은 더 가볍고 더 강한 구조물을 필요로 했다. 1956년, Boeing의 엔지니어 M.J. 터너(Turner) 등이 발표한 논문에서 복잡한 항공기 구조를 작은 삼각형 요소로 나누어 분석하는 방법을 제시했다. 1960년, UC Berkeley의 레이 클러프(Ray Clough)가 이 접근법에 "Finite Element Method"라는 이름을 붙이면서 하나의 학문 분야가 탄생했다.
1970년대, 수하스 파타카르(Suhas Patankar)와 그의 스승 브라이언 스팰딩(Brian Spalding)이 유체역학 문제에 최적화된 유한체적법(FVM)을 체계화했다. 파타카르의 1980년 저서 Numerical Heat Transfer and Fluid Flow는 CFD(전산유체역학) 분야의 바이블이 되었다.
FDM은 수치해석 중 가장 직관적이다. 공간을 균일한 격자(grid)로 나누고, 각 격자점에서 미분을 인접 점들의 값 차이로 근사한다.
긴 쇠막대의 온도 분포를 알고 싶다고 하자. 막대를 따라 일정 간격으로 온도계를 세운다. 각 온도계의 읽음값과 양쪽 이웃 온도계와의 차이를 이용해 열이 어느 방향으로 얼마나 빠르게 흐르는지를 계산한다.
이것이 FDM이다. 온도계 간격 $h$가 작을수록 정확해지지만, 온도계 수(= 계산량)가 늘어난다.
1차원 열전도 방정식을 FDM으로 풀어 보자:
공간을 개의 균일한 격자점으로 나누면, 2차 도함수는 중심 차분(central difference)으로 근사된다:
이것이 바로 유명한 3점 스텐실(3-point stencil)이다. 각 격자점의 2차 도함수를 좌우 이웃 점의 값으로 표현한다.
시간도 마찬가지로 이산화한다. 가장 간단한 전진 오일러(Forward Euler) 방식을 쓰면:
이 한 줄이 1차원 열전도 문제의 FDM 해법이다. 현재 시점()의 값으로 다음 시점()의 값을 계산하는 것 — 오일러가 260년 전 제시한 아이디어가 그대로 살아 있다.
import numpy as np
# 파라미터
L = 1.0 # 막대 길이 (m)
N = 50 # 격자점 수
alpha = 0.01 # 열확산 계수
dx = L / (N - 1)
dt = 0.4 * dx**2 / alpha # CFL 안정 조건
steps = 500
# 초기 조건: 중앙에 고온 영역
T = np.zeros(N)
T[N//4:3*N//4] = 100.0
# 시간 전진
for n in range(steps):
T_new = T.copy()
for i in range(1, N-1):
T_new[i] = T[i] + alpha * dt / dx**2 * (T[i+1] - 2*T[i] + T[i-1])
T = T_new
장점:
단점:
FEM은 FDM의 한계를 극복하기 위해 근본적으로 다른 접근을 취한다. 공간을 균일한 격자가 아니라 임의 형태의 작은 요소(element)로 분할한다. 삼각형, 사각형, 사면체, 육면체 — 복잡한 형상을 모자이크처럼 유연하게 채울 수 있다.
FDM이 정사각형 격자 종이에 그림을 그리는 것이라면, FEM은 다양한 크기와 모양의 모자이크 타일로 그림을 만드는 것이다.
중요한 부분(응력이 집중되는 구멍 주변, 흐름이 급변하는 날개 앞전)에는 아주 작은 타일을 촘촘히 배치하고, 덜 중요한 영역에는 큰 타일을 사용한다. 정확도가 필요한 곳에만 계산 자원을 집중하는 것이다.
FEM의 수학적 기초는 FDM과 근본적으로 다르다. FDM은 PDE의 강형식(strong form)을 직접 차분으로 근사하지만, FEM은 PDE를 약형식(weak form)으로 변환한 뒤 풀이한다.
1차원 포아송 방정식을 예로 들자:
양변에 시험함수(test function) 를 곱하고 전체 구간에서 적분한 뒤, 부분 적분을 적용하면:
이것이 약형식이다. 2차 도함수가 사라지고 1차 도함수만 남았다. 이 변환의 의미는 심오하다 — 해가 가져야 할 매끄러움 요구 조건이 완화된다. 덕분에 불연속점이나 특이점이 있는 문제도 자연스럽게 다룰 수 있다.
최종적으로 FEM은 다음과 같은 대규모 선형 연립방정식을 만든다:
여기서 는 강성 행렬(stiffness matrix), 는 미지의 절점 변위 벡터, 는 외력 벡터다. 이 행렬의 크기는 절점 수에 비례하며, 자동차 충돌 해석에서는 수백만 개 절점, 즉 수백만 차원의 연립방정식을 풀어야 한다.
장점:
단점:
FVM은 물리학의 가장 근본적인 원리 — 보존 법칙(conservation law) — 에서 출발한다. 질량, 운동량, 에너지는 생성되거나 소멸되지 않는다. 한 영역으로 들어간 만큼 나가거나 축적되어야 한다.
FVM은 회계사의 사고방식이다. 공간을 작은 "계좌"(제어 체적, control volume)로 나누고, 각 계좌에서 입금(유입) - 출금(유출) = 잔고 변화를 추적한다.
회계에서 돈이 허공에서 생기거나 사라지면 안 되듯, FVM에서 질량이나 에너지가 격자 사이에서 "누수"되지 않는다. 이것이 유체역학에서 FVM이 사실상 표준인 이유다.
보존 법칙의 일반 형태는 다음과 같다:
여기서 는 보존량(밀도, 운동량 등), 는 플럭스(flux), 는 소스항이다.
FVM은 이 방정식을 각 제어 체적 에서 적분한다:
가우스 발산 정리에 의해 체적 적분이 면적분(surface integral)으로 바뀐다. 인접한 두 체적이 공유하는 면을 통과하는 플럭스가 한쪽에서는 유출, 다른 쪽에서는 유입으로 정확히 상쇄된다. 따라서 이산화 단계에서도 보존 법칙이 자동으로 만족된다.
이것이 FDM이나 FEM에서는 자연스럽게 보장되지 않는 FVM만의 핵심 강점이다.
장점:
단점:
요약하면:
현대 자동차의 안전 설계는 수치해석 없이는 불가능하다. LS-DYNA 같은 명시적 FEM 코드로 차량 충돌을 시뮬레이션한다. 차체를 수백만 개의 셸 요소(shell element)로 분할하고, 밀리초 단위로 변형과 파괴 과정을 추적한다.
한 대의 자동차 충돌 시뮬레이션에 1,000만~2,000만 개의 요소, 계산 시간 수 시간~수 일이 소요된다. 자동차 한 모델이 양산되기까지 수천 번의 가상 충돌 테스트를 거친다.
리처드슨의 꿈은 현실이 되었다. 전 세계 기상청은 대기를 3차원 격자로 나누고 나비에-스토크스 방정식을 FDM 또는 스펙트럴(spectral) 방법으로 푼다. 한국기상청의 수치예보 모델은 수평 해상도 1.5km, 수직 70층 이상의 격자를 사용한다.
스마트폰의 AP(Application Processor) 칩은 수 제곱밀리미터 면적에서 수 와트의 열을 발생시킨다. FEM으로 칩 내부의 3차원 온도 분포를 해석하고, 열이 패키지와 기판을 거쳐 어떻게 방출되는지를 시뮬레이션한다. ANSYS Icepak, COMSOL Multiphysics 등이 대표적 도구다.
1940년 타코마 내로스 교의 비극 이후, 모든 대형 교량과 초고층 빌딩은 설계 단계에서 FEM 구조 해석을 거친다. 풍하중, 지진하중, 피로 수명까지 — 시뮬레이션 없이는 건설 허가가 나지 않는다.
NASA와 SpaceX는 로켓 엔진 연소실 내부의 난류 유동을 FVM으로, 구조체의 진동과 열 변형을 FEM으로 해석한다. Falcon 9 로켓의 Merlin 엔진 하나에 투입된 시뮬레이션 시간은 수만 CPU-시간에 달한다.
앞서 세 가지 방법의 장단점을 비교했지만, 실무에서 가장 많은 시간을 잡아먹는 병목은 따로 있다. 바로 메시(mesh) 생성이다.
수치해석의 정확도는 메시 품질에 직결된다. 요소가 너무 크면 해상도가 부족하고, 너무 작으면 계산 비용이 폭증한다. 요소의 형상이 찌그러지면(높은 종횡비, 왜곡된 형상) 수치 오차가 급증한다.
메시 생성이 전체 프로젝트 시간의 절반을 차지하는 경우가 흔하다. 복잡한 산업용 형상(자동차 엔진, 항공기 전체)의 고품질 메시를 만드는 데 수 주에서 수 개월이 걸린다. 이것은 경험 많은 전문 엔지니어의 수작업에 의존하는 장인적 영역이다.
수치해석은 이론만으로는 의미가 없다. 실제 산업에서는 검증된 상용 소프트웨어를 통해 구현된다.
각 소프트웨어의 라이선스 비용은 연간 수천만 원에서 수억 원에 이른다. 이것 역시 수치해석의 진입 장벽 중 하나다.
수치해석은 인류를 재난에서 구하지만, 시뮬레이션을 잘못 사용하면 재난을 일으킬 수도 있다.
세계 최초의 제트 여객기 드 하빌랜드 코멧(de Havilland Comet)은 1953-54년에 세 차례 공중 분해 사고를 겪었다. 원인은 창문 모서리의 피로 균열(fatigue crack)이었다. 당시에는 반복 하중에 의한 금속 피로를 정밀하게 시뮬레이션할 수 없었다. 오늘날의 FEM 피로 해석이라면 설계 단계에서 발견했을 문제다.
미국 코네티컷주 하트포드의 실내 체육관 지붕이 폭설 하중으로 붕괴했다. 구조 해석 프로그램의 좌굴(buckling) 모드를 간과한 것이 원인이었다. 소프트웨어가 내놓은 결과를 비판적으로 검토하지 않은 엔지니어의 판단 오류가 겹쳤다.
수치해석 분야의 유명한 격언이 있다:
"Garbage In, Garbage Out (GIGO)"
소프트웨어가 아무리 정교해도, 잘못된 경계조건, 부적절한 메시, 잘못 선택한 물성치를 넣으면 쓸모없는 결과가 나온다. 수치해석은 도구일 뿐, 물리적 직관과 공학적 판단을 대체하지 못한다. 이것은 AI 기반 시뮬레이션 시대에도 변하지 않을 진리다.
수치해석은 강력하지만, 근본적인 한계에 부딪힌다. 계산 비용이다.
3차원 문제에서 격자 해상도를 2배로 높이면, 격자점 수는 배, 시간 단계도 2배(CFL 조건)로 늘어나 총 계산 비용은 약 16배로 폭증한다.
DNS(Direct Numerical Simulation) — 난류의 모든 스케일을 직접 계산하는 방법 — 는 레이놀즈 수 에 대해 격자점이 에 비례하여 필요하다. 항공기 주변 유동()을 DNS로 풀려면 약 개의 격자점이 필요한데, 이는 현존하는 슈퍼컴퓨터로도 수십 년이 걸리는 규모다.
더 심각한 문제는 설계 최적화(design optimization)에서 나타난다. 최적의 날개 형상, 최적의 냉각 구조를 찾으려면 시뮬레이션을 수백~수천 번 반복해야 한다. 한 번에 하루가 걸리는 시뮬레이션을 1,000번 돌리면 3년이다. 제품 개발 주기가 2~3년인 자동차 산업에서는 성립하지 않는 시간표다.
이것이 수치해석 커뮤니티가 수십 년간 직면해 온 근본적 병목이다. 더 빠른 하드웨어와 더 효율적인 알고리즘으로 개선해 왔지만, 문제의 복잡성은 항상 컴퓨팅 파워보다 빠르게 성장했다.
2010년대 중반부터, 수치해석 커뮤니티에서 새로운 접근이 부상했다. 서로게이트 모델(surrogate model) — 값비싼 시뮬레이션을 빠른 근사 모델로 대체하는 것이다.
기존 서로게이트 모델(크리깅, 다항식 응답면법 등)은 저차원 문제에서만 작동했다. 하지만 딥러닝의 등장으로 고차원 입출력 관계도 학습할 수 있게 되었다.
단순히 시뮬레이션 데이터를 신경망에 학습시키는 접근은 근본적 문제가 있다.
바로 이 지점에서 PINN(Physics-Informed Neural Networks)이 등장한다. 핵심 아이디어는 우아하다:
편미분방정식(물리법칙)을 신경망의 손실함수에 직접 녹여 넣는다.
PINN은 메시가 필요 없다. 도메인 내부에 무작위로 뿌린 점(collocation points)에서 물리 잔차를 계산한다. 메시 생성이라는 거대한 병목이 사라진다.
PINN은 데이터가 적어도 된다. 물리법칙 자체가 강력한 정규화(regularization) 역할을 하기 때문이다. 관측 데이터가 전혀 없는 순수 정문제(forward problem)도 풀 수 있다.
PINN과 함께 주목할 또 다른 접근은 FNO(Fourier Neural Operator)다. PINN이 하나의 PDE 인스턴스를 풀 때마다 학습해야 하는 반면, FNO는 PDE의 해 연산자(solution operator) 자체를 학습한다. 한번 학습하면 다른 초기/경계 조건에 대해서도 즉시 해를 예측할 수 있다.
중요한 점을 분명히 해야 한다. PINN이나 FNO가 전통적 수치해석을 대체하는 것이 아니다. 현 단계에서 AI 기반 솔버는 다음과 같은 역할을 한다:
최종 설계 검증은 여전히 수십 년간 검증된 FEM/FVM 솔버에 의존한다. 둘은 경쟁이 아니라 상호 보완 관계다.
레온하르트 오일러가 미분을 차분으로 바꾸는 아이디어를 제시한 이래 260년. 인류는 이 단순한 아이디어를 FDM, FEM, FVM이라는 세 기둥으로 발전시켜, 다리를 짓고, 비행기를 날리고, 날씨를 예측해 왔다.
1940년 타코마 내로스 교가 무너진 이후, 같은 종류의 재난이 반복되지 않은 것은 수치해석 덕분이다. 오늘날 우리가 안전한 자동차를 타고, 안정적인 비행기를 타고, 내진 설계된 건물에서 생활할 수 있는 것은 — 보이지 않는 곳에서 수백만 개의 격자점을 계산하는 시뮬레이션이 지켜주고 있기 때문이다.
하지만 자연은 우리가 풀 수 있는 문제보다 항상 더 복잡한 문제를 던진다. 계산 비용의 벽은 여전히 높다. 바로 이 벽을 넘기 위한 새로운 시도가 PINN(Physics-Informed Neural Networks)이다.
다음 글에서는 PINN의 핵심 원리, 수학적 구조, 그리고 실전 사례를 깊이 있게 풀어본다. 물리법칙을 손실함수에 녹인 신경망이 어떻게 260년 된 수치해석 패러다임에 새로운 바람을 불어넣고 있는지 — AI에게 물리를 가르치는 여정을 함께 따라가 보자.
제0편 (이 글): 수치해석 입문 — FDM, FEM, FVM의 원리와 한계
제1편: PINN의 모든 것 — 물리법칙을 아는 신경망
제2편: APINN — 증강된 물리 정보 신경망
제3편: Sharp-PINN — 경계면 문제의 혁신
제4편: FNO — 푸리에 신경 연산자로 연산자를 배우다