                            ::::::::::::::::::::: 
                            F R A C T   V.  2 . 1 
                            ::::::::::::::::::::: 

:::::::::::::
What is it?
:::::::::::::

Fract is a simple programm to create images of the following fractals
types:
     
Mandelbrot set
Julia set of z^2+c, c*sinz, c*cosz, c*expz
Spider
Phoenix
Glass
Noel1
Noel2
Newton Power
Tetrate
Barnsley1
Barnsley2
Barnsley3

The image created is saved in GIF format;  a ".dat" text file contains
all the information of the computed image.

::::::::::::::::
How to use it? 
::::::::::::::::

The syntax is :
              
fract {-m -j -s -c -e -sp -ph -g -n1 -n2 -nw -t -b1 -b2 -b3 -f filename}
      [-x] [-y] [-r] [-i] [-deg]
      [-x1] [-x2] [-y1] [-y2]
      [-o] [-p]
Params in [] are optional

The first flag MUST be the one that specifies the fractal type:      

-m  : Mandelbrot set.      Default settings: 
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2)
                           Perturbation: 0   

-j  : Julia set of z^2 +c. Default settings:
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2) 
                           Constant: -1 

-s  : Julia set of c*sinz. Default settings:
                           Top Left Corner: (-4,4)
                           Bottom Right Corner: (4,-4)
                           Constant: 1 + 0.1i
                          
-c  : Julia set of c*cosz. Default settings:
                           Top Left Corner: (-4,4)
                           Bottom Right Corner: (4,-4)
                           Constant: 1

-e  : Julia set of c*expz. Default settings:
                           Top Left Corner: (0,2)
                           Bottom Right Corner: (4,-2)
                           Constant: 1

-sp : Spider.              Defeault settings:
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2)
                           Perturbation: 0
                          
-ph : Phoenix.             Default settings: 
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2)
                           Perturbation: 0   

-g  : Glass.               Default settings: 
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2)
                           Perturbation: 0   

-n1 : Noel1.               Default settings: 
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2)
                           Perturbation: 0   

-n2 : Noel2.               Default settings: 
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2)
                           Perturbation: 0   

-nw : Newton Power.        Default settings: 
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2)
                           Degree: 3
                           Constant: 1   

-t  : Tetrate.             Default settings: 
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2)
                           Perturbation: 0   

-b1 : Barnsley1.           Default settings:
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2) 
                           Constant: 0.6+1.1i

-b2 : Barnsley2.           Default settings:
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2) 
                           Constant: 0.6+1.1i

-b3 : Barnsley3.           Default settings:
                           Top Left Corner: (-2,2)
                           Bottom Right Corner: (2,-2) 
                           Constant: 0.1+0.36i

-f filename: if you prefer,the programm reads datas from a text file.
             The file must have the following format:
             width
             height
             fractaltype
             degree
             constant or perturbation real part
             constant or perturbation imaginary part
             the lowest x value
             the highest x value 
             the lowest y value
             the highest y value  
             
'fractaltype' must have one of the following values:
0="Mandelbrot set";
1="Julia set of z^2+c";
2="Julia set of c*sinz";
3="Julia set of c*cosz";
4="Julia set of c*expz";
5="Spider";
6="Phoenix";
7="Glass";
8="Noel1";
9="Noel2";
10="Newton";  
11="Tetrate";
12="Barnsley1";
13="Barnsley2";
14="Barnsley3"; 

'degree' has effect only with "Newton",but you have to specify it all the same.
Here is an example that show how to create a 320*200 image on julia set
of c*sinz using where c = 1+0.1i and the corners of computation are
(-4,4) , (4,-4):
320
200
2
0
1
0.1
-4
4
-4
4 

Optional parameters: 
                              
The default resolution is 640*480 pixels ; you can change it with the
'-x width' and '-y height' flags.

-x1 , -x2 , -y1 , -y2 : set corners for computation 

[-r]   : set perturbation or constant (it depends on the fractal type) real
         part 

[-i]   : set perturbation or constant imaginary part

[-deg] : set degree for Newton Power. It must be greater than 2;
         otherwise the default value (that is 3) is used.

[-o]   : set output file name; ".gif" extension is not necessary.
         The text file has the same name of the image, but the extension is 
         ".dat". Default names are "out.gif" and "out.dat" 

[-p]   : set "Fractint style" palette file. Default is "vga.map" 


:::::::::::
Compiling
:::::::::::

To compile the program type: 
cc -O3 fract.c -o fract -lm 


:::::::::
Author
:::::::::

Massimo Casal
Viale Volontari della Liberta' 36/2
33100 Udine
Italy

E-mail addresses:
Internet: casal@udmi5400.cineca.it
          mcasal@nyx.cs.du.edu
Decnet  : UDMI54::CASAL
Fidonet : 2:333/511.0
