1.3 Mesh 생성
Mesh 생성이란 1.2절에서 다룬 physics 설정에 맞는 값(우리가 찾고자 하는 해)을 찾아내기 위하여 앞선 1.1절에서 다룬 geometry를 컴퓨터에게 인식시키고 이렇게 인식된 형상을 유한개의 요소로 나누는 작업을 의미한다.
Mesh 생성은 실질적으로 컴퓨터에게 형상을 인식시키는 작업 입니다. geometry상에서 형상을 입력하지만, 컴퓨터는 이 geometry를 직접적으로 인식하는 것이 아니라, geometry상에 구현된 mesh정보를 통해 형상을 인지하고 이를 해석합니다.
현대에는 DEM, SPH, MPS 기법 등 입자법을 통해 Mesh를 구현하지 않고 입자에서 입자간 해를 주고 받는 해석기법도 존재하지만, 아직까지 대부분의 수치해석에서는 입자법이 아닌 FEM이나 FVM기법을 기반으로 해석을 수행하며, 이러한 방법에는 mesh를 필요로 합니다. (각 기법에 대한 장단점이나 차이점은 추후 다른 파트에서 설명하도록 하겠습니다.)
Mesh 생성에 대한 필요성은 하기와 같습니다.
어떤 임의의 형상(그것이 원형이던, 별 모양이건 혹은 어떤 복잡한 형상이건 상관없이)에 대하여 physics설정에 맞는 지배방정식을 세우는 일은 불가능한 일이 아닙니다. 다만 이 방법은 몇 가지 단점이 있습니다.
1. (간단한 선형 문제를 제외하면) 지배방정식을 세우는데 과도한 시간 및 노력을 필요로 한다.
2. 이렇게 생성된 지배방정식은 형상이나 조건이 바뀔 경우 사용하기가 어렵다.
즉 이러한 방법은 일단 지배방정식을 만들어 놓으면 해를 찾기가 굉장히 간단하다는 장점이 존재하지만, 지배방정식을 만들기도 어렵고 형상이나 물리적 설정이 조금만 바뀌게 되어도 기껏 만들어 놓은 지배방정식이 쓸모 없어 진다는 단점이 있으며, 이러한 문제점을 해결하기 위해 나온 것이 mesh를 통한 수치해석입니다.
앞서 말한 것과 같이 형상이나 조건이 복잡해 진다면, 여기에 따른 해를 구하는 것은 어려워 집니다. 하지만 이 두 가지 요건(형상 or 조건) 중 조건의 경우 우리가 이를 변경하는 것은 상당히 제한적입니다. 조건이라는 것 자체가 우리가 해석하고자 하는 목표와 직결되어 있기 때문이죠. 하지만 형상의 경우 mesh를 통한 분할로 해결이 가능합니다. 이를 쉽게 설명하면 하기와 같습니다.
2차원 문제라고 가정하였을 때, 문제가 복잡하다면 위에서 언급했던 임의의 형상에 대한 지배 방정식을 구성하는 것은 어려우나, 형상 자체가 비교적 단순한 삼각형이나, 사각형 형상에 대한 지배 방정식을 구성하는 것은 그리 어려운 일이 아닙니다. 그리고 어떤 임의의 형상은 가장 단순한 삼각형 및 사각형으로 나눌 수 있습니다.
요즘엔 옛날 양념맛이라 짱인듯...
이렇게 삼각형이나 사각형, 혹은 다른 단순한 형태의 도형으로 나누어 주는 작업이 mesh작업이라고 생각하시면 이해하기 쉽습니다. 이후에는 각각의 해석 방법(FEM인지 FVM인지 등)에 따라 데이터를 주고 받는 방법이 달라지겠지만, 큰 틀에서 보자면 저렇게 작은 도형으로 나누어진 부분에서 각각 계산을 수행하고 인접한 다른 도형들과 값을 주고 받는 형식을 취하여 전체 형상에 대한 해석을 한다고 이해하시면 됩니다. 물론 3차원일 경우도 마찬가지입니다. 단지 도형의 대상이 사면체나 육면체, 피라미드 형태와 같은 3차원에서의 단순구조란 점에서 달라질 뿐입니다.
사실 이 절에서는 mesh의 생성 이유에 대해서 개략적인 설명을 하였지만, mesh작업은 해석에서 가장 중요한 부분 중 하나입니다. 실제로 필드에서 이 mesh작업에 따라 해석의 정확도가 달라질 수도 있고, 해석에 드는 비용이 크게 달라질 뿐만 아니라, 나아가 해석의 수렴여부에도 큰 영향을 줍니다. 개인적인 의견으로 geometry와 physics설정이 해석을 위한 기본 소양으로 보고 해석에서 차지하는 비율이10%~20% 내외라고 하였을 때 (해석으로 국한하였을 때, 실력이나 경험치가 해석 자체에 큰 영향을 미치지 않음), mesh는 해석에서 차지하는 비율이 절반 이상이라고 생각됩니다. 그리고 그 다음으로 높은 비중을 차지하는 부분이 솔버 부분이라 생각됩니다.
이러한 mesh에 대해서는 할 말이 많지만 mesh가 중요한 이유, 좋은 mesh란 어떤 mesh인가, 좋은 mesh를 생성하는 방법등에 대해서는 추후 반응이 좋다면 올릴 다른 글에서 좀 더 다루도록 하겠습니다.
요약
-입자법을 제외한 대부분의 수치해석에서는 mesh를 이용하여 해석을 수행한다.
-Mesh란 해석하고자 하는 모델의 형상에 관계없이 지배식을 세울 수 있도록 구성한 geometry를 단순한 형태의 작은 조각으로 쪼개는 작업이다.
-Mesh는 해석에 큰 영향을 미치며, mesh에 따라 해석 시간이나, 해석결과에 차이를 줄 수 있으며, 나아가 해석의 수렴유무와도 직접적인 관계가 있다.