본문 바로가기
OpenFOAM basic/Tip

OpenFOAM 내 postProcessing(funtionObject) 사용

by Owl flow 2024. 6. 10.
반응형

 

   오늘은 OpenFOAM 해석 중간에 속도, 온도, 압력 등의 변수의 데이터를 파일로 출력할 수 있는 functionObject에 대해 알아보려 해요.

 

functionObject 란?

 

   functionObject는 OpenFOAM 해석 중간에 특정 위치 변수의 값이나 출구의 평균 속도 및 온도 등을 파일로 출력하여 보여주는 기능이에요.

   1. functionObject 실행 위치 : system/controlDict에 마지막 부분 functions 부분에 설정하여 주면 돼요.

 

 

   ** functionObject 예제 경로 : tutorials/incompressible/simpleFoam/motorBike

 

   2. functionObject source code 경로 : /etc/caseDicts/postProcessing

   위 경로에 여러 functionObject의 소스코드가 있으며 실제로 들어가는 -dict 파일이 첨부되어 있어요.

functionObject 구조 및 설명

 

 

   위 사진은 #include "forceCoeffs" 의 내용이에요.

   type은 functionObject를 사용하는 이름이에요.

   lib은 OpenFOAM library 중 forces라는 library를 사용하는 것을 뜻하구요.

   writeControl은 functionObject이 실행되어 데이터를 쓰는 방식이에요.

   현재 timeStep으로 되어 있는데 timeStep 이외에도 writeTime, outputTime, runTime, adjustable, adjustableRunTime, clockTime, cpuTime을 사용할 수 있어요.

   저는 wirteTime 이랑 adjustableRunTime을 가장 많이 사용해요.

   wirteTime과 adjustableRunTime은 해석 데이터가 저장될 때 functionObject가 실행되어 변수를 저장해요.

   두 옵션이 다른 점은 timeInterval의 설정하냐 안하냐의 차이에요. 

   wirteTime timeInterval을 설정하지 않아도 저장 타임에 맞춰 functionObject가 실행되구요.

   adjustableRunTime은 timeInterval을 설정해야 저장 타임에 맞춰 functionObject가 실행돼요.

   log는 log 파일을 출력해 주는 옵션이에요.

   log 아래의 내용은 functionObject 실행에 필요한 값 및 경계조건 이름, faceZone, cellZone 등을 설정해요.

 

functionObject 종류

 

   functionObject의 종류는 여러 가지가 있어요.

   대표적인 functionObject 몇 개 소개해 볼게요.

   (1) fieldAverage: 일정 시간 동안 공간상의 속도 및 온도, 압력 등을 평균값이나 변동 값을 저장하여 paraview로 출력하는 기능

 

 

 

   (2) probes : 특정 위치에서의 속도 및 온도, 압력 등을 파일로 출력하는 기능

   (3) singleGraph : 특정 라인에 대한 속도 및 온도, 압력 등을 파일로 출력하는 기능

   (4) fieldMinMax : 전체 해석 형상에서의 속도 및 온도, 압력 등의 최대 최소값 위치를 출력하는 기능

   (5) CuttingPlane : 특정 평면에 대한 속도 및 온도, 압력 등의 결과를 vtk로 출력하는 기능

   위의 functionObject 외에도 여러 가지가 있어요.

   functionObject의 종류는 구글링을 통해 설정하거나 키워드 검색을 통해 설정해야 해요.

   터미널 창에 find . -type f | xargs grep "찾을 문자열" 입력하면 쉽게 찾을 수 있어요.

 

결론

 

   functionObject는 OpenFOAM 해석 중간에 특정 위치 변수의 값이나 출구의 평균 속도 및 온도 등을 파일로 출력하여 보여주는 기능에 대해 공부해 보았어요.

   더 많은 functionObject 사용법은 tutorial을 통해 자세하게 설명드릴게요.

   functionObject는 OpenFOAM 사용할 때 해석의 수렴성이나 결과를 그래프로 표현할 때 많이 쓰이니 꼭 기억해 두세요.

   그럼 이만 오늘의 포스팅을 마칠게요.

   질문은 댓글로 달아주시고 오늘도 끝까지 읽어 주셔서 감사해요.

 


이미지 무단 도용을 금합니다.

copyright ⓒ 택이5 All rights reserved

728x90
반응형