CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Main CFD Forum

Question about cfd codes.

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old   August 6, 2001, 13:30
Default Question about cfd codes.
  #1
Bill
Guest
 
Posts: n/a
Why is Fluent the world's largest (no. of users) CFD code when it is clearly worse than both CFX and Star? The physices in Fluent are poor and if its anything complex the convergence is terrible.

True, gambit is easy to use, but not for complex files and CAD import is v bad and the adaption is a pain in the arse. Whats the point in getting a mesh if its so bad the answers are wrong.

I assume that it is just good marketing. Anyone have any ideas?
  Reply With Quote

Old   August 6, 2001, 15:08
Default Re: Question about cfd codes.
  #2
kalyan
Guest
 
Posts: n/a
Do you really expect a convincing answer or an argument to your question here. This will start an endless debate that serves no purpose on this forum.

By the way, what do you mean by saying physics in Fluent is poor. That is a sweeping statement given that most commercial codes rarely ever capture the true physics accurately. It is very difficult to develop a code that can be used for a variety of problems accurately. In commercial codes, the robustness comes at the expense of accuracy (i.e., they have heavy numerical damping which overwhelms almost all models for the real physical or chemical processes).

A friend of mine works with people from Fluent and Star-CD on separate projects (though he does not use their codes). He tells me that Fluent has had an advantage because of their AMG scheme. As far as I am concerned, I have never used any commercial code but I have seen enough documentation of the models they use and the results (they are pretty bad).
  Reply With Quote

Old   August 6, 2001, 15:11
Default Re: Question about cfd codes.
  #3
John C. Chien
Guest
 
Posts: n/a
(1). I think, it is the timing. (2). The unstructured mesh was shown not appropriate for wall boundary layer calculation back in 80's, in research community. (3). But, in 90's, there was a push to use unstructured mesh, to save mesh generation time, and thus reduce the design turn-around time in the no-so-good time of 90's. (4). Every companies fighting for survival in 90's realized that they need to cut down the design-to-market time. Under this need, unstructured mesh code by Fluent , such as UNS and RAMPANT were very attractive, coupled with the nice color graphics of the post-processing, which is very important to project managers. (5). Company CEO and project managers normally do not care about(or don't have the knowledge or interest in) whether the solution is correct or not. (6). And it is also made in USA. (7). From the free market point of view, I don't have anything against commercial CFD codes, as long as they keep improving their products. (8). At the same time, this forum is very important to educate the general users how to do CFD analysis properly, especiall, when commercial CFD code(s) are required.(whether by assignment or need) (9). AS a good sales person, he should be able to sell any product of any quality. In the free market society, it is the user's responsibility to learn the lesson hard way or through cfd-online forum.
  Reply With Quote

Old   August 6, 2001, 18:31
Default Re: Question about cfd codes.
  #4
John C. Chien
Guest
 
Posts: n/a
(1). To do the thing right, there must be good reference solutions or data in the first place. (2). I might be able to do something in this area by providing some cfd solutions. But I am busy fooling around with the 3-D modeling for animation purposes. (3). If there is a market for good CFD solutions, I will take a look at my old programs, and there is a chance that I will release some in the future. (4). I must say that people interested in CFD are looking for free codes, and people who can afford doing CFD are using commercial cfd codes (or using it as a vehicle to get cfd solutions through the code vendors). (5). If all the users of CFD are willing to buy good solutions (say at a book rate) monthly, then I guess, it will have large enough market to encourage the development of good CFD solutions (through code, I guess). (6). But if I spend two weeks to put together a code to generate a good CFD solution, and end up with two guys buying the solution (or the code), then you know the result. (7). So, for the healthy development of CFD field, the user must be willing to buy the CFD solutions (or codes) on the routine basis. Without that, you are not going to see good solutions from the CFD industries. (8). If no one is buying strawberries, then you are not going to see the strawberry field and workers. So, is there a market to support the development of good CFD solutions?
  Reply With Quote

Old   August 6, 2001, 19:54
Default Re: Question about cfd codes.
  #5
Adrin Gharakhani
Guest
 
Posts: n/a
> But if I spend two weeks to put together a code to generate a good CFD solution, and end up with two guys buying the solution (or the code), then you know the result

John,

No, I, for one, don't know the result!

If you spend _only_ two weeks to "generate a good CFD solution", I'd say finding two guys who will buy the solution is a very good return on investment, especially if you developed the code as a hobby (i.e., you have a "real" job and are doing this as a side)

On the other hand, I cannot believe anyone can generate a good code in two weeks. If the actual process took many generations and you are talking about packaging in two weeks, you are still doing quite well. Note that you cannot count the so many years of experience that, frankly, someone else paid for toward the total cost of development.

That is my personal opinion.

I personally think people who have tried everything in the commercial world (I'm not talking about the ones who don't know the first thing about fluid mechanics and want to use CFD - that is not a good market to get started) will try new ideas, and if the codes do as well as they claim to be doing I think people will shift paradigms. Afterall most (serious) people are interested in good results and not just fancy pre- and post-processors.

Adrin Gharakhani
  Reply With Quote

Old   August 6, 2001, 23:15
Default Re: Question about cfd codes.
  #6
John C. Chien
Guest
 
Posts: n/a
(1). I don't think you have to re-invent the equations. So, it is there. (2). If the flow is laminar, the wall velocity is zero. So, the boundary condition is solved. (Same is true for the low Re turbulence model) (3). For wall functions, it's been around almost 30 years, and you don't have to re-invent it. (4). For the pressure, the wall normal pressure gradient is zero. (5). How long would it take to write a finite-difference representation of the derivative terms? And how many terms are there in the equations? In case you have not worked in finite difference world, the second order term is normally written as t(i+1,j)-2t(i,j)+t(i-1,j). I am sure that it does not take more than one minute. (6). Group these terms together, and you have the algebraic equations. You can use, SOR, line SOR, ADI, etc... There are text books available with FOrtran code ready. (7). In less than four hours, you should have the complete set of algebraic equations ready. and Four hours to type the code into the computer? Well, it should be enough. (8). Then you can spend the next day debugging the code. And spend the rest of the two weeks to work out the graphics part of the display. (9). How long would it take to solve a 2-D transient heat conduction equation? It is in the text book. Add one term to extend it to 3-D. Add three convection terms to it. And you have energy equation. (10). Take a look at the Applied Numerical Method book written 30 years ago, and you will agree with me that two weeks is really adequate to get everything working. (for a specific problem you can define it properly) (11). For complex geometry problem, I think, you will have to define the geometry completely first. This part takes time but it does not add more terms to the governing equations. (12). My question was: if I have a good CFD solution for sale (including a code to obtain that solution), say a 2-D cavity flow solution, how many are willing to spend a book rate, say $75 US dollars to buy it today? If you are willing to buy two copies, then the total sale is $150. for two weeks of work. That's well below the minimum wage income. (even if you are willing to buy the code every two weeks.) (13). So, it is not possible to take this approach to support my family. In other words, you are not going to get my good cfd solution, and I am working on my 3-D animation programs because I like it and it has a much bigger potential to reach the market when it is done. (14). If you are not willing to buy the good cfd solutions (and codes) from me, then I know that you don't care whether you have a good solution or not. (15). I had already said that people would rather have the good cfd solution for free. But the answer I got was, you don't think that I can do it. So, that's your problem, not mine. And the world will continue on using the not-so-good cfd solutions, for sure. (16). In my opinion, the cfd technology in US is disapperaing very quicky. Two or three years from now, you are not going to see much left.
  Reply With Quote

Old   August 7, 2001, 00:14
Default Re: Question about cfd codes.
  #7
Dan Williams
Guest
 
Posts: n/a
Hi Kalyan,

So, are you implying that commercial codes purposefully add numerical diffusion to their advection schemes to improve robustness/accuracy? First order is first order, second order is second order. There just aren't many knobs to play with, and just because a first order scheme is the default, doesn't mean a user couldn't simply click a single button to get a more accurate solution. If you were also trying to imply that somehow the advection schemes in commercial codes are inferior to something you could do yourself, you are simply wrong.

Several commercial vendors, including both CFX and Fluent, use multigrid to solve the linear equations these days. Multigrid has been around for some time now. In fact, I believe that CFX-TASCflow and CFX-5 are the only commercial codes that have used a coupled AMG solver from their beginnings (something like 10 years ago). The coupled approach significantly improves robustness and convergence rates. From reading postings on the this forum, I think one can ascertain that at least Fluent (and possibly Star) has tried to reproduce this feature to a certain extent, with varying degrees of success.

Dan.

  Reply With Quote

Old   August 7, 2001, 04:29
Default Re: Question about cfd codes.
  #8
John C. Chien
Guest
 
Posts: n/a
(1). The difficulty is always that the users simply can't verify what's in the black box. Knobs on the outside of the black box are not strong enough to convince the users. (2). So, the user can only make his conclusion based on the solution he obtains from the code. (3). My experience with the commercial codes such as Fluent and CFX-TASCflow at two world leading companies in the past several years (I am no longer working for these companies), indicated that when compared with the test data, solutions from these codes are far from satisfactory. (based on my standard only) My service to the company was based on my technical experience, so the numbers obtained from the commercial codes were used as additional information. But in most cases, results were confusing. And it's difficult to make clear cut conslusion based on the solution obtained from the commercial codes. (for the kind of problem I was interested in) (4). This is only my personal experience. And I will use commercial codes if there is a need in the future. But if you are looking for good results from commercial cfd codes, you will have to work very hard. On the other hand, if you are asked to get another set of solutions as reference, then it might be acceptable. (for me it is a waste of time to use commercial cfd codes.)
  Reply With Quote

Old   August 7, 2001, 07:23
Default Re: Question about cfd codes.
  #9
Bernard Parent
Guest
 
Posts: n/a
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>

So, are you implying that commercial codes purposefully add numerical diffusion to their advection schemes to improve robustness/accuracy?

First order is first order, second order is second order.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>

Comparing schemes simply on the basis of the order of accuracy is just wrong. For example, it's possible to write a first order scheme that will use a discretization based on the exact solution (if it exists) of the governing equations and that will be infinitely more accurate than a second, or fifth, or tenth order scheme based on a Taylor series expansion of the derivative. Further, for many problems, I would recommend first order accuracy instead of second order, as it gives answers closer to reality (especially in the case of strongly nonlinear phenomena).

Not all first order schemes and second order schemes are born equal. Certain convective flux discretization schemes are notorious for introducing extremely high levels of artificial dissipation (take the 2nd/4th order scalar artificial dissipation scheme of Jameson for example). While being 2nd order accurate, the Jameson scheme deteriorates the overall precision of the flow solver in viscous regions (boundary layers, shear layers, etc). On the other hand, you can use a 1.5 order accurate method (like the Yee-Roe flux-limited scheme) which will introduce much less artificial dissipation in viscous regions.

And yes, there is a link between fast convergence/robustness and excessive artificial dissipation. The more artificial dissipation, the easier it is generally to obtain an answer: the discontinuities are smeared out, which permit the use of higher time steps and hence faster convergence. Further, some acceleration techniques (like multigrid) are very scheme dependent and might not be applicable to flux discretization schemes that do not introduce enough artificial dissipation. And without multigrid, it might take 3-4 times more computing to get an answer.

Unfortunately, very few pay attention to the issue of artificial dissipation, and are perfectly content as long as they can get an answer, any answer, to their 30-million-unknowns problem. Although I do not entirely disagree with the following quote, I do find it pathetic and very relevant to the way CFD is used:

'' it's better to get the wrong answer than no answer at all..''

  Reply With Quote

Old   August 7, 2001, 11:54
Default Re: Question about cfd codes.
  #10
kalyan
Guest
 
Posts: n/a
Hi Dan,

First of all, order of accuracy is not everything. It just makes people feel good to use higher order schemes. Consider for example a second order central scheme and a third order upwind or upwind -biased scheme. According to you, a third order solution is more accurate. However, that isn't the case. In steady state problems, upwinding adds a bit of robustness into the solver. In unsteady simulations (URANS, LES & DNS), a second-order scheme is preferrable because of its lower numerical dissipation. In fact, Mittal and Moin (two very reputed researchers in turbulence modeling) claim that a second order central scheme is better for turbulence predictions than a fifth-order upwind scheme (check out their paper in AIAA J.). Of course, second order schemes have their own problems. You can not use highly stretched grids and the code is often very sensitive to BC (especially the outflow non-reflecting BC).

Perhaps you misinterpreted my comments on commercial software. I do not think artificial dissipation is built in deliberately into the commercial software by using an extra term. It is there as a part of the truncation error.

For the problems I am dealing with, I am pretty sure the solutions my code predicts are vastly superior to ones you get from a commercial code. This isn't vanity on my part, it is just a fact. That is because I have built my code around a set of problems I hope to use it for. That is not to say that the commercial codes are inferior. Their value is in the fact that they can readily be used for more types of problems. Research codes usually are meant to study and understand a single or a few complex processes like turbulence, combustion, 2-phase flows, radiation, adsorbtion/desorbtion etc. I do not know a single research code that has models for all these complex processes built into them. But most commercial codes do. I am not by any means trivializing the effort or the knowledge needed to do this.

As far as AMG is concerned, I was just saying that Fluent seems to have had better success with it than Star. Once again this is second hand information. I do not know much about CFX. Also you need not have AMG to have a coupled approach. MG improves convergence rates but does not do much for the robustness.
  Reply With Quote

Old   August 7, 2001, 14:46
Default Re: Question about cfd codes.
  #11
Adrin Gharakhani
Guest
 
Posts: n/a
John,

I have working experience with finite-difference, volume and element methods. My MS was on Patankar's method at a time when the term CFD was not even coined (it was called numerical fluid mechanics at our school)

You are correct that you can write a finite-difference code in less than a week, because the finite-difference equations/formulations are textbook-ready. I programmed those types of problems as homework for heat transfer classes during my MS years (early 80's).

The issue is not whether you can type in a 30-year-old finite-difference method for a rectangular geometry. The issue is whether you can extend this to realistic flow geometries. And the answer to that will be "no, you can't do it in 2 weeks". If you structured grids as you do, then you need all the other capabilities such as domain decomposition, multi-block, etc. etc.

You are claiming that you will have an "accurate" code, which means that you will undoubtedly require adaptive gridding (unless you want to grid the domain with unnecessarily large number of grid points).

Then you need to have some method of simulating turbulent flow "accurately". If you are going to use 30 year old k-e models for this, then you're not offering anything better than what is commercially available already (except for price, of course).

So, borrowing from your own book there are many issues involved in a CFD code - it is not just discretizing the NS equations on a cartesian grid system.

And lastly, I did offer an answer (I think). I suggested that, and I paraphrase here, if you can program an "accurate" code in 2 weeks, assuming you're doing this as a hobby, it makes good economic sense to sell the code.

Adrin Gharakhani
  Reply With Quote

Old   August 7, 2001, 17:19
Default Re: Question about cfd codes.
  #12
John C. Chien
Guest
 
Posts: n/a
(1). I don't use Professor Patankar method in my codes. (2). Back in 70's, I was solving equations in transformed coordintes space, and this is obvious, because you can only approximate the derivatives by t(i+1,j)-2t(i,j)+t(i-1,j) in the transformed space. (why?) because you can save the computing time by setting dXI, dETA, dZeta to 1.0 (2). Anyway, even the numerical grid generations were carried out in transformed space. That means you can handle arbitrary geometry. It is 25 years old technology. (more accurate than unstructured mesh) (3). I would say that the technology developed in the last 10 years was mainly focused in unstructured mesh applications. You can get better results by going back to the technology which is 15 years old. (4). Most of my research results were not published (for obvious reasons). So, you can't say whether it is good or bad until you have it.(which is unlikely now) (5). From our conversation, I think, the biggest problem in CFD is still the Human Factor. The 70's technology was low Re turbulence model in transformed space for arbitrary geometry. Not old by any today's standard.
  Reply With Quote

Old   August 7, 2001, 22:29
Default Re: Question about cfd codes.
  #13
Dan Williams
Guest
 
Posts: n/a
I guess I didn't mean to imply that all first order schemes are the same and all second order schemes are the same etc... inaccurate comment on my part. I guess all I meant to say is that the implementation of the advection schemes in commerical codes can be every bit as good as anything you could type in yourself. Of course your mileage may vary depending on the problem.

I talked to Moin a couple of months ago about their advection scheme results. The reason they claim that the central difference scheme is better than upwind for their applications is due to the fact that it does a better job at preserving conservation of kinetic energy (you can do even better with some specialised advection schemes they have implemented). These LES turbulence modellers seem to feel that it's critical to get kinetic energy conservation right, and the advection scheme is one part of the puzzle when it comes to satisfying that property. Others include using a staggered grid as most velocity-pressure coupling schemes destroy energy conservation. In the real world, on real world LES problems, whether it matters is still an open question. Ask Moin and his co-workers and I'm sure you will hear that it does, but keep in mind they've never run anything other than turbulence in a box or a cylinder.

I also wrote my own codes when I was working as a student. I was studying detonation of gaseous mixutures. I wouldn't even attempt this with any of the commerical codes because there is no way they would be fast enough. That doesn't mean that it couldn't be done. After being in the commercial arena for several years it's clear that in many cases you can do a pretty damn good job with a commercial code if you are careful.

I'm a firm believer that commerical CFD codes have no place in the hands of a graduate student doing research on CFD. All CFD students should write their own codes. On the other hand, I question the value of writing your own codes in a commercial environment.

  Reply With Quote

Old   August 8, 2001, 01:07
Default Re: Question about cfd codes.
  #14
John C. Chien
Guest
 
Posts: n/a
(1)."On the other hand, I question the value of writing your own codes in a commercial environment." (2).I think, it depends on the definition of "writing your own codes". (3). In doing CFD analysis, you need the control of the solver, and in most cases the control of the turbulence modeling. (you also need to process the results and geometry/meshes) (4). And in most cases, you are dealing with modification of existing codes or section of codes. You rarely have to write a piece of code brand new. (5). This is common to all programmers. And it is very cost effective to modify existing codes to do new tasks. (6). The post-processing part is fairly standard now, and in most cases it can be handled adequately by available packages, free or commercial. Even in this area, there are easy to program script language to do windows graphics, free of charge. (7). So, what's the problem? The problem is: if you let the graduate students to use commercial cfd codes, then you are taking away the their opportunities to learn how to put together a working code, where to get the free codes, and how to modify and debug the existing codes. So after graduation, he is not going to have the necessary skill to pull all these information together, even though it is not difficult at all. That's the problem. (8). When you buy a computer related book, there is always a CD with a lot of samples and resources attached. It also comes with a free website where you can download tons of samples and information. These are the skills a graduate student should learn. and even though it is easy as I have just said, it will be very difficult if you don't give yourself times to try it out. (sometimes, the library is not in the right place, sometimes it has wrong version, et.) (9). So, my point of view is: it is very cost effective to write your own code in the commercial environment, because you are using the "UP-TO-DATE" technology. (10). And if you don't polish your programming skill and study available pieces of codes for modification, pretty soon, it will be impossible for you to write or modify a code. So, one should try to grab any opportunity to practice his skill. This is based on my many years of experience in industries. (11). But, if you are working as a consultant, dealing with many clients and different kind of problems (you should not get into this kind of situation in the first place, because you are not a superman), then I agree with you that, you are not going to have time to write codes or modify programs. You will be squeezed by the schedule.
  Reply With Quote

Old   August 8, 2001, 07:24
Default Re: Question about cfd codes.
  #15
Andrey Aksenov
Guest
 
Posts: n/a
I think, we should ask question "what CFD code is better, what is worse" in different words: "In whose hands is it better, ih whose hands is it worse". User and his experience in the CFD code is main problem. You can have excellent code but can't use it because you don't know it and its peculiarity. By the way, we compared CFX-TASCFlow, StarCD and Fluent with experiment on turbomashinary tasks. The accuracy was highest for TASCFlow, then Fluent and then StarCD. But together they were near experiment, accuracy was enough. TASCFlow was the best, maybe because of we know TASCFlow better...
  Reply With Quote

Old   August 8, 2001, 12:25
Default Re: Question about cfd codes.
  #16
John C. Chien
Guest
 
Posts: n/a
(1).Were you able to obtain "mesh independent solution"? ,when validating these codes? (2). Were you comparing only the pressure data? Were you able to predict the loss accurately? (3). What kind of test cases were used in the comparison? (4). I think, our readers would be interested in knowing these validation information. (5). I think, the user's experience is important in any CFD analysis, but what's in the black box will determine the accuracy of the results.
  Reply With Quote

Old   August 8, 2001, 12:44
Default Re: Question about cfd codes.
  #17
kalyan
Guest
 
Posts: n/a
Indeed the kinetic energy conservation in LES is being overemphasized in academia. In fact, the kinetic energy preserving schemes proposed by Moin, Lund, Morinishi and co-workers split the non-linear term into 2 equal parts. One half is discretized using a skew-symmetric form and hence is not suited well for a finite volume scheme. They use the staggered finite difference scheme.

In 2-D flows, if you put the viscous terms to zero, then not only the energy but any continuous function of vorticity (e.g. vorticity, enstrophy etc.) is an invariant over the whole domain. Only point-vortex methods with symplectic integrators come close to satisfying this condition. It is easy to see that the K.E. preserving schemes proposed for LES are not symplectic when applied to 2-D flows.

Even in the simplest of geometries, no one knows what happens to energy conservation in these K.E. preserving schemes in the presence of density gradients (let alone compressibility). So, even though the CTR LES group keeps claiming that K.E preservation is key, there are many who do not buy that argument. I have had to deal with strong density gradients (arising from premixed flames) in LES and upwind-biasing was found to be necessary to stabilize the simulations. There are a lot of people trying to do LES of combustion and I am sure most would agree that kinetic energy preservation is far down the list of priorities.

Coming back to the issue of commercial codes, they are improving very rapidly. But still, simply because they have to handle a multitude of scenarios, their robustness comes with an accuracy level that is usually well below that of research codes which are developed with specific focus. And also, it perhaps does not make much sense to conclude one commercial is better than the other based on a narrow set of tests. One company may lag others in some areas but overall I think the accuracy levels are comparable. I may be wrong here but my impression is that you should buy a code that is most user friendly and flexible rather than try to compare the codes.
  Reply With Quote

Old   August 8, 2001, 13:32
Default Re: Question about cfd codes.
  #18
John C. Chien
Guest
 
Posts: n/a
(1). I think, the vendors of the code or the researchers of the algorithm are only interested in selling their codes and algorithms. (2). The users of a code and algorithm are interested in getting their solutions. (3). So, it is hard to bring these two goals together. The best code is the one which will bring more business to the vendor and researcher. The best solution to the user is the one which is accurate and requires minimum effort. (4), By writing your own codes, you can easily eliminate this impossible problem. That is, use the best algorithm for your problem to provide the best solution. Then you can use the best solution to bring in the money, at that point.
  Reply With Quote

Old   August 8, 2001, 16:21
Default Re: Question about cfd codes.
  #19
Joern Beilke
Guest
 
Posts: n/a
What models did you use in which code? MFR (which type) or sliding mesh. What is called frozen rotor in TascFlow is called "mfr explicit" in Star.
  Reply With Quote

Old   August 9, 2001, 09:01
Default Re: Question about cfd codes.
  #20
Andrey Aksenov
Guest
 
Posts: n/a
1. No. 2.-3. Comparison was made for pressure loss one-stage turbine. Accurasy was less 3-4 % for all tested codes. 4. I understand interest to the results of the comparison, I think we will publish them in near future. I'd like to say, that comparison of any code of the same level is subjective, not objective. So our comparisons are not, cannot be and have not to be "ultimate authority".
  Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Future CFD Research Jas Main CFD Forum 10 March 30, 2013 13:26
user friendly cfd code waqar Main CFD Forum 19 August 18, 2000 16:31
Can we quantify the fruits of CFD? Brady Brown Main CFD Forum 14 December 15, 1999 10:42
public CFD Code development Heinz Wilkening Main CFD Forum 38 March 5, 1999 12:44
salary range Frank Muldoon Main CFD Forum 7 August 3, 1998 19:04


All times are GMT -4. The time now is 21:28.