Friday, March 30, 2012

VPython Bouncy Ball - Conclusion

I was surprised to get a little resistance from students about doing programming
with Vpython. I think the challenge of modifying code on their own was a little at this late stage in the game. Nevertheless, I had them create short videos explaining what they did. I was rather pleased with what they did, but now know that I will have to start programming much earlier in the year.

Just to recap what the assignment was from last week
1. Students are given a bouncy ball and drop it from a given height
2. They measure the rebound height
3. They modify a Vpython code of a ball to 
    - incorporate bouncing (this is not correctly stated in the video. They actually came 
       up with the bouncing code, I did not.
    - run the program and predict how high the ball should rebound on the second, third
      and fourth bounce
4. Explain the physics behind their modified code.


In the video below students actually drop a ball to determine if their code predicted the bouncing correctly.

Students drop ball


This is one of the video blogs done by a student explaining the work they did.

Video Blog of Finished Code


Again, this is a first pass at having students program, but a necessary step in introducing them to computational physics.


Sunday, March 11, 2012

Week 2 - (3.5.12)




This week, I decided to get the AP physics class onto the laptops to begin a project in visual python (vpython)

We are beginning a unit our unit Newton's Law of Universal Gravitation.  Since it is hard to do experiments on an entire solar system, I want to see if we can get the students to program particles interacting via the gravitational force, and perhaps see if they obey Kepler's Laws.


To get started I decided to give the students a simple inquiry based problem:




The students started with a real bouncy-ball. They dropped it from a given height and then calculated its rebound velocity.

The challenge problem that the students are to solve is to program  a simulation of a bouncing ball that models the real one they've been given. They are to reproduce the first bounce in their program, predict how high the ball will bounce in the 5th, 6th and 7th bounce.






To get there, I had them go through a tutorial in which they learned the basics of the language.


I then gave them some code of a ball dropping, that they will modify using the tutorial code to bounce.


This is my first time having students use Vpython in the class, so we will see how it goes.