
halley

    Halley map for the function: F = z(z^a - 1) = 0

      z(0) = pixel
      z(n+1) = z(n) - R * F / [F' - (F" * F / 2 * F')]
      bailout when: abs(mod(z(n+1)) - mod(z(n)) < epsilon

    Three parameters: order of z (a), relaxation coefficient (R),
                      small number for bailout (epsilon).


The Halley map is an algorithm used to find the roots of polynomial
equations by successive "guesses" that converge on the correct value as
you feed the results of each approximation back into the formula. It works
very well -- unless you are unlucky enough to pick a value that is on a
line BETWEEN two actual roots. In that case, the sequence explodes into
chaos, with results that diverge more and more wildly as you continue the
iteration.

This fractal type shows the results for the polynomial Z(Z^a - 1), which
has a+1 roots in the complex plane. Use the <T>ype command and enter
"halley" in response to the prompt. You will be asked for a parameter, the
"order" of the equation (an integer from 2 through 10 -- 2 for Z(Z^2 - 1),
7 for Z(Z^7 - 1), etc.). A second parameter is the relaxation coefficient,
and is used to control the convergence stability. A number greater than
one increases the chaotic behavior and a number less than one decreases the
chaotic behavior. The third parameter is the value used to determine when
the formula has converged. The test for convergence is

||Z(n+1)|^2 - |Z(n)|^2| < epsilon

This convergence test produces the whisker-like projections which
generally point to a root.

