얕은 물 방정식

오류 제보
전산유체역학 유체역학 마지막 수정: 2026-08-05 04:43:55

○ 공개 검수 대기 표시 기준 보기

1. 개요

얕은 물 방정식
Shallow Water Equations
약칭SWE (생브낭 방정식)
가정정수압, 연직 가속 무시, 연직 평균 속도
유형쌍곡형 보존법칙계
파속u ± √(gh)
지배 무차원수프루드 수 Fr = u/√(gh)
주 수치기법유한체적법 + 리만 솔버, well-balanced
주 용도홍수·해일·하천·대기/해양 역학

물이 얕으면 방정식도 얕아진다. 대신 충격파가 생긴다.

얕은 물 방정식(shallow water equations, SWE)은 수심이 수평 길이 스케일보다 훨씬 작아 연직 방향 가속도를 무시할 수 있을 때, 압력을 정수압으로 놓고 나비에-스토크스 방정식을 수심 방향으로 적분해 얻는 쌍곡형 보존법칙계다. 미지수는 3차원 속도장과 압력장이 아니라 수심 h(x,y,t)h(x,y,t)와 연직 평균 수평속도 u(x,y,t)\mathbf{u}(x,y,t) 뿐 — 즉 문제가 통째로 한 차원 내려간다. 1871년 아데마르 바레 드 생브낭(Barré de Saint-Venant)이 하천 유동용으로 유도해 생브낭 방정식이라고도 부른다.

“얕다”의 기준은 절대 수심이 아니라 종횡비다. 수심 4 km의 태평양도 파장 200 km짜리 쓰나미 입장에서는 압도적으로 얕은 물이다. 실제로 전 지구 해일 전파 계산은 거의 전부 SWE로 이뤄진다.

2. 방정식

보존형으로 쓰면 질량(수심) 보존과 운동량 보존이다.

∂h∂t+∇⋅(hu)=0\frac{\partial h}{\partial t} + \nabla\cdot(h\mathbf{u}) = 0 ∂(hu)∂t+∇⋅ ⁣(h u⊗u+12gh2I)=−gh∇b−f k×hu+Sf\frac{\partial (h\mathbf{u})}{\partial t} + \nabla\cdot\!\left(h\,\mathbf{u}\otimes\mathbf{u} + \tfrac{1}{2}gh^2 \mathbf{I}\right) = -gh\nabla b - f\,\mathbf{k}\times h\mathbf{u} + \mathbf{S}_f

b(x,y)b(x,y)는 바닥 지형, ff는 코리올리 파라미터, Sf\mathbf{S}_f는 바닥 마찰(매닝·셰지 식)이다. 운동량 플럭스 안의 12gh2\frac{1}{2}gh^2이 정수압 적분에서 나온 “압력” 항이고, 이게 SWE의 성격을 결정한다.

기체동역학과의 대응이 유명한데, h↔ρh \leftrightarrow \rho로 놓으면 압력이 p=12gρ2∝ρ2p = \frac{1}{2}g\rho^2 \propto \rho^2이므로 비열비 γ=2\gamma = 2인 등엔트로피 기체와 수학적으로 같은 구조가 된다. 그래서 압축성 유동에서 개발된 도구 대부분이 그대로 이식된다.1

3. 파동과 프루드 수

1차원 SWE의 특성속도는 λ1,2=u∓gh\lambda_{1,2} = u \mp \sqrt{gh}이고, 대응하는 리만 불변량은 u±2ghu \pm 2\sqrt{gh}다. 여기서 중력 표면파의 속도 c=ghc = \sqrt{gh}가 나오며, 이게 음속에 해당하는 역할을 한다. 마하 수 자리에 오는 것이 프루드 수

Fr=ughFr = \frac{u}{\sqrt{gh}}

이며, 흐름의 성격을 가른다.

  • Fr<1Fr < 1 (상류/아임계): 교란이 상류로 거슬러 올라갈 수 있다. 하류 경계조건이 상류에 영향을 준다.
  • Fr>1Fr > 1 (사류/초임계): 모든 특성이 하류로만 간다. 상류에서 무슨 짓을 해도 상류는 모른다.
  • Fr=1Fr = 1: 임계 흐름. 수문·둑 위의 조절 단면.

초임계에서 아임계로 갈아탈 때 생기는 불연속이 수충격(hydraulic jump)이다. 실제로 이건 충격파와 같은 수학적 대상이며, 랭킨-위고니오 관계에 대응하는 점프 조건이 존재한다. 부엌 싱크대에서 수도꼭지 아래 생기는 동그란 테두리가 그거고, 엔트로피 조건에 해당하는 것은 “에너지는 점프에서 소산되어야 한다”는 요구다. 어느 방향으로 점프가 허용되는지(초임계→아임계만 가능)를 이게 결정한다.

4. 댐 붕괴 문제

SWE의 표준 벤치마크는 댐 붕괴 리만 문제다. x<0x<0에 수심 hLh_L, x>0x>0에 hRh_R인 정지 상태로 시작해 벽을 순간적으로 제거하면, 왼쪽으로 팽창파(rarefaction), 오른쪽으로 충격(보어)이 달려가고 그 사이에 일정 상태가 생긴다. 마른 바닥(hR=0h_R = 0)에 대해서는 리터(Ritter, 1892)의 해석해가 있어

h(x,t)=19g(2ghL−xt)2h(x,t) = \frac{1}{9g}\left(2\sqrt{gh_L} - \frac{x}{t}\right)^{2}

로 팽창 부채꼴이 정확히 주어진다. 새 코드를 짜면 무조건 이걸 먼저 돌려본다.

보존형 1D 얕은 물 방정식을 유한체적법으로 푼 댐 붕괴 리만 문제다. HLL 리만 솔버 + MUSCL(minmod) 2차 재구성 + SSP-RK2 이고, Δt 는 CFL 0.45 로 매 스텝 자동 결정한다. 위 패널의 노란 점선은 중간수심 h* 를 뉴턴법으로 풀어 얻은 정확 리만 해다. 좌향 희박파는 수치해가 거의 겹쳐 지나가지만 우향 충격은 서너 셀에 걸쳐 번지고, 셀 수를 400 까지 올리면 그 폭이 좁아진다. 격자를 바꿔가며 HUD 의 L1 오차를 비교하면 수렴차수가 약 1.0 으로 나온다(N=100→1600 에서 5.10e−3 → 3.16e−4, 실측 차수 0.97~1.04) — 매끄러운 영역에서 2차인 기법이라도 불연속이 들어간 L1 노름 전체로는 1차가 정상이다. 아래 패널은 프루드 수 Fr = |u|/√(gh) 이고 주황이 Fr>1 인 초임계 구간이다. h_R/h_L 을 0.138 아래로 내리면 중간 영역이 초임계로 넘어간다. 충격 위치는 정확해와 0.53셀 이내로 맞고, 플럭스 형식이라 질량 보존 상대오차는 사이클 대부분에서 1e−13 이하로 유지된다(가장 굵은 100셀 격자에서만 사이클 끝 무렵 5e−7 까지 오르는데, 번진 파의 발이 투과 경계로 조금 빠져나가기 때문이다). 바닥은 평평하고 마찰·코리올리 항은 넣지 않았으며, 연직 방향은 정수압 가정으로 평균한 1차원 계다. 경계는 투과 조건이고 파가 경계에 닿기 전에 자동으로 리셋한다.

5. 수치해석

5.1. 유한체적법 + 리만 솔버

쌍곡형 보존계이므로 유한체적법이 표준이다. 셀 경계에서 리만 솔버로 플럭스를 계산하는데, 실무에서 쓰이는 것은 다음 정도.

솔버특징주의점
Roe정확한 선형화, 접촉 불연속 잘 잡음마른 바닥에서 깨짐, 엔트로피 픽스 필요
HLL견고하고 양의 수심 보존중간파를 뭉개 접촉면이 퍼짐
HLLC중간파 복원파속 추정에 민감
정확 리만 솔버기준해반복 계산 비용

5.2. well-balanced (C-property)

SWE 수치해석의 진짜 함정은 여기다. 정지한 호수 h+b=consth + b = \mathrm{const}, u=0\mathbf{u} = 0은 정확한 정상해인데, 플럭스 항과 지형 소스항 −gh∇b-gh\nabla b를 따로따로 이산화하면 둘이 정확히 상쇄되지 않아 아무것도 안 했는데 물이 출렁이기 시작한다. 이 가짜 유속은 지형 기울기가 클수록 커지고, 실제 물리 신호보다 커지는 경우도 흔하다.

이를 막는 도식을 well-balanced(균형 보존) 도식이라 하며, 정지 상태를 이산 수준에서 정확히 보존하는 성질을 C-property라 부른다. 대표적인 처방이 오뒤스(Audusse) 등의 정수압 재구성(hydrostatic reconstruction): 셀 경계에서 수심을 h∗=max⁡(0, h+b−max⁡(bL,bR))h^* = \max(0,\ h + b - \max(b_L, b_R))로 재구성해 플럭스와 소스항이 구조적으로 상쇄되게 만든다.2

5.3. 마름/젖음 (wetting-drying)

해안 침수·홍수 범람 계산에서는 h→0h \to 0인 셀이 계속 생긴다. 문제는 속도를 u=(hu)/h\mathbf{u} = (h\mathbf{u})/h로 복원하는 순간 0으로 나누기가 발생하고, 조금이라도 음의 수심이 나오면 gh\sqrt{gh}가 NaN이 되며 계산 전체가 즉사한다는 것. 대책은

  • 양의 수심 보존(positivity-preserving) 도식과 그에 맞는 시간 스텝 제한,
  • 임계 수심 이하에서 속도를 죽이는 비특이화(desingularization),
  • 마른 셀의 재구성 기울기 제한.

이 셋이 세트로 들어간다. 셋 중 하나만 빼먹어도 범람 프론트에서 터진다.

5.4. 시간 적분과 나머지

시간은 SSP 룽게-쿠타(2·3차)가 국룰이고, 공간 2차 이상은 MUSCL 재구성 + 기울기 제한자를 쓴다. 마찰항은 강성(stiff)이라 반음해적으로 처리하는 경우가 많다. 지형이 험한 하천에서는 적응 격자 세분화로 프론트만 조밀하게 잡는 것도 표준 전략.

6. 어디에 쓰이나

  • 해일·쓰나미: 심해 전파는 SWE, 해안 근처 처오름은 마름/젖음 포함 SWE 또는 부시네스크형 확장.
  • 홍수 범람·댐 붕괴: 2D SWE가 사실상 규제 표준.
  • 하천·수로: 1D SWE(생브낭)로 장구간 장기 계산.
  • 대기·해양: SWE는 원시방정식의 1층 버전이자, 수치기상예보 역학코어의 표준 시험 문제다. 윌리엄슨 등의 구면 SWE 테스트 세트 7종은 새 역학코어가 반드시 통과해야 하는 관문이다. 로스비 파·켈빈 파 같은 대규모 파동이 이 단계에서 이미 나온다.
  • 선박·저장탱크: 자유표면 진동, 즉 슬로싱의 저차 모델. 다만 강한 충격 하중이나 파의 부서짐이 중요하면 VOF 방법 같은 완전 3차원 자유표면 계산으로 넘어가야 한다.

7. 한계

정수압 가정을 깔았으므로 분산이 없다. 그래서 SWE는 파장이 짧아지면 틀리고, 특히 솔리톤을 만들지 못한다. 실제 물결은 비선형 첨예화와 분산이 겨루면서 고립파를 만드는데, SWE는 분산 항이 없으니 그냥 꺾여서 보어가 되어버린다. 이 결핍을 메우려고 연직 구조를 한 차수 더 살린 것이 부시네스크형 방정식이고, 단방향 극한으로 축약한 것이 KdV 방정식이다. 또한 연직 평균이라 성층·연직 전단·강한 연직 대류는 원리적으로 표현할 수 없다.3

8. 관련 문서

9. Footnotes

  1. 대응이 완벽하진 않다. γ=2\gamma = 2 기체는 실존하지 않고(단원자 기체도 5/3), 무엇보다 SWE에는 온도·엔트로피에 해당하는 독립 변수가 없다. 그래도 Roe 평균부터 HLLC 파속 추정까지 공식이 거의 그대로 옮겨 온다는 사실은 여전히 편리하다. ↩

  2. well-balanced 아니어도 격자를 충분히 조밀하게 하면 가짜 유속이 줄긴 한다. 문제는 “충분히”가 실무 격자보다 한참 조밀하다는 것이고, 그래서 결국 도식을 고치는 게 싸게 먹힌다. ↩

  3. “그럼 그냥 3D로 풀면 되지 않나”라는 질문에는 태평양 전체를 연직 격자까지 넣고 실시간보다 빨리 풀어야 한다는 답이 돌아온다. 해일 경보는 몇 분 안에 나와야 하고, 그 제약이 모델 선택을 대신 해준다. ↩

이 문서가 문제를 푸는 데 도움이 됐나요? 한 번의 클릭이 다음 검수 순서를 정합니다.

의견을 반영할게요. 감사합니다.

다음으로 읽기 유한체적법 약 5분 더 탐색 →