I would like to perform analysis using Navier Stokes and Heat Transfer eventually. As a first step, I set up some tests by just solving the fluid portion of the problem. I am finding it very difficult to get a problem to converge. Generally, I am finding that simple geometries with structured meshes converge nicely, but meshes with complexity, such as structured and unstructured regions do not. I am planning on building meshes with structured regions near solid surfaces in order to model boundary effects accurately, while having the bulk of the fluid meshed with a less dense structured region.
The simple problem attached uses the type of meshing that I would like to use later in the fluid - heat transfer problem, but I have been trying to get it to converge with simply a velocity BC on one side, and external pressure = 0 on the other. There are three bodies, 1, 2, and 3. All are water now in what should be a simple test of N-S equations, but later 1 and 3 would be fluids, and 2 would be solid. The perimeter has been set to no slip, or not, with the solver set to ILU0, or 1, 2, 3, 4 with no apparent effect.
Is there something fundamental that I am missing?
Code: Select all
Header
CHECK KEYWORDS Warn
Mesh DB "." "."
Include Path ""
Results Directory ""
End
Simulation
Max Output Level = 4
Coordinate System = Cartesian
Coordinate Mapping(3) = 1 2 3
Simulation Type = Steady state
Steady State Max Iterations = 5
Output Intervals = 1
Timestepping Method = BDF
BDF Order = 1
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(3) = 1 2 3
Name = "Body 1"
Equation = 1
Material = 1
Initial condition = 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-8
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-8
Linear System Preconditioning = ILU1
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 4 ! Set the correct solver number here.
! Usually use the highest number so the results are saved
! at the end of a timestep.
!Exec Solver = String "after all"
Exec Solver = always
Equation = String "ResultOutput"
Procedure = File "ResultOutputSolve" "ResultOutputSolver"
Output File Name = String "output."
Output Format = String "vtk"
Vtk Format = Logical True
End
Equation 1
Name = "Equation 1"
Active Solvers(1) = 1
End
Material 1
Name = "Water (room temperature)"
Heat Conductivity = 0.58
Heat Capacity = 4183.0
Density = 998.3
Viscosity = 1.002e-3
Heat expansion Coefficient = 0.207e-3
End
Initial Condition 1
Name = "InitialCondition 1"
Velocity 2 = 0
Velocity 1 = 0
Pressure = 50
Velocity 3 = 0
End
Boundary Condition 1
Target Boundaries(3) = 1 2 3
Name = "BoundaryCondition 1"
External Pressure = 100
End
Boundary Condition 2
Target Boundaries(1) = 7
Name = "BoundaryCondition 2"
#Velocity 1 = 0
#Normal-Tangential Velocity = True
Noslip wall BC = True
End
Boundary Condition 3
Target Boundaries(3) = 4 5 6
Name = "BoundaryCondition 3"
External Pressure = 0
End