3. Basic fractal information
|
|
|||
|
||||
|
Where can I find more information about fractals on the web? |
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|||
3a. |
What is a fractal? What are some examples of fractals? |
|
|
A fractal is a rough or fragmented geometric shape that can be subdivided in parts, each of which is (at least approximately) a reduced-size copy of the whole. Fractals are generally self-similar and independent of scale.
|
3b. |
Where can I find more information about fractals on the web? |
|
|
There are many good fractal articles and tutorials available at different sites. Several useful links are given in each of the corresponding sections of this FAQ, but you can also use a search engine, with appropriate keywords, to spark off your interest or curiosity.
|
3c. |
Are there natural fractal structures? |
|
|
Yes, fractals describe many real-world objects, such as clouds, mountains, coastlines, roots, branches of trees, blood vessels, and lungs of animals; perhaps the structure of the universe itself... (all those structures do not fit into simple geometric shapes). They can also describe quite well natural phenomena such as percolation of liquids in porous materials (like soils), distribution in the time of river floods, Brownian motion... |
3d. |
What are the main different types of fractal images? |
|
|
Fractals can be subdivided into several groups. The following list does not pretend to be exhaustive.
|
3e. |
What are recursion and iteration? |
|
|
An iteration is a mathematical (or geometrical) operation that is repeated a certain number of times to reach (or approximate) the final result. The division of 10 by 3 gives a result of 3 and a remainder of 1. The division of 1 by 3 gives a result of 0.3 and a remainder of 0.1. The division of 0.1 by 3 gives a result of 0.03 and a remainder of 0.01. Therefore 3+0.3+0.03...=3.33... is the approximate value of 10/3 and you see that the division algorithm is iterative. from Third Apex to Fractovia.(http://www.fractovia.org/what/what_ing1.html) The algorithm can be written as follows:
The Cantor procedure contains a call to itself. Therefore, it repeats itself endlessly on every segment obtained by the previous call. If you try to execute this procedure with a computer, it will never stop! That’s why it is necessary to add a stopping condition after a given number of iterations. let a segment L; let N be equal to 0; Beginning of the procedure "Cantor" (to apply to any segment); let N be N+1 (N is a counter); if N=10 (or any other number) then exit the procedure (stopping condition); erase the central 1/3 of the segment; do again the procedure "Cantor" on the resulting segments (this is the recursion); End of the procedure; Now, the procedure will stop after 10 iterations. let a segment L; let N be equal to 0; Beginning of the procedure "Koch"; let N be N+1; if N=10 then exit the procedure; erase the central 1/3 of the segment; replace it with 2 segments of length 1/3; do again the procedure "Koch" on the resulting segments; End of the procedure; |
3f. |
What are iterated complex polynomials? |
|
|
Complex polynomials are used to draw the well known images of Julia and Mandelbrot sets. The first researches about iteration of complex polynomials were those of Julia (1918) and Fatou (1919-1920). In spite of the fact that Julia’s name is the most known among the world of fractal artists, the works of Fatou, which were developed independently, are closely related and complementary.
where c is an arbitrary constant and z is a variable. Moreover, z and c are complex numbers (see section 4). Now we write
and start, for example, with z=0. This means that the first value of the polynomial (at the first iteration, i.e. when n=1) is c. Now, for the second iteration (n=2), the value of z is c; the result of the first iteration and the polynomial has now value c2+c. The polynomial will be iterated endlessly, giving to z, at each time, the value of the polynomial computed in the previous iteration. |
3g. |
What is an iterated function system (IFS)? |
|
|
IFS is a type of fractal introduced by Michael Barnsley. This kind of fractals is not easy to explain to non-mathematician readers, but fundamentally, the structure of these fractals is described by a set of affine (linear) functions which compute the transformations undergone by each point by homothety, translation, rotation. Each transformation uses 2 functions to change the coordinate (x,y) of a point to the coordinates (x1,y1) of a new point:
To draw 3D IFS, 3 affine functions are necessary (the fact that the coefficients of the affine functions define a matrix and the constant terms, a vector, might not be of great importance for some of you).
In this syntax, the first 4 numbers of a line are the coefficients a, b, c, d, of the couple of transformation functions, the 2 which follow are the constant terms e, f, and the number at the right end is the probability for each transformation to be applied. Here, 3 transformations of equal probability are needed (the last value being rounded to give a sum of 1) and the constant term 0.8660254 is sin 60°.
Barnsley’s book Fractals Everywhere 2nd edition (June 1993: Morgan Kaufmann Publishers. ISBN: 0120790610) is mainly about iterated function systems. |
What is a strange attractor? |
|
|
To describe what is a strange attractor, it is necessary to explain what are space of phase and attractor. Difficult? It is not. An example of a strange attractor in a 3D space of phase |
3i. |
What are flame fractals? |
|
|
From a theoretical point of view, “flame” fractals are not a distinct type of fractal.
|
3j. |
What are L-systems? |
|
|
L-systems, or Lindenmayer systems, were not invented to create fractals but to model cellular growth and interactions. A L-system is a formal grammar to transform, by iteration, a starting string of characters into another string. The transformation is based on rules that specify how characters or sub strings are substituted by others. By recursively applying the rules of the L-system to an initial string, a string with fractal structure can be created. Dragon { ; Name of lsystem, { indicates start Angle 8 ; Specify the angle increment to 45 degrees (360/8) Axiom FX ; Starting character string F= ; First rule: Delete 'F' y=+FX--FY+ ; Change 'y' into "+fx--fy+" x=-FX++FY- ; Similar transformation on 'x' } ; final } indicates end The standard drawing commands are: F Draw forward G Move forward (without drawing) + Increase angle - Decrease angle | Try to turn 180 degrees. (If angle is odd, the turn will be the largest possible turn less than 180 degrees.) Dragon curve after 10 iterations
Prusinkiewicz is the initiator of the use of L-systems to model the logic of the plant structure (branching...). Many plants exhibit fractal patterns. L-systems are very useful for generating realistic plant structures, but can also be used to create strange and spectacular objects. The best results are obtained when the output of the program is processed by a ray-tracing program. Some references are:
|
3k. |
What are fractal terrains? |
|
|
Drawing landscapes with computers was one of the first artistic uses envisaged for fractals. Mandelbrot himself has made some studies, and some other authors have written programs with spectacular results. Fractal landscapes have been used, for example, in Star Trek II. One of the best known creators of fractal landscapes is Ken Musgrave, who worked first with Mandelbrot.
To have a 3D terrain, a plane is divided into several areas (squares for examples) by means of a mesh. A random vertical displacement (in a given range of values) is applied to the middle point of each area. Then, each area is subdivided in the same way (recursively) and a random displacement is applied to the middle point of each resulting area, but the maximum range of this displacement is the initial range divided by some coefficient. The process is repeated a great number of times. Depending the grid used and the value of the coefficient, the generated surfaces give rather realistic and various images of terrains (of course the grid must not be drawn in the final image and the generated surface must be colored and post-processed by a ray-tracing algorithm).
Explanations with illustrations can be found at:
|
What is fractal music? |
|
|
In the strictest sense, Fractal Music is the term for music derived from fractal algorithms. Instead of iterating an equation and applying the results to color a pixel (as with fractal graphics), they are applied to audio parameters. Most common is to apply the results to MIDI parameters, though application to wav is not unheard of, and the proposed MP-4SA format may spawn many new applications. As with fractal imagining software, the actual mapping of equations onto musical parameters, subsequent filtering and other transforms are at the discretion of the software author. The scope of what can be created musically is as infinite as the realm of fractal graphics. What types of fractal music are there? Pure Fractal Music Workable Fractal Music Generative Music Hybrid Fractal Music Non-Computer-Generated Fractal Music Fractal lullaby (created with Musinum by JPL) Some links
|