First Step in Selecting Modeling Software
What is the first question a researcher asks when he needs to select modeling software?
I have heard it over and over again from the engineers who were co-workers and customers :
“Exactly how many modeling software options are out there?”
“Which of them are actually worth evaluating?”
“Which modeling solution will really satisfy my needs?”
The number of options is virtually limitless. There are numerous open-source and freeware codes (NASA equilibrium, KIVA, FlameMaster, Chemkin II, etc.) that have been modified, edited and changed to create various customized versions.
The good news is that once you undergo the process of analyzing your problem, identifying modeling solutions and evaluating an assortment of software options, you are usually left with only one or two choices.
How did we go from hundreds of possibilities to only one or two software packages?
To answer this question, let us take a look at this scenario. Consider yourself a materials engineer developing a new coating process for micro-chips. Because you want to determine what variables control the thickness of the coated surface, you decide to supplement your laboratory experiments with modeling. Unlike the lab, modeling would allow you to run many more computer experiments and thus test your theories in a significantly shorter amount of time.
Now you just need to buy or download a software package or write your own code. First, you need to specify your needs and requirements. For example:
1)You decide that your software has to handle surface chemistry up to 30 reactions – the number of reactions in the chemical mechanism that you have available.
2)The chemistry will be very stiff due to surface chemistry processes and relatively large amount of reaction steps, so two or three dimensional models probably will not do.
3)For your specific coating process, the convective processes can be neglected near the surface, which again rules out multi-dimensional codes.
4)In addition to your research work, you are also a manager but, unfortunately, two of your key people are on vacation, so you are quite overworked. You need results, and you need them fast. This rules out writing your own codes or downloading freeware or unsupported software.
You are left with 0 and 1-D commercially supported, modeling software. Commercial support will allow your team to quickly get up to speed on running the software. Currently, there are two companies that provide this type of commercial product that can handle surface chemistry. Through this type of elimination process, you have just narrowed your software options from hundreds down to only two. As you look more closely at your chemical mechanism and geometry requirements, you will easily be able to narrow those two choices down to just one.
Here is another example. You are simulating turbulent combustion in a turbine. You are looking for customizable software, since you enjoy playing around with code and are well versed in Fortran and C++. You are the only engineer that will have to run the software of your choice for the next two to three years.
Your company has licensed open-source Chemkin II software from Sandia National Labs ten years ago, and you have access to open-source KIVA CFD code. In this instance, one of your options might be coupling these two codes in order to combine the best solvers for detailed chemistry with the modeling of 3-D turbulent effects. As another option, you might look at an open source FlameMaster code from professor Pitch at Stanford, who specializes in turbulence models and detailed chemistry.
Under these circumstances, you are probably looking for very flexible software that will not be shared by many others in your group, since the downside of open-source codes is that they require an in-house expert to maintain the code and teach others how to use it. Thus, you have determined the exact type of modeling program you are looking for.
The first step in choosing a modeling program is defining the problem and determining what tools are currently available. And each decision making process focuses on one universal idea— the importance of selecting the right software for your individual needs. Then once this software is chosen, the result will most likely be successful computer experiments that produce consistently accurate and reproducible results.
Enjoy reading and feel free to comment on any of the posts. I look forward to having you as a frequent guest to this site.
Masha Petrova
Founder and CEO of MVP Modeling Solutions