| SPH Smoothed Particle Hydrodynamics | |
|---|---|
| 정식 명칭 | 평활 입자 유체동역학 |
| 분야 | 전산유체역학 × 컴퓨터 그래픽스 × 천체물리학 |
| 기법 분류 | 무격자(mesh-free) · 라그랑주(Lagrangian) |
| 기원 | 1977년, 천체물리 시뮬레이션 |
| 핵심 개념 | 커널 함수, 평활 길이 |
1. 개요[편집]
격자를 짜기 싫으면, 격자를 안 쓰면 된다. 대신 유체를 수십만 개의 점으로 부순다.
SPH(Smoothed Particle Hydrodynamics, 평활 입자 유체동역학)는 유체를 고정된 격자 대신 움직이는 입자(particle)의 집합으로 표현하는 무격자(mesh-free) 라그랑주(Lagrangian) 수치 기법이다. 각 입자는 질량·속도·밀도 같은 물성을 지닌 채 유체를 따라 흘러가며, 임의 위치의 물리량은 주변 입자들의 값을 커널 함수로 가중 평균해 추정한다. 격자 생성이라는 전산유체역학 최대의 고행에서 해방된다는 것이 이 기법의 가장 큰 매력이다.
물이 흩뿌려지고, 파도가 부서지고, 유체가 갈라졌다 다시 합쳐지는 것처럼 형상이 극적으로 변하고 자유표면이 요동치는 문제에서 SPH는 빛을 발한다. 격자 기반 기법은 이런 문제에서 격자를 매 순간 다시 짜거나 계면을 추적하느라 고생하지만, 입자는 그냥 유체를 따라 흘러가면 그만이기 때문. 영화 속 쏟아지는 물, 게임 속 출렁이는 용암은 상당수가 이 계열의 입자법으로 태어난다.1
2. 역사: 별에서 시작한 물[편집]
의외로 SPH의 고향은 유체공학이 아니라 천체물리학이다. 1977년, 별과 은하처럼 텅 빈 우주 공간을 떠도는 물질 덩어리를 시뮬레이션하려는 문제에서 태어났다. 이런 문제에는 미리 격자를 깔 “공간”이라는 것 자체가 무의미했고, 그래서 물질 자체를 입자로 보는 발상이 자연스러웠다.
- 1977년 — 진 몬해건(Joe Monaghan)과 밥 깅골드(Bob Gingold)가, 그리고 별개로 리언 루시(Leon Lucy)가 거의 동시에 SPH를 제안한다.2 각각 은하의 진동과 별의 분열 문제를 다루고 있었다.
- 1980~90년대 — 초신성 폭발, 은하 충돌, 행성 형성 같은 천체물리 시뮬레이션의 주력 도구로 자리 잡는다.
- 1994년 — 몬해건이 자유표면 유동에 SPH를 적용하며 지상의 유체공학으로 무대를 넓힌다.
- 2003년 — Müller 등이 실시간 인터랙티브 유체를 위한 SPH를 컴퓨터 그래픽스 학계에 소개하며, 게임·영화 VFX로 급속히 퍼진다.
별을 흩뿌리던 방법이 물을 흩뿌리는 방법이 된 셈이다.
3. 커널과 평활 길이[편집]
SPH의 수학적 심장은 커널 함수(smoothing kernel) 다. 어떤 물리량 의 위치 에서의 값은, 주변 입자 들의 값을 커널로 가중해 다음처럼 근사한다.
여기서 는 입자 의 질량, 는 밀도, 는 평활 길이(smoothing length)다. 평활 길이 는 “이웃”으로 칠 반경을 정한다 — 보다 멀리 있는 입자는 커널값이 0이 되어 무시된다. 가 작으면 국소적이지만 이웃이 적어 잡음이 커지고, 가 크면 매끄럽지만 계산이 무거워지고 세부가 뭉개진다. 이 절충이 SPH 정확도의 급소다.
커널 함수는 몇 가지 조건을 만족해야 한다: 전 영역 적분이 1(규격화), 거리에 따라 매끄럽게 감소, 그리고 일 때 디랙 델타로 수렴. 실무에서는 뾰족한 곳 없이 미분 가능한 3차 스플라인(cubic spline)이나 Poly6·Spiky 같은 커널이 애용된다.
4. 밀도·압력·힘의 근사[편집]
SPH가 아름다운 이유는, 미분 연산을 커널의 미분으로 떠넘길 수 있다는 데 있다. 즉 유체의 기울기나 발산을 구할 때 물리량을 미분하는 대신 커널 함수를 미분하면 된다 — 그리고 커널은 우리가 고른 매끄러운 함수라 미분이 해석적으로 알려져 있다.
이 원리로 나비에-스토크스 방정식의 각 항이 입자합으로 번역된다.
- 밀도 — 각 입자 주변의 이웃 질량을 커널로 합산해 로 구한다.
- 압력 — 밀도로부터 상태방정식(예: )으로 계산한다. 밀도가 기준보다 높으면(입자가 몰리면) 압력이 커져 서로를 밀어낸다.
- 힘 — 압력 기울기 항과 점성 항을 각각 커널의 기울기·라플라시안으로 근사해 입자에 작용하는 가속도를 얻는다.
이렇게 얻은 가속도로 입자를 시간적분하면(대개 베를레 적분이나 심플렉틱 적분기) 다음 스텝의 위치와 속도가 나온다. 격자도, 연립방정식도 없이 오로지 이웃 탐색과 커널 합만으로 유체가 흐른다.
5. 격자법과의 비교, 그리고 그 대가[편집]
SPH의 장점과 단점은 동전의 양면이다.
| 항목 | SPH (입자·라그랑주) | 격자법 (FVM/FDM·오일러) |
|---|---|---|
| 격자 생성 | 불필요 | 필수, 종종 최대 난관 |
| 자유표면·큰 변형 | 자연스럽게 처리 | 계면 추적 필요 |
| 질량 보존 | 입자 수로 정확히 보존 | 이산화에 의존 |
| 비압축성 | 까다로움 | 성숙한 기법 다수 |
| 경계 조건 | 골칫거리 | 잘 정립됨 |
| 정확도(동일 비용) | 대체로 낮음 | 대체로 높음 |
가장 아픈 급소는 두 가지다. 첫째, 비압축성. 물처럼 거의 안 눌리는 유체를 SPH로 다루려면 강한 압력을 걸어야 하는데, 이는 시간 간격을 극단적으로 작게 만든다.3 이를 우회하려 PCISPH, IISPH 같은 개량판이 쏟아졌다. 둘째, 경계 처리. 벽 근처에서는 이웃 입자가 한쪽에만 있어 커널 합이 편향되고(입자 결핍), 이를 메우려 유령 입자·경계 입자 같은 온갖 땜질이 동원된다.
게임·영화에서는 SPH만 쓰기보다, 입자의 장점과 격자의 장점을 섞은 FLIP/PIC 계열 하이브리드가 사실상 표준으로 자리 잡았다. 입자로 이류(advection)를 처리하고 격자로 압력 투영을 풀어, SPH의 비압축성 약점을 격자로 메우는 전략이다. 상용 툴 대부분이 이 노선을 따른다.
6. 관련 문서[편집]
7. Footnotes[편집]
-
다만 “물처럼 보이는 것”과 “물리적으로 정확한 물”은 다르다. VFX 아티스트는 대개 정확성보다 화면빨을 택하며, 이 점에서 SPH는 물리 엔진과 같은 실용주의 진영에 속한다. ↩
-
Gingold, R. A. & Monaghan, J. J. (1977), MNRAS; Lucy, L. B. (1977), AJ. 같은 해 같은 아이디어가 독립적으로 두 번 발표된, 과학사의 흔한 동시 발견 사례다. 누가 원조냐는 논쟁은 여전히 학회 뒤풀이의 안주다. ↩
-
약압축성(WCSPH) 방식에서는 음속을 실제보다 낮춰 잡아 시간 간격을 벌지만, 그 대가로 밀도가 몇 % 출렁인다. 즉 “적당히 눌리는 물”로 타협하는 셈. 물은 원래 안 눌린다고 배웠지만, 시뮬레이션 앞에서는 다들 조금씩 눌린다. ↩