Sure, the choice of code depends on the application of interest. I have two points to make on this issue:

1) codes have a heredity and this history points out a code's traditional area of expertise (and greatest strengths). Some codes grew up doing turbomachinary, others did chemical vapor deposition, yet others did engines, combustion, sprays, and so forth. Look for a code with a heredity in the area of your interest.

2) it has always been my opinion that user habits (such as a high quality grid, well posed BCs, thorough understanding of the approximations in the simulation) have a bigger impact on the quality of CFD simulations than the code you use (within reason). Any code can be misused and generate junk. If you are a newbie, get a mentor. It will save you a lot of trouble, and everyone (you, your audience, the CFD community at large) will be happier in the end.

I don't know the answer, it's a good question that I think many CFD users would like to know the answer -you're asking the holy grail of CFD. Personally I've used Fluent, Star, Powerflow etc. I still cann't say which one could be a potential candidate.

One thing I can say with confidence is that Powerflow is not the code you're looking for. I'd rather call it Powerless-flow or useless-flow. It's a waste of time code - anyone would like to bet on how long EXA will be in business - I don't expect EXA to be around in 5 years time.

" 2) it has always been my opinion that user habits (such as a high quality grid, well posed BCs, thorough understanding of the approximations in the simulation) have a bigger impact on the quality of CFD simulations than the code you use (within reason). Any code can be misused and generate junk. "

I quite agree, but I think the original question refers to the opposite, i.e., assuming the problem is well posed and the approximations and limitations understood - which code would result in correct results, and which of them is closest to the true solution (exact or experimental)?

(1) I have been doing CFD for 19 years and have used a number of codes. One thing is clear. There is no code that solves all problems well. Even if you limit yourself to reasonably straightforward, practical problems, I would say there is no best code. In fact there are plenty of pathological examples that appear to defy a good solution unless a code targets that specific problem (and then only after much calibration work).

(2) Some CFD researchers would start by eliminating all codes that use "pressure-based" methods. This view is especially true of those from the aerospace community. Interestingly, this would eliminate all the main-stream commercial CFD codes!! Their arguement is that CFD is properly done only with purely conservation formulations (e.g an entropy, density and momentum based method; especially when shocks are involved). Evaluating turbulence models is a whole other arguement beyond the scope of this note.

(3) Personally, I have used "pressure-based" methods with practical (simplistic turbulence models) for most of the last 15 years, and find that the mainstream codes are adaquate for finding 1st order effects (and some more subtle secondary effects) when the practitioner is quite careful. The respondant that cooly said that you can assume the user understands the assumptions and approximations is being overly simplistic (imho). It is rarely the case even for very experienced users (including myself). Usually there are subtle but important issues that can really surprise you. I can think of plenty of examples. That is what often makes fluid dynamics so interesting and challenging. Remember, we are trying to simulate highly non-linear phenomena. Often we don't realize our solutions are mediocre because there is little data to test the details of the results against.

(4) So, considering this, why do we suceed with CFD at all? This I think is a most interesting question. The fact of the matter is that we often understand flows in real world engineering applications so poorly, and good lab data is so challenging to obtain, that insight into the flow phenomena provided by even first order results can be valuable for a lot of the engineering challenges at hand. If done carefully, a CFD user can provide value with any mainstream CFD package. Otherwise, they wouldn't still be around.