IFS Mode

The IFS Window displays the code for the current IFS. The Fractals menu contains a list of all the IFS codes that are available. If the IFS has a name and you make a change to the code, an asterisk will be appended to the end of the name in the title bar of the IFS Window as a reminder.

If the folder that contains IFS Exploration also has a file called default.ifs, then that file will automatically be read when the program starts, and the first IFS in the file will be displayed in the IFS window. If no default.ifs is found, the program will look for a file called default.chg containing chaos game moves. If such a file is found, then that file will automatically be read and the program will start in the Chaos Game mode. Otherwise the program will start with an IFS window containing only one function representing a scaling by 1/2.

To load an IFS file from disk, choose File/Open IFS File or press ctrl-O. IFS files are text files using the same format as for the program Fractint. Each IFS is described using the following syntax:

Heighway {; Heighway Dragon                                                     
; Edgar, "Measure, Topology, and Fractal Geometry"                    
; Page 19                                                            
   0.5 -0.5  0.5  0.5  0  0  0.5 
  -0.5 -0.5  0.5 -0.5  1  0  0.5 

The first line contains the name of the fractal followed by an opening bracket {. Anything after a semi-colon is treated as a comment and ignored as part of the code (although comments can be displayed from within IFS Exploration.) There can be up to 20 lines of comments, each of length less than 70 characters.

Following the comments (if any) are lines representing each affine transformations in the IFS. There should be 6 or 7 numbers on each line. The first four are the entries of the matrix. The next two are the entries of the translation vector. If there is a 7th number on the line, it will represent a probability. The numbers in each line should be separated by spaces, tabs, or commas. There can be at most 100 transformations in each IFS.

A closing bracket } on its own line will indicate the end of the IFS definition.

A file should contain at most 30 different iterated function systems.

The following image shows the IFS window for the Heighway Dragon corresponding to the file entry shown above. This is the default Matrix Compact Form.

The IFS consists of two functions. They can be written in terms of affine transformations as

The four numbers in the matrix are represented by the columns a, b, c, and d. The two numbers in the translation vector are represented by the columns e and f. The last column shows the probability assigned to each function. You can only type decimal values or fractions in these textboxes. To enter a more complicated mathematical expression, press Ctrl-Alt-E to bring up the Evaluation dialog box in which you can type the expression you want to evaluate. See Evaluating Math Expressions for more details.

Next to each function is a box whose color is used to help identify that function in the Design and Fractal windows. The colors can be changed by clicking in the box to bring up the standard Window's Color Dialog. The image below shows the transformations using the Matrix Function Form. This form can only be used if there are at most 35 functions in the IFS. If you are in the Matrix Function Form when you add functions that will exceed this 35 limit, or when you open a file with more than 35 functions, the IFS Window will be reset to the Matrix Compact Form.

Just underneath the box displaying the number of functions is the symbol ©. This indicates that there are comments associated with this IFS. Click on the © and hold down the mouse button to read the comments.

The final items to notice in the IFS window are the two coordinate systems at the bottom. The one on the left is the coordinate system used in the Fractal window. By default a square scaling is chosen so that the entire fractal will be visible in the window when drawn. The coordinate system on the right is used for the Design window. The default values are again chosen so that the entire design will be visible. You may change any of the values defining the minimum and maximum coordinates of the windows. Choose Scale to Fit from the appropriate Design or Fractal menu to restore the coordinate systems to their default values.

From the Code menu, choose Scale/Rotation Form. The functions will now be displayed in a different format.

The first two columns show the scaling in the x and y directions respectively. The next two columns show how the matrix will rotate horizontal and vertical lines respectively. In this example we see that both functions scale by .707 (or sqrt(2)/2). The first function rotates by 45 degrees while the second function rotates by 135 degrees.

The Code Menu also allows you to set the probabilities to be equal for all functions or assigned in a way that is proportional to the determinant (ad-bc) of the matrices. If you want to add any comments to the IFS code, click on Add Comments from the Code menu. This will bring up a small text window in which you can add up to 20 lines of comments, each at most 70 characters. The comments will be saved with the IFS code.