⇤ ← Revision 1 as of 2008-09-06 15:28:50
Size: 1576
Comment:
|
Size: 1754
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 8: | Line 8: |
''' Returns a graphics object of a plot of the function and a cobweb trajectory starting from the value start. INPUT: a_function: a function of one variable start: the starting value of the iteration mask: (optional) the number of initial iterates to ignore iterations: (optional) the number of iterations to draw, following the masked iterations xmin: (optional) the lower end of the plotted interval xmax: (optional) the upper end of the plotted interval EXAMPLES: sage: f = lambda x: 3.9*x*(1-x) sage: show(cobweb(f,.01,iterations=200), xmin = 0, xmax = 1, ymin=0) ''' basic_plot = plot(a_function, xmin = xmin, xmax = xmax) id_plot = plot(lambda x: x, xmin = xmin, xmax = xmax) iter_list = [] current = start for i in range(mask): current = a_function(current) for i in range(iterations): iter_list.append([current,a_function(current)]) current = a_function(current) iter_list.append([current,current]) cobweb = line(iter_list, rgbcolor = (1,0,0)) return basic_plot + id_plot + cobweb |
''' Returns a graphics object of a plot of the function and a cobweb trajectory starting from the value start. INPUT: a_function: a function of one variable start: the starting value of the iteration mask: (optional) the number of initial iterates to ignore iterations: (optional) the number of iterations to draw, following the masked iterations xmin: (optional) the lower end of the plotted interval xmax: (optional) the upper end of the plotted interval EXAMPLES: sage: f = lambda x: 3.9*x*(1-x) sage: show(cobweb(f,.01,iterations=200), xmin = 0, xmax = 1, ymin=0) ''' basic_plot = plot(a_function, xmin = xmin, xmax = xmax) id_plot = plot(lambda x: x, xmin = xmin, xmax = xmax) iter_list = [] current = start for i in range(mask): current = a_function(current) for i in range(iterations): iter_list.append([current,a_function(current)]) current = a_function(current) iter_list.append([current,current]) cobweb = line(iter_list, rgbcolor = (1,0,0)) return basic_plot + id_plot + cobweb |
Line 36: | Line 39: |
def f(x): return eval(f_text) show(cobweb(f, start_val, iterations = its)) |
def f(x): return eval(f_text) show(cobweb(f, start_val, iterations = its)) |
Sage Interactions - Dynamical Systems
goto [:interact:interact main page] TableOfContents
Cobweb diagrams on [0,1]
by Marshall Hampton.
def cobweb(a_function, start, mask = 0, iterations = 20, xmin = 0, xmax = 1): ''' Returns a graphics object of a plot of the function and a cobweb trajectory starting from the value start. INPUT: a_function: a function of one variable start: the starting value of the iteration mask: (optional) the number of initial iterates to ignore iterations: (optional) the number of iterations to draw, following the masked iterations xmin: (optional) the lower end of the plotted interval xmax: (optional) the upper end of the plotted interval EXAMPLES: sage: f = lambda x: 3.9*x*(1-x) sage: show(cobweb(f,.01,iterations=200), xmin = 0, xmax = 1, ymin=0) ''' basic_plot = plot(a_function, xmin = xmin, xmax = xmax) id_plot = plot(lambda x: x, xmin = xmin, xmax = xmax) iter_list = [] current = start for i in range(mask): current = a_function(current) for i in range(iterations): iter_list.append([current,a_function(current)]) current = a_function(current) iter_list.append([current,current]) cobweb = line(iter_list, rgbcolor = (1,0,0)) return basic_plot + id_plot + cobweb var('x') @interact def cobwebber(f_text = input_box(default = "3.8*x*(1-x)",label = "function", type=str), start_val = slider(0,1,.01,.5,label = 'start value'), its = slider([2^i for i in range(0,12)],default = 16, label="iterations")): def f(x): return eval(f_text) show(cobweb(f, start_val, iterations = its))