2015년 5월 7일 목요일

Open Source CAE Toolchain 12 - Salome & Code_Saturne


Elmer의 CFD 능력은 한계가 있기 때문에,
좀 더 고급 해석을 위해서는 다른 솔루션이 필요할 수 있다.

학계에서 가장 잘 확산된 것은 뭐니뭐니해도
openFOAM 이다.
문제는 이 솔버는 너무 학구적(?)이라는 점이다.

영국의 작은 개발자 집단이 만들어내는 걸로 알고 있는데,
솔버 한가지에만 집중해서 개발을 진행하고 사업을 하다 보니
전처리기, 후처리기 쪽은 아예 건드리지도 않고 있다.

학계에서 선호하는 또 다른 이유는,
C++로 만들어놓아서 소스 분석하기가 좋고 (아닌가???)
자신만의 지배방정식을 집어넣기가 아주 용이하다고 한다.
다이버전스 같은걸 그냥 함수 이름으로 써 넣는 식으로
방정식을 액면 그대로 써 주면 되는 식인가 보다.

우리나라에서도 이걸 가지고 논문 쓴게 몇 개 정도 발견되기 시작한다.
아무래도 유럽 보다는 몇 년 뒤쳐져서 트랜드가 오는 것 같다.

아무튼 전산유체역학 하는 쪽에서는 꽤 핫 한가 보다.
CFD계의 리눅스 같은 느낌.



OpenFOAM의 전처리기를 보완해 줄 수 있는
다른 데서 나온 솔루션들도 물론 있다.

온라인으로 클라우드 서비스를 해 주는 Simscale도 있고,
Helyx-OS 라는 자바로 만든 것도 있다.

Helyx-OS는 설치 자체는 쉽고,
메뉴도 심플하게 되어 있어서 접근성이 좋은 것 같다.
다만 아직 해석후 비주얼라이제이션 과정을 이해하지 못해
결과를 보는데까지는 가 보지 못했다.

Simscale은 무료 회원가입 받아주고 해서 참 좋은데
언젠가는 완전 유료화 되지 않을까 싶기도 하고
아무래도 내 컴퓨터에서 돌아가는게 아니다 보니까
왠지 내 것이 아닌 것 같은 느낌이 들어 찜찜은 하다.
(그래도 해석 실패 직후에 곧바로 이메일 날아와서
기술 상담해 주는 걸 보고 감동먹음)


아무튼 그래서 OpenFOAM 보다는 좀 더 접근하기 쉬우면서
빵빵한 녀석은 없나 살펴보면
Code-Saturne이 있다.

물론 이 녀석도 굉장히 까다롭다.
일단 설치하는 것 부터 아주 괴롭다.
직접 컴파일 하고 순서대로 따라서 다 해줘도
제대로 실행이 안될 확률이 높다.

제일 편한 방법은 CAElinux를 받아다가 원래 깔려 있는걸 그냥 쓰는거다.
다만 CAElinux의 단점은 구버전이라는 점이다.
그래도 일단 혈압상승과 두뇌 용량 초과를 방지하기 위해
CAElinux를 VirtualBox로 설치해서 연습해 보기로 했다.


연습 과정은 다음 동영상으로 녹화해 봤다.
(시행착오 하는 과정까지 다 들어있기 때문에 굉장히 지루하다...)




그리고 난류 조건을 주고 입구속도를 증가시키고  Time Step을 줘서
100프레임 정도를 뽑아내 보기도 했다.





Code_Saturne의 단점은 OpenFOAM 만큼 유저가 많지는 않다는 점이다.
튜토리얼이나 입문자를 위한 다양한 동영상이나 사례 같은걸
찾기가 상대적으로 좀 더 어렵다.

하지만 어설프나마(?) GUI가 일단은 있기 때문에
OpenFOAM 같은 물건을 처음 맞딱뜨렸을 때의
당황스러움은 좀 덜 하다.

기능적으로는 OpenFOAM과 대등하거나
아주 살짝 떨어지지 않을까 추측되는데
신뢰성 면에서는 별로 의심할 부분은 없어 보인다.

오히려 Code_Saturne은 Code-Aster 및 Syrthes 같은
다른 솔버와 커넥션이 된다고 하므로
멀티피직스까지 되니깐
OpenFOAM보다 더 실용성이 있다고 볼 수도 있다.


OpenFOAM은
자동차회사인 아우디가 주력 해석툴로 사용하고 있다고 하니
거의 상용 수준이라고 봐도 의심되지 않을 것이고

Code_Saturne은 프랑스 EDF가 원자로 노심 내부의 유동 해석 같은
굉장히 높은 신뢰도가 요구되는 민감한 용도로 사용하고 있으니
역시 충분한 검증을 거쳤다고 볼 수 있다.


궁극적으로 로터 블레이드 같은 회전기계 해석을 목표로 할 경우
Code-Saturne 및 OpenFOAM 모두 이 문제는 잘 지원하고 있으니
큰 문제는 없으리라 생각된다.

관련 논문을 보면, OpenFOAM 같은 경우에 상용툴보다 못한 부분이
천음속~초음속 영역에서 충격파를 다룬다던가
연소 및 폭발 문제에서 박리 부분에서
해답이 살짝 진동한다던가 하는 걸로 지적되는데
이런 극단적인 해석은 사실 나하고는 아무 상관 없으므로
그냥 단점이 없다고 보면 될 것 같다.


CFD 툴 중에 최고로 편한걸 찾자면 SolidWorks에 포함된 툴 같은데..
그런 걸로 하면 결국 남는건 툴 사용 기능 밖에 없는 것 같다.
어느정도는 이런 경험을 해 보는 것도 좋지 않을까...


다만 구조해석 보다는 CFD 쪽은 확실히
매쉬가 훨씬 더 촘촘해야 의미있는 결과를 얻을 수 있으므로
이걸 돌리는 컴퓨터는 일단 메모리가 엄청 빵빵해야 할 것 같다.

Code_Saturne 돌리는 가상머신에 6기가 정도 메모리를 주고
100프레임을 뽑아내니깐 메모리 누수가 생겨서 데이타가 날아가 버리고
가시화 되지 않는 현상이 발생한다.



댓글 없음:

댓글 쓰기