|
Fractal Iterative Dynamics (FracDyn)
|
![]() |
This applet explores fractal properties of iterated functions (listed on
the Scenarios menu.) Each function generates a series of N values, with
xi = f(xi-1). FracDyn uses six different plots to show this data - the two on the main page, and four more opened by buttons at the left. The Scenarios functions are discussed on another page, Help | Math. This file focuses on how to manipulate the things on the screen. |
![]() |
The basic scheme here is:
|
That's a vertical, then horizonal, segment for each L, going from the diagonal, to the green function line, back
to the diagonal. The last L is highlighted in magenta. The
animation button controls
the animation of the first few steps of the iteration. You can turn that off.
Parameters s and composition control the shape of the function. See
Help | Math for the formulas. For each function,
there is a range of viable s. Composition is the number of times the function is applied
in each step. For example, if composition=3, xi+1 = f(f(f(xi))). You can change
s and composition (or comp) via the sliders below the master plot, or via the
parameters button menu. The menu gives finer control.
A small range of s yields most of the interesting behavior. For instance, in the picture above, the Logistic function, the default value, s=3.83, settles to a 3-point cycle. (Note smattering of points, plus three long bars on histogram above.) Below s=3.0, the function converges to a single value. Between s=3.0 and s=4.0 is where most of the action is.
Parameters x0 and num iterations determine the trajectory of the black lines through
the function - x0 is simply where to begin. You can enter an exact x0 via the
parameters menu, or click on the plot to set a new x0. Other
mousing and zooming operations are discussed under mouse on plots below.
Changing scenario or any parameters on the master plot, affects all other plots, except the bifurcation diagram, which is a bit more independent.
Clicking on the main plot, sets a new x0 for all the plots which obey that. (The bifurcation
diagram uses its own x0.) On the time series, return map, and bifurcation diagrams, clicking does
a fit operation, restoring the window to its original all-data limits.
Dragging a rubberbanded box, zooms in on these plots. Right-clicking or control-clicking zooms out
a bit, but never beyond the fit limits.
The zoom buttons above a plot are similar, except that the zoom-in is by a fixed
amount, on the center of the plot.
The mousable plots have a mouse tracking window at lower right, showing the coordinate position
of the mouse. For example, on the time series, where the horizontal axis is i and the vertical
x(i), the mouse tracker looks like
The histogram plot zoom always matches the
master plot. To make its bars bigger, use the bin button above the histogram.
There are no mouse operations on the Kelly plot.
The plot windows are resizeable, but the plots insist on their original aspect ratio.
The external plots tend to slow down operations, so close them when not in use, using the usual
window close icon at the upper right of the little window. You can reopen them when you wish.Mouse on Plots
Four of these six plots respond to mousing over the plot area.
Unlike the others, the mouse trackers on the histogram and time series plots read the data they're displaying,
instead of the arbitrary coordinate location of the cursor.
![]()
|
The button opens the return map window. By default, the return map
plots the points (xi, xi+1) from the iteration
series in the master plot. Changing the parameters of the master plot regenerates the
return map.You can change the dot size from its default one pixel per point. Another button allows you to turn on something called process differences. If the "use differences" switch is selected here, a different series of points is plotted, not the (xi, xi+1) from the iteration series in the master plot, but a series constructed by taking the differences between points:
Then the (x'i, x'i+1) points are plotted. With the default parameters, delay=1, offset=1, that would be
x'1 = x3 - x2 ...
|
![]()
|
In a Kelly plot, each square represents a single iterate xi of the
series from the master plot. The values are mapped from upper left,
left to right across each line,
until run out of values, usually
before the end of the last line. Unused squares are grey. Colors on the Kelly plot are assigned by "bins". For N bins, there are N-1 numbers defining the bins, because bin 1 means "all values less than or equal to this one get this color, else check bin 2", and so on, until reach bin N-1. Any value greater than that, gets the highest bin color. In general, Kelly plot colors are arbitrary, but for this applet, there's a system. Colors get progressively deeper from the middle bin, using a range of purples for values below the middle, and blues for values above the middle. If the number of bins is odd, there exists a middle bin, and it's white.
The
|
set bins button menu gives you a choice of
binning schemes, to generate the bin settings for you (or let you build
your own). Use
list bins to see and adjust the
results of the auto-generated bins. Choices are:
![]()
|
The time series is straightforward. The iterates from the main plot are plotted
as (i, xi). This generic kind of plot is called a time series because
usually the successive i's represent time.
The time series provides the usual
mousing and zoom operations. You can plot lines, points, or both
via the
|
![]()
|
The bifurcation diagram is very different from the others in this collection, and much
less driven by changes on the main plot window. It is not drawing the same
data in a different format, but rather generating its own, far more data. It's also big and slow,
so close it when not in use. The horizontal axis of the bifurcation diagram is s, running the whole valid s-range shown on the main plot. The vertical axis is iterate x-values. This plot is ~500 pixels wide, so for each of 500 s values, it plots N iterates (500 x N).
This plot uses its own
values for N iterates and starting x0, both set on its own
|
The colors are in rainbow order, red, orange, ..., purple. The same 6 colors are used for any number of highlighted iterates up to 6. For more, it generates a custom rainbow for however many are needed.
Using the default bifurcation parameters (drop first 50), any part of the bifurcation diagram that is vertically thick, should generate some interesting behavior on the other plots. For instance, although most of the action is above s=3.0 on the logistic function, you can see from this picture that there's more than initial transients around s=1.0.
In the really thick areas to the right of s=3.0, you can find some interesting areas by zooming way in and reading the mouse tracker for s values. For example in this zoomed-in closeup, I placed my cursor at the red + mark inside an empty bubble on the diagram, and read s=3.5677 on the mouse tracker. This suggests an interesting value to type in on the parameters menu on the master plot. (The s-slider is no good for precision values.)