# External Angle

Robert P. Munafo, 2023 Jul 16.

The external angle is a many-to-one mapping of the unit circle onto the points on the boundary of the Mandelbrot set. It provides a simple method of naming any point on the boundary. The external angle, also called external argument, is a real number between 0 and 1. The external argument multiplied by 2{pi} is the angle on the unit circle to which the boundary point has been mapped.

There are an infinite number (more specifically, 2^{c})
continuous mappings of [0,1] onto the boundary of the Mandelbrot Set,
but this is most useful as it relates to the iteration orbit dynamics.

The only mathematically exact definition is the argument of the Boettcher Coordinate; see that article for more. However that method is ill-suited for practical use, because the amount of mantissa precision must be greater than the number of iterations (dwell) of the point for which an external angle is to be computed.

### Tracing External Rays via Binary Decomposition Bits

By the Böttcher method, appproximating the coordinates of Φ(c) to k bits requires about k bits of precision in floating-point calculations. In many cases, another approach is more practical (though slower). This approach is evident in the fact that external angles a when expressed as a binary number contain patterns of 1 and 0 bits that correspond to the path of the external ray on an external angle plot. If a suitably large escape radius is used, the ray crosses "black" and "white" tiles in direct correspondence to the binary bits.

To describe this method more precisely: starting from any point c in
the exterior, use continuous dwell (or the derivative of
iteration) to ascertain in which direction one should move so as to
get to a lower dwell value; move to a new c and repeat. Go in
small enough steps so as to be able to notice each new (integer)
dwell as it is reached, i.e. identify when you have crossed a
lemniscate. Simultaneously notice if the sign of the imaginary
component of the escaped iterate is positive or negative (as seen in
a binary decomposition plot); these become 0 or 1 (respectively)
bits which are concatenated into a binary fraction with the n^{th}
bit coming from the n^{th} dwell band. The string of binary bits
thus produced, e.g. .001001001001... is equal to the external angle
(1/7 in this example).

With minor modifications, the same thing can be done in the reverse direction, starting at a c that is far away from the Mandelbrot set (or at least beyond the escape radius) and proceeding in small steps towards higher dwell bands, making sure to choose the next "tile" of the binary decomposition according to the 0 or 1 bits of the external angle when expressed in binary.

### Denominators of the Form 2^{p}-1 : External Angles of Cusps and Bond Points

If a rational external angle is expressed as a fraction A/B, the
values of the numerator A and denominator B yield useful
information. Of particular note, if the denominator is 2^{p}-1, the
external angle leads to the root (a bond point or cusp) of a
mu-atom of period p. Every root has two external arguments except
the cusp of R2 itself, which has one (although it can be expressed
by two equivalent values, 0/1 and 1/1).

### Tracing External Rays Into Cusps or Bond Points

The following images show the use of algorithms to trace external rays
into a cusp of a mu-atom of a given period p. Such algorithms typically
require p bits of precision in all calculations, even when the
mu-atom in question has a size much larger than 2^{-p}; see accuracy.

In the first image, the program Power MANDELZOOM has computed the external angle of a point near the cusp of a period-28 island within an embedded Julia set near the cusp of R2F(1/2B1)S.

*Tracing an external argument*

The path was traced by starting at a point very close to the island and carefully following the binary decomposition by going from each "tile" to the (uniquely determined) adjacent tile with a dwell of one less, (as described in the previous section) until reaching the escape radius. Each binary decomposition tile gives a binary digit of 0 or 1, (seen in the tiny text to the left of the image), after reversing the order of the bits this is .011011011011... an n bit approximation of the external angle a.

The series of continued fractions displayed by the program ends
with 115043768/268435455, which the exact angle a of the external
ray that was traced, and one of the two for the cusp of the island
seen here. The denominator 268435455 is precisely 2^{28}-1, and 28 is
the period of the island in the image. The series of rational
approximants also includes 3/7, one of the external angles of
R2F(1/2B1)S (the influencing island of the embedded Julia set
surrounding this period-28 island).

This second example was created by Claude Heiland-Allen. It shows a similar path-tracing of two external angles to the cusp of a period 134 island, which like the above example is within an embedded Julia set near R2F(1/2B1)S. The period domains method has been used to select colors, and binary decomposition is shown with light gray lines.

*two external rays, period domain colors (Wikimedia Commons)*

### Lavaurs Algorithm

As already stated, external arguments of period 2^{p}-1 lead in
pairs to the cusps of mu-atoms of period p. There is an algorithm
to find which fractions are matched to each other in these "pairs",
without the need to actually trace the rays as shown above; this is
described in the Lavaurs algorithm article.

### External Angles with Other Denominators

Denominators other than 2^{n}-1 correspond to external angles that lead to
branch points, tips, etc. The dyadic rational external angles
(whose fraction has a power of 2 as
the denominator) correspond to the bifurcation in
rotational symmetry of the filaments surrounding all islands.
This also shows up in the symmetry of embedded Julia sets and
their paramecia.

An external angle can be used as a name for the corresponding point on the Mandelbrot Set's boundary. This has an advantage over more complex naming systems in that a computer can automatically find a feature given its name. However, such names cannot be used easily by humans without the aid of external-angle software.

External angles are often used as part of a more elaborate naming system; in the R2 system they are used in the filament subset operator.

This illustration (based on the image of R2F(1/2B1)FS[2]FS[2]FS[2]S) shows the "first" 32 external angles whose denominators are a power of 2.

| 3/8 5/16 1/4 3/16 '-, \ : 7/32 :- '- ~ 9/32 ' : .~ .,1/8 '`, ~, -, ` : .~ 5/32 _-' -, ", ~, ', , , :~ .- ..-` -, 11/32 'e ~, . ",a,\.`.`. .,` _-' -, ^, '\ . '. `-$"@@LL)v'.,' . ` -, '\ ~, ~, ,`- -,,%@@F\(-' ,- ., 3/32 '-, ~, -, '. .'e'\\;"@F*`*@@/'_-` r' , _.-^ 7/16 13/32 '. _ ", '. - `:_/(,e_b@L, ./@mmL'~cm)e.-'` -,, -, ~, '- ," ', -,-]r@@*Y*"^^` '^^"*b/Y@@`"-- ,_,--''1/16 '--. -. `. .ra:c`c`.' ~//md@F^ '-:@^_^c-^' ., . -_ .`-'@@)ed@dbL`\\@*` "*@/--`` _,1/32 15/32_ '- -,-,-_:-.(@@"**^**@$@F 'Y@^%^^^'^^'^ `-.'--`d,7/d'/dm/@F^ ^@ .@"~---- 1/2----":bLbbFb@@bmd@*^^` ' RF(2){FS[2]}x3Sa -a/"*-'---------- 0 d;'.`"*^""-^F$@mme ._ "mTrL___ 17/32-^` ' .~ _~-- ;^^;@@bc__.___d@, @@,m__ . - -` ,` -`(a@@@@@d@@^`$b_ .T@Lm_ ^^^`^^--31/32 .-' ,` .,'-(@Y"[-"\```-:@@a, .a@@*C-,^` ,--` _'` ' -``/ `.-., `-\T($@`.,, .__a__@bF__,`^---,_ 9/16 -` /' - .' r .-'d@@@*YbFmm- -vmdbF"^@@@/"_' `^15/16 19/32 .- _~ .~ ,'-`/~)``_@b,,_a@m``;-`. -. `--. _-` .` _- ." ~.,`~TY@b@FF``-'-, `. ` _-` ./ .` -` r' -.\d@@@@c^ . ' ` , 29/32 _/ 21/32 / ." -'.'(F"\ - ` `. '-, _- .~ :~ .~ ' ` ~, -, ` , _-` .~ :- - . ~, 27/32 ' , --` a~ 23/32 .` ' -, 7/8 .- .` . 25/32 ~, 5/8 11/16 3/4 13/16 |

Here is a table giving the corresponding FS operators in the R2 Naming System:

External Angle (dyadic rational) | FS suffix | Abbreviated FS suffix |

0/1 | FS[0] | FS[0] |

1/32 | FS[(1/6B1)t] | FS[6] |

1/16 | FS[(1/5B1)t] | FS[5] |

3/32 | FS[(1/4B2)t] | FS[4B2] |

1/8 | FS[(1/4B1)t] | FS[4] |

5/32 | FS[(1/3(1/3B1)B1)t] | FS[3(3)] |

3/16 | FS[(1/3B2)t] | FS[3B2] |

7/32 | FS[(1/3B1)FS[2]FS[0]t] | FS[(3)F[2][0]] |

1/4 | FS[(1/3B1)t] | FS[3] |

9/32 | FS[(1/3(2/3B1)B1)t] | FS[3(2/3)] |

5/16 | FS[(2/5B1)t] | FS[2/5] |

11/32 | FS[(1/2(1/4B1)B1)t] | FS[2(4)] |

3/8 | FS[(1/2(1/3B1)B1)t] | FS[2(3)] |

13/32 | FS[(1/2(1/2(1/3B1)B1)B1)t] | FS[2(2(3))] |

7/16 | FS[(1/2B1)SF(1/3B1)t] | FS[2SF(3)] |

15/32 | FS[(1/2B1)SF[2]SF[(1/3B1)t]t] | FS[(2)F[2]S.F(3)] |

1/2 | FS[(1/2B1)t] | FS[2] |

17/32 | FS[(1/2B1)SF[2]SF[(2/3B1)t]t] | FS[(2)F[2]S.F(2/3)] |

9/16 | FS[(1/2B1)SF(2/3B1)t] | FS[2SF(2/3)] |

19/32 | FS[(1/2(1/2(2/3B1)B1)B1)t] | FS[2(2(2/3))] |

5/8 | FS[(1/2(2/3B1)B1)t] | FS[2(2/3)] |

21/32 | FS[(1/2(3/4B1)B1)t] | FS[2(3/4)] |

11/16 | FS[(3/5B1)t] | FS[3/5] |

23/32 | FS[(2/3(1/3B1)B1)t] | FS[2/3(3)] |

3/4 | FS[(2/3B1)t] | FS[2/3] |

25/32 | FS[(2/3B1)FS[2]FS[0]t] | FS[(2/3)F[2][0]] |

13/16 | FS[(2/3B2)t] | FS[2/3B2] |

27/32 | FS[(2/3(2/3B1)B1)t] | FS[2/3(2/3)] |

7/8 | FS[(3/4B1)t] | FS[3/4] |

29/32 | FS[(3/4B2)t] | FS[3/4B2] |

15/16 | FS[(4/5B1)t] | FS[4/5] |

31/32 | FS[(5/6B1)t] | FS[5/6] |

1/1 | FS[0] | FS[0] |

revisions: 20031218 oldest on record; 20101101 add discussion relating to cusps and bond points; 20101102 clarified wording; 20110214 add tracing section; 20230311 mapping is many-to-one (not one-to-many); 20230408 Böttcher formula and precision discussion; 20230609 add expansions of Böttcher formula; 20230610 better descriptions tracing rays via binary decomposition bits; 20230615 link to Lavaurs algorithm; 20230616 reference dyadic rationals; 20230716 rework and expand the maths; add references 20230718 move Böttcher content to its own article

From the Mandelbrot Set Glossary and Encyclopedia, by Robert Munafo, (c) 1987-2024.

Mu-ency main page — index — recent changes — DEMZ

This page was written in the "embarrassingly readable" markup language RHTF, and was last updated on 2023 Jul 18. s.27