Chapter 3: Creating Classical Fractals on the
Macintosh
"Every revolution was first a thought in one
man's mind."
-
Ralph Waldo Emerson, 1870
Long before the word “fractal” was ever put down on
paper or even spoken, its form was taking shape in the minds of revolutionary
mathematicians. These revolutionaries
looked beyond the world described by Euclid's geometry--a world confined to
blocks, cones and spheres built from straight lines, flat planes and circles. They looked instead to the greater world of
nature--a world that uses texture, branching and cracks to define its numerous
complex objects.
Figure 3.1 Basic
Linear Fractals.
Weierstrass, Cantor, Pioncare, Peano, Hilbert, Koch,
Sierpinski, and Hausdorff were mathematicians, who envisioned mathematical
shapes that defied conventional descriptions. These objects were often referred
to as “mathematical monsters”, “pathological equations” and “lamentable plague
of functions[1].” Through their work, which
was often at odds with traditional methods, these nonconformists have enriched
mathematics immeasurably. Today, we refer to the fractals they discovered as
"classical" or "linear" fractals. Linear fractals, which
we'll look at in this chapter, are derived from continuously repeating patterns
usually created with a corresponding reduction in size.
FractaSketch™[2]: a tool for exploring fractal geometry
To explore these classical
fractals, we'll use FractaSketch, one
of the Macintosh programs included with this book. FractaSketch allows you to rapidly design and draw linear fractal
shapes of great intricacy. The figures
you can generate range from symmetric and regular structures to patterns that
seem completely random. In this section and consequent sections, you will learn
to draw a variety of different types of fractals. As you learn to construct
them , you will develop an understanding about their structure.
Creating a fractal in
FractaSketch consists of two parts.
• First, you create a template, which is a series of line
segments that you enter with the mouse. This original shape is the seed of the fractal. Each line segment
chosen, has an orientation for a scaled seed that will replace every line at
the proceeding level. A line's orientation is chosen from the "Draw
commands" found at the bottom of each template. The seed drawing is
completed by double clicking on the last point drawn or selecting
"Finish" from the "Edit" menu. The template will now be
ready to view fractals at different levels.
Figure 3.2
FractaSketch Draw Template with line orientations.
• Second you chose which of the different replacement
levels you wish to view. This is done by selecting the appropriate box at the
bottom of the template or selecting the "Level" you wish to view from
the "Draw" menu.
Figure 3.3 Choosing
different growth levels for your seed.
Using FractaSketch, you'll
see graphically and quickly how a fractal grows out of a seed, into a complex self-similar structure. Figure 3.4 shows the seed of a fractal, and
figure 3.5 shows the fractal after 3 levels of replacement.
Figure 3.4 Stain glass
seed.
Figure 3.5 Fractal
stain glass.
Here is an Ethiopic cross
Figure 3.6 that bears a close resemblance to the fractal created in Figure 3.5.
Figure 3.6 Ethiopic
cross.
The program also calculates
the dimension of a fractal exactly. As you'll recall from Chapter 2, fractals
are not necessarily one-dimensional or two-dimensional, as are traditional
lines and planes. In FractaSketch, the dimension and level of replication are
displayed in the menu bar at the top of the screen. See Chapter 4 for information
about calculating dimensions of self-similar objects.
Starting FractaSketch
If you already have not done
so load the FractaSketch™ program from floppy disk and copy it on to the
computer's hard drive. On older systems without a hard drive, you should make
one working duplicate for personal use.
Figure 3.7
FractaSketch program folder.
Figure 3.8
FractaSketch program icon.
Figure 3.9
FractaSketch file of previously generated fractals.
To begin using
FractaSketch™, double click on the FractaSketch™ program icon found in the
FractaSketch folder along with pregenerated fractal files (see figure 3.7,
figure 3.8 and figure 3.9). This will open the FractaSketch drawing pallet (see
figure 3.10).
Now you are ready to create
your own fractals.
Figure 3.10 The
FractaSketch drawing pallet and the cross hair drawing cursor.
Starting a New Palette
If you make a mistake, to
undo a single step select "Undo" from the "Edit" menu. If
you want to start your drawing over or start a new drawing, all you have to do
is select “New” from the "File" menu.
Ending the Program
When you are through with
the program just select "Quit" from the "File" menu. The
program will automatically ask if you want to save any of your new work or
changes[3]. For a complete listing of
FractaSketch commands see manual section. Now lets look at some of the fractals
we can make with FractaSketch.
The Cantor
Set: Mathematical Dust
"Vision is the art of seeing things
invisible."
-
Jonathan Swift, 1711
Georg Cantor [4](1845-1918) was born in
Saint Petersburg, Russia, but lived most of his life in Germany where he taught
at the University of Halle. Today he is primarily known for his work in set
theory and his contributions to classical analysis. The Cantor set, which bears
the author's name, first appeared in publication[5] in 1883. Despite a rather
unglamorous appearance or as some would say lack of appearance, the Cantor
set's showed an exactly self-similar pattern. This pattern, in which no points
are connected to each other, was key in establishing many of the fundamental
concepts that help us understand fractals today.
How the Cantor
Set Is Constructed
The Cantor set, also known as Cantor dust, is a set
of lines constructed by continually removing the middle third portion from
prior line segments. Repeating this process results in finer and finer
divisions of continually smaller fragments. Carrying the operation on endlessly
creates an infinite number of infinitely small "particles" resembling
dust (see figure 3.11 and related sections on Julia sets in Chapter 5).
Figure 3.11 The Cantor
set at the initial levels of construction.
Figure 3.12 The basic Cantor set and a magnification
of a smaller section.
On closer examination, a "small" section
of this mathematical dust would identically resemble the Cantor set's over all
construction, except for the variation in size. The opposite is also be true,
the Cantor set you see could in turn be only a small part of an even larger
Cantor set. This proportional size difference is know as the "scale
ability" factor as shown below.
Let's look at how the general case of the Cantor set
is constructed:
• We start with a basic line segment, from the
interval , with no segments removed. This is the initiator level,
which we will call level
or
.
• Next, we remove the middle line segment ( in
other constructions the lengths, positions and number of segments removed may
vary). This produces two line segments,
one from the interval
and the other from
the interval
, each segment
as long as the
original. This result we will call level
or
.
• We continue this process one more time to level , and are left with four line segments
,
,
and
, each with a length of
.
• As this procedure continues for higher levels of , we are left with the general case formula:
The number of sections is
equal to , with each level having a
corresponding line length of
.
When this process is carried out forever or 'ad
infinitum' as commonly used, we approach lines without length, this is what is
referred to as the true Cantor set.
Illustrating
the Cantor Set
The Cantor set is difficult to illustrate because of
its fine "dust like" features.
Various techniques have been devised to represent it visually, including
Cantor bars or the Cantor comb.
Figure 3.13 Cantor
bars
Another way
to demonstrate the features of the Cantor set is to maintain a constant fill
area for each level. This we will referred to as the Cantor icicles for obvious
reasons see below.
Figure 3.14 Cantor
icicles
Creating the Cantor Set Using FractaSketch
Lets construct the Cantor set using FractaSketch. After you start FractaSketch and open the
drawing palette, follow these instructions:
Step 1: Choose an appropriate orientation for drawing the Cantor set. You select an orientation by moving the
cursor arrow to a box at the bottom of the drawing pallet and clicking once
with the mouse. In this case, select
Box 1 in the lower left-hand corner.
Notice that the orientation of the arrow in Box 1 is up and to the
right; this orientation will replace the appropriate line segments with
"seeds" oriented in the same direction.
Figure 3.15 Creating
the Cantor set in FractaSketch step 1
Note: For
the Cantor set the choice of any of the first four "Boxes" would have
been fine and have worked equally as well. The importance of orientation will
become clearer when we construct fractals with different symmetries.
Step 2: Draw the first line segment.
Click the mouse on the left-hand side of the screen to indicate the
starting point. Next, use the cursor-arrow
to draw a line from the left-hand side to about a third of the way over to the
right, and then click the mouse to tell the program you have finished the line
segment.
Figure 3.16 The Cantor
set step 2
Step 3: Draw the second line segment.
Select Box 0 from the lower right-hand corner. Box 0 produces an invisible segment. Then continue to draw another line an additional third of the way
to the right, and then click.
Figure 3.17 The Cantor
set step 3
Step 4: Draw the third line segment.
Select Box 1, our first orientation, and finish drawing the final third
segment with a line segment equal to the other two.
Figure 3.18 The Cantor
set step 4
Step 5: Now that the drawing is completed, double click on the final
point. (Alternatively, you can click at
the end point and select “Finish” from the “Edit” menu. )
Figure 3.19 This is
the completed Cantor set at the first level in FractaSketch
Step 6: You are now ready use the "Draw" menu to select the
various levels of self-similarity you want to see . (An alternative method to selecting the "Draw" menu is
to click on the numbered "Boxes" below. This, however, is limited to only the first 10 levels and still
requires menu selection for higher levels.)
Select level 1, then levels 2-4.
Notice how the Cantor set turns to dust before your very eyes.
By closely examining a fractal's pattern, you can
see the intricacies of its self-similar structure at different levels of
magnification,
In FractaSketch if you want to see finer detail in
the fractal you've created, you can expand a desired section[6]. To do this, move the section to the center of the pallet by
placing the cursor over the object, holding down the mouse button, and dragging
the section over the center of the pallet and releasing it. You can then use
the “Expand” or "Reduce" command in the “Scale” menu as often as you
like to get the desired level of magnification.
Peering deeper
into the Cantor Set
The Cantor set presents several mathematical points
of interest. The set consists of an
infinite succession of end points, which belong to previous line segments. Points of the general case Cantor set
include: ,
,
,
,
,
,
,
,
,
,
,
, .... see figure
3.11. Because the Cantor set is nowhere continuous, it does not have enough
information to constitute a line. The
Cantor set, therefore has to have a dimension less than
. The precise
value of the dimension for the general
case is
,
, (see Chapter 4 for more detail in calculating fractal
dimensions).
Another interesting observation is that the Cantor
set belongs to a class of sets known as uncountable sets[7]. In a non countable set not
all point positions can be calculated exactly. For the Cantor set this can be
shown by demonstrating that for all known points of the set there are
corresponding line segments, that will in turn have a set of points with even
smaller line segments associated with them. This continuing process without a
conclusion shows that their will always be some points that will not be
counted.
Variations in
the Cantor Set.
You can make variations of the Cantor set by changing both the lengths and number of
line segments as shown in Figure 3.20.
Figure 3.20 Non
standard Cantor sets.
Try using FractaSketch to make some of your own non
standard Cantor sets.
The Peano
Curve
"Well, you'd square the line. A flat square
would be in the
second dimension."
Margaret
Murry - A Wrinkle in Time[8].
Figure 3.21 A Passage
from A Wrinkle in Time.
Giuseppe Peano (1858-1932) was an Italian mathematician
whose primary work was on finite limit calculus. He taught at the University of
Tirin with the title of “ extraordinary professor of infinitesimal
calculus”. Later he was promoted to the
unassuming title of “professor”. His work in 1890 and subsequent work by
Hilbert that same year, paved the way to demonstrate that a line could be
constructed that would intersect with any given point in a -dimensional domain.
These models developed from this work helped illustrated how
self-similar construction created from straight lines could become “plane
filling” or “area filling” curves[9]. The fundamental idea
behind a plane filling curve is that a line, a basic one-dimensional element, can be contorted and through the principle
of self-similar replication, end up filling a plane, a two dimensional entity.
These transformations bridge dimensions found between a structure's length,
area and volume, regions with fractal dimension.
Figure 3.22 The Peano
curve seed ( level 1) comprised of 9 segments and a transformation (level 2).
The standard construction for the Peano curve
consists of nine equal segments constructed in the fashion above in figure
3.22. As the segments are replicated at higher and higher levels, the curve's "plane" filling properties become increasingly apparent, as in figure
3.23 below.
Figure 3.23 The
transition of the Peano curve, from a line to a plane.
To show that a Peano curve can be constructed from a
continuous path we will draw one with slightly rounded corners, this will to aid us in visually following the path see
figure 3.24
Figure 3.24 Following the path of a Peano curve to
level 3.
The fractal dimension of the Peano curve in the
general case is , see Chapter 4 for calculating dimension.
Constructing the Peano Curve with
FractaSketch
Figure 3.25 The Peano
curve constructed using FractaSketch.
Let's construct thePeano curve.
Step 1: Open the program FractaSketch. If it is already open, select
"New" from the "File" menu to create a fresh work
window. Now choose "Square" from the "Grid"
menu, this will aid in drawing a seed with the correct configuration, then
proceed by selecting Box 1 from the drawing pallet of FractaSketch.
Step 2: Draw a figure “8” pattern using nine equal line segments, with two segments at each end. See Figure 3.25 above.
Because the Peano curve is symmetrical on both the
vertical and horizontal axis, it does not matter whether you begin with the
left side or the right side, which path you take or the orientation of the
drawing tool.
Figure 3.26 A pair of
alternate paths for the Peano curve.
Step 3: Now that the Peano curve drawing is complete lets
view it at different levels of self-similarity. Select level 1. This shows the "seed" outline of our
construction.
Step 4: Proceed to level 2.
Notice that each of the nine lines has been replaced by a 1/3 scale of
our original construction as seen in Figure 3.22.
Step 5: As you continue to higher and higher levels, you will notice that
the curve begins to cover a larger region of the plane's surface in this case
our screen, until the entire area is covered represented on the screen as
black, as seen in Figure 3.23. This entirely filled plane shows us that the
Peano curve is truly two dimensional.
It is interesting to create Peano curves with slight
modifications. One alteration is to make the line segments longer in the
horizontal direction than in the vertical direction. Since the curve's new
dimension is less than , the plane will no longer be completely filled, as you can
see in Figure 3.27 below.
Figure 3.27 An
alternative Peano curve shown at level 4.
Another Peano curve variation is to take a standard
curve and make the center line segment invisible. This new fractal results in a
shape that no longer fills the plane. Its dimension is (or
to be precise). This
fractal pattern could just as well be constructed by continually dividing, the
square and each resulting square, into 9 separate squares continually removing
the center from each divided square. This pattern is referred to as the
Sierpinski carpet .
Figure 3.28 Stages of
growth for the Sierpinski carpet using the Peano curve construction.
The Menger sponge is the Sierpinski carpet's 'spatial cousin'. This sponge is a
self-similar cube that you continually
divide in to 27 equal smaller cubes. Each time you divide the cube, you
remove seven inner blocks , one from the center of each side and one in the
middle. Carrying this process out continuously creates the Menger sponge. It
has a dimension of (or
) see Figure 3.29.
Figure 3.29 The Menger sponge, Sierpinski's ... dimensional cousin. "E Pluribus Unum", one from
many.
Notice: since the Sierpinski carpet has a dimension
less than 2 there is not enough line information to associate it to cover an
area, on continually closer examination finer and finer gaps will appear with a
pattern not too different from that of a carpet's weave seen close up.
Similarly the Menger sponge, having a
dimension less than 3, does not have enough volume information associated with
it to take up space, its construction can be thought of a block of Swiss cheese
with continually finer and finer air pockets. The Menger sponge would make the
ideal sponge. If it could physically exist, it would weigh an infinitely small
amount-- nothing--and since it does not comprise any volume it could dedicate
its entire structure for absorption.
The next section shows how to create your own Menger
sponge using standard Macintosh paint programs.
Creating a Picture of the Menger Sponge
Here is a general overview on how you can create a
picture that looks like the Menger sponge. We all ready know that the Menger
sponge is exactly self-similar. Since this is the case, the reverse must also
be true, that is we should be able to use this self-similar construction to
create larger self-similar copies of itself. This is precisely what we will do.
To create a representation of the Menger sponge with a draw or paint
application[10], it's easiest to reverse
the process of construction that we used in creating earlier fractals. This is
done by add blocks rather than to continuously replacing them. We will begin with a single cube, and build
the fractal Menger sponge by adding self-similar blocks. For clarity, I will call the central object
you are building a 'cube' and the parts you add 'blocks'.
Step 1: Open an application that lets you draw. Any paint or draw program
should work nicely. If you have one
that deals with gray scale or with different colors, this is even better. You
can use different shades to give it an almost 3 dimensional look.
Step 2: Draw the smallest cube you can, with a
3-dimensional perspective. If you want to shade it or color it, do this now. A
dark boarder will enhance the features of your block. (An alternative is to
create a Sierpinski carpet in FractaSketch and import the results into a
program that lets you skew its shape. Make three copies and skew them so they
well fit together to form a cube.) You
can then shade your cube or map a pattern to each of the three visible surfaces.
Step 3:
Use the lasso tool to make a copy. This will prevent you from having to draw a
new block each time. You might want to place a copy of this block in the
corner--away from the drawing area you will use--so you can use this in case
you make a mistake and have to start over again. .
Step 4: Now find a place on your screen with plenty
of space on all sides and paste your first block. This is now the back anchor
block. Note: later on if you run out of room on a side you can use the lasso
tool to move your growing cube or reduce the scale in which it is viewed.
Step 5: Create new blocks to attach to the anchor
block, place one in front of each of the anchor blocks 3 visible faces.
Remember to make sure to always put the blocks in line with their projected
axis ( typically oriented with a projection in the xyz plane). Continue this
process by placing one more block in each direction. You should have three rows
with three cubes, each projected perpendicular to one other, all joined by one
end cube.
Step 6: Place two blocks at the end of the three
rows, with each new block placed on the cubes' visible faces perpendicular to
their row's direction.
Step 7: Join each of the three open ends with a block. You should now have three sides completed.
Step 8: Place three blocks on the three corner
cubes, with each block on the side facing inward.
Step 9: Place one block in the last remaining open
corner. This will join the remaining three rows together.
You have constructed the first level of a Menger
sponge. This cube has a 3 dimensional look which we have represented in a 2
dimensional drawing. To create higher levels of this sponge, capture your new
cube with a lasso or a box tool, copy it, and repeat the construction process.
You can extend the sponge as far as you like--at least until you run out of
space on your computer screen, see figure 3.29 created with a drawing program.
Figure 3.30 The Menger
sponge created with a paint program.
This set of instructions closely resembles the
process a computer might use in drawing a fractal. This procedure is referred
to as recursion.
After you have completed a Menger sponge you like,
try stacking some of them in a random order and direction. Notice how you can
create some unusual perspective tiling.
Some of these are surprisingly similar to the geometric art by the
illustrator M. C. Escher see figure 3.31 below.
Figure 3.31 Geometric
art Escher style
The Hilbert Curve
" The most suggestive and notable achievement
of the last century is the discovery of Non-Euclidean geometry. "
-
David Hilbert[11]
David Hilbert(1862-1942) was a German professor of
mathematics at the University of Königsberg and later at the University of
Göttingen. His important contributions included work in foundations of
geometry, number theory and fundamental logic theory[12]. He also contributed
significantly to applying mathematical models to problems in physics.
Figure 3.32 David Hilbert's original 1891 paper of
his space filling curve.
The basic principle behind the Hilbert curve is
slightly different from the constructions of exact replacements we've looked at
thus far. Instead of using a single standard shape to replace every line
segment on every continuing level, the Hilbert curve applies various shapes or
“rules” to different segments. This is
known as a nonstandard construction. The Hilbert curve forms an elegant
construction of patterns whose lines do not overlap. Also, since the standard
Hilbert curve fills a plane, its dimension is . (See Figure 3.32 below.)
Figure 3.33 The Hilbert curve's stages of growth.
Figure 3.34 The
Hilbert curve's construction.
In the Figure 3.34 above, there are four
components linked together with three
lines segments. This construction is the basis for the standard Hilbert curve[13]. Each component uses the
same construction to produce smaller sub sections. Carried out ad infinitum, this construction forms the Hilbert
curve. As the curve goes to higher and higher levels, the links between
component parts get proportionally shorter.
Figure 3.35 An
alternative Hilbert curve, that is both closed and connected[14].
An attractive attribute for the Hilbert curve is
that principles, similar to the ones used in constructing the "plane
filling" curve can be modified to fill a volumetric space see figure
below.
Figure 3.36 The 3D model of the Hilbert curve.
See Color Plate 11 for picture of a computer
controlled machine that uses an EtchaSketch™ to plot the Hilbert curve. It
should be noted that this machine was not an early hardware prototype for
FractaSketch.
The Koch Curve
“Triangles outside triangles outside triangles ad
infinitum the Koch curve goes, it's infinitely infinitesimal, this self-similarity
shows. A length too great to measure, an area too small to see, what else can this contradiction be, behold
fractal geometry." -The
Fractal Explorer[15]
Figure 3.37 Hedge von
Koch's original 1904 paper.
Helge von Koch (1870-1924) was a Swedish
mathematician who contributed to the understanding of infinite matrices and
their associated lengths. His work included a paper[16], published in 1904, in
which he describes a continuously repeating process of triangles place on the
side of other triangles. He named it the snowflake curve. Today, this curve is
simply referred to as the Koch curve.
Figure 3.38 The Koch snowflake ( also referred to as the
Koch island ) is composed from three connecting Koch curves.
Compare the symmetry and branching found in real
snowflakes found in nature. As you see there is no such thing as a typical
snowflake[17].
Figure 3.39 Natural
accruing snowflakes[18].
The
self-similarity of rope.
Figure 3.40 The composition of rope showing
self-similarity from a U.S. Coast Guard manual[1] .
One place that fractal patterns shows up is in
ropes. For optimization of strength and flexibility a redundant weave pattern
is used. These patterns initially consist of fibers woven into yarns woven into
strands that make up the line or rope as seen in figure 3.40. If a cross
section of such a rope is taken you will see a self-similarity pattern,
sometimes even in the form of Koch snowflake as seen in the second pattern from
the left found in Figure 3.41 from a U.S. Coast Guard boating manual.
Figure 3.41 Cross sections of wire ropes displayed
in a U.S. Coast Guard manual[19].
Through Koch's curve[20], two mathematical dilemmas
were demonstrated that conflicted with ideas of the day. First, how could a
continuous line segment be nowhere differentiable, that is have a curve with no
smooth portions in which a tangent line can be drawn (see Figure 3.42 below). At the time, these points were explained
as isolated exceptions rather than points that were part of a curve's whole
construction. Second, how can a continuous line of infinite length travel a finite distance and never overlap see
Figure 3.43. This type of curve defied any classification.
Each of the two following figures do not have a
point where a unique tangent line can be drawn, so we say these curves not
uniquely defined.
Figure 3.42 Examples
of a differentiable curve with tangent and a non differentiable curve with a
point without a unique tangent.
Figure 3.43 The Koch
curve with enlargement.
How the Koch
Curve is Constructed
Let us take a closer look at the construction of the
Koch curve.
• As in the case of the Cantor set, we divide the
initial line segment (level 0) into three equal parts. This time, instead of
removing the center part, we insert a fourth line segment, equal in length to
the other three. This creates something that looks like an equilateral
drawbridge, which is our seed shape for level 1.
Figure 3.44 The seed
for the Koch curve.
• For level 2, wherever we see a straight line
segment, we replace it with a reduced scale model of the starting seed shape.
For the case of the standard Koch curve, the replacement scale here is of the original seed.
• If we
carry this line replacement process to higher and higher levels, ad infinitum,
the Koch curve results. For each proceeding level of the Koch curve, the length
generated increases by . If this procedure is carried out continuously, it will
result in a line segment with an infinite length.
Figure 3.45 Levels of
the Koch curve.
The calculated dimension of our equilateral
drawbridge, the Koch curve, is the logarithm of the lengths of four segments
over the logarithm of the distance--three segments. Therefore, the dimension
for the Koch curve is or
. For information
about calculating the fractal dimension of the Koch curve, see Chapter 4.
Different Koch curves can be constructed by modifying the position and lengths
of the line segments. These curves transform in to a variety of interesting
shapes, sometimes with totally unexpected results. See examples below.
Figure 3.46 Koch curve
variations.
Constructing the Koch curve using FractaSketch
Lets use FractaSketch to construct the traditional
Koch curve.
Step 1: Open the program FractaSketch. If it is already open, select
"New" from the "File" menu to create a fresh work
window. Now choose "Hexagonal" from the
"Grid" menu, this will aid in drawing a seed with the correct
configuration. Next select Box 1 from the drawing pallet. For the Koch curve
selecting the appropriate orientation is important. Choosing different
orientations will result in different patterns; for a complete list of
instructions, see FractaSketch manual section.
Step 2: Draw the first of four equal segments. Click the mouse in the
lower left-side and proceeding left, drawing a horizontal line segment roughly
a third of the way across the drawing pallet.
Step 3: Click to start a new segment. Continue by drawing a line segment
of equal length ascending by 60°.
Step 4: Draw a descending line, symmetric about the vertical axis to the
last line.
Step 5: Finish the construction by drawing the last remaining line
segment to the right. Your diagram should look similar to figure 3.47 .
Figure 3.47 The seed
drawing of the Koch curve.
Step 6: Double click to let the
program know your construction is complete.
Step 7: View the Koch curve at
different levels of construction. At level 1, you see the basic form. At level
2, you see the beginning of the curve's outline. At level 3, you see another
increase in refinement. As the Koch curve levels increase, you will notice that
the greatest variations are found at the lowest levels.
As you proceed even further there comes a point when
increasing the drawing level does not reveal greater detail. This is because of
the limited resolution of the screen. In fact, after a certain point the only
thing that increases is the drawing time. This is because for each increased
level the program has to calculate and draw four times as many replacement
lines. If you want to see that at higher levels the Koch curve is still calculated, use the "Expand"
feature from the "Scale" menu and see for it yourself.
Finish this section by creating Koch curves with
altered angles and varying line segment lengths. You should get to see some
lively variations.
Snowflake
Sweeps , Monkey Tree and Gosper Island .
Figure 3.48 Koch's
Snowflake Sweeps from a 13-line seed.
Two curves with a close resemblance to the Koch
snowflake are the "Snowflake Sweep" and "Monkey Tree". As
these curves reach higher levels of construction, their outlines approaches
that of the Koch curve. In Figure 3.48 you can see the Snowflake Sweep with a
perimeter dimension and an inner
dimension
, see Chapter 4 for discussion on two simultaneous states of
dimension. In Figure 3.49 you can see the Monkey Tree with dimension
.
Figure 3.49 Monkey
Tree generated to level 3 and its seed.
A variant construction to the Koch snowflake is
"Gosper island"[21]. It has a seed with a
reduced scale of √7 each with a 1/3 length. This fractal has a perimeter dimension of and an inner
dimension
see Figure 3.50.
Figure 3.50 Gosper
Island generated to level 3 and its seed.
The Koch Snowflake, the Snowflake Sweep, Monkey Tree
and the Gosper Island would make ideal fractal tiles. Duplicate tiles would
connect perfectly with each other. This "tiling" pattern would guard
against slipping because the connections do not travel in a continuous
direction see Color Plate 14.
The Pascal Triangle Passed on to Sierpinski
Blasise Pascal
(1623-1662) and Waclaw Sierpinski
(1882-1969) are two mathematician--one French, the other Polish--brought together
by self-similar triangles that bear their names. Interestingly, the two men lived hundreds of years apart and
neither were the triangles' discoverer.
Figure 3.51 Original
Chinese[22] version of the binomial
triangle.
The Pascal
triangle, as it has come to be known, first appeared in Chinese publications,
early in the 14th century. Two centuries later, papers on its existence were
published in Europe, a century before Pascal's birth.
Figure 3.52 Twelve
levels of Pascal's Triangle illustrated from an early European binomial
triangle[23] .
The basic
Pascal triangle is constructed from component values of the polynomial
expansion . The
value of
is the triangles
level preceding downward. Lets look at some basic levels below:
1
1 1
1 2
1
1 3
3 1
1 4
6 4 1
1 5
10 10 5 1
1 6
15 20 15 6 1
1 7
21 35 35 21 7 1
1
1 1
1 1
1 3
3 1
1 1
1 5
5 1
1 15 15 1
1 7
21 35 35 21 7 1
•
• •
• •
• •
• •
• •
• • • •
• • • •
• •
• • • • •
•
Pascal triangle
Pascal triangle
with even numbers
removed
Pascal triangle
with odd numbers
by dots
Figure 3.53
Table of values for the Pascal triangle.
What is Wrong With the Chinese Triangle ?
The Chinese
binomial triangle in figure 3.51, although a great achievement there is an
error associated with it. Can you find what it is? Hint: you don't need to know
Chinese to find it, just the principles of symmetry[24].
A Sierpinski
triangle can easily be constructed from the similar Pascal triangle. First
build a triangle out of the cascade values of the Pascal triangle. Then proceed
by removing all the even valued sections. What you are left with is the frame
of the Sierpinski triangle see Figure 3.53.
In this section
we will see several ways to build a Sierpinski triangle. There is actually an
infinite number of possibilities, so we will concentrate on some of the most
basic ones.
In Figure 3.54
you can see a basic Sierpinski triangle made from a single connected line.
Figure 3.54 Different
stages of the Sierpinski triangle.
Constructing the Sierpinski Triangle with
FractaSketch
We will first
construct the Sierpinski triangle using the fairly straight forward approach of
three equal connected line segments. One pleasant feature with using this
generator is, you can travel the entire distance of the triangle following a
single path.
Step 1: Open the program FractaSketch. If it is already
open, select "New" from the "File" menu to create a fresh
work window. Now choose "Hexagonal" from the
"Grid" menu, this will aid in drawing a seed with the correct
configuration. Next choose Box 2 as our drawing tool.
Step 2: Draw a line from the lower left region of the
pallet to the middle left following a 60° upward incline and click.
Step 3: Chose Box 1, precede to draw a line of equal length
on the horizontal axis, and click.
Figure 3.55 A
completed seed of the Sierpinski triangle.
Step 4: Choose Box 2 again and draw the last equal line
segment downward by 60° to the lower right. It should look similar to Figure
3.55. When you are finished drawing, double click to view at different levels.
In the first
stage, level 1, our image looks like a triangle without a top. Our triangle
begins to takes shape as we precede to higher levels.
Now lets look
at other methods to construct the Sierpinski triangle, each one is formed from
a different seed.
Figure 3.56 Here is
the same Sierpinski triangle all constructed from different seeds.
You can
construct a variations in the Sierpinski triangle by changing segments
positions and lengths. Try it and see what results you get. See variations in
Figure 3.57 below.
Figure 3.57
Variations Sierpinski triangles.
Figure 3.58 The
Sierpinski tetrahedron or pyramid, much ado about nothing.
The dimension
for the general Sierpinski triangle is given by
, therefore it has no area. Its spatial cousin the Sierpinski
tetrahedron[25] has a dimension given by
or simply
and correspondingly
has no volume. Both fractals share similar characteristics to the Sierpinski
carpet and the Menger sponge, see Chapter 4 for calculating their fractal
dimension.
Below are the
instructions to create your own life size Sierpinski tetrahedron, also see
Color Plate 15 for a completed example.
Making
the Sierpinski tetrahedron from paper.
You can
construct the Sierpinski tetrahedron from folded paper triangles.
Step 1: Construct
as many equilateral triangles (triangles with three equal sides) out of
construction pieces as you will need to form the different levels of the
Sierpinski tetrahedron. The number of
pieces needed corresponds to where
is equal to the level
of construction you wish to make.
Step 2: Take each equilateral triangles and fold them into
four equal parts. This is done by taking each corner and fold it midway to the
other side. Then attach the three folded regions together forming a tetrahedron
as seen below.
Step 3: Then by
attaching the tetrahedron in continually larger clusters of four, a shape will
evolve that resembles Sierpinski tetrahedron, see color plates for constructed
model.
Note: the
Sierpinski tetrahedron could also be constructed out of straws connected by
tiewraps to form the tetrahedron triangles instead of construction paper.
Figure 3.59
Constructing the Sierpinski tetrahedron.
An alternative
method of creating the Sierpinski triangles is with repeatingly smaller
triangles.
Figure 3.60 Growing a
Sierpinski triangle out of triangles.
Note: using the
above technique of fitting triangles within triangles then by randomly
selecting where they join each side causes interesting patterns to form. If you
carry it one step farther and randomly raise and lower the adjoining points you
get patterns that resemble mountains see below. Also see section in Chapter 7
on fractal mountains.
Figure 3.61 Making
mountains out of Sierpinski triangles.
The Dragon Curve
"Seeing a
completed dragon can't compare to the trill of watching it being drawn. And
it's hard to resist the temptation to see what " this one little
change" will do as you explore these fascinating creatures."
-
William McWorter "Creating Fractals" Byte 1987
Figure 3.62 A Basic
Dragon Curve
The dragon
curve , also known as the "self-squared dragon" is produced from a
basic two line construction. Each line from the original seed is replaced by a
smaller seed image at each progressing level.
As higher levels continue an intricate fractal structure will emerge which is
not only admired for its simplistic construction, but also for complex images
that are generated from it. If the dragon curve totally fills a region as with
the basic curve seen in Figure 3.62, it
is a 2-dimensional, plane filling curve also see Color Plate 16. If it does not
it will have a lower dimension.
Figure 3.63 Dragon
Curves with Dimension Less than 2.
Early Dragon Curves Made From
Paper.
Figure 3.64
Dragon curves, before computers generated them printed in Scientific American
April 1967.
The first
appearance of the dragon curve is credited to physicist John Heighway[26]. In 1960, he used paper to
construct dragon curves, not by drawing them but by a procedural folding
process[27]. Each added crease doubled
the number of folds and complexity. Upon opening the paper, an outline of the
dragon fractal would appear. In later years, often aided with computers, people
named Banks, Harter, Lindenmayer, Gardener and others would use symbols to
describe the paths followed. These symbolic instructions often evolved into
descriptive languages such as Lindenmayer systems and Logo, see Lindenmayer
section in Chapter 7 on algorithms.
Symbolic Language to Describe Fractals.
Figure 3.65 The
descriptive language of Lindenmayer systems to create a dragon curve and it
represented curve[28].
How the Dragon Curve is Constructed
The dragon curve
is usually constructed from a seed consisting of two equal connected lines. In
the most general case, the lines meet at a perpendicular angle with one line's
orientation pointing in and the other line's orientation pointing out, see
Figure 3.66 below.
Figure 3.66
Orientation of the dragon curve.
• Level 0 is the generator, which defines
the beginning point and the end point of the curve.
• Level 1 gives an outline for the basic
seed, two lines.
• At level 2, one line segment is replaced
with an "elbow" seed in and the other with an "elbow" seed
out. It does not matter which line orientation you chose initially as long as
the other line's orientation is opposite.
• Then with each preceding level, ad
infinitum, the same orientation is followed for each replacement. This is the
full-grown dragon curve.
This amazing
process grows a simple seed in to a beautiful plane filling fractal. The final
surface covers a limited area with an endless boundary.
Figure 3.67
Transformation of the dragon curve.
Here are the
exact calculations for the dragon curve's length and dimension:
For each level increase the dragon curve's
previous line segments are replaced by a seed with a reduced scale of or
. Thus the curve's length grows by a factor
for each preceding
level. The exact dimension of the dragon curve is
or simply
.
Constructing the Dragon Curve with
FractaSketch
Lets construct
the basic dragon curve using FractaSketch.
Step 1: Open the program
FractaSketch. If it is already open, select "New" from the
"File" menu to create a fresh work window. Now choose
"Square" from the "Grid" menu, this will aid in
drawing a seed with the correct configuration. Choose Box 1, from our pallet.
This will instruct the drawing tool to replace segments upward.
Step 2: Click on the
upper left-hand side of the pallet. This will begin the drawing.
Step 3: Precede in a
45° angle from the horizon to the lower center and click.
Step 4: Choose Box
4, to change the orientation downward. Proceed with a segment of equal length
45° upward to the upper right-hand corner and click. Your seed should look like
Figure 3.64.
Figure 3.68 The
dragon curve 'seed' drawn in FractaSketch.
Step 5: End by double clicking. It
is that simple. The two lines should form a right angle symmetric about the
vertical axis.
Step 6: Now lets
view the different levels of the dragon curve.
Start at level 1. You should see
an image in the shape of a giant "V". You might want to select
"Reduce" from the "Scale" menu to ensure the entire fractal
will be visible on the screen.
Step 7: Try level
2. The curve should resemble a pot with a handle.
Step 8: Precede with
higher levels. After roughly level 10,
you should begin to see the dragon curve area filling-in. See how powerful the
visual transformation of the dragon curve is.
Jurassic Park
FIRST ITERATION
" At the earliest drawings
of the fractal curve, few clues
to the underlying mathematical structure will be seen "
IAN MALCOLM
Figure 3.69 Cover for
Chapter 1 of the book Jurassic Park.
In the book
Jurassic Park[29], the dragon curve is used
as an expressive visual metaphor. What is wrong with it?[30] Each chapter has a corresponding dragon curve
illustration, as if to show subliminally how complexity can be contrived
from simpler beginnings. The book uses
fractal geometry and chaos theory to explain the instabilities in creating
dinosaurs from DNA.
The basic
dragon curve makes the ultimate Lego set, building blocks or puzzle. Each
dragon curve fits exactly next to another, connecting a chain of tiles see
Color Plate 6. By varying the orientation and the positioning of the initial
pair of seed lines, a host of varying fractals can be produced see The Dragon Matching Game below.
The Dragon Matching Game
In the fractal world, simple shapes with simple
rules can create very complex-looking objects. The dragon curve is a good
example. Let’s explore it further.
As it replicates itself, each line of the initial
seed can be oriented in four different directions: upward from left to right, upward from right to left, downward
from left to right, and downward from right to left. Since there are two line
segments in the seed, with four possible orientations each, there are a total
of sixteen possibilities. What would happen if we changed the orientation of
the two line segments in this basic example?
There are
certain things we can predict about our curves. The same seed will create an
area-filling, two-dimensional picture, regardless of which way the fractal’s
lines are pointing. We start with similar line lengths, and each pattern is generated
to level , that is each seed is replaced
times or has
generations This results in to
or simply
line segments for
each image. Since the seeds are mirror images of one another, their outcomes
reflect this. On the opposite page you can see the results. Since some of the
seeds produce duplicate patterns, they are shown only once. Below are the
seeds:
Figure 3.70. Sixteen
seeds from the same two line.
Match the seeds
with their resulting transformations. At first, try to pair the seeds with
their outcome without using FractaSketch.
Figure 3.71. Drawing
grid.
Helpful hint:
Use graph paper to draw the fractal by hand. Starting a seed on paper with
squares 32 x 16 is most useful. After just a few replacement levels you should
start to see a pattern emerge.
Figure 3.72 .
Ten different patterns produced from sixteen seeds.
Dragons can
also be made using other constructions. Here is one called Spinning Dragon[31] that starts out with humble
origins that gives the illusion of motion as continuously higher levels are
drawn.
Figure 3.73 Various
levels of the Spinning Dragon.
Dragon curves
can also be made from IFS as seen in Chapter 6 and L-systems discussed in
Chapter 7.
Growing Fractal Forests and Gardens with Finite
Segments and Prepositional Widths
" The
kingdom of heaven is like a grain of mustard seed, which a man took, and sowed
in his field: Which indeed is the least of all seeds: but when it is grown, it
is the greatest among herbs, and becometh a tree, so the birds of the air come
and lodge in the branches thereof."
Saint Matthew 13: 31,32 from King James Bible
As an oak develops from a tiny acorn, so too can a
fractal be generated from a simple seed. We will grow fractal: cacti, trees,
ferns, plants, along with other items found in nature. Starting from our basic
seed shapes we will create increasingly complex objects of nature from
successive generations. The true fractal is reached only after an infinite
number of generations have been created which in the physical world we can
only approximate. Early generations
often give us good approximations of the final fractal picture. Later on we
will discuss techniques to speed up fractal generation with greater detail .
Our plants are grown with seeds made with straight
lines. This is not as limiting as you might think. With these lines, it is easy
to create close approximations to curved fractals as you will see in the next
section.
The Cactus
Plant
The cacti in our
garden are an elegant demonstration of how fractals can loose a ridged form and
acquire a rounded appearance. All three cactus fractals below are created from
straight line seeds with a similar configuration. Their only difference is the
progression downward of the two end line's slope.
Figure 3.74 Cactus
plants from similar fractal seeds.
Growing
a Cactus using FractaSketch
Figure 3.75 The cactus fractal
seed in FractaSketch.
Each line segment is replaced by the whole seed in
successive generations. The arrowhead denotes orientation. We create the
following four generations.
Figure 3.76 Cactus going through
the following stages of growth.
Now try growing your own fractal
cacti and see how changes in line position can effect your plant's appearance.
Growing Trees
from Fractal Seeds
" I think that I shall never
see, a geometry more beautiful than a tree." [32]
- a
slight alteration of Alfred Joyce Kilmer poem Trees (1914)
The tree is a prime example of the fractal structure
found in plants. To obtain the greatest exposure from air and sunlight, trees
of all different sizes and dimensions grow striving to fill space with their
branches. Our garden here is in the plane of a computer screen, so we will
limit ourselves to trees that approach two-dimensions.
Trees and Fractals
The growth of any plant is
not random. It follows given patterns. The branch growth from a tree depends on
its species and individual genetic disposition. As a tree grows its general pattern will stay the same but the
length of branches will change depending on the development of the tree crown,
the age of the tree, and the varying light conditions which influence the
tree's growth.
For most trees the growing
regions are found in budding areas on a branch. These areas are called the
meristem, from the leaves in these areas will develop next year's branches. The
location on the branch and the relative distances between the leaves are
determined by the tree species. New branches will grow out from these leafed
regions resulting in an increased fractal level. The relative length of
branches is given by the location of the branch in relation to its next lower
order. Without any outside influence, such as physical damage or light
competition, the relative growth of these side branches will stay
constant. We will use the branch of a
European beech and a branch of an elm tree as templates in the FractaSketch to
show how higher order branches can be created. Figure 3.77 shows a European
beech branch with 4 levels of replication, its fractal dimension is , and Figure 3.78 shows the elm branch also with 4 levels
with fractal dimension of
. More species types
can be simulated with this model possibly varying the branch angles.
Figure 3.77 Fractal
out line of a European beech with .
Figure 3.78 Elm tree
branch with .
As curtain trees age their
crowns become fuller to take greater advantage of their light gathering capabilities
for which a more evenly distributed geometry provides. An example is the open
crown Acacia often referred to as the " Umbrella Tree" found in
Africa. See Figure 3.79 for computer generated Acacia with.
Figure 3.79 Acacia or
Umbrella Tree with .
In Color Plate 17 and Color Plate 18 you can see
some of the different fractal tree structures discussed.
Drawing a fractal tree with straight lines is
somewhat analogous to building a tree out of 2 x 4 s. In the next section you
will get a chance to build trees in such a fashion as well as many others using
FractaSketch.
Figure 3.80 The
blueprints to building a tree.
Basic
Tree Construction with FractaSketch
Lets draw a tree with the following seed created in
FractaSketch see below.
Figure 3.81 This
"Y" seed is the most basic construction for a fractal tree.
Hint: it is easiest to construct a fallen tree, this
is a tree laying 90° on its side. Then when the construction is completed you
can use the "Rotate" feature from the "Scale" menu to put
it in an upright position, see below.
Figure 3.82 This is
tree's side drawing and its corresponding upright rotation.
Lets begin construction of our fallen tree with 3
segments:
Step 1: Chose Box 9, the non
replaced line segment and draw a horizontal line roughly half way across the
screen and click. This will be the tree's trunk.
Step 2: Chose Box 1 and draw the
tree's first branch. This is done by drawing a line from the trunk with an
ascending 45° toward the upper right.
Step 3: Chose Box 0, use this to
back track invisibly to the top of tree trunk( or in our case the right-hand
side). These light gray lines are used to let us draw figures that consist of
non continuous or disconnected sections. In this case we use this feature to
allow us to draw a symmetric branch on the opposite side.
Step 4: Preceded by choosing Box 2.
Next draw a line equal in length to the other branch, only this time it should
descend by 45° toward the lower left. This "branch" should be
symmetric about the tree trunk.
Step 5: Choose Box 0, finish the
drawing by double clicking and rotate the tree into an upright position. When
finished if the "Edit" menu is set to "Left to Right" an
invisible line will be automatically drawn to the tree's middle top, this will
define the seeds length. Otherwise if the "Edit" menu is set to
"First to Last" this will be ignored.
Lets grow our tree starting at level 1. This image
should look like a giant "Y". Proceed to higher levels. See how our
stick figure tree is taking shape.
In nature, a tree's construction has a supportive
structure. Its trunk will generally be longer and proportionally thicker than
the connected branches. Trees use this principle to allow the trunk to support
the limbs that hold the leaves. A tree needs this large area in order to
capture a sufficient amount of sunlight required for photosynthesis.
Our trees can also be viewed with line thicknesses
proportional to segment lengths. This feature can be use by selecting the
"Proportional" command from the "Line" menu[33]. This function can be
repeated several times to reach a desired width. View the fractal tree you have
created at different proportional widths and see which ones look closest to
trees you know see below.
Figure 3.83 Our basic
tree with varying proportional widths.
I know, I know you're saying what tree looks like
the one we have just drawn. Well there is at least one tree[34] that comes close. It is
found in the Joshua Tree National Park in California, USA see figure 3.84 on
the next page.
Figure 3.84 Joshua tree, Joshua Tree National Park,
California © 1989 Ken Crounse, Dynamic Software.
Another classic fractal tree is the 'bush', created
with 8 seed lines. Its dimension is . See Figure 3.81.
Figure 3.85 The Bush
show here with its seed.
Here are some templates and results of familiar
trees. You can create your own fractal trees and see what you come up with.
Figure 3.86 Recognizable structures of familiar
trees.
Trees have different fractal structures that adapt
to various needs. Next time you are in a place with a large verity of trees,
you might take look at the diversity of
trees and categorize them according to their fractal dimension.
The
Trees of Hildesheim.
In the northern region of Germany, trees proudly
exhibit their barren fractal structure until late spring. Nestled in this
region is the town of Hildesheim, here one can see rows upon rows of leafless
trees. These trees, with their striking dark outlines, often accentuated by
golden wheat fields, fading hills and a flowing sky look remarkably close to
tree structures created by FractaSketch. In fact these trees look so much so,
we thought it might be fun to add them to the landscape. Can you find the
fractal forgeries in the picture, see Color Plate 19.
Figure 3.87 A
Euphorbia plant with varied branching structure.
Other trees and plants exhibit different structures.
In Color Plate 20 and Color Plate 21 you can compare examples of plants with
different fractal structures. The first plant exhibits a standard branching
with 1 segment dividing into 2 segments that again divides into 2 also seen in
Figure 3.86, while the second has a branching structure where 1 segment divides
into 2 segments that then divides into 25 segments which again divides into 20
segments as seen in the Euphorbia plant in Figure 3.87. Each structure seems
adapted to a special purpose, the first plant desiring to grow outward while
the second plant tries to create a large outer budding surface with a minimal
amount of structural support.
Fractal Ferns
in Our Forest
Figure 3.88 Bracken Fern, Sierra Nevada, California ©
1989 Michael McGuire[35]
" So much
from so little, its beauty lay in simplicity."
-Dr.
D. von Tischtiegel [36]
Ferns are one of the most beautiful structure found
in nature. On close examination one can see that a fern will not only repeat
itself at several levels of magnification but does so with great simplicity.
The structure of most ferns can be constructed from four lines of information[37]. For these reasons, it has
become a common picture found in books on fractals. We will grow one in our
book too. Start with the following seed.
Figure 3.89 A basic
fern seed.
At first we get growths that look more like ears of
wheat than ferns. These self-similar seeds aid in constructing a variety of
shapes.
As a fern grows to higher and higher levels, it
begins to take its familiar shape as seen below.
Figure 3.90 Growing
levels of a fern.
In order to speedup computational speed and produce
a more evenly distributed fractal, we limit the shortness of each line segment
to a curtain number of pixels.
The fern[38] below is generated until a 5-pixel line length is reached. Also
it is drawn with line thicknesses corresponding to each lines length.
Figure 3.91 A fully
developed fern with a minimum 5 pixel line length.
"The full grown fern is
a marvel to behold" - Peter van Roy
The fractal fern can also be
created by using iterated functions systems or collage methods see Chapter 6.
The Maple
Leaf's Different Seasons.
The maple leaf fractal is an example of an intricate
object that has a compelling mixture of order and apparent randomness. It is
hard to create fractals with just the right proportions of order and randomness
to be pleasing to the eye. In that sense, creating fractals from seeds is like
composing a musical score: achieving the best effect requires mastery. Lots of
practice and examples of good pictures are needed to gain a true insight. For
example, consider the maple leaf seed. Initially it looks more like a high
speed plane then a leaf see below.
Figure 3.92 The maple
leaf seed.
Notice: the
dark gray lines are drawn by Boxes 5-8. These line tools invert the picture
when drawing. The light gray line of Box 0 lets us draw disconnected figures,
discussed in FractaSketch manual section.
Through the apparent magic of fractal
transformations this is what our full grown object becomes.
Figure 3.93 The
changing seasons of our maple leaf.
The fractals
in our forest show the variety of shapes that can result by using the simple
recipe of replacing line segments with miniature copies of the whole shape. We
have only just begun to explore the richness of the world of fractal geometry.
In Chapter 4 we will discuss discus various ways to calculate the fractal
dimension of the objects including many of the images we have created here.
Coral reefs exhibit fractal branching that is
exhibited in aggregate growth fractals. Sea cucumbers do fractal food
gathering. There is a species that has
an antenna that branches and fills space like a tree. When enough food is captured in the tree, it is folded into a
rope-like structure (a bunch of strands, one dimensional) and put into the
creature's mouth. The change of dimension is very useful for gathering food: as
a tree, it can capture lots of plankton, as a rope, it is easily put into the
mouth. A Nautilus of the sea uses self-similar growth patterns to expand its
habitat in continually larger stages.
Figure 3.94 A sea cucumber that uses a
transformation of a linear fractal to gather food.
Figure 3.95 A Nautilus
of the sea and a similar structured linear fractal, just one of a infinite
number left for you to explore.
For a wide range of other fractals created straight
line seeds as in this chapter see fractal gallery found in Appendix B.
[1]Hermite and Stielties 1905, II, page 318
[2] FractaSketch was developed by Peter Van Roy. It is published by Dynamic Software a group of mathematicians and developers closely associated with the chaos and dynamics research group at the University of California, Santa Cruz and at the University of California, Berkeley.
[3] The book Fractal Exploration on the Macintosh comes with FractaSketch 1.2, to make extensive edits you will need a version of FractaSketch 1.39 or greater.
[4]Early on in his career, he was greatly influenced by his professor Karl Weierstrass, another pioneer of nontraditional mathematics. He published a set of fractal function before Cantor in 1882.
[5]Über unend, lineare Punktmannigfaltigkeiten V, Mathematische Annalen 21 (1883) pages 545-591
[6]On the Cantor set the visual structure begins to be lost on the computer screen after about level 4 due to the finite resolution limits of the computer screen (generally 72 dots per inch). This pixelation results because the computer screen is using a finite discrete number of points to display an infinitely complex object. This process is analogous to looking for remnants of microorganisms in a family photo. After a certain level of magnification, a magnifying glass can no longer extract meaningful visual information, the resolution is limited to the grains that comprise the photograph.
[7]See article by C.R. Wall, Terminating decimals in the Cantor ternary, Fibonacci Quarterly 28.2 published 1990 pages 98-101
[8]A Wrinkle in Time by Madeleine L'Engle (1962), Dell Publishing New York, NY page 77-78, a children's story, here the young Charles is explaining to the older Meg how dimension can be used to " ... travel through space without having to go the long way around."
[9]Curves here are used to describe any continuous function.
[10]Notes: If you shade your cube and you are use a graphics program like Adobe PhotoShop™, PixelPaint™ or Fractal Design Painter™ [10],try using the white transparent feature. This will let you peer through your cube in the non-colored regions, enhancing the appearance of its fractal structure.
[11] Quoted by G. D. Fitch in Manning's " The Fourth Dimension Simply Explained, " (New York 1910) , page 58.
[12] An interesting historical footnote, a prominent mathematician of Hilbert's time Leopold Kronecker inspired him in his work, but had criticized similar work of Cantor for containing little substance.
[13]In order to construct this pattern in FractaSketch you will need version 1.4 or greater where linking features are supported.
[14] Example from Carl Hansen's unpublished work.
[15] From the book Fractaland™ by Bernt Wahl unpublished work, still in progress first ed. by Dynamic Publishing Co., P.O. Box 7534 Santa Cruz, California 95061.
[16] In the Swedish journal Arkiv för Matematik, Astronomi och Fysik vol. 1, 1904 pages 681-704. An English translation, Studies in Non-linearity Classics on Fractals pages 25-45 Edited by Gerald A. Edgar (1993) Addison-Wesley Publishing Co. Reading, MA.
[17]The old saying that "No two snowflakes are alike", was shown to be incorrect by creating two identical snowflakes under the same conditions. However snowflakes are a good example of how small changes in initial conditions results in an almost countless number of different snowflakes. Snowflakes exhibit six similar segments but from the initial bond the pattern that forms will depend on the temperature and the density of water vapor around the crystal forming. I'd like to offer a challenge to the first person to determine the finite number of snowflakes possible of less than 10 grams.
[18]From Snow Crystals by W.A. Bentley and W.J. Humphreys (1931) published McGraw-Hill Book Company, Inc. reprinted by Dover Publications (1962) a collection of thousands of different snowflakes.
[19] From Sailing and Seamanship by The U.S. Coast Guard Auxiliary (1985) sections 8-2 and 8-4.
[20]Along
with another curve with an odd positive
integers and b an even positive integers, and introduced earlier by Karl Weierstrass in a paper to The Royal
Prussian Academy of Sciences titled English translation, On Continuous
Functions of a Real Argument that do not have a Well-defined Differential
Quotient (1872) . An English translation, Studies in Non-linearity Classics on
Fractals pages 2-9 Edited by Gerald A. Edgar (1993) Addison-Wesley Publishing
Co. Reading, MA.
[21] Martin Gardner (1976) December Scientific American pages 124-133 credits William Gosper with its origin.
[22]From Chu Shih-chieh's Precious Mirror of the Elements, published 1303.
[23] From Tartaglia's General trattato first triangular construction in Europe, published in 1556.
[24] A binomial tree has symmetric values on each side, but since the two center values in row eight are different their is an error. The correct value is on the right side, apparently the calligrapher missed a brush stroke.
[25]Fractal skewed web as referred to page 142 in Fractal Geometry of Nature by Benoit Mandelbrot (1982).
[26] The dragon curve is also referred to as the Harter- Heightway curve, see articles Martin Gardner Scientific American April 1967, C. Davis and Donald Knuth Numbers Representation and Dragon Curves, Journal of Recreational Mathematics 3, 1970.
[27] If you want to create your own fractal patterns out of paper, there is a good book on the subject, "Folding the Universe" by Peter Engel, published by Vintage Press, 1989. A large part of this origami book is devoted specifically to fractal construction.
[28]FractaSketch uses the same type recursion to form its fractals, but the user never has to calculate the formula because FractaSketch automatically converts it as part of it graphical user interface.
[29] Jurassic Park by Michael Crichton (1990) published by Ballantine Books, New York, NY.
[30]It
is not the first iteration level of the dragon curve it is the fourth level,
this was done because it looks more interesting than .
[31]It was created by the writer of FractaSketch, Peter van Roy, and thus we have also affectingly given it the nicknamed Pete's dragon.
[32] Alfred Joyce Kilmer true version is " I think
that I shall never see, a poem as lovely as a tree." Its ending line is quite fitting "
Poems are made by fools like me, but only God can make a tree."
[33] Requires FractaSketch 1.39 or greater.
[34] This tree is so well known to our dynamics group that we just referred to it as Ken's tree.
[35] From a collection of pictures found in Michael McGuire's book An Eye For Fractals (1991) by Addison-Wesley Publishing Co.
[36] Can Logic Programming Execute As Fast As Imperative Programming? by Peter van Roy Referenced Dr. D. von Tischtiegel 1991, revised ed. 1994.
[37] Or six position points, using iterated function system see chapter 6.
[38]This minimum line length feature is found in FractaSketch 1.39 or greater. It is activated by selecting "Level ∞" from the "Draw" menu. You can change the minimum length of each line segment by selecting "Higher" or "Lower" from the "Draw" menu as often as you like.