와류 진동(Vortex Shedding)

격자 파일 다운로드
계산 파일 다운로드

개요

본 예제는 2차원 비정상상태 층류 유동해석 예제로, 레이놀즈 수 100인 2차원 실린더 주변의 와류 진동(vortex shedding) 문제이다.

계산 조건은 다음과 같다.

  • 솔버 : buoyantPimpleNFoam
  • 난류 모델 : laminar
  • 레이놀즈 수 : 100

프로그램의 구동 및 격자

프로그램 실행 후 [새 작업(New Case)]를 선택한다. 시작 창에서 [솔버 유형(Solver Type)]은 [압력기반(Pressure-based)]를, [다상유동 모델(Multiphase Model)]은 [None]을 선택한다.

격자는 주어진 polyMesh 폴더를 활용한다. 상단 탭에서 [파일(File)]-[격자 불러오기(Load Mesh)]-[OpenFOAM]을 순서대로 클릭하고 polyMesh 폴더를 선택한다.

기본조건(General)

시간(Time)을 비정상상태(Transient)로 변경한다. 나머지는 디폴트 조건을 사용한다.

모델(Models)

난류 모델은 층류(Laminar)를 사용한다.

물질(Materials)

본 예제에서는 = 1

조건을 사용한다. 이 때 레이놀즈 수가 100이 되는 조건으로 물성치를 설정한다.

  • 밀도 : 1

점성 계수 : 0.01

경계조건(Boundary Conditions)

아래와 같이 경계면 타입과 경계값을 설정한다.

  • cylinder : 벽면(Wall)
    • 속도조건(Velocity Condition) : 정지(No Slip)
  • sym : 대칭(Symmetry)
  • out : Pressure Outlet
    • Total Pressure : 0 (Pa)
  • in : 입구 속도(Velocity Inlet)
    • 속도 크기(Velocity Magnitude) : 1 (m/s)
  • frontAndBackPlanes : 2차원 경계(Empty)

기준값(Reference Values)

본 예제에서는 실린더의 항력계수(Drag Coefficient)와 양력계수(Lift Coefficient)를 확인한다. 이를 위해 기준값을 아래와 같이 설정한다.

  • 면적(Area) : 1
  • 밀도(Density) : 1
  • 길이(Length) : 1
  • 압력(Pressure) : 0
  • 속도(Velocity) : 1

수치해석 기법(Numerical Conditions)

본 예제에서는 아래와 같이 설정을 변경한다.

  • 운동량 방정식 계산(Use Momentum Predictor) : 활성화
  • 이산화 기법(Discretization)
    • 시간 : 2차 음해법(Second Order Implicit)
    • 압력 : Momentum Weighted Reconstruct
    • 운동량 : 2차 상류기법(Second Order Upwind)
  • 시간당 반복계산 회수(Max iterations per Time Step) : 10
  • 압력보정 회수(Number of Correctors) : 2

나머지는 디폴트 조건을 사용한다.

모니터(Monitor)

본 예제에서는 실린더에 작용하는 항력/양력계수(Drag/Lift Coefficient)와 실린더 중심에서 1m 떨어진 지점의 속도/압력을 모니터링 한다.

실린더에 작용하는 항력/양력계수

  • [추가(Add)]-[힘(Forces)] 버튼을 선택한다.
  • 자동저장간격(Write Interval) : 1
  • Lift Direction : 0 1 0
  • Drag Direction : 1 0 0
  • Center of Rotation : 0 0 0
  • Boundaries : cylinder

실린더 중심에서 1m 떨어진 지점의 속도, 압력

  • Add – Points 버튼을 선택한다.
  • Point Monitoring은 아래와 같이 설정한다.
    • Write Interval : 1
    • Field : Pressure
    • Coordinate : 1 0 0

같은 방식으로 동일한 지점의 속도 크기(Velocity Magnitude) 모니터링도 설정한다.

초기화(Initialization)

X-속도에 1을 입력하고 나머지 값들은 디폴트값을 사용한다.

하단의 [초기화(Initialize)] 버튼을 클릭한다. 그 후, 메뉴의 [파일(File)]-[저장(Save)] 버튼을 클릭하여 저장한다.

계산

메뉴의 [병렬연산(Parallel)]-[환경설정(Environment)]를 클릭하고 원하는 코어수를 입력한다.

[계산 조건(Run Conditions)]은 다음과 같이 설정하고 [계산시작(Start Calculation)] 버튼을 누르면 계산이 시작된다.

  • 시간전진기법(Time Stepping Method) : 적응시간기법(Adaptive)
  • Courant Number : 1
  • 종료시간(End Time) : 150
  • 자동 저장 간격(Save Interval) : 0.5

계산이 시작되면 아래와 같이 잔차(residual)과 모니터링 그래프가 그려진다.

후처리

실린더 주변의 속도, 압력 분포를 확인한다.

메뉴에서 [외부 프로그램(External tools)]-[ParaView] 버튼을 클릭해서 paraview를 실행한다.

병렬연산이면 [Case Type]을 [Decomposed Case]로 변경한다.

상단 툴바의 [Solid Color]를 [U] 혹은 [p_rgh]로 변경하고 [play] 아이콘을 클릭한다.