수 공 학
대 한 토 목 학 회 논 문 집제32권 제2B 호·2012년 3월 pp. 123 ~ 130
MLP기법을 적용한 천수흐름의 수치모의
Numerical Simulation of Shallow Water Flow Using Multi-dimensional Limiting Process (MLP)
안현욱*·유순영**
An, Hyunuk·Yu, Soonyoung
···
Abstract
MLP (Multi dimensional Limiting Process) is implemented to simulate shallow water flows, and its performance over con- ventional TVD limiters in multidimensional flows is verified through several numerical simulations. MLP was developed to control oscillations for multi-dimensional compressible flows and proved to improve accuracy, efficiency and robustness in compressible flows. In this study, we applies MLP to modeling shallow water equations(SWEs) given that the SWEs are ame- nable to be solved using the large range of numerical methods developed to deal with compressible flows and MLP has been yet used for SWEs. Simulation results through the benchmark tests show that MLP has favorable features such as numerical oscillation control and convergence behaviors comparable to the conventional limiters. Both numerical accuracy and stability are improved in multi-dimensional discontinuous flows.
Keywords : MLP, Shallow water equations, numerical oscillations, TVD limiters
···
요 지
천수방정식의 수치모형에 MLP(Multi dimensional Limiting Process) 기법을 적용한 후 수치모의를 통해 MLP 의 수치 진 동 제어 성능을 검증하였다 . MLP 기법은 2, 3 차원에서 기존의 TVD 제어자 (limiter) 들보다 안정적이며 정확한 수치모의를 가 능하게 한다 . 다차원에서 정확하고 안정적인 수치모의가 가능하도록 개발된 MLP 기법은 압축성 유체를 표현하는 2, 3 차원 오일러 방정식에 적용되어 기존의 제어자들에 비해 그 뛰어난 성능이 검증된 바 있다 . 하지만 천수방정식에 적용된 예는 없
으며 , 이에 본 연구는 천수방정식에 MLP 를 적용하고 천수방정식 수치모형 검증에 주로 사용되는 수치모의를 통해 MLP 의 진동 제어 성능을 검증하였다 . 모의 결과 , MLP 는 2 차원 천수방정식에 있어서도 기존의 제어자들과 비교하여 수치진동을 보
다 잘 제어하는 것으로 판단된다 . MLP 사용으로 인해 불연속면 근처에서 정확도가 향상되었고 수치진동이 발생하지 않아
보다 안정적인 모의가 하게 되었다 .
핵심용어 : MLP, 천수방정식 , 수치진동 , TVD 제어자
···
1. 서 론
천수방정식의 수치모형은 하천의 유량예측 , 홍수범람해석 ,
해일 모의 등에 널리 사용되고 있고 , 그 결과는 수자원 관
리 , 재난 대책 등 정책적인 의사결정에 있어 유용한 자료로 활용되고 있다 . 이처럼 천수방정식의 수치모형은 연구목적뿐 만 아니라 실생활에 있어서도 큰 영향을 미치고 있으며 , 이 에 보다 정확하고 효율적인 수치모형의 구축이 수리 / 수자원 /
방재분야에서 중요한 영역이 되고 있다 . 유한차분법 , 유한체 적법 , 유한요소법 등을 기초로 하는 많은 수치해법들이 천수 방정식을 안정적으로 정확하게 근사하기 위해 개발되었고 ,
1990 년대와 2000 년대를 지나며 이러한 수치기법들은 어느 정
도 성숙 단계에 접어든 것으로 보인다 . 그 중 , 가장 널리 사용
되고 있는 기법 중의 하나로 MUSCL(Monotone Upstream- centered Schemes for Conservation Laws) 타입의 유한체
적모형이 있다 . MUSCL 타입의 모형은 수치진동이 확산되지
않는 TVD(Total Variation Diminishing) 조건을 만족하는 대
표적인 Gudunov 타입의 기법으로 불연속면이 없는 영역에
서는 2 차 이상의 공간정확도를 유지한다 . MUSCL 타입 이외 에도 TVD 조건을 만족하면서 고정확도를 유지하는 소위
“TVD 기법 ” 이라고 불리는 많은 수치기법들이 있으며 , 이러한 기법들은 수학적인 분석에 근거하여 1 차원에서 그 안정성이 증명되어 있다 (Harten, 1983; Sweby, 1984). TVD 기법들
은 2, 3 차원의 직교격자에 확장되어 적용이 가능하며 2 차원
천수방정식에도 TVD 기법들이 적용된 예는 어렵지 않게 찾
아볼 수 있다 (Causon 등 , 2000; Toro, 2000; Liang 등 ,
*정회원·국가수리과학연구소계산수리과학연구부연구원·공학박사
(E-mail : [email protected])
**정회원·국가수리과학연구소계산수리과학연구부연구원·이학박사
(E-mail : [email protected])
2004). 하지만 이러한 기법들의 안정성은 앞서 서술하였듯 이 1 차원상에서의 분석에 근거하기 때문에 다차원 모의에서 도 적절하게 수치진동을 제어한다는 보장은 없다 . 실제로
TVD 제어자들 중 불연속면에서 제어 정도가 가장 작은
superbee 를 적용해 2, 3 차원의 흐름을 모의할 경우 , 수치진 동이 발생하여 계산의 정확도가 떨어지거나 정상상태를 모 의할 때 계산이 수렴하지 않는 경우가 종종 발생한다 . 반
면 2, 3 차원에서도 수치진동을 발생시키지 않고 안정적인
성능을 보여주는 minmod 의 경우 , 불연속면이 지나치게 확
산되는 경향이 나타난다 . 제어자를 사용하지 않고 수치진 동을 제어하는 ENO(Essentially NonOscillatory), WENO (Weighted Essentially NonOscillatory) 와 같은 기법들도 있 으나 이들 기법 또한 1 차원상의 이론에 근거하여 1 차원에서 만 수치적인 안정성이 보장된다 .
최근 Kim 등 (2005) 은 다차원에서도 적절히 수치진동을 억
제하는 MLP(Multi dimensional Limiting Process) 기법을 제안하였다 . TVD 조건을 만족하기 위한 기본적인 조건 중 하나는 “Maximum Principle” 로 , 셀 경계면에서 보간되어 재구성된 값은 새로운 극 값이 되지 않아야 한다 . 기존의 1
차원 TVD 제어자들은 Maximum Principle 조건을 만족시 키고 있으며 , 특히 비구조격자상에서는 1 차원에서 구성된 제
어자들의 적용이 어렵기 때문에 Maximum Principle 을 기초
로 한 여러 알고리즘이 제안되어 적용되고 있다 . 이들 제어 자들과 MLP 와의 차이점은 기존 제어자들이 흐름이 발생하 는 셀 경계면에서 재구성된 값이 Maximum Principle 을 만 족시키도록 제어자를 유도한데 반해 , MLP 는 셀 절점에서
Maximum Principle 을 만족시키도록 제어자를 유도하였다는
점이다 . 즉 2 차원 직교격자의 경우 , 기존의 제어자들은 5 개
의 스텐실 (Stencil) 만을 이용해 제어 영역을 결정하는데 반해 ,
MLP 기법은 9 개의 스텐실을 이용하여 Maximum Principle 을 만족시키는 영역을 유도한다 (Fig. 1). Kim 등 (2005) 은 MLP
를 2 차원 압축성 유체를 표현하는 오일러 방정식에 적용하
였으며 , 기존의 TVD 제어자들과 MLP 기법을 비교하여
MLP 기법이 2 차원에서 보다 안정적으로 수치진동을 제어하 는 것을 확인하였다 . Yoon 등 (2008) 은 셀 절점에서
Maximum Principle 을 만족시키는 기존의 개념을 이용하여
Kim 등 (2005) 의 기법을 수정하고 , 새로운 형태의 MLP 기법 을 3 차원 오일러 방정식에 적용하였다 . MLP 기법은 2 차원의 비구조 삼각형격자에서도 기존의 제어자들보다 정확하고 안 정적인 수치 모의 결과를 보여주었다 (Park 등 , 2010).
본 논문는 MLP 기법을 직교격자에 구축된 천수방정식 모 형에 적용하여 MLP 의 수치 진동 제어 성능을 검증하고자 하였다 . 천수방정식과 2 차원 오일러 방정식은 모두 쌍곡선형 태의 편미분방정식으로 , 동일한 수치해법이 적용될 수 있으 나 , 아직 천수방정식에 MLP 를 적용한 바는 없다 . 직교격자 는 복잡한 지형구조의 표현이 어렵다는 단점에도 불구하고 ,
수치기법의 적용이 비교적 쉽고 격자 생성이 간단하다는 장 점으로 인해 아직까지 널리 사용되고 있다 . 또한 분할격자기 법이나 메쉬세분화기법 등과 함께 사용되면 복잡한 지형을 효율적으로 모의할 수 있다 (Liang 등 , 2004; Liang 등 , 2007;
Popinet, 2011; 안현욱 등 , 2011). 본 논문에서는 2 차원 천수방 정식을 해석하는 자유 소프트웨어인 Gerris(Popinet, 2003) 에
MLP 를 적용하여 기존의 TVD 제어자들과 수치 진동 제어
성능을 비교하였다 . Gerris 는 쿼드트리 (Quadtdree) 격자 생성 과 적응적메쉬세분화 기능을 제공하여 효율적이고 정확한 수 치계산을 가능하게 해 주는 소프트웨어로 국내에서는 안현
욱 등 (2011) 이 홍수실험 모의를 통해 그 성능을 검증한 바
있다 . 2. 수치모형
2.1 지배방정식
천수방정식은 Navier-Storks 방정식을 수심방향으로 적분하
여 유도되며 , 그 과정에서 파의 길이가 수심에 비해 충분히 길다는 가정과 정수압 가정이 사용된다 . 천수방정식을 적용 함에 있어서 이러한 가정이 성립하지 않는 경우도 많으나 ,
천수방정식을 이용한 하도추적 , 홍수범람 , 해일 등의 수치 모
의는 실제 현상에 대한 재현성이 높아 많은 분야에서 널리 사용되고 있다 . 하상마찰을 무시한 기본적인 형태의 천수방 정식을 쌍곡선형방정식으로 정리하면 다음과 같다 .
∂q (1)
--- ∂f ∂t
∂x --- ∂g --- ∂y + + = s
Fig. 1 Comparison of stencils: (a) conventional TVD limiters; (b) MLP limiter. Gray-colored cells are used for computation of ( i , j ) cell.
(2)
여기서 h는 수심 , u , v는 x, y방향의 수심 평균된 유속 , t는 시간 , g는 중력가속도 , , 는 x, y방 향의 하상경사이다 . 위 식에 유한체적법을 적용하기 위해 식
(1) 을 공간적분하여 Green 의 정리를 적용하면 다음과 같은
식을 얻을 수 있다 .
(3)
여기서 , Ω는 계산영역 , 는 계산경계면이고 는
흐름률 벡터이다 . 2.2 수치해법
식 (3) 을 유한체적법에 의해 이산화하면 각 셀 (control
volume) 에서 다음과 같은 식이 성립한다 .
(4)
여기서 , A
i,j는 ( i , j ) 셀의 면적 , ∆t는 이산화된 시간간격이며 ,
직교격자에서 이산화된 흐름률항 는 다음과 같다 . (5)
여기서 , l
x, l
y는 x, y방향의 셀 길이이고 , 셀 경계에서의 흐
름률은 다음과 같이 계산된다 .
(6)
여기서 , F는 수치적 흐름률로 , 본 연구에서는 HLLC 근사 리만해법 (Harten 등 , 1983) 을 사용하여 계산한다 .
셀 경계에서의 상태량 , , ,
등은 불규칙한 하상경사에서 야기되는 흐름률항과
생성항 간의 수치적 불균형 문제를 해소하기 위해 Audusse
등 (2004) 의 “hydrostatic reconstruction” 기법을 사용하여 평 가하였다 . Audusse 등 (2004) 의 “hydrostatic reconstruction”
기법은 불규칙한 하상경사와 마름 / 젖음 상태에서도 흐름률항 과 생성항 간의 수치적 불균형 문제를 안정적으로 해결하는 것 으로 확인되었다 . Popinet(2011) 은 “hydrostatic reconstruction”
기법을 quadtree 격자에 성공적으로 적용하였고 , An 등 (2012) 은
이를 확장시켜 quadtree cut cell 격자에 적용하였다 . 흐름률과 생성항의 불균형 문제를 수치적으로 처리하기 위한 기법은 수 치모형의 적용에 있어서 아주 중요하나 본 연구의 목적인 수 치진동제어자로서 MLP 제어자의 검증과는 다소 관련이 적으
므로 상세한 서술은 생략하였다 . 본 수치해법에 대해서 보다 상세한 내용을 위해서는 An 등 (2012) 을 참고하기 바란다 .
2.3 MLP (Multi dimensional Limiting Process) 기법
“Hydrostatic reconstruction” 기법을 이용하여 등 과 같은 상태량을 재구성하기 위해서는 먼저 셀 ( i, j ) 의 경
계면 p에서 상태량 q
i,j,p를 평가하여야 한다 . 여기서 아래첨
자 는 오른쪽 , 왼쪽 , 위쪽 , 아래쪽 셀 경계면을 의미한다 . MUSCL 기법은 제어자함수 (limiter function) 를 사
용하여 다음과 같이 q
i,j,p를 계산한다 .
(7)
여기서 ,
(8)
이고 는 제어자함수로 이다 . 일반적으로
널리 사용되는 TVD 제어자는 다음과 같다 .
Minmod limiter:
(9) Superbee limiter:
(10) Sweby limiter:
(11) Van leer limiter:
(12) 1 차원상에서 TVD 제어자는 다음의 TVD 영역을 가진다
(Sweby, 1984).
(13)
MUSCL 타입의 수치해법에서 1 차원 제어자함수를 이용한
수치 진동 제어 과정은 셀 경계면에서 보간된 상태량이 셀 중앙에서 정의된 상태량과 비교해 과도하게 크거나 작을 때 ,
일종의 “ 깍는 (clipping)” 과정을 통해서 경계면에서 재구성된 값이 새로운 극값이 되지 않도록 하게 한다 . 하지만 위에 언급한 TVD 제어자를 차원 분리 (dimensional splitting) 과 정을 통해 다차원에 적용하면 사용하는 제어자에 따라 깍는 과정이 과도하게 적용되어 정확도가 낮아지거나 불충분하게 적용되어 수치진동이 발생하는 현상이 관찰된다 . 이러한 문 제를 극복하기 위해 Kim 등 (2005) 은 셀 절점에서 Maximum
Principle 을 만족시키는 다음과 같은 조건을 유도하였다 .
(14)
여기서 α는 제어 영역을 결정하는 계수로 다음과 같이 정 의된다 :
, ] ,
, (15)
q h hu
⎝ ⎠ hv
⎜ ⎟ ⎜ ⎟
⎛ ⎞ , f
hu hu
2+ gh
2⁄ 2
⎝ huv ⎠
⎜ ⎟
⎜ ⎟
⎛ ⎞
g ,
hv huv hv
2+ gh
2⁄ 2
⎝ ⎠
⎜ ⎟
⎜ ⎟
⎛ ⎞
s ,
0
hgz
x–
hgz
y–
⎝ ⎠
⎜ ⎟
⎜ ⎟
⎛ ⎞
= = = =
z
x( = ∂z ∂x ⁄ ) z
y( = ∂z ∂y ⁄ )
∂t ∂
---- q Ω d
∫
Ω+ ∫°
∂ΩF ˜ ⋅ nd∂Ω = ∫
Ωs Ω d
∂Ω F ˜ = [ ] f g ,
A
i j,--- ∆t ( q
i jn 1,+– q
i jn,) F + ˜
i j,= S
i j,F ˜
i j,F ˜
i j,= l
yF
i 1 2 j,+ ⁄– l
yF
i 1 2 j– ⁄ ,+ l
xF
i j 1 2,+ ⁄– l
xF
i j 1 2,– ⁄Fi 1 2,j+ ⁄ =
F
(qi 1 2 , j+ ⁄ – ,qi 1 2 ,j+ ⁄ + ) F, i 1 2 j– ⁄ , =F
(qi 1 2 ,j– ⁄ – ,qi 1 2+,j– ⁄ ), Fi j 1 2,+ ⁄ =F
(qi j 1 2–,+ ⁄ ,qi j 1 2+,+ ⁄ ), Fi j 1 2,– ⁄ =F
(qi j 1 2 ,– ⁄ –,qi j 1 2+,– ⁄ )q
i 1 2 ,j+ ⁄ –q
i 1 2 ,j+ ⁄ +q
i j 1 2 ,+ ⁄ –q
i j 1 2+,+ ⁄q
i 1 2 ,j+ ⁄ –p = { r l t b , , , }
q
i j r, ,q
i j,1
2--- ϕ r (
i j r, ,) q
i 1 2 j,– ⁄q
i j l, ,q
i j,1
2--- ϕ r (
i j l, ,) q ∆
i 1 2 j+ ⁄ ,, –
=
,
+ ∆
=
q
i j t, ,q
i j,1
2--- ϕ r (
i j t, ,) q
i j 1 2,– ⁄, q
i j b, ,q
i j,1
2--- ϕ r (
i j b, ,) q ∆
i j 1 2,+ ⁄–
= + ∆
=
q
i 1 2 j– ⁄ ,∆ = q
i j,– q
i 1 j– ,, ∆ q
i j 1 2,– ⁄= q
i j,– q
i j 1,–r
i j r, ,1
r
i j l, ,--- ∆ q q
i 1 2 j,+ ⁄i 1 2 j– ⁄ ,
∆ --- , r
i j t, ,1
r
i j b, ,--- ∆ q q
i j 1 2,+ ⁄i j 1 2,– ⁄
--- ∆
= = = =
ϕ r ( ) ϕ r ( ) rϕ = ( 1 ⁄ r )
ϕ r ( ) = max 0 min ( , ( r , 1 ) )
ϕ r ( ) = max 0 min 2 ( , ( r , 1 ) ,min ( r , 2 ) )
ϕ r ( ) = max 0 min 1.5 ( , ( r , 1 ) , min ( r , 1.5 ) )
ϕ r ( ) r r + 1 + r ---
=
0 ≤ ϕ r ( ) ≤ min 2 ( r , 2 )
0 ≤ ϕ r ( ) ≤ min ( αr α , )
α
i j r, ,g 2max 1 ( , r
i j r, ,) ( 1 max 0 + ( , tan θ
i 1 j l+ , ,⁄ r
i 1 j l+ , ,)
1 tan + θ
i j r, ,---
=
α
i j l, ,g 2max 1 ( , r
i j l, ,) ( 1 max 0 + ( , tan θ
i 1– j r, ,⁄ r
i 1– j r, ,) 1 tan + θ
i j l, ,---
=
α
i j t, ,g 2max 1 ( , r
i j t, ,) ( 1 max 0 + ( , tan θ
i j 1 b, + ,⁄ r
i j 1 b,+ ,)
1 tan + θ
i j t, ,---
=
α
i j b, ,g 2max 1 ( , r
i j b, ,) ( 1 max 0 + ( , tan θ
i j 1 t,– ,⁄ r
i j 1 t,,–)
1 tan + θ
i j b, ,---
=
식 (15) 에 의하면 는 1 과 2 사이의 값을 가지므로 식 (14) 는 식 (13) 을 만족한다 . 식 (13) 과 식 (14) 의 영역을 도시한 Fig. 2 과 식 (15) 를 종합하여 보면 , 식 (14) 가 불규 칙면의 각도에 따라 의 값을 적절하게 조절하여 TVD
조건을 만족시키는 것을 알 수 있다 . 또한 충격파가 격자와 평행하게 발생하는 경우 tan θ
i,j,p는 0 이 되고 , 이로인해 α
i,j,p가 2 가 되어 기존의 TVD 조건과 동일한 조건이 된다 . MLP
는 식 (14) 의 다차원 제어 함수 (Multi-dimensional limiting
function) 와 고차의 보간법을 결합한 방법으로 다음과 같이
표현될 수 있다 .
(16)
여기서 는 상태량 분포의 굴곡 (curvature) 을 표현할 수
있는 3 차 정확도 이상의 보간법으로 , 본 논문에서는 공간에 대해 3 차 정확도를 유지하기 위해
(17)
과 같이 정의하였다 . MLP 기법에 대한 보다 자세한 유도와 분석을 위해서는 Kim 등 (2005) 을 참조할 수 있다 . 기존의 제
어자들과 MLP 기법이 사용하는 스텐실을 비교해 보면 , Fig.
2 에 도시한 것과 같이 2 차원상에서 기존의 제어자들이 5 개 의 스텐실을 사용하여 ( i , j ) 셀의 값을 계산하는데 비해 MLP 기법에서는 9 개의 스텐실을 사용하여 수치진동을 제어하
는 것을 알 수 있다 . 3. 수치모의
MLP 기법의 수치 진동 제어 성능은 2, 3 차원 오일러 방정
식에 적용되어 검증된 바 있다 . 하지만 천수방정식에 적용된 예는 없으며 , 이에 천수방정식 모형 검증에 일반적으로 사용 되는 수치모의를 통하여 그 성능을 검증할 필요가 있다 . 본
논문에서는 4 종류의 수치모의를 수행하였고 , minmod,
superbee, sweby, van leer 등의 제어자와 비교하여 MLP 기 법의 성능을 검증하였다 . 또한 본 논문은 직교격자상에 구축 된 천수방정식의 수치모형에 MLP 를 적용하여 , 다차원 현상 모의시 수치 진동 제어자로서의 MPL 성능을 검증하는 것으 로 , 2 차원상에서 불연속단면을 발생시키고 유지하기 위해 분 할격자기법을 함께 사용하였다 . 분할격자기법은 셀을 유체부 분과 고체부분으로 분리시켜 고려함으로써 직교격자상에서 복잡한 경계면을 표현할 수 있게 해 주는 기법이다 . 셀은 유체셀 , 고체셀 , 분할셀로 구분되는데 , 유체셀은 직교격자에 서와 같은 기법으로 계산되며 고체셀은 유체가 없으므로 계 산이 수행되지 않는다 . 분할셀에서 셀간의 흐름률은 유체부 분들간에 발생하는 것으로 하고 유한체적법에 의해서
Causon 등 (2000; 2001) 과 같이 계산을 수행하였다 . 분할셀 은 비구조격자이므로 식 (16) 을 그대로 적용시키기 어렵다 .
따라서 분할셀 경계면의 상태량은 minmod 제어자를 사용하
여 평가하였다 . 앞서 서술하였듯이 mimmod 는 가장 안정적 인 제어자로서 식 (13) 의 TVD 조건뿐 아니라 식 (14) 의
MLP 조건도 만족시키므로 분할격자에 의해서 새로운 수치진 동이 발생하지는 않을 것으로 판단된다 .
3.1 Steady flow over a Gaussian bump
첫 번째 모의는 불연속면이 없는 영역에 MLP 를 적용하였 을 때 3 차의 공간정확도가 유지되는지를 검증하기 위한 것 으로 , 가우시안 범프 (Gaussian bump) 위의 정상류가 모의되 었다 . Caleffi 등 (2006) 을 참조하여 30 m 의 1 차원 계산영역
에 다음과 같은 Gaussian 분포를 따르는 지형을 고려하였다 .
(18)
여기서 , c
0=1 m
2, σ = 2 m 이고 x
m=15 m 이다 . 초기조건은 h
0=2 m 로 하고 , 상류의 경계조건은 , 하류의 경계조건은 h =2 m 로 설정하였다 . MLP 기법과 minmod 제어 자를 적용하여 격자를 사용하여 모의를 수행하 였다 . 여기서 , n은 격자 레벨로서 본 모의에서는 5~9 가 사 용되었다 . 정상상태에 도달했을 때의 해석해는 베르누이의 정 리에 의해 계산될 수 있다 .
Fig. 3 에 일 때의 수위분포를 도시하였다 .
MLP 기법과 minmod 제어자를 적용한 두 경우 모두 해석해
tan θ
i j r, ,tan θ
i j l, ,q
i j 1,+– q
i j 1, –q
i 1 j,+– q
i 1 j– ,---
= =
tan θ
i j t, ,tan θ
i j b, ,q
i 1 j,+– q
i 1 j– ,q
i j 1,+– q
i j 1,–---
= =
g x ( ) = max 1 min 2 ( , ( , x ) )
α
i j p, ,α
i j p, ,ϕ r (
i j p, ,) = max 0 min ( , ( α
i j p, ,r
i j p, ,, α
i j p, ,, β
i j p, ,) )
β
i j p, ,β
i j p, ,1 2 + r
i j p, ,--- 3
=
z x ( ) c
0σ 2 π --- e
12 ---x x– m
---σ
⎝ ⎠
⎛ ⎞