mir.pe (일반/밝은 화면)
최근 수정 시각 : 2024-10-23 15:44:55

fluent


1. 개요2. 역사3. 해석 과정
3.1. Geometry3.2. Mesh3.3. Setup3.4. Result
4. 기타

1. 개요

Ansys 社의 유동해석 프로그램. 홈페이지

유한 체적법을 이용한 수치해석을 진행하는 프로그램으로 기본적인 유동해석 및 열유동, 다상유동, 자유표면, 화학반응 등을 이용한 유동해석이 가능하다. 병렬 연산을 지원하여 CPU 코어 수로 밀어 붙이는 연산 향상이나[1] Tesla 그래픽카드를 이용한 GPGPU 연산이 지원된다.

2. 역사

Ansys Fluent의 역사

프로그램의 역사
기술 향상의 역사

3. 해석 과정

일반적으로 Geometry - Mesh - Setup - Result 의 과정을 거쳐서 열유체해석을 하게 된다. Fluent가 다른 상용프로그램과 비교해서 가지는 강점은 코드를 입력하여 커스터마이징된 수식을 손쉽게 계산과정에 사용할 수 있다는 것이다. Fluent를 제대로 활용하기 위해서는 UDF(User Defined Functions, 사용자 정의 함수) 사용법을 학습하는 것이 좋다.

3.1. Geometry

플랫폼 창에서
툴 창에서
여담으로 (Mesh 단계에서도 가능하지만) Geometry 단계에서 Create Name을 사용하여 각 Group에 알맞은 이름을 부여하여(inlet, outlet, wall 등) Setup 과정에서 계산할 유동영역의 구속조건 이름들을 부여해주는 게 해석의 안정성을 위해 좋다.[4]

요약하자면, Geometry에서 하는 작업은 해석해야할 고체영역, 유체영역을 2D, 3D로 형상 제작을 하는 단계다. (CAD와 같은 개념이다)

3.2. Mesh

플랫폼 창에서
툴 창에서
격자구조가 성기면 정확한 계산이 이뤄지지 않고, 촘촘하면 계산시간이 기하급수로 길어지거나 에러가 발생할 수 있어 적절한 타협점을 찾아야 한다. 해석 형상에 따라 Volume Cell의 형상에 영향을 받는 경우도 있다. 이럴 때는 Cell의 갯수가 적어도 해석결과가 좋게 나오기도 하고, Cell의 갯수가 많아도 해석결과가 나쁘게 나오기도 한다. 따라서 본인이 해석을 진행하려는 형상에 적합한 cell 형상을 설정해야 한다.

요약하자면, Mesh에서 하는 작업은 계산을 할 단위구조인 격자를 만드는 단계다.

3.3. Setup

Setup 단계는 유동해석 시 해석 모델 및 물성치 설정을 해주는 것이다. Workbench에서 처음 Setup을 켤 때, 혹은 Fluent를 직접 실행할 때 2D, 3D 계산 여부 및 계산에 사용할 프로세스 개수, GPGPU 사용 여부 등을 설정할 수 있는데, 특히 Geometry의 2D, 3D 여부에 일치하도록 설정하여야 한다.

General Setting에서 Steady state 와 Transient 모델 이 두가지로 구분할 수 있다. Steady state는 정상상태 해석, Transient는 실시간 변화를 추적하는 비정상상태 해석모델이다. 참고로 해석 모델의 기본 설정에 따라 Steady state와 Transient가 자동 설정된다.[5]

추가적으로 gravity를 고려하여 계산할 수 있는데 중력가속도 g(9.81m/s^2)가 y방향으로 작용하는 것을 고려하고 싶다면 y칸에 '-' 부호를 붙인 '-9.81' 로 적어줘야한다.

층류모델에서는 Laminar Model, 난류모델에서는 k - epsilon model 혹은 k - omega model 등이 주로 사용된다.[6]

추가적으로 viscous heating, standard Model, Realizable Model, buoyancy effect, Standard Wall Treatment, Enhanced Wall Treatment 등등 부력효과 및 점성 등을 고려하여 계산등을 세팅할 수 있다.

온도와 관련되어 있으면 Energy equation 체크를 눌러줘야한다. Multiphase에서 boiling 등 열전달이 포함되는 모델을 활성화할 때 자동으로 Energy equation도 활성화된다.

Cellzone Conditions, Boundary Conditions 등에서 경계 및 구속조건들을 부여할 수 있고, Residual 의 Monitor 배너에서 계산오차값을 설정할 수 있다.

Solution animations 배너에서는 자신이 원하는 면, Streamline 등을 보고 싶은 방향으로 설정하여 애니메이션을 프레임 단위로 HSF File, In Memory 등의 형식으로 녹화할 수 있다.[7]

Initialization 작업을 통해 초기화 작업을 해주어야 한다. Hybrid Initialization 작업을 선택하면 프로그램의 Default 된 값으로 계산이 수행되며, Standard Initialization 작업을 선택하면 사용자가 선택한 물성치들로 계산이 수행된다.

Patch 항목을 통해, initialization 이후 초기 조건을 설정할 수 있다.

요약하자면, Setup 단계는 해석 모델 설정과 물성치들을 입력하여 계산 조건을 설정하는 단계다.

3.4. Result

Result에서 하는 작업은 앞서 Setup에서 계산된 값들을 바탕으로 Fluent에서 혹은 CFD-POST라는 프로그램에서 Vector, Contour, Streamline, Particle Track, Surface 항목 등을 활용하여 압력층, 온도층, 속도구배, 압력구배, iso-surface 등을 볼 수 있다.

추가적으로 Line 등의 선을 그려서 Chart를 이용하여 결과 데이터들을 Excel로 Export시켜 수치적으로 정량화하여 결과값들을 확인할 수 있다. Excel로 Export를 하게 되면 확장자명이 처음에 .csv로 되어있다. 이 확장자명은 Visual Basic 혹은 함수 등의 사용이 불가능하므로 .xlsx 혹은 .xls 등의 확장자명으로 바꿔서 작업하는 것이 효과적이다.

요약하자면, Result에서 하는 작업은 Setup에서 계산한 결과를 후처리하여 분석하는 단계다.

4. 기타


[1] 참고로 HPC 기능은 다른 모듈로 들어가 있다. [2] 가져올 때 각 설계 프로그램별로 호환가능한 확장자 이름인지를 잘 확인해야 한다. [3] 2020 R1 우클릭 기준. ICEM CFD도 있다. [4] Geometry 단계에서 네이밍을 해주면 Mesh 단계에서 자동 셋업 되기 때문이다. Geometry 단계에서 네이밍하지 않으면 Mesh 단계와 Setup 단계에서 수작업으로 Mesh의 조건을 설정해주어야 한다. 물론 자동이라는 것도 완벽한 자동은 아니라서 네이밍 이후 Mesh 설정 조건에서 확인해주어야 하지만, 수작업보다는 편하니까. [5] 예를 들어 다상유동 VOF 모델을 설정하면 General setting이 Transient 모델이다. [6] 난류모델을 공부해보면 알겠지만, 모델이 굉장히 많다. 그런데 모델이 많다는 뜻은 케바케라는 뜻이다. 즉 본인이 해석하는 상황에 맞는 모델을 사용해야지, 그렇지 않으면 해석결과가 수렴은 할지언정 전혀 엉뚱한 값이 나올 수도 있다는 뜻이다. [7] 오랜시간의 애니메이션을 녹화할 때는 HSF File 형식으로 녹화하는 것이 효과적이다. In Memory 형식으로 녹화를 하게 되면 나중에 Playback을 해볼때 재생속도가 매우 빠른 애니메이션이 나오지만, RAM에 애니메이션 파일이 저장이 되는 방식이라서 RAM의 용량이 애니메이션의 용량보다 작을 경우. 애니메이션 녹화가 중간에 끊겨버릴 수도 있기 때문이다. 간단하게 PNG나 PPM과 같은 이미지 파일을 저장하게 할 수 있지만, HSF 형식보다 용량을 크게 잡아먹는다.