Here are some things that I've found useful when confronted with a case
that will not run as I think. They should help to isolate the problem
so we can find it quickly.
- What gas model are you using (that is, to what is
If the flowfield incompressible, can you get the case to run
for low Mach number compressible single-species? If the case is
multi-species, can you set it to the same properties as a single-species
case and run that? If it does not run with variable properties,
multi-species will it run constant properties? This will help
isolate whether the problem originates because of a particular gas
model or whether it is something else.
- What are the Reynolds number and the Mach numbers of the flowfield?
Is it reasonable to expect a steady solution for the Reynolds numbers
that you're running? This is important when you have objects where
shedding is prone to occur. An example of this is the cylinder case.
If the case is run with a Reynolds number above 40, it will try to
shed. Depending on the strength of the vorticies and their proximity
to the outflow boundary conditions, the vorticies can eventually cause
problems at the outflow boundaries and eventually destroy the solution.
- What CFL's did you try? If you have highly stretched regions, did you
try a max-CFL (
itime=1) definition instead of a min-CFL condition?
The diagonalized scheme is sensitive in highly stretched regions, so
this might cause problems. Generally for max-CFL, you can run a CFL
from one to three, but your convergence will probably be poor because
of the extremely small time steps in the stretched regions.
- What type of preconditioning are you using? Do you have stagnation
regions in the flow? If so, is the vel variable in input.dat set
to a 'free stream' value. This is important for airfoils and
cylinders. Usually you can set inviscid and viscous preconditioning
on and forget about them.
- What order accuracy are you running? Are you running with TVD or not.
TVD can cause problems if you are trying to converge to machine
- How are you initializing your flowfield? For simple cases, like
and cylinders, the flow can usually be initialized with a u-velocity set to
the inflow velocity. However, for cases with large area changes
between the inlet and the exit (such as a backstep), it works better
to set the initial velocity at a small value and let the flow push
through from the inlet. Of course, if you know an approximate solution
to the flowfield, then you can write out this solution to a
file (in plot3d format) and initialize the flow this way.
- I don't know what to tell people about reactions. If you find something
that works, let me know :-)