2015년 4월 10일 금요일

Open Source CAE Toolchain 1



오픈소스 CAE 도구들이 여러가지 있고,
그것들을 효과적으로 사용하기 위해서 어떤 식으로 구성해야 할 지 약간 검토해 보았다.

일단 이 문서를 참고할 수 있다.
http://ftp.funet.fi/index/elmer/slides/ElmerCourseWarsaw2014October/ElmerPreProcessing_2014Oct.pdf


일단 CFD 및 Thermal 쪽은 생략하고
FEM 위주로 생각해 본다.

사용해 본 것들 중에서 가장 쉬운것은 역시 ELMER GUI 였다.
간단한 형상이라면 이것만으로 충분하다.
내장된 Solver는 최고 수준이다.
http://www.elmerfem.org/


하지만 몇가지 한계가 있다.


1. 복잡한 형상의 Mesh 작업에 한계가 보인다.
실패율이 낮고 매우 안정적이기는 하지만, 내장된 ELMER GRID 및 NETGEN의 한계다.
사면체 매슁은 되지만 육면체 매슁이나 혼합 매슁 기능이 없다.
또 기어 등 형상이 복잡해지면 시간이 매우 오래 걸린다.

2. Multi Body에 대응하지 않는다.
역시 부족한 기능이다.

3. Post Processor가 약하다.
변형된 형상을 보여주지 않고 등고선이나 벡터 등으로 간접적으로 확인 가능할 뿐이다.


즉 ELMER GUI로는 간단한 해석에는 무리가 없지만,
실무적으로 써먹기에는 조금 부족하다.
이것은 보완하기 위해 Solver만 ELMER를 사용하고,
Pre&Post-Processor 쪽은 외부 소프트웨어를 사용하는 것이 방법인 듯 하다.

ELMER와 잘 호환되는 것으로는 GMSH 및 SALOME가 있다.
사용법은 GMSH가 더 쉽다.

SALOME는 조금 더 전문적이지만, 혼합 매슁 기능이 있어서 더 뛰어나다.
게다가 Multi Body를 선작업 해서 ELMER로 집어넣을 수도 있다.

* 혼합 매쉬 기능이 설명된 SALOME 브로셔
http://files.salome-platform.org/Salome/Common/SALOME_7_2014_Brochure.pdf

* Multiple Bodies from SALOME to ELMER
http://www.elmerfem.org/elmerwiki/index.php?title=Multiple_bodies_from_Salome_to_Elmer

SALOME로도 부족하다 싶으면 상용 소프트웨어 밖에 답이 없는 듯 하다.
상용으로는 GiD 같은 것이 추천된다.


그래도 한 가지 좋은 점은,
GMSH 및 SALOME 모두 크로스 플랫폼이다.
현재 리눅스 뿐만 아니라 윈도우 버전도 공식적으로 제공된다는 점이다.

* GMSH 다운로드
http://geuz.org/gmsh/#Description

*SALOME 다운로드
http://www.salome-platform.org/


결론적으로 다음과 같은 툴체인을 형성할 수 있다.

1. 간단한 작업
ELMER로 모두 해결한다.

2. 조금 복잡한 단일 부품
GMSH로 매쉬를 만들어서 ELMER로 읽어들여 작업한다.

3. 복잡한 복합 부품
SALOME로 작업한 후 ELMER로 읽어들여 작업한다.


이상의 툴체인을 검증해 보기 위해 연습을 해 본다...


일단 적당히 복잡한 형상을 가진 해석대상 부품을 *.stp 파일로 준비한다.
이 부품은 Involute Teeth가 76개 있고, 
뒤쪽에는 스크류 형상까지 세밀하게 모델링되어 있어서
허접한 셋팅의 Mesh 도구로는 에러가 나기 쉬운 형태다.
이걸 ELMER에서 직접 읽어들여 디폴트로 mesh작업을 할 경우에는
30분 정도의 시간을 소요한다.
너무 시간이 많이 걸리고, 또 그렇게 되면 해석에도 문제가 되므로
GMSH로 읽어들여 여기서 Mesh를 생성하는게 낫다.

GMSH 내부에서 Netgen Optimum으로 디폴트 작업을 하니
10초 정도로 완료된다.


형태의 이상여부를 확인한 후, 이걸 *.msh 포멧으로 저장한다.


이제 ELMER를 실행시켜 *.msh 파일을 불러들인다.
훨씬 빠르게 불러진다.
이제 해석 조건을 적당히 주고 Solver를 돌려본다.
본 예제에서는 베어링에 삽입되는 면에 x,y,z 변위 구속을 주고
치형 하나에 x 방향으로 10N Force를 주었다.
해석은 제일 간단한 Linear Elastic으로 실시한다.


수렴이 순식간에 끝난다.
같은 모델을 비슷한 밀도로 해 봤을때,
상용 툴인 MidasNFX의 경우에는
Singular Error 같은 것들이 너무 잘 난다.

물론 Academic한 목적으로는 정확히 Singularity 잡아내면서
까탈스럽게 가는게 좋겠지만
실무에서 해석할 때는 이런거 싹 다 뭉개버리고 
털털하게 넘어가 주는 도구가 짱이다.
해석결과는 어차피 대체적인 경향성을 신속하게 확인하기 위한것이므로
도구적인 관점에서 그렇다고 본다.

MidasNFX의 경우에는 소프트웨어의 사용자 편의성 부분에서
세심한 디테일이 좀 떨어진다고 느낀다.


아무튼 시원하게 결과 나오고...



VTK 포스트 프로세서를 열어서 본다.


이것저것 바꿔가면서 확인.

기본적으로 폰미세스 응력 같은거확인해 보고.

x 변위 체크.

벡터로도 변위 확인해 보고.

메쉬 부분과의 관계도 보고.

Contour Scale 조정해서 더 자세히 보고...

뒤집어서도 복.



즉 *.msh 파일이 호환되니깐, GMSH와 ELMER 연동이 된다고 볼 수 있다.







댓글 없음:

댓글 쓰기