2015년 4월 26일 일요일

Open Source CAE Toolchain 9 - CFD with Elmer by MultiPhysics Natural Convection & Transient


case.sif


Header
  CHECK KEYWORDS Warn
  Mesh DB "." "."
  Include Path ""
  Results Directory ""
End

Simulation
  Max Output Level = 5
  Coordinate System = Cartesian
  Coordinate Mapping(3) = 1 2 3
  Simulation Type = Transient
  Steady State Max Iterations = 1
  Output Intervals = 1
  Timestepping Method = BDF
  BDF Order = 1
  Timestep intervals = 10
  Timestep Sizes = 10
  Solver Input File = case.sif
  Post File = case.ep
End

Constants
  Gravity(4) = 0 -1 0 9.82
  Stefan Boltzmann = 5.67e-08
  Permittivity of Vacuum = 8.8542e-12
  Boltzmann Constant = 1.3807e-23
  Unit Charge = 1.602e-19
End

Body 1
  Target Bodies(1) = 1
  Name = "Body 1"
  Equation = 1
  Material = 1
  Body Force = 1
  Initial condition = 1
End

Solver 2
  Equation = Heat Equation
  Procedure = "HeatSolve" "HeatSolver"
  Variable = Temperature
  Exec Solver = Always
  Stabilize = True
  Bubbles = False
  Lumped Mass Matrix = False
  Optimize Bandwidth = True
  Steady State Convergence Tolerance = 1.0e-5
  Nonlinear System Convergence Tolerance = 1.0e-7
  Nonlinear System Max Iterations = 20
  Nonlinear System Newton After Iterations = 3
  Nonlinear System Newton After Tolerance = 1.0e-3
  Nonlinear System Relaxation Factor = 1
  Linear System Solver = Iterative
  Linear System Iterative Method = BiCGStab
  Linear System Max Iterations = 500
  Linear System Convergence Tolerance = 1.0e-10
  BiCGstabl polynomial degree = 2
  Linear System Preconditioning = Diagonal
  Linear System ILUT Tolerance = 1.0e-3
  Linear System Abort Not Converged = False
  Linear System Residual Output = 1
  Linear System Precondition Recompute = 1
End

Solver 1
  Equation = Navier-Stokes
  Procedure = "FlowSolve" "FlowSolver"
  Variable = Flow Solution[Velocity:3 Pressure:1]
  Exec Solver = Always
  Stabilize = True
  Bubbles = False
  Lumped Mass Matrix = False
  Optimize Bandwidth = True
  Steady State Convergence Tolerance = 1.0e-5
  Nonlinear System Convergence Tolerance = 1.0e-7
  Nonlinear System Max Iterations = 20
  Nonlinear System Newton After Iterations = 3
  Nonlinear System Newton After Tolerance = 1.0e-3
  Nonlinear System Relaxation Factor = 1
  Linear System Solver = Iterative
  Linear System Iterative Method = BiCGStab
  Linear System Max Iterations = 500
  Linear System Convergence Tolerance = 1.0e-10
  BiCGstabl polynomial degree = 2
  Linear System Preconditioning = Diagonal
  Linear System ILUT Tolerance = 1.0e-3
  Linear System Abort Not Converged = False
  Linear System Residual Output = 1
  Linear System Precondition Recompute = 1
End

Equation 1
  Name = "Equation 1"
  Convection = Computed
  Active Solvers(2) = 2 1
End

Material 1
  Name = "Water (room temperature)"
  Heat Conductivity = 0.58
  Heat Capacity = 4183.0
  Density = 998.3
  Relative Permittivity = 80.1
  Compressibility Model = Incompressible
  Viscosity = 1.002e-3
  Sound speed = 1497.0
  Heat expansion Coefficient = 0.207e-3
End

Body Force 1
  Name = "BodyForce 1"
  Boussinesq = True
End

Initial Condition 1
  Name = "InitialCondition 1"
  Velocity 1 = 0.0001
  Temperature = 293
End

Boundary Condition 1
  Target Boundaries(1) = 6 
  Name = "bottom"
  Velocity 3 = 0
  Velocity 1 = 0
  Velocity 2 = 0
  Temperature = 300
End

Boundary Condition 2
  Target Boundaries(1) = 1 
  Name = "top"
  Velocity 3 = 0
  Velocity 1 = 0
  Velocity 2 = 0
  Temperature = 293
End

Boundary Condition 3
  Target Boundaries(1) = 7 
  Name = "submarine"
  Noslip wall BC = True
  Temperature = 300
End


Solver 3
  Exec Solver = after timestep
  Equation = "result output"
  Procedure = "ResultOutputSolve" "ResultOutputSolver"
  Output File Name = "case"
  Output Format = String "vtu"
  Binary Output = True
  Single Precision = True
  Save Geometry Ids = True
End




레일리-버나드 대류( Rayleigh-Benard Convection) 모사에 대한
2D 예제가 있는데, 그걸 응용해서 3D 모델에 적용해 보았다.

레일리-버나드 대류가 뭔가 싶어서 조사해 봤더니,
바닥은 뜨겁고 윗쪽이 차가운 평행한 양쪽 경계조건에서의 대류 현상을 말한다고 한다.
이때 부력조건과 난류조건을 잘 주면(레이놀즈계수 Ra),
동그랗게 돌돌 말아서 돌아가는 셀 같은 것들이 여러 개 나타난다고 한다.

아직 이론을 충분히 숙지하지 못한 상태라서,
난류 모델은 적용하지 못하였다.


 Unify Surface 메뉴를 사용해서
여러개의 Surface를 하나로 합쳐버리면
Boundary Condition을 줄 때 편하다.
ElmerVTK로는 아무래도 충분히 다양하게 보기는 어렵다.




Paraview를 이용한 모습.



댓글 없음:

댓글 쓰기