Viewing file: tdemo_chaos.py (953 B) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# File: tdemo_chaos.py # Author: Gregor Lingl # Date: 2009-06-24
# A demonstration of chaos
from turtle import *
N = 80
def f(x): return 3.9*x*(1-x)
def g(x): return 3.9*(x-x**2)
def h(x): return 3.9*x-3.9*x*x
def jumpto(x, y): penup(); goto(x,y)
def line(x1, y1, x2, y2): jumpto(x1, y1) pendown() goto(x2, y2)
def coosys(): line(-1, 0, N+1, 0) line(0, -0.1, 0, 1.1)
def plot(fun, start, colour): pencolor(colour) x = start jumpto(0, x) pendown() dot(5) for i in range(N): x=fun(x) goto(i+1,x) dot(5)
def main(): reset() setworldcoordinates(-1.0,-0.1, N+1, 1.1) speed(0) hideturtle() coosys() plot(f, 0.35, "blue") plot(g, 0.35, "green") plot(h, 0.35, "red") # Now zoom in: for s in range(100): setworldcoordinates(0.5*s,-0.1, N+1, 1.1) return "Done!"
if __name__ == "__main__": main() mainloop()
|