This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Julia set" – news ·newspapers ·books ·scholar ·JSTOR(July 2021) (Learn how and when to remove this message) |

Incomplex dynamics, theJulia set and theFatou set are twocomplementary sets (Julia "laces" and Fatou "dusts") defined from afunction. Informally, the Fatou set of the function consists of values with the property that all nearby values behave similarly underrepeated iteration of the function, and the Julia set consists of values such that an arbitrarily smallperturbation can cause drastic changes in the sequence of iterated function values.Thus the behavior of the function on the Fatou set is "regular", while on the Julia set its behavior is "chaotic".
The Julia set of a function f is commonly denoted and the Fatou set is denoted[a] These sets are named after the French mathematiciansGaston Julia[1] andPierre Fatou[2] whose work began the study ofcomplex dynamics during the early 20th century.
Let be a non-constantmeromorphic function from theRiemann sphere onto itself. Such functions are precisely the non-constantcomplexrational functions, that is, where and arecomplex polynomials. Assume thatp andq have no commonroots, and at least one hasdegree larger than 1. Then there is a finite number ofopen sets that are left invariant by and are such that:
The last statement means that the termini of the sequences of iterations generated by the points of are either precisely the same set, which is then a finite cycle, or they are finite cycles of circular or annular shaped sets that are lying concentrically. In the first case the cycle isattracting, in the second case it isneutral.
These sets are the Fatou domains of, and their union is the Fatou set of. Each of the Fatou domains contains at least onecritical point of, that is, a (finite) pointz satisfying, or if the degree of the numerator is at least two larger than the degree of the denominator, or if for somec and a rational function satisfying this condition.
The complement of is the Julia set of. If all the critical points are preperiodic, that is they are not periodic but eventually land on a periodic cycle, then is all the sphere. Otherwise, is a nowhere dense set (it is without interior points) and anuncountable set (of the samecardinality as the real numbers). Like, is left invariant by, and on this set the iteration is repelling, meaning that for allw in a neighbourhood ofz (within). This means that behaves chaotically on the Julia set. Although there are points in the Julia set whose sequence of iterations is finite, there are only acountable number of such points (and they make up an infinitesimal part of the Julia set). The sequences generated by points outside this set behave chaotically, a phenomenon calleddeterministic chaos.
There has been extensive research on the Fatou set and Julia set of iteratedrational functions, known as rational maps. For example, it is known that the Fatou set of a rational map has either 0, 1, 2 or infinitely manycomponents.[3] Each component of the Fatou set of a rational map can be classified into one offour different classes.[4]
The Julia set and the Fatou set off are bothcompletely invariant under iterations of the holomorphic functionf:[5]
For the Julia set is the unit circle and on this the iteration is given by doubling of angles (an operation that is chaotic on the points whose argument is not a rational fraction of). There are two Fatou domains: the interior and the exterior of the circle, with iteration towards 0 and ∞, respectively.
For the Julia set is the line segment between −2 and 2. There is oneFatou domain: the points not on the line segment iterate towards ∞. (Apart from a shift and scaling of the domain, this iteration is equivalent to on the unit interval, which is commonly used as an example of chaotic system.)
The functionsf andg are of the form, wherec is a complex number. For such an iteration the Julia set is not in general a simple curve, but is a fractal, and for some values ofc it can take surprising shapes. See the pictures below.

For some functionsf(z) we can say beforehand that the Julia set is a fractal and not a simple curve. This is because of the following result on the iterations of a rational function:
Theorem—Each of the Fatou domains has the same boundary, which consequently is the Julia set.[citation needed]
This means that each point of the Julia set is a point of accumulation for each of the Fatou domains. Therefore, if there are more than two Fatou domains,each point of the Julia set must have points of more than two different open sets infinitely close, and this means that the Julia set cannot be a simple curve. This phenomenon happens, for instance, whenf(z) is theNewton iteration for solving the equation:
The image on the right shows the casen = 3.
A very popular complex dynamical system is given by the family ofcomplex quadratic polynomials, a special case ofrational maps. Such quadratic polynomials can be expressed as
wherec is a complex parameter. Fix some large enough that (For example, ifc is in theMandelbrot set, then so we may simply let) Then the filled Julia set for this system is the subset of the complex plane given by
where is thenthiterate of The Julia set of this function is the boundary of.
The parameter plane of quadratic polynomials – that is, the plane of possiblec values – gives rise to the famousMandelbrot set. Indeed, the Mandelbrot set is defined as the set of allc such that isconnected. For parameters outside the Mandelbrot set, the Julia set is aCantor space: in this case it is sometimes referred to asFatou dust.
In many cases, the Julia set ofc looks like the Mandelbrot set in sufficiently small neighborhoods ofc. This is true, in particular, for so-calledMisiurewicz parameters, i.e. parametersc for which the critical point is pre-periodic. For instance:
In other words, the Julia sets are locally similar aroundMisiurewicz points.[6]
The definition of Julia and Fatou sets easily carries over to the case of certain maps whose image contains their domain; most notablytranscendental meromorphic functions and Adam Epstein'sfinite-type maps.
Julia sets are also commonly defined in the study of dynamics in several complex variables.
The below pseudocode implementations hard code the functions for each fractal. Consider implementingcomplex number operations to allow for more dynamic and reusable code.
R=escaperadius# choose R > 0 such that R**2 - R >= sqrt(cx**2 + cy**2)foreachpixel(x,y)onthescreen,do:{zx=scaledxcoordinateofpixel;# (scale to be between -R and R)# zx represents the real part of z.zy=scaledycoordinateofpixel;# (scale to be between -R and R)# zy represents the imaginary part of z.iteration=0;max_iteration=1000;while(zx*zx+zy*zy<R**2ANDiteration<max_iteration){xtemp=zx*zx-zy*zy;zy=2*zx*zy+cy;zx=xtemp+cx;iteration=iteration+1;}if(iteration==max_iteration)returnblack;elsereturniteration;}
R=escaperadius# choose R > 0 such that R**n - R >= sqrt(cx**2 + cy**2)foreachpixel(x,y)onthescreen,do:{zx=scaledxcoordinateofpixel;# (scale to be between -R and R)zy=scaledycoordinateofpixel;# (scale to be between -R and R)iteration=0;max_iteration=1001;while(zx*zx+zy*zy<R**2ANDiteration<max_iteration){xtmp=(zx*zx+zy*zy)^(n/2)*cos(n*atan2(zy,zx))+cx;zy=(zx*zx+zy*zy)^(n/2)*sin(n*atan2(zy,zx))+cy;zx=xtmp;iteration=iteration+1;}if(iteration==max_iteration)returnblack;elsereturniteration;}
Another recommended option is to reduce color banding between iterations by using a renormalization formula for the iteration.[7]
Such formula is given to be,
where is the escaping iteration, bounded by some such that and, and is the magnitude of the last iterate before escaping.
This can be implemented, very simply, like so:
# simply replace the last 4 lines of code from the last example with these lines of code:if(iteration==max_iteration)returnblack;elseabs_z=zx*zx+zy*zy;returniteration+1-log(log(abs_z))/log(n);
The difference is shown below with a Julia set defined as where.
The Julia set for is the unit circle, and on the outer Fatou domain, thepotential functionφ(z) is defined byφ(z) = log|z|. The equipotential lines for this function are concentric circles. As we have
where is the sequence of iteration generated byz. For the more general iteration, it has been proved that if the Julia set is connected (that is, ifc belongs to the (usual) Mandelbrot set), then there exist abiholomorphic mapψ between the outer Fatou domain and the outer of the unit circle such that.[8] This means that the potential function on the outer Fatou domain defined by this correspondence is given by:
This formula has meaning also if the Julia set is not connected, so that we for allc can define the potential function on the Fatou domain containing ∞ by this formula. For a general rational functionf(z) such that ∞ is a critical point and a fixed point, that is, such that the degreem of the numerator is at least two larger than the degreen of the denominator, we define thepotential function on the Fatou domain containing ∞ by:
whered =m −n is the degree of the rational function.[9]
IfN is a very large number (e.g. 10100), and ifk is the first iteration number such that, we have that
for some real number, which should be regarded as thereal iteration number, and we have that:
where the last number is in the interval [0, 1).
For iteration towards a finite attracting cycle of orderr, we have that if is a point of the cycle, then (ther-fold composition), and the number
is theattraction of the cycle. Ifw is a point very near andw′ isw iteratedr times, we have that
Therefore, the number is almost independent ofk. We define the potential function on the Fatou domain by:
If ε is a very small number andk is the first iteration number such that, we have that
for some real number, which should be regarded as the real iteration number, and we have that:
If the attraction is ∞, meaning that the cycle issuper-attracting, meaning again that one of the points of the cycle is a critical point, we must replaceα by
wherew′ isw iteratedr times and the formula forφ(z) by:
And now the real iteration number is given by:
For the colouring we must have a cyclic scale of colours (constructed mathematically, for instance) and containingH colours numbered from 0 toH−1 (H = 500, for instance). We multiply the real number by a fixed real number determining the density of the colours in the picture, and take the integral part of this number moduloH.
The definition of the potential function and our way of colouring presuppose that the cycle is attracting, that is, not neutral. If the cycle is neutral, we cannot colour the Fatou domain in a natural way. As the terminus of the iteration is a revolving movement, we can, for instance, colour by the minimum distance from the cycle left fixed by the iteration.


In each Fatou domain (that is not neutral) there are two systems of lines orthogonal to each other: theequipotential lines (for the potential function or the real iteration number) and thefield lines.
If we colour the Fatou domain according to the iteration number (andnot the real iteration number, as defined in the previous section), the bands of iteration show the course of the equipotential lines. If the iteration is towards ∞ (as is the case with the outer Fatou domain for the usual iteration), we can easily show the course of the field lines, namely by altering the colour according as the last point in the sequence of iteration is above or below thex-axis (first picture), but in this case (more precisely: when the Fatou domain is super-attracting) we cannot draw the field lines coherently - at least not by the method we describe here. In this case a field line is also called anexternal ray.
Letz be a point in the attracting Fatou domain. If we iteratez a large number of times, the terminus of the sequence of iteration is a finite cycleC, and the Fatou domain is (by definition) the set of points whose sequence of iteration converges towardsC. The field lines issue from the points ofC and from the (infinite number of) points that iterateinto a point ofC. And they end on the Julia set in points that are non-chaotic (that is, generating a finite cycle). Letr be the order of the cycleC (its number of points) and let be a point inC. We have (the r-fold composition), and we define the complex number α by
If the points ofC are, α is the product of ther numbers. The real number 1/|α| is theattraction of the cycle, and our assumption that the cycle is neither neutral nor super-attracting, means that1 <1/|α| < ∞. The point is a fixed point for, and near this point the map has (in connection with field lines) character of a rotation with the argument β of α (that is,).
In order to colour the Fatou domain, we have chosen a small number ε and set the sequences of iteration to stop when, and we colour the pointz according to the numberk (or the real iteration number, if we prefer a smooth colouring). If we choose a direction from given by an angleθ, the field line issuing from in this direction consists of the pointsz such that the argumentψ of the number satisfies the condition that
For if we pass an iteration band in the direction of the field lines (and away from the cycle), the iteration numberk is increased by 1 and the number ψ is increased by β, therefore the number is constant along the field line.

A colouring of the field lines of the Fatou domain means that we colour the spaces between pairs of field lines: we choose a number of regularly situated directions issuing from, and in each of these directions we choose two directions around this direction. As it can happen that the two field lines of a pair do not end in the same point of the Julia set, our coloured field lines can ramify (endlessly) in their way towards the Julia set. We can colour on the basis of the distance to the center line of the field line, and we can mix this colouring with the usual colouring. Such pictures can be very decorative (second picture).
A coloured field line (the domain between two field lines) is divided up by the iteration bands, and such a part can be put into a one-to-one correspondence with the unit square: the one coordinate is (calculated from) the distance from one of the bounding field lines, the other is (calculated from) the distance from the inner of the bounding iteration bands (this number is the non-integral part of the real iteration number). Therefore, we can put pictures into the field lines (third picture).
Methods :


As mentioned above, the Julia set can be found as the set of limit points of the set of pre-images of (essentially) any given point. So we can try to plot the Julia set of a given function as follows. Start with any pointz we know to be in the Julia set, such as a repelling periodic point, and compute all pre-images ofz under some high iterate off.
Unfortunately, as the number of iterated pre-images grows exponentially, this is not feasible computationally. However, we can adjust this method, in a similar way as the "random game" method foriterated function systems. That is, in each step, we choose at random one of the inverse images off.
For example, for the quadratic polynomialfc, the backwards iteration is described by
At each step, one of the two square roots is selected at random.
Note that certain parts of the Julia set are quite difficult to access with the reverse Julia algorithm. For this reason, one must modify IIM/J ( it is called MIIM/J) or use other methods to produce better images.
As a Julia set is infinitely thin we cannot draw it effectively by backwards iteration from the pixels. It will appear fragmented because of the impracticality of examining infinitely many startpoints. Since the iteration count changes vigorously near the Julia set, a partial solution is to imply the outline of the set from the nearest color contours, but the set will tend to look muddy.
A better way to draw the Julia set in black and white is to estimate the distance of pixels (DEM) from the set and to color every pixel whose center is close to the set. The formula for the distance estimation is derived from the formula for the potential functionφ(z). When the equipotential lines forφ(z) lie close, the number is large, and conversely, therefore the equipotential lines for the function should lie approximately regularly. It has been proven that the value found by this formula (up to a constant factor) converges towards the true distance for z converging towards the Julia set.[9]
We assume thatf(z) is rational, that is, wherep(z) andq(z) are complex polynomials of degreesm andn, respectively, and we have to find the derivative of the above expressions forφ(z). And as it is only that varies, we must calculate the derivative of with respect toz. But as (thek-fold composition), is the product of the numbers, and this sequence can be calculated recursively by, starting with (before the calculation of the next iteration).
For iteration towards ∞ (more precisely whenm ≥n + 2, so that ∞ is a super-attracting fixed point), we have
(d =m −n) and consequently:
For iteration towards a finite attracting cycle (that is not super-attracting) containing the point and having orderr, we have
and consequently:
For a super-attracting cycle, the formula is:
We calculate this number when the iteration stops. Note that the distance estimation is independent of the attraction of the cycle. This means that it has meaning for transcendental functions of "degree infinity" (e.g. sin(z) and tan(z)).
Besides drawing of the boundary, the distance function can be introduced as a 3rd dimension to create a solid fractal landscape.
HTML5 Fractal generator for your browser
generate Julia or Mandelbrot set at a given region and resolution