들어가며
CFD 해석을 진행하다 보면 한 번쯤은 "메쉬는 다 만들었는데 솔버가 자꾸 발산한다"는 경험을 하게 됩니다. 특히 복잡한 형상에서는 메쉬 어딘가에 Skewness가 큰 셀이 몇 개씩 끼어 있고, 그것 때문에 전체 시뮬레이션이 멈춰버리는 일이 종종 일어나죠.
이럴 때 STAR-CCM+가 제공하는 보조 모델이 바로 오늘 소개할 Cell Quality Remediation입니다. 이름 그대로 "셀(cell) 품질(quality)을 보정(remediate)해주는" 모델인데, 사용 방법은 간단하지만 내부 동작 원리와 한계를 정확히 알아두면 훨씬 더 유용하게 활용할 수 있습니다.
이 글에서는 STAR-CCM+ 공식 매뉴얼을 기반으로 다음 6가지를 정리합니다.
• 개념과 한 줄 요약
• 핵심 지표인 Skewness Angle이란?
• 3단계 작동 방식
• Bad Cell Indicator로 메쉬 상태 시각화하기
• 적용 효과와 한계
• 실무 사용 가이드
1. Cell Quality Remediation 이란?
STAR-CCM+ 공식 매뉴얼에서는 이 모델을 다음과 같이 정의합니다.
"The Cell Quality Remediation model helps you get solutions on a poor-quality mesh.
This model identifies poor-quality cells, using a set of predefined criteria, such as Skewness Angle exceeding a certain threshold.
Once these cells and their neighbors have been marked, the computed gradients in these cells are modified in such a way as to improve the robustness of the solution."
— STAR-CCM+ User Guide, "Cell Quality Remediation"
조금 풀어서 이야기하면 이런 의미입니다.
"품질이 나쁜 셀을 찾아서 → 그 셀에서 계산되는 그래디언트(gradient)를 보정해서 → 발산하지 않고 답을 구한다"
※ 핵심 포인트 정리
- 목적 : 메쉬 품질 문제로 인한 발산과 불안정성을 방지
- 대상 : Skewness Angle 등 사전 정의된 기준을 초과하는 셀과 그 이웃 셀
- 수정 방식 : 셀 형상 자체는 변경하지 않고, 그 셀에서 계산되는 그래디언트만 보정
- 영향 범위 : Bad cell과 그 직접 이웃에 한정 → 전체 해의 정확도에 미치는 영향은 최소
- 계산 비용 : 일반적으로 낮음. 다만 이동 메쉬(moving mesh)에서는 메쉬가 변할 때마다 품질 지표를 재계산해야 하므로 보통-높음
2. 핵심 지표: Skewness Angle (왜도각)
Cell Quality Remediation이 "품질 나쁨"을 판정하는 가장 대표적인 기준은 Skewness Angle, 즉 왜도각입니다. 매뉴얼의 정의를 그림과 함께 살펴봅시다.
Cell Skewness Angle
| Figure 1. Cell Skewness Angle의 정의 (출처: STAR-CCM+ User Guide) |
두 셀이 하나의 면(face)을 공유할 때, 그 면의 법선벡터 a와 두 셀 중심을 연결하는 벡터 ds 사이의 각도가 바로 Skewness Angle θ 입니다.
이 각도가 0°이면 두 셀이 완벽하게 직교(orthogonal)한다는 뜻이고, 이는 가장 이상적인 상태입니다. 반대로 90°에 가까워질수록 문제가 생깁니다.
이유는 수학적으로 명확합니다. Diffusion 항을 계산할 때 분모에 a · ds (두 벡터의 내적)가 들어가는데, 두 벡터가 직교(90°)하면 이 내적이 0이 되어 분모가 0에 가까워집니다. STAR-CCM+는 divide-by-zero를 회피하도록 처리하지만, 그 과정에서 확산 계산의 정확도가 떨어지고 솔버의 강건성이 저하됩니다.
📐 권장 기준
메쉬 진단 보고서(Mesh Diagnostics Full Report) 기준으로 Skewness Angle ≤ 85°를 권장합니다.
이 값을 넘어가는 셀이 많다면 Cell Quality Remediation 사용을 고려할 시점입니다.
Boundary Skewness Angle
경계면(boundary face)에서도 같은 개념이 적용됩니다. 이번엔 셀 중심과 경계면 중심을 연결하는 벡터, 그리고 그 경계면의 법선벡터 사이의 각도를 봅니다.
다만 난류 해석에서 wall function을 사용할 때는 이 경계 왜도각의 영향이 비교적 작습니다. 그러나 층류 해석이나 고체 열전달 해석에서는 여전히 중요한 지표가 됩니다.
3. 어떻게 작동하나요? — 3단계 흐름
모델을 활성화하면 매 iteration에서 다음 3단계가 자동으로 수행됩니다.
Step 1. Bad Cell 식별
사전 정의된 기준 — 예를 들어 Skewness Angle 90° 초과 — 으로 각 셀을 평가합니다. 임계치를 넘으면 해당 셀을 "bad cell"로 마킹합니다.
Step 2. 이웃 셀 분석 및 분류
Bad cell 본인뿐 아니라, 그 이웃 셀들도 함께 분석합니다. 각 셀에 0~3 사이의 Bad Cell Indicator 값이 부여되는데, 이 값으로 메쉬 결함이 어디에 집중되어 있는지 시각적으로 확인할 수 있습니다 (4장에서 자세히).
Step 3. Gradient 수정
마킹된 셀에서 계산되는 그래디언트를 적절히 보정합니다. 이때 셀 형상이나 메쉬 토폴로지는 그대로 두고 "내부적으로 계산하는 값"만 손봅니다. 그래서 영향 범위가 국소적이고 전체 해의 정확도에 미치는 영향이 작은 것이죠.
💡 함께 만들어지는 4가지 Field Function
모델을 켜면 자동으로 다음 필드 함수들이 생성됩니다. Scene에서 시각화하여 활용하세요.
· Bad Cell Indicator (0~3) — 셀 상태 분류
· Boundary Sliver Cell Indicator — 제거 가능한 sliver 셀 식별
· Least Squares Quality — 셀 품질 지표
· Zero Face Area Indicator — 면적 0에 가까운 면 진단
4. Bad Cell Indicator로 메쉬 결함 한눈에 보기
Bad Cell Indicator는 단순한 "좋다/나쁘다" 두 값이 아니라, 셀 자신과 이웃 셀의 상태 조합으로 4가지로 분류됩니다.
|
값 |
분류 |
의미 |
|
0 |
GOOD / GOOD |
좋은 셀이며 이웃도 모두 좋은 셀 (정상 상태) |
|
1 |
BAD / GOOD |
나쁜 셀이지만 이웃은 좋은 셀 |
|
2 |
GOOD / BAD |
좋은 셀이지만 이웃에 나쁜 셀이 있음 |
|
3 |
BAD / BAD |
나쁜 셀이며 이웃에도 좋은 셀이 없음 (가장 심각) |
Scene에서 Bad Cell Indicator 필드 함수를 시각화하면, 값 3에 해당하는 "심각한 영역"이 어디에 모여 있는지 한눈에 파악할 수 있습니다. 이는 결국 "메쉬를 다시 만들 필요가 있는가"를 판단하는 가장 빠른 방법이기도 합니다.
Least Squares Quality — 또 하나의 품질 지표
| Figure 3. Least Squares Quality 계산 도식 (출처: STAR-CCM+ User Guide) |
Least Squares Quality는 "이 셀의 중심이 이웃 셀들의 중심들로부터 얼마나 잘 둘러싸여 있는가"를 측정합니다. 셀 중심에서 각 이웃 셀 중심으로의 벡터들로 구성된 행렬의 최대/최소 고유값 비율을 이용해 계산됩니다.
완벽한 셀이면 1.0, 값이 작아질수록 품질이 나쁜 것으로 해석합니다. 경계 셀의 경우 boundary face를 계산에 포함하는 옵션도 있습니다 (Figure 3 참고).
5. 적용 효과와 한계 — 만능은 아닙니다
적용했을 때 좋은 점
1) 솔버 강건성이 크게 향상됩니다. 메쉬에 결함이 있어도 발산 없이 수렴까지 도달할 수 있습니다.
2) 메쉬 재작업 시간을 절약할 수 있습니다. 매번 메쉬를 다시 만드는 비용을 줄여 빠르게 결과를 확인할 수 있습니다.
3) 영향이 국소적이라 전체 해의 정확도에 미치는 손상이 적습니다.
4) Bad Cell Indicator 시각화로 어느 부분의 메쉬를 손봐야 할지 즉시 알 수 있습니다.
주의해야 할 한계
만능 도구는 아닙니다. 매뉴얼에는 다음과 같은 한계가 명시되어 있습니다.
"...the influence on overall solution accuracy is minimal.
However, a side effect is that the mesh quality metrics used to mark the poor-quality cells are recomputed each time the mesh changes.
Therefore, in certain situations such as moving meshes, using the model can have a significant computational cost."
— STAR-CCM+ User Guide
정리하면 다음과 같은 한계가 있습니다.
메쉬 자체는 수정하지 않습니다. Gradient만 보정하므로 근본적인 메쉬 품질 향상 효과는 없습니다. 결함이 광범위하면 메쉬를 다시 만드는 것이 정확합니다.
이동 메쉬에서 비용이 증가합니다. Moving mesh, morphing, overset처럼 메쉬가 매 시간 스텝마다 변하는 경우 품질 지표를 매번 재계산해야 합니다.
Non-conformal interface 영향이 있을 수 있습니다. Interface intersection 과정에서 새 면이 생성되면, 그 셀들이 remediation 대상에 포함되는지가 바뀔 수 있습니다.
6. 실무 사용 가이드
이런 경우엔 사용해보세요
• 메쉬가 완벽하지 않지만 빠르게 결과를 확인하고 싶을 때
• Skewness 90° 이상의 셀이 "소수"만 존재할 때
• 복잡한 형상에서 국소적인 메쉬 결함이 있을 때
• 매개변수 스터디나 DoE에서 메쉬 변형이 발생할 때
이런 경우엔 사용하지 마세요
• 메쉬 결함이 광범위해서 결과 신뢰도 자체가 의심스러울 때 → 메쉬 재생성이 답
• Moving mesh에서 매 step마다 비용이 부담스러울 때
• 검증·인증용 시뮬레이션처럼 고정밀도가 필수일 때
권장 워크플로우
1) 메쉬 생성 후 Mesh Diagnostics로 Skewness > 85° 셀 개수와 Negative Volume 여부 확인
2) 결함 정도 평가 — 광범위 결함이면 메쉬 재생성, 국소 결함이면 다음 단계로
3) Continua > Physics > Models > Optional Models에서 Cell Quality Remediation 활성화
4) 시뮬레이션 실행과 동시에 Bad Cell Indicator를 Scene에 시각화
5) 수렴 후 결과 평가 — 합리적인 결과가 나오는지 확인. 비정상이면 메쉬 개선 후 재시도
🎯 한 줄 결론
"빠른 진행은 Cell Quality Remediation, 고품질
결과는 메쉬 재생성"
마치며
메쉬는 CFD 해석의 출발점이자 끝점입니다. 완벽한 메쉬를 만들 수 있다면 가장 좋겠지만, 현실에서는 복잡한 형상이나 자동화된 매개변수 스터디에서 어느 정도의 결함은 피할 수 없습니다.
Cell Quality Remediation은 "메쉬가 완벽하지 않더라도 일단 답을 얻고 진행하자"는 실용적인 도구입니다. Bad Cell Indicator로 어디가 문제인지 시각화하고, 그래디언트 보정으로 일단 솔버를 안정시킨 뒤, 필요하면 그 부분만 메쉬를 손보는 전략이 가능합니다.
다만 "맹신하지 말 것"이 핵심입니다. 이 모델은 결함을 가려주는 도구일 뿐, 메쉬 품질을 근본적으로 올려주지는 않습니다. 정확도가 중요한 최종 결과는 결국 좋은 메쉬에서 나온다는 점을 기억하시면 좋겠습니다.
참고 자료
본 글의 내용은 STAR-CCM+ 2602 User Guide(로컬 매뉴얼)의 다음 페이지를 기반으로 작성했습니다.
• Cell Quality Remediation (GUID-9FA04457)
• Cell Quality Remediation Field Functions Reference (GUID-1988D9C3)
• What Is Cell Skewness Angle? (GUID-4320B690)
• What Is Boundary Skewness Angle (GUID-2928B479)
• Identifying And Visualizing Bad Cells (GUID-71E2DB3E)


댓글 없음
댓글 쓰기