Wednesday, May 14, 2008

Starting points

http://en.wikipedia.org/wiki/Lorenz_attractor
The Wikipedia page has the relevant equations defining what we need to do, as well as some fun images and graphs. Notably, there are also various links to implementations of the system using graphing software, Java applets, and so on. Nothing in Python, though.

http://www.pygame.org/project/617/
A simple implementation of gravity in PyGame. The equations aren't quite what we need, and the particles don't start with momentum, but it's something to build upon, and it's in the public domain.

http://www.mizuno.org/c/la/index.html
A C implementation with GNUPlot.

Other Thoughts: We were initially attracted to the Lorenz idea because it made pretty loops and illustrated chaos theory. We may very well wind up getting somewhere else once we start this project: a gravity well simulator, an abstract drawing tool, or something else along those lines. For now, we'll look at this straightforwardly, and write something toward our initial goal.

Friday, May 9, 2008

AP Final Project Proposal

Lorenz Butterflies in Python/Pygame

Thomas Doggette, Matt Yeatman

Goal: To create a two-dimensional, graphical representation of Lorenz attractors (http://en.wikipedia.org/wiki/Lorenz_attractor) in Python. The end result would be an animated system with "gravity" and particles, like the applet example at http://www.exploratorium.edu/complexity/java/lorenz.html.

Wednesday, February 20, 2008

20 Feb 2008

Posted on the blog, discussed the API, got the latest version. The action is over on xoexperience.blogspot.com .

Thursday, February 14, 2008

Thursday, February 14

I've been reading through what little GASP documentation there is, and there a HUGE need for a solid chapter's worth of material targeted at students learning with Python. I think that that niche would best be filled by the gasp-games package and accompanying docs.

In addition to getting the gasp-games progression added to Pippy in the XO with comments that make it somewhat self-documenting, there should be a separate curriculum with the same code (or perhaps more examples-- I'm trying to contact the Pippy guy about how many examples can be added there) with a well-written text aimed at the CS 1 level programmer. Beyond that, I'd love to have an appendix of the entire GASP API, available on whatever the most appropriate site is for a CONSUMER of GASP.

Wednesday, February 13, 2008

Wednesday, February 13

Obama wins three states in a landslide.

Upon further consideration, the first bit of GASP tutorial should be a circle on a background. Why go too slow?

Here's my thought:

from gasp import *

# open a graphics window the size of the XO's screen called "Circle" with a green background
begin_graphics(height=900, width=1200, title="Circle", background=color.green)
# make a red circle 10 pixels thick in the middle of the window
Circle( ( 600,450 ), 50, filled=False, color=color.red, thickness=10 )
# close the window -- ideally upon hitting escape. I need docs.
end_graphics()

Anyway, you get the idea. It's clean and simple.

Oh, and I updated my XO, so the wireless works. Also, the GASP branding will be as follows:
GASP: Snake in front of blue (!)
GASP-code: Snake in front of gear
GASP-games: Snake in front of soccer ball

Tuesday, February 12, 2008

Tuesday, February 12

I voted!

Also, I discussed with Cooper and FFM the gasp-games package and Pippy, planning out the sequence of programs to teach GASP to people in Pippy. I need to talk to cjb, the Pippy guy.

Wednesday, February 6, 2008

Wednedsay, February 6

Unfortunately, I've not been spending much time on my GASP/OLPC project. I have completed half of my A+ Certification, of course, and dropped some class time into Alan's laptop.

Thanks to slow internet, it will take THREE HOURS to download the update for my dear OLPC. I'm going to study for the A+ today. Overnight, I'll download the update on my own internet.