안녕하세요
오늘은 OpenFOAM 내 자동격자(snappyHexMesh) 설정 및 실행에 대해 설명하려고 해요.
OpenFOAM에는 두 가지의 격자 생성 방법이 있는데요.
첫 번째는 blockMesh를 이용하여 간단한 격자를 생성하는 방법이구요.
두 번째는 stl파일 형상을 이용하여 자동격자를 생성하는 snappyHexMesh가 있어요.
오늘은 두 번째 방법인 snappyHexMesh 에 대해 공부해 보려고 해요.
snappyHexMesh 정의
snappyHexMesh는 실제 형상을 해석할 때 가장 많이 쓰이는 격자 생성 명령어에요.
snappyHexMesh를 실행하기 위해서는 형상 파일인 stl 또는 obj 파일이 필요해요.
형상 파일을 기준으로 Hex-dominant 한 격자를 자동 생성해요.
파일 위치는 system/snappyHexMeshDict 파일에서 설정해요.
snappyHexMesh 특징
1. 병렬 실행 가능 ( mpirun -np [숫자] snappyHexMesh -parallel )
2. Feature edge를 잘 표현함
3. 벽 주변에 layer 격자 생성 가능
4. cellZone 또는 faceZone 설정하여 MRF, porous media 부분 설정 가능
5. snappyHexMesh work flow
6. 실행 시 필요사항
(1) system/snappyHexMeshDict 파일
(2) constant/triSurface 폴더 안에 형상 파일
(3) system 폴더 안에 controlDIct, fvSchemes, fvSolutions
snappyHexMesh 격자 생성 개요
1. Tutorial 경로 : /usr/lib/openfoam/openfoam2212/tutorials/motorBike
2. 해석버전 : OpenFOAM v2306 ( ESI OpenFOAM )
3. 해석 격자 : snappyHexMesh
4.격자 생성 방법
(1) 형상 파일(stl, obj 등)을 constant/triSurface 폴더에 이동
(2) back ground mesh 를 blockMesh를 통하여 기본 격자 크기를 설정 (Level 0의 크기 결정)
(3) paraview를 통해 blockMesh로 만든 격자에 형상이 안에 있는지 확인
(4) surfaceFeatureExtract 를 실행하여 Feature line을 파일로 출력
(5) system/snappyHexMeshDict 파일 내용 수정
(6) constant, system 폴더가 있는 위치에서 snappyHexMesh 실행
surfaceFeatureExtractDict 설명
형상 표면의 모서리를 잘 표현하기 위해 파일로 추출하는 명령어에요.
위는 tutorial의 surfaceFeatureExtract 파일이에요.
motorBike.obj는 파일명을 뜻해요.
extractionMethod는 모서리 라인(feature line)을 출력하는 방법이에요.
includeAngle 은 붙어있는 면의 각도를 뜻하며 최대 180, 최소 0으로 설정 가능해요.
180으로 할 경우 형상의 모든 모서리가 잡히므로 형상의 복잡함에 따라 100~150 정도로 설정해 주는 것이 좋아요.
snappyHexMesh 격자 생성 절차
snappyHexMesh는 총 8 단계로 격자를 생성해요.
1 step : back ground mesh 생성

2 step : Feature edges에 따른 격자 분할
3 step : 형상 표면에 대한 격자 분할
4 step : 해석할 곳 설정
5 step : 지정된 볼륨에 격자 분할
6 step : 형상 표면을 매끄럽게 표현하기 위해 격자 snapping
7 step : 벽면에 layer 격자 추가
8 step : 전체 격자 Quality 체크
총 8단계를 완료하면 checkMesh를 통해 mesh quality를 잘 체크해 줘야 해요.
결론
오늘은 OpenFOAM 내 자동격자(snappyHexMesh) 정의, 특징, 개요, surfaceExtract, 격자 생성 절차에 대해 알아보았어요.
실제형상 문제에도 많이 쓰이는 격자여서 여러 번 읽고 숙지하는 것을 추천해요.
다음 내용은 snappyHexMeshDict 파일 내용을 설명드리려 해요. 꼭 확인해 주세요.
질문은 댓글로 달아주시고 오늘도 끝까지 읽어 주셔서 감사해요.
OpenFOAM 내 자동격자(snappyHexMesh) 설정 및 실행 궁금하시다면 아래 링크를 보시면 돼요. ▼ ▼ ▼
OpenFOAM 내 자동격자(snappyHexMesh) 설정 및 실행
이미지 무단 도용을 금합니다.
copyright ⓒ 택이5 All rights reserved
'OpenFOAM basic > Basic concepts and theories' 카테고리의 다른 글
OpenFOAM 압축성 비정상상태해석 무반사 경계조건 설정 (waveTransmissive) (0) | 2024.07.26 |
---|---|
OpenFOAM 내 자동격자 설정 및 실행 2 (snappyHexMesh) (0) | 2024.06.07 |
OpenFOAM 내 기본 격자 (blockMesh) (0) | 2024.06.01 |
OpenFOAM system 폴더 파일 설명 (0) | 2024.05.30 |
OpenFOAM 경계조건 종류 및 설정 (0) | 2024.05.29 |