Best OSS CFD Package For High School Physics?
RobHart writes "I am teaching a 'physics of flight' unit to grade 11 Physics students. Part of the unit will have the students running tests on several aerofoils in a wind tunnel. I also want to expose them to a Computational Fluid Dynamics package which will allow them to contrast experimental results with those produced by the CFD package. There are a number of open source CFDs available (Windows- or Linux-based are both fine), but I don't have much time to evaluate which are the simplest to use in terms of setting up the mesh, initial conditions, etc. — a very important issue as students do not have much time in this unit." Can anyone offer insight about ease of use for programs in this niche?
I agree that CFD would be something nice to teach a high school student. However, unless this is an AP course, CFD is just too complex for high school students. Most people don't learn CFD until grad school.
One of our competitors trademarked the term "hypothesis". From now on, we will call them "boneheaded ideas".
Check out openFOAM. You might find that it meets your needs.
"Software is the difference between hardware and reality"
I like Code_Saturne. It has a GUI that greatly simplifies the whole process. You can use SALOME to make the initial model and then mesh it, and also use it to visualize the results. All of these programs come precompiled on a live Linux distro called CAElinux. http://www.code-saturne.org/ http://www.caelinux.com/CMS/ http://www.salome-platform.org/ In any case, check out CAElinux. It's going to be the least hassle out of any of your choices because everything comes precompiled.
As an aerospace engineering PhD, I can tell you that CFD with mesh generation, turbulence model selection, numerical method selection, etc. is definitely above the level of your typical 11th grade student, even a gifted one. At best, you could have them run OpenFOAM tutorial cases, though it is highly doubtful that they would understand what is actually going on and would be able to say little more than "I've run a CFD code before, but I don't know what the results mean" at the end of the experience. There are number of panel-based aerodynamic analysis tools that would be appropriate, and of them, I'd say XFOIL is your best bet.
I like the idea of exposing your students to CFD packages, particularly the variation between experimental results & results off of a theoretical model. My concern would be that mastering a CFD package (or even become a basic user of one) is pretty time consuming. As others have pointed out you usually don't touch CFD packages until late undergrad or grad school.
Consider building the models yourself and running them as a demonstration rather than asking your students: They get the benefits of seeing what the software can do & being able to reference the theoretical data generated, but won't have to deal with the frustration/learning curve of CFD software.
If there's an interest you can offer an extra credit project where students design (or modify) a mesh & report the results.
/~mikeg
Just because they don't have the mathematical background to fully understand the models, doesn't mean that it is worthless to expose them to the concepts. Playing around with flow simulations and seeing how changes in geometry affect flow is fun, and can give them a feel for the basic concepts of aerodynamics. It will make the class more interesting, and encourage them to pursue physics or engineering as a career.
Basically, this is similar to XFoil, which is the standard 2-D CFD software for beginning Aeronautical Engineers (after they made us write our own...in FORTRAN77).
Since it is not 3-D, it runs MUCH faster and lets them discover the basics of pressure over an airfoil, which is the important part of wing design. The details of taper, sweep, tip shape, twist, and such are a bit too much for a high-school project. Surface area and aspect ratio are the simplest and most important criteria for airplane design. These values can be calculated on paper after coefficients of lift and drag are generated.
Javafoil can be run stand-alone or in an applet. It's free, and fairly straightforward to use.
Best of luck. I'd be interested to hear how quickly they catch on to the concepts.
http://www.mh-aerotools.de/airfoils/javafoil.htm
I've taught computational fluid dynamics and molecular dynamics workshops to university faculty members and can say this: You need to setup the examples for them to play with BEFORE class. There's really no such thing as an easy to use CFD or MD package, especially when looking at what it takes to setup initial conditions. I would strongly recommend that you do a good deal of the leg work, especially for participants that do not have the mathematical background or a background in fluid dynamics, period. It will only help you in the end.
This link will take you to lists of free and free-to-academics CFD codes, but the free ones are really, really bare bones in a lot of cases when it comes to UI. I would not turn high school students loose on these codes without pre-determined examples.
Are you looking for real CFD software for pressure distributions or are you looking for something that returns lift, drag, side and moments?
On the CFD side: OpenFOAM. Learning this is quite a bit of work because you need to work with meshing, boundary conditions, etc. But I would be very surprised you really want flow visualisation.
For loads: XFOIL or AVL (Athena Vortex Lattice, http://web.mit.edu/drela/Public/web/avl/). AVL allows 3D visualisation of loads, perturbations, etc. When it comes to a first iteration in aeroplane design this is first thing we use in academia and is quite nice. XFOIL is 2D and is used for analysis on an aerofoil. Both allow arbitrary geometries, but I believe both are strictly for inviscid flows.
What theories in particular are you trying to validate?
GO BLUE!
I will be getting my PhD in Computational Engineering in August, and as a former university, high school and middle school math teacher, there are things that can be applied to teaching young students about CFD without them having all the mathematics background they need. I am the STEM outreach coordinator at the SimCenter, and I have a website http://www2.utc.edu/ which includes an Euler solver on a NACA 0012 airfoil with changeable parameters for students to study the various solutions based on mach, angle of attack, etc. It also does grid adaptation. There is a graduate student tutorial and a high school student activity. I have used it with precalc, calc, and physics students at local high schools. Please feel free to contact me at vincent-betro@utc.edu for anything else I can help with. Vince P.S. Another good (and longer running) package can be obtained from NASA Lewis and can be run on any platform: http://www.grc.nasa.gov/WWW/K-12/airplane/foil2.html. Good luck!
If you're looking for an airfoil simulator, you might try NASA's FoilSim II. "Elementary," student, and undergraduate versions are available, and the non-applet download gives an even more complete version that allows file output. While it's not a full CFD package, it may be good enough for an introduction to airfoil analysis. And while it's not open source, it is free and in the public domain (since it was government produced).
Also, if you're generally looking for open source physics simulations, you should check out Open Source Physics at http://www.compadre.org/osp/
In particular, a brief search there yielded the Tracker Air Resistance Model - a level appropriate simulation that lets students explore the air resistance of falling coffee cups with both viscous (linear) and drag (quadratic) models.
Nearly all of the OSP items have the source code available for modification of the models.
Dance like no ones looking and love like it's never going to hurt.
Yes, I know this is Slashdot, but you got the first post and the first thing I read when I clicked on the to read comments is your somewhat counterproductive answer.
I would imagine that the instructor has already decided that the topic would match the students. If it were a regular level course, then it's likely he'd show a video on the topic and it would be good enough. Instead he's chosen to broach the math involved by attempting to simulate a fluid dynamics scenario.
In short, instead of assisting the teacher in his attempt to try and broaden the minds of ambitious youngsters, it almost appears that you're simply recommending that he stops doing his job, packs up and maybe instead teaches ABCs and 123s.
Let's face it, if he's a teacher who is "qualified" to teach a topic like computational fluid dynamics, I'd imagine that he wasn't hired to teach just the average "who gives a shit" student. There are enough useless teachers who wouldn't bother out there already. This guy at least makes the effort of trying to figure out how he can best accomplish the task of teaching a complex subject.
Please don't EVER!!!! stop an ambitious teacher from attempting to educate ambitious students in the future. Especially not under the premise of suggesting that it shouldn't be done.