Simple, Portable Physics Simulations
ttsiod writes "I want to 'lure' my nephews/nieces towards Science and Engineering (to whatever extent that's possible, in the age of consoles). To that end, I have coded simple physics simulations, like falling snow, exploding fireworks, and 1D/2D wave simulations. My efforts are here, in the form of portable SDL mini-programs (GPL code, compilable under Windows, Linux, Free/Net/OpenBSD, Mac OS/X and basically every OS with GCC and SDL). Try them out, and do offer any suggestions on other programs that can trigger scientific interest in young minds. Myself, I am teaching them Python, so that they can code 'fireworks' on their own."
I seriously have to ask : what does a 1-Dimensional wave look like????
"DRM is like the Ford Pinto: it's a smooth ride, right up the point at which it explodes and ruins your day."-C.Doctorow
Phun has already been suggested and it's good. another good game is garry's mod. http://www.youtube.com/watch?v=Ae6ovaDBiDE with the two addons (PHX and wire that 90%+ people have) its possible to program inside the game. check out wiremod.com/forums to see what's possible.
You might want to take a look at NetLogo (http://ccl.northwestern.edu/netlogo/). To quote the documentation: "NetLogo ... comes with a Models Library, which is a large collection of pre-written simulations that can be used and modified. These simulations address many content areas in the natural and social sciences, including biology and medicine, physics and chemistry, mathematics and computer science, and economics and social psychology."
The models demonstrate some nice concepts and are easy to modify and a great source of material on how to implement your own models (see http://ccl.northwestern.edu/netlogo/models/ and scroll down a bit for the list).
Phun is great too...
Simulations that are useful for learning must be grounded in reality. They must give the learner a chance to extrapolate principles from their own personal hands-on observations to the simulation.
Without original personal observation of physical phenonema, simulations are little more than 'das blinken lights' to the learner.
Don't get me wrong, the stuff offered by the OP is good. And if the kids in question already have an interest in the subject, its great.
But to spark an original interest takes hands-on, thought provoking experiments that the learner may manipulate in any way they wish (some of which you probably never thought of).
Example. Electromagnetism. My 8th grade grandson (yup I'm an old geezer who cut my teeth on vacuum toobs and RTL) learned a lot about the interplay between electric and magnetics fields just today. I suspended a magnet on a string, over an aluminum plate, and just left it there for him to find, and play around with. After he had done so, he asked why when the plate was present the pendulum swiftly assumed a stable position, whereas when the plate was absent the pendulum assumed a rather chaotic motion... even though the magnet was obviously not attracted to aluminum.
After explaining it to him and allowing him to further explore the physics with magnet wire and batteries, he came away with a firmer grasp on electromagnetism, a grasp I highly doubt he would have gotten from a canned simulation. Now that he has made a connection in his mind between the seen (magnetic damping of the pendulum motion) and the unseen (electrical currents in the aluminum plate, and the ensuing magnetic field), a simulation would allow him to further explore the subject without requiring expensive laboratory equipment.
So, Kudos for the work, but you have to get out there and actively, physically engage them with hands-on experiments. After, that is really what science is about!
My 10 year old showed this to me : http://dan-ball.jp/en/javagame/dust It is not exactly physically accurate, but it is really pretty cool and fun, and much more accurate than I expected.
And can I say fast for what I thought one could get from Java.
Want your kids to learn physics? Throw away the computer simulations. Build things with them. Run experiments. Observe and think about the results.
To teach physics, start with things like C-clamps, string, rubber bands, wire, springs, low-friction carts, compasses, magnets, thermometers, balloons, weights, scales, and pulleys.
More advanced stuff: a voltmeter/ammeter (analog stuff), an old oscilloscope, an air table (a kids' hockey table), vacuum pump & bell jar, countdown timer/photogate, etc. Many of these things show up on craigslist for cheap (I picked up two free oscilloscopes and have given them to my sharp high school students).
Computer simulations? Naw. Have your kids do real physics:
A pendulum made of a bowling ball and rope. Time the pendulum swings and then ask: which will change the period - changing the lenghth of the swings, changing the weight, or changing the length of the rope?
Fool around with a signal generator, an oscilloscope, and a microphone. What's a sound wave look like? How is frequency related to period?
Play with thermometers, ice, water, and fire. What's the temperature of ice and water? Can you get water colder than this? How hot is water from the kettle? Can you get water hotter than this?
Get a voltmeter, wire, and some magnets. Can you really induce a voltage by moving a magnet nearby?
Don't sidetrack your kids with simulations & computer graphics. Real physics starts by fooling around with reality.
Obs Feynman quote: "It doesn't matter how beautiful your theory is, it doesn't matter how smart you are. If it doesn't agree with experiment, it's wrong."