CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM (https://www.cfd-online.com/Forums/openfoam/)
-   -   Open Source Vs Commercial Software (https://www.cfd-online.com/Forums/openfoam/75146-open-source-vs-commercial-software.html)

MechE April 17, 2010 12:15

Open Source Vs Commercial Software
 
I was reading a thread about a comparison of OpenFOAM and commercial CFD programs and there were some serious words being slung around. Is there any downfall between using OpenFOAM and a commercial CFD code in the sense of the accuracy or reliability everything else held constant? At the moment I am using COMSOL (required via contract) but continue to use OpenFOAM for personal use. I just want to see what others have to say on this topic

arjun April 18, 2010 21:52

Quote:

Originally Posted by MechE (Post 255069)
I was reading a thread about a comparison of OpenFOAM and commercial CFD programs and there were some serious words being slung around. Is there any downfall between using OpenFOAM and a commercial CFD code in the sense of the accuracy or reliability everything else held constant? At the moment I am using COMSOL (required via contract) but continue to use OpenFOAM for personal use. I just want to see what others have to say on this topic


if discretization being done properly and same as commercial solvers i do not see any reason for open source codes to be less accurate than commercial ones.

Results of PDEs when subjected to same boundary conditions will vary only if discretization was different. But that still does not say that because one is paid software that makes it more accurate.

down side of using open codes are many but i do not think accuracy is one of them. In fact being open code it is more scrutinized and could be corrected by others. So one would think that over time open codes would tend to be on more corrected side than the commercial ones which are not scrutinized by others.

Commercial solvers have many advantages though, but one pays good amount for it.

andy_ April 19, 2010 05:10

Open source versus commercial CFD is perhaps not really the right comparison because there are a wide range of ways of going about open source. I have not seen the thread you mention but I am fairly disappointed with what I have seen so far of OpenFoam compared to other open source efforts using different business models.

Perhaps the biggest problem with openfoam is that it is difficult to use for both the inexperienced user and experienced user alike which is, as best I can judge, encouraged by the business model. Consequently, when people in industry assess openfoam against commercial codes the latter are almost always going to be judged more cost effective. As best I can judge, openfoam's main users are those with little experience of CFD, with considerable time available to get it to work and no money/desire to purchase a commercial CFD code.

Given the way that contributions from people outside the open-whatever company are shunned, if not actively suppressed like the recent documentation effort, the project would seem to have more in common with a commercial project than a traditional open source project. This is not necessarily a bad thing depending on what those involved want from it. For the open source enthusiasts, I guess the best that can be hoped for is that open-whatever land a big contract where the sponsor wants them to be more, well, open for want of a better word.

niklas April 19, 2010 08:55

Comparing openfoam with commercial packages is abit...unfair.
Foam is just going for the solver part,
commercial software usually have the whole package, pre-processing, cad-integration and whatnot to
make setup easier. Since openfoam does not have this a consequence of it is that if you dont know
what you're doing, you're gonna produce garbage (garbage in, garbage out).
This can be dangerous since it's so easy to produce crap results and you can just search this board and see that people base their decisions on this.

I have the possibilty to use 3 commercial CFD codes
(im not gonna say any names, but they are the 3 major players) and I sometimes
use the other codes to create the geometry....but that's it.
When it comes to the solver part I switch to foam, it scales well, is faster then some and slower than others, and produces results that I trust. (I can very easily make it the slowest one)
Sometimes it diverges when I try different turbulence models, or higher order schemes.
It might produce a result in a commercial code, but I dont really care and
I prefer it that way, cause I know whats going on in foam, the physics is right there and
there are no hidden limiters or damping functions, that secretly removes the (unstable) physics.
I dont know whats going on in the black boxes.

At my group we will benchmark all these codes and
use the exact same meshes for all the codes.
We will look at accuracy, speed and scalabilty.
This is really necessary for us since we are not obliged to use
any particular code, but we are free to work with whatever we
feel most comfortable with. Thus we need to ensure that
we will produce the same result whether it is me or someone
else who is doing the calculation. Will this make anyone switch code?
Probably not, it will just make us aware of how to setup the codes to get
consistent results.

Will we publish these results?
I hope so, but probably not.
These results tend to be used in the wrong way by people and interpreted by
a third person. So one day you stand there with an angry stranger who's calling you names
trying to defend something you havent said or done.

I am the only openfoam user in my group...and I feel I am also the one who
curses over his/hers cfd-code the least.

just my 2 cents
N

alberto April 19, 2010 11:43

Where I work (academia), we have access to two leading commercial codes and we use OpenFOAM. I've personally worked with them for a relatively long time.

OpenFOAM has a steeper learning curve, but I have to say that with some training, users can catch up quickly and produce good results in reasonable time. I saw this happening constantly with those that started to seriously use OpenFOAM: some initial disorientation compared to commercial codes, where you basically use your mouse, but then a deeper understanding of the problem and good results, in some cases after being stuck for months with commercial codes, trying to understand why something was not working properly.

I think OpenFOAM has clear advantages if you have to implement new models in the code. It gives you full access to the code, and a very high level syntax to achieve this. Often commercial codes are quite limited in this aspect, and force you to code in very specific ways, which do not necessarily lead to the best implementation of your model.

Finally, when evaluating a code, just do that, evaluate the code, trying to understand if it fits your needs and if it offers the functionality you're looking for. If possible, run your tests, and don't take what you find around as an absolute truth, especially if all the details of the study are not provided.

I'd also suggest to leave out from the evaluation the "politics" (discussions on business model, references to a dead thread on the documentation project (it's time to move on!), personal attacks) you might see on this forum from time to time. It doesn't add anything to the discussion on technical aspects of OpenFOAM, and it can be used in the wrong way to influence the choice (you've no way to verify who is actually writing).

Best,

andy_ April 19, 2010 15:57

Niklas:

> When it comes to the solver part I switch to foam, it scales well, is faster then some and slower than others, and
> produces results that I trust.

What is the basis for trusting the results?

> I am the only openfoam user in my group...

Why don't the others choose to use OpenFoam?


Alberto:

> in some cases after being stuck for months with commercial codes, trying to understand why something was not working
> properly.

Industry pays shed loads of money for a commercial code in order for this not to happen. If an engineer is stuck they ring up support to get them unstuck. Why aren't your users doing this?

> I think OpenFOAM has clear advantages if you have to implement new models in the code.

How many users want to do this?

If you are someone that wants to do this, how many are prepared to invest the considerable time to get to grips with relatively undocumented code with a strong case of C++itis?

> I'd also suggest to leave out from the evaluation the "politics" (discussions on business model,

I would suggest that this is rather poor advice. If a user does not understand the business model of openfoam they are likely to become rather confused/upset when the people that matter behave in unexpected ways. Openfoam is quite different from other open source projects like apache, gcc, paraview, vtk, etc... and this is/has been a source of confusion for quite a few trying to contribute to the project and discussing it here.

> references to a dead thread on the documentation project (it's time to move on!),

Ignoring evidence is going to help in making rational decisions?

> It doesn't add anything to the discussion on technical aspects of OpenFOAM,

It contributes to deciding whether openfoam is appropriate for ones needs or not. The technical aspects of openfoam are only one component of this.

niklas April 19, 2010 16:58

Quote:


> When it comes to the solver part I switch to foam, it scales well, is faster then some and slower than others, and
> produces results that I trust.

What is the basis for trusting the results?
Comparing with experiments. I actually made a 'blind' calculation some time ago where I didnt know that we had any experimental data and foam came out on top, significantly better than all the others. I just made sure to set it up as accurate as I could and
hit it hard with a sledgehammer, i.e use a hugh mesh and loads of cpu's.

Quote:

> I am the only openfoam user in my group...

Why don't the others choose to use OpenFoam?
Because they are used to their codes and knows how to use it and as Alberto said, Openfoam has a high threshold to get over.
I dont see any reason for them to switch either. If a user has invested 10 years of
knowledge into a code, they should stick to it. You dont just switch code and start to
produce good results, no matter if you switch to openfoam or something else.

Why didnt you ask why I didnt switch to a commercial code?
I can tell you, for the same reason they dont switch to foam...personal preference.

alberto April 19, 2010 18:39

I answer based on my experience, which is clearly personal and can be different from others.

Quote:

Originally Posted by andy_ (Post 255333)
What is the basis for trusting the results?

I trust the results of a code only if I can see exactly what it does. It is how serious CFD studies are done: you must understand the numerics, the implementation and the details of what is done to keep the solution stable, if any. This is simply impossible with commercial codes: sure there are references to the literature in the manual, but the implementation details, those that make it work, usually, are nowhere (if they were, you could reproduce the code, and it's clearly not that simple with the information provided), and they clearly play a very important role.
If you don't know these things, you are just assuming everything is going right, which might not be the case, and you start producing colorful pictures. :)

In other words, I'm saying you have to re-verificate and re-validate even commercial codes for your application if you really want to trust their results.

Quote:

> in some cases after being stuck for months with commercial codes, trying to understand why something was not working
> properly.

Industry pays shed loads of money for a commercial code in order for this not to happen. If an engineer is stuck they ring up support to get them unstuck. Why aren't your users doing this?
Yes, that's the theory. The reality is not always that simple for various reasons:
  • Support is not always able or willing to answer to your questions when it comes to commercial codes.
  • Sometimes who did the actual implementation work left the company, and who is answering you has no direct experience on the implementation.
  • Other times you are redirected from one person to another, get incomplete answers if you need to know details which are essential for your work but the code producer doesn't want to share.
  • Some other time it seems the problem you're facing is not understood (clearly it can be a communication problem on both sides, not necessarily of the code vendor only).
Don't get me wrong, I'm not saying support is bad in general. It is of great help in many situations, but it might not get you unstuck, independently from the amount of money you pay.
If you know what you have to do, and a CFD engineer should be in that position (we should probably start a separate thread on what a CFD engineer should know though :)), it is often easier to put hands to the code, and do it than waiting for someone else to try to do it for you.

Quote:

> I think OpenFOAM has clear advantages if you have to implement new models in the code.

How many users want to do this?
I think it really depends on what you have to do. If your job is making a code run for standard applications, you have no or a limited need for that, and probably don't care of having access to the code.

If you need something more sophisticated than what the standard CFD can do, and it is the rule in many industrial and research applications (multiphase flows, population balances, combustion, ...), you most likely need that.

Quote:

If you are someone that wants to do this, how many are prepared to invest the considerable time to get to grips with relatively undocumented code with a strong case of C++itis?
It again depends on what you have to do. If you need to implement an advanced model, you have to know how to code whatever package you use, and frankly a CFD engineer must know how to do that.
For example, a famous commercial code allows personalized functions to be written in C, with their own macros to simplify the job, but you still have to know how to deal with your part of the code if you want to make it efficient. You also need to deal with pointers and quite specific programming details (like threads, domains, subthreads, ...) if you need to use certain models.

This said, once you have to add a model to a commercial code or to OpenFOAM, you have to code, and the time it takes is comparable.

I would add that in companies many take advantage of training courses for commercial codes. Why shouldn't they take advantage of training course for OpenFOAM, if they want to use it, since they already save a lot of money on license costs?

Quote:

> I'd also suggest to leave out from the evaluation the "politics" (discussions on business model,

I would suggest that this is rather poor advice. If a user does not understand the business model of openfoam they are likely to become rather confused/upset when the people that matter behave in unexpected ways. Openfoam is quite different from other open source projects like apache, gcc, paraview, vtk, etc... and this is/has been a source of confusion for quite a few trying to contribute to the project and discussing it here.
I think, it's good advice when the discussion is about the quality of the code. In addition, I'm not sure that clarifying the business model of OpenCFD(r) is our work, as they actually do that on their website very clearly.

Quote:

> references to a dead thread on the documentation project (it's time to move on!),

Ignoring evidence is going to help in making rational decisions?
Ignoring evidence is not useful to decide, but that thread is only partial evidence. That discussion has been abused by some (see repeated attempts to hijack it) and can be too easily used against OpenFOAM, even when it is not the case. I've been a widely involved part in it, and I would be very careful myself to reference it, simply because it really represents one accident, not the whole story.

OpenCFD is committed to keep the code open and free, and offers commercial support and training for it. We can disagree on some point, it's normal I would say, and it will happen again probably, but they still develop/maintain the code, and they fix bugs often in real time (does your commercial vendor do that? ;)).

Best,

elvis April 20, 2010 03:08

Hi,

maybe you should take a look at the presentation from Dr. Moni Islam (Audi Windtunnel Center) at the Open Source CFD International Conference 2009 http://www.opensourcecfd.com/confere...oceedings.html

Slide 16 to 20 are very interesting in my opinon
=>Mr. Islam shows that OF is quite useful for Volkswagen (Seat, VW and Audi) and you will find other Automobil producer using OF as well. Or Bombadier ...

Well in the past there was allways the LAW. You never get fired for BUYING CFX, Fluent or Star.

But many Universities/Companies are limited, that they can not use all their available CPU´s because of the pricemodell of X and Y. Because Software cost are much higher than Hardware cost for them with the pricemodel right now.

alberto April 20, 2010 03:23

Other presentations from the joint work of OpenCFD and FM-Global: http://sites.google.com/site/firemodelingworkshop/

There are very interesting validations studies.

Best,

arjun April 20, 2010 04:35

for me your post does not make much sense. I will only touch few of the points.

Quote:

Originally Posted by alberto (Post 255349)

It is how serious CFD studies are done: you must understand the numerics, the implementation and the details of what is done to keep the solution stable, if any.

why do you care what is done to keep it stable. It is accuracy you should be concerned about. If commercial code is much more stable than an open code, does it not save lot of time and frustration??

your post sounds as if saving time is kind a problem for you.

Further, lot of validation studies are done on commercial solvers too. These validations are the reasons companies spend load of money on them.
If you think those who spend money on commercial code somehow do not understand the gravity of accuracy of solution then you are mistaken.

Just because on some test you did openfoam gave better results does not make it better than other commercial code. (it may make it your choice of code which is subjective thing, but it does not say that comemrical code is less accurate in general).


Quote:

Originally Posted by alberto (Post 255349)

In other words, I'm saying you have to re-verificate and re-validate even commercial codes for your application if you really want to trust their results.

why?? Do you see any serious issues with validation studies done on commercial codes????

Quote:

Originally Posted by alberto (Post 255349)
Yes, that's the theory. The reality is not always that simple for various reasons:
  • Support is not always able or willing to answer to your questions when it comes to commercial codes.

not my experience, here in our places support was very very helpful and this is my experience with all commercial codes we work with.

Quote:

Originally Posted by alberto (Post 255349)
If you need something more sophisticated than what the standard CFD can do, and it is the rule in many industrial and research applications (multiphase flows, population balances, combustion, ...), you most likely need that.

this is the only place i can think that open codes offer something sometimes better than commercial ones.

andy_ April 20, 2010 15:43

Niklas:

> Why didnt you ask why I didnt switch to a commercial code?

I considered it a more interesting check of your viewpoint to ask to see things from the perspective of someone that disagrees with you rather than continuing along the line of your previous post. I had become interested in why both Alberto and yourself had put forward a somewhat weary and unbalanced defence of openfoam that seemed to be at least partially faith based.


Alberto:

> OpenCFD is committed to keep the code open and free, and offers commercial support and training for it.

Committed beyond the terms in the license?

> but they still develop/maintain the code, and they fix bugs often in real time (does your commercial vendor do
> that? ).

My commercial vendor?

I suspect the answer to your question is essentially yes. In my limited experience with the commercial companies, albeit over several decades, they have always acted swiftly to ensure that the code in front of engineers is functioning correctly, in one case they developed significant additional capability and made beta release versions available to meet the needs of an engineer, in another they were prepared to allow controlled access to the source code to implement models. I have never found them to be anything other than open and professional. Perhaps this will change with the large ANSYS market share (I have no recent direct experience) but so long as the licenses remain expensive I would think it unlikely.

elvis April 20, 2010 16:05

Quote:

why do you care what is done to keep it stable. It is accuracy you should be concerned about. If commercial code is much more stable than an open code, does it not save lot of time and frustration??
I came back to the mentioned Open Source CFD International Conference 2009 presentation. In some companies (like Volkswagen) OF is meanwhile the workhorse. The accuracy of Openfoam in their kind of application is really good, backed by windtunnel experiments.
And the solver are fast and stable as mentioned by Dr Islam.

Ofcourse OF is not great for every application out of the box (even if one of the developers believed it at first). =>Hrv Jasak told at a "Stammtisch meeting", that BMW-Oracle wanted him to calculate one of their "typical" test cases, and the first results of the OF simulation were poor, but the later results were okay => but this meant some hard work on the solver by an super expert to get good results in the end.

elvis

alberto April 20, 2010 17:27

Hi Andy,

Quote:

Originally Posted by andy_ (Post 255513)
I had become interested in why both Alberto and yourself had put forward a somewhat weary and unbalanced defence of openfoam that seemed to be at least partially faith based.

Hmm, it wasn't really my intention to give that impression.

I've been saying all the time I use both commercial and open codes (OpenFOAM, MFIX), and that the choice depends on the specific needs. I personally use almost only commercial meshers too, since I find them easier and of higher quality than open meshers.

Why do you think what we wrote is based on faith instead than being an opinion based on results and experience? We use these codes for our work, which is in. We didn't really say open codes are perfect, that you should absolutely use them or that they fit all the use cases. We perfectly know it's not true, as we know it's not true for commercial codes.

Quote:

> OpenCFD is committed to keep the code open and free, and offers commercial support and training for it.

Committed beyond the terms in the license?
Isn't it enough to be committed in accordance to the license?

Quote:

> but they still develop/maintain the code, and they fix bugs often in real time (does your commercial vendor do
> that? ).

My commercial vendor?

I suspect the answer to your question is essentially yes. In my limited experience with the commercial companies, albeit over several decades, they have always acted swiftly to ensure that the code in front of engineers is functioning correctly, in one case they developed significant additional capability and made beta release versions available to meet the needs of an engineer, in another they were prepared to allow controlled access to the source code to implement models. I have never found them to be anything other than open and professional. Perhaps this will change with the large ANSYS market share (I have no recent direct experience) but so long as the licenses remain expensive I would think it unlikely.
I put a smiley next to the question :D

I have a limited experience with support services too, and it's generally good. I saw cases when it wasn't positive though: one commercial code some year ago was released with a serious bug (the no-slip condition at walls wasn't enforced in one model). The fix came in the next release (almost 1 year later). Same thing about another submodel, in a Lagrangian module.
Just to be clear, I don't want to generalize this, they are specific and limited cases, of course, but I don't believe the support service (also of open codes) is always perfect and can get you unstuck in all the situations, as it was written. If it were that way, people wouldn't look for alternatives.

Best,

eugene April 21, 2010 05:18

I don't normally take part in these kinds of discussions – each person’s view on the code they prefer tends to be inflexible and I guess I am no exception (so please don't tell me how biased I am).

I have some experiences I would like to share on why organisations might want to switch to an open source cfd code. I have personally been involved in the roll-out of OPENFOAM to several major companies. In my experience the main reasons for switching are: cost, scalability and flexibility. Accuracy, reliability, speed and ease of use are relatively easy to improve within the context of a few specific applications to the point where they match proprietary codes. It is much harder to get your proprietary code vendor to reduce cost, improve scalability (and by this I mean running more jobs concurrently, not parallel scaling) and increase code flexibility.

Obviously, there are down sides to OPENFOAM too - the main one being that the upfront cost (at least for now) can be much higher. However, if you have the resources to take a long term view, then this becomes much less of an issue. Open Source will eventually allow you to do much more for less and you can tailor the code to your specific needs. This means that Open Source is probably not for everyone - it is much more suited to doing a narrow set of cases a lot than doing many different things infrequently.

To get back to the original question, I do think that taken as an average over all applications accuracy and reliability is currently lower for OPENFOAM than for the top commercial solvers. The beauty of OPENFOAM is that you can improve both these criteria for your application to the point of parity in a well spent afternoon and you can take advantage of everyone else’s afternoon efforts to boot.

andy_ April 21, 2010 07:10

Alberto:

> Why do you think what we wrote is based on faith instead than being an opinion based on results and experience?

Because it was not balanced. An example in this post: "one commercial code some year ago was released with a serious bug (the no-slip condition at walls wasn't enforced in one model). The fix came in the next release (almost 1 year later). Same thing about another submodel, in a Lagrangian module."

There seems to be a piece of information missing because any software company that did this to an industrial company that is paying full whack for support would very soon have no customers paying for support. So is the software cheap without normal support?, an academic deal with little/no support?, an ex-company?

>>> OpenCFD is committed to keep the code open and free, and offers commercial support and training for it.
>> Committed beyond the terms in the license?
> Isn't it enough to be committed in accordance to the license?

I am picking up on the "OpenCFD is committed to keep the code open and free". Perhaps it is, I have not looked, and so I was asking for something to support the statement. The license only applies to the code in the past.

Initially giving things away to build a potential customer base and then either adding closed extensions or even closing the whole of a enhanced next version has a history. There is nothing wrong with doing this unless you have said you will not.

To me, the current business model of gratuitously difficult to use and unreliable code to attract paying support/extensions does not look sustainable. It runs the risk of getting forked and turned into a "normal" set of code which can work with normal project management tools, normal documentation, normal quality control, normal interaction with scripts, normal etc... None of this requires specialist knowledge only a bit of common sense and the time/funding to do it. Given that OpenCFD has created the current set of code/documentation and resisted attempts over the years by a bunch of PhD students to move it in a more "normal" direction would you as a potential sponsor of such a move hire OpenCFD or fork it, hire someone else and run the project in a less closed manner?

OpenFOAM is an interesting project and the people behind OpenCFD are giving it a go and good luck to them. I only tend to curse when I try to work with the wretched code.

alberto April 21, 2010 16:24

Quote:

Originally Posted by andy_ (Post 255612)
Alberto:

> Why do you think what we wrote is based on faith instead than being an opinion based on results and experience?

Because it was not balanced. An example in this post: "one commercial code some year ago was released with a serious bug (the no-slip condition at walls wasn't enforced in one model). The fix came in the next release (almost 1 year later). Same thing about another submodel, in a Lagrangian module."

I think I used more conditional statements and smoothers in my answers than in a grammar book chapter on the topic, and surely more than in a friendly chat (we are doing that, right?). :D

Unbalanced is claiming that commercial codes are necessarily better in general, as an absolute truth (of course the opposite applies too). If it were that way, we would not be here to discuss, since we all want to use tools that work.

Quote:

There seems to be a piece of information missing because any software company that did this to an industrial company that is paying full whack for support would very soon have no customers paying for support. So is the software cheap without normal support?, an academic deal with little/no support?, an ex-company?
Standard support. The problem in the CFD market is that there are two major players, and the competition is very low. If you invested in one code, you simply don't switch because the support did not reply to your questions or fixed your problems. You are stuck.

I see this as one of the most important motivations behind the interest the industry is showing towards open codes, of course together with the significantly lower license costs.

Quote:

I am picking up on the "OpenCFD is committed to keep the code open and free". Perhaps it is, I have not looked, and so I was asking for something to support the statement. The license only applies to the code in the past.
There is no sign pointing in other directions, and OpenCFD (as Wikki, to be fair) has over the years released tools developed during its support activity (examples: fireFoam, tecplot converter, snappyHexMesh, object functions, molecular dynamics and dsmc solvers, ...). The development is not open, but that's a respectable choice, even if we disagree.
Their position has been further clarified their position on their website.



Quote:

To me, the current business model of gratuitously difficult to use and unreliable code to attract paying support/extensions does not look sustainable. It runs the risk of getting forked and turned into a "normal" set of code which can work with normal project management tools, normal documentation, normal quality control, normal interaction with scripts, normal etc... None of this requires specialist knowledge only a bit of common sense and the time/funding to do it.
The business model is quite frequent in the open source panorama, with a good number of success stories, and a good number of failures. It all depends on the added value you offer.

You keep saying the code is unreliable. Why? It is harder to learn, and does not have a graphical interface. It requires you to know what you are doing in terms of choice of the model, numerical setup and case configuration, but this does not mean it is unreliable. It simply means you have to actually understand what you are doing.
On the other hand, I would say it is a code that doesn't hide anything to you: the physics is there, the numerics is there. It won't play tricks just to give a result no matter what, and it won't fix your mistakes. Is this being unreliable? Or does "reliable" mean "tolerant to user's mistakes"?

I would consider OpenFOAM a library for CFD. Solvers are examples of what you can do with the library. Some of them are standard (single-phase flow codes), some are very refined (VOF codes to cite one case), some other are not that good (Euler-Euler multiphase codes, for example).

Quote:

Given that OpenCFD has created the current set of code/documentation and resisted attempts over the years by a bunch of PhD students to move it in a more "normal" direction would you as a potential sponsor of such a move hire OpenCFD or fork it, hire someone else and run the project in a less closed manner?
There was one attempt that had problems, not hundreds. The other attempts (-dev/-ext) are well and alive.

To answer to your question, I would try to find a deal with OpenCFD and, if this doesn't work, I would consider alternatives. It is a very basic guideline also other contributors try to follow. It is respectful for the work of the developers, it tends to reduce the duplication of efforts, and it has the positive side effect of reducing conflicts.

Best,

forsumit April 22, 2010 15:44

Some Queries
 
1 Attachment(s)
Hello Arjun,

I was reading some of your post and it seemed to me, that you might be able to help me. I had two question

a) I was curious to check out your code (iNavier), which I have tried to install on my desktop, I am using windows-XP but I always get the message "iNavier can not be installed on windows-2003 server".

b)Second thing is some what more technical, I am trying to solve shallow water equation using finite volume method using collocated grid method. But there are some terms on which I am not sure how to apply Gauss integral. Please see the doc attachment for my question in little detail

Any and all help is greatly appreciated.

Thanks,
Sumit

arjun April 22, 2010 16:45

Quote:

Originally Posted by forsumit (Post 255965)
Hello Arjun,

I was reading some of your post and it seemed to me, that you might be able to help me. I had two question

a) I was curious to check out your code (iNavier), which I have tried to install on my desktop, I am using windows-XP but I always get the message "iNavier can not be installed on windows-2003 server".

b)Second thing is some what more technical, I am trying to solve shallow water equation using finite volume method using collocated grid method. But there are some terms on which I am not sure how to apply Gauss integral. Please see the doc attachment for my question in little detail

Any and all help is greatly appreciated.

Thanks,
Sumit


the figure you posted looks like standard diffusion operator and usually descretesized by CDS.

Anyway if you can write down equations in a document along with their boundary conditions, i will let you know if you can solve them with inavier or not.

In fact if it were possible most likely i would add them into new inavier on this weekend.
I was anyway looking for an example problem to show that how someone can use inavier in his her c++ code.

the way new inavier is written, you can use it as external liberary to solver general transport equations (with or without navier stokes).
(pure advection is still not added, i am trying to figure out how to implement cicsam , so it will take some time)

please send me email to arjun.yadav@yahoo.com

(june first week i will put new version online, i need to prepare documentations, plus stupid sst k-omega seems to be giving very different results from fluent so need to figure out whats wrong with it).


edited to add:

about your first problem, inavier code is given as visual studio code, if possible compile it again on your machine. (if i remember correctly)

arjun April 22, 2010 21:10

Quote:

Originally Posted by forsumit (Post 255965)
Hello Arjun,

I was reading some of your post and it seemed to me, that you might be able to help me. I had two question

a) I was curious to check out your code (iNavier), which I have tried to install on my desktop, I am using windows-XP but I always get the message "iNavier can not be installed on windows-2003 server".

b)Second thing is some what more technical, I am trying to solve shallow water equation using finite volume method using collocated grid method. But there are some terms on which I am not sure how to apply Gauss integral. Please see the doc attachment for my question in little detail

Any and all help is greatly appreciated.

Thanks,
Sumit


well i downloaded some pdfs and read about shallow water equations.
It would need little bit more work to get it working but if it is useful, we can create shallow water solver for it. If you let me do the code writing it won't be difficult i guess.

send me email , it would be interesting to work on.

linnemann April 23, 2010 05:52

Hi all

I see the discussion is being taken onto a parallel branch of its own. :)

I just wanted to put in my two cents. I have experience with a couple of commercial codes and have even been on some training session in them.

Specifically I had switched to a new company which employed another CFD code than I was used to. So onto an introductory course for good measures. To my surprise the introductory course was about pointing an clicking held by people clearly not able to answer all my deeper question to the code.

At the same course were a couple of other people from the industry and they had no prior knowledge to CFD and the numeric behind it.

So I asked them (teachers) why they held a course on how to use the program before they (attendees) even knew what CFD was. The answer surprised med a lot since they stated that "people would be scared of CFD if they had to know the theory behind it". Ok so they want to sell licenses, well that's fair enough.

In my eyes this equals giving an infant a loaded gun with the safety turned off. If people blindly trust the results and pretty colors, without knowing the limitations of eg. a k-e model, upwind scheme, they could be designing structures/devices that could be potential time bombs.

I know most company's have validation steps an so on to prevent this, but still. This again comes down to "what should a CFD engineer know" and that's a though question to answer. I would say more than most of the people here in the forum, when they put "help me im a noob" as a thread title.

In my opinion I feel the commercial codes are producing fair results, but often they are closing and open doors (doors I do not want to open/close) in order to create stable (residual) results.

So If you want complete control use OpenFOAM because what you read in the theory, that might crash a case, will happen in OpenFOAM. You might see this as a downside, but for me it is a way of constantly make sure i use the right mesh/schemes/solver to produce the most correct results.

For example I know some of the codes have started to include features that disables solving on problematic cells. I, for one, do not want this (I can disable it I know).

So instead of going the commercial way I have introduced/implemented OpenFOAM for the problems we have. Cases which like Audi, VW are much alike.

So I have to agree with Eugene when he says that OpenFOAM scales (in number of cases run) better than commercial because you are not limited by licenses. Do not think that OpenFOAM necessarily is free, if you want you can by support contracts which are often cheaper than a single commercial license. We have such a contract and it has helped us a couple of times, but mostly in the implementation phase.

If you do many different cases such as combustion on day, free surface the next, multiphase flow the third. I would recommend going commercial since the setup time will be faster.

Although if you like me have a couple of years experience using OpenFOAM it wont take you that long to setup for a different physical problem.

Ok so you are missing a feature/solver well go out an get one of the many consulting companies which specialize in OpenFOAM to do the implementation for you, or do it yourself.
We have done this (first approach) and it was much cheaper/faster than having one of the commercial companies do it (which by the way also didn't have the feature).

You might now think "What a fanboy", well you might be correct, but you might find yourselves in the same position in a couple of years time if you happen to go through something similar as me.

I believe that people doing CFD should know the theory behind it. That no "right" CFD package exists, only one that fit your needs. So the discussion is really not on commercial vs open source. It is in how you implement and use it and if it fits your specific needs.

No CFD code is free, in my opinion, you just switch the expenses from licenses to support/features. The price tag will be different and the number of cases you can run simultaneously. In the end you will end up with a result which is what you wanted in the first place, open or not. And it is up to you to validate the accuracy of this result, you are in control.

I will although say that if one has only tried commercial or OpenFOAM you owe it to ourselves to try the other (if you have access to both). This way you will have the possibility to make your own evaluation without anyone influencing you.

I have no problems with biased input (and neither should you) because it just shows that the code does what they need and that they are satisfied with the results. It is up to you to filter the input much like you do in literature studies.

Probably my longest answer to anything yet :p

holger_marschall August 25, 2010 12:56

Hi,

why has the last post been deleted?

best regards,

mbeaudoin August 25, 2010 14:20

Hello Holger,

I did also received a prior message from this thread this morning.

The message was posted by chrisadam12, but it looks to be a dupe from a message previously posted by Andy_ on April 19, 2010, 05:10.

Maybe this is a glitch from the Forum software.

Best,

Martin


Quote:

Originally Posted by holger_marschall (Post 272726)
Hi,

why has the last post been deleted?

best regards,


alberto August 25, 2010 15:17

Same here. Searching by nick, that user does not seem to exist though.

Best,

akidess August 26, 2010 05:48

I (and possibly other people) flagged that message as spam. It was a copy of post nr. 2 on this thread by a new user, and all that was added was a signature with a link about search engine optimization.

- Anton

alberto August 26, 2010 09:21

Thanks. :)

nileshjrane September 4, 2010 22:24

@linnemann

Well said..:) i agree with you..everyone should try both ways and then decide for the better for their own good. I have used commercial softwares, research codes and now openFoam. Personally i find that every thing was good at its own place. Everything is better for something. Otherwise it wouldn't have existed at first place.

I see people who have no academic CFD background playing CFD engg in industry after doing some 6 month diploma course in some commercial software. (I have had this same experience of seeing naive people in so called "advance user training" of a leading commercial software..:D:D).

On the other hand, open source softwares lack user-friendliness, at least in the initial part of their use. I am really struggling to get going with open source things. Its really an uphill task to figure out how to use a tool in the best way possible without proper documentation or help. But i also find it a challenging and interesting task to learn all these things. If you have time and interest then there's nothing like it. (today only i finished making a mesh using blockmesh in 3 days (my 1st mesh in blockmesh), same mesh i can make within an hour or two in a commercial meshing package, but then it would have never felt so good that way...:cool: All personal preferences..)

There is no single accurate route in CFD, no universal thumb rules. So no one code/software can be better than other in every respect. Each one gonna have some pros n some cons. Anyway, the one which is not good enough will perish eventually. So why don't we let the time decide which thing is better?? Till then we should only decide what is better for us rather that what is best for everyone.

Personally i think that knowledge should be free...exploring new things is the ultimate human quest..i think it better be done together..openly and freely..:)

marupio May 16, 2011 09:56

What many people don't realize is OpenFOAM is "paid software"... it is commercially funded. There are two independent companies who fund its development through their consulting and training activities. There is a world of difference between commercially funded opensource software, and volunteer-based opensource software.

alberto May 16, 2011 11:02

Quote:

Originally Posted by marupio (Post 307804)
What many people don't realize is OpenFOAM is "paid software"... it is commercially funded. There are two independent companies who fund its development through their consulting and training activities. There is a world of difference between commercially funded opensource software, and volunteer-based opensource software.

As many successful open source projects... Being commercially funded has not positive or negative implication per se. For example, I think that up to now it had more positive than negative implications for what concerns OpenFOAM, since it ensured the project keeps going on and it is well maintained. Of course there are project that do the same only with volunteers, but it is often much more difficult.


All times are GMT -4. The time now is 04:22.