Root Rite

A square contains one of the great — perhaps the greatest — intellectual rites of passage. If each side of the square is 1 unit in length, how long are its diagonals? By Pythagoras’ theorem:

a^2 + b^2 = c^2
1^2 + 1^2 = 2, so c = √2

So each diagonal is √2 units long. But what is √2? It’s a new kind of number: an irrational number. That doesn’t mean that it’s illogical or against reason, but that it isn’t exactly equal to any ratio of integers like 3/2 or 17/12. When represented as decimals, the digits of all integer ratios either end or fall, sooner or later, into an endlessly repeating pattern:

3/2 = 1.5

17/12 = 1.416,666,666,666,666…

577/408 = 1.414,2156 8627 4509 8039,2156 8627 4509 8039,2156 8627 4509 8039,2156 8627 4509 8039,2156 8627 4509 8039,…

But when √2 is represented as a decimal, its digits go on for ever without any such pattern:

√2 = 1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376,948,073,176,679,737,990,732,478,462,107…

The intellectual rite of passage comes when you understand why √2 is irrational and behaves like that:

Proof of the irrationality of √2

1. Suppose that there is some ratio, a/b, such that

2. a and b have no factors in common and

3. a^2/b^2 = 2.

4. It follows that a^2 = 2b^2.

5. Therefore a is even and there is some number, c, such that 2c = a.

6. Substituting c in #4, we derive (2c)^2 = 4c^2 = 2b^2.

7. Therefore 2c^2 = b^2 and b is also even.

8. But #7 contradicts #2 and the supposition that a and b have no factors in common.

9. Therefore, by reductio ad absurdum, there is no ratio, a/b, such that a^2/b^2 = 2. Q.E.D.

Given that subtle proof, you might think the digits of an irrational number like √2 would be difficult to calculate. In fact, they’re easy. And one method is so easy that it’s often re-discovered by recreational mathematicians. Suppose that a is an estimate for √2 but it’s too high. Clearly, if 2/a = b, then b will be too low. To get a better estimate, you simply split the difference: a = (a + b) / 2. Then do it again and again:

a = (2/a + a) / 2

If you first set a = 1, the estimates improve like this:

(2/1 + 1) / 2 = 3/2
2 – (3/2)^2 = -0.25
(2/(3/2) + 3/2) / 2 = 17/12
2 – (17/12)^2 = -0.00694…
(2/(17/12) + 17/12) / 2 = 577/408
2 – (577/408)^2 = -0.000006007…
(2/(577/408) + 577/408) / 2 = 665857/470832
2 – (665857/470832)^2 = -0.00000000000451…

In fact, the estimate doubles in accuracy (or better) at each stage (the first digit to differ is underlined):

1.5… = 3/2 (matching digits = 1)
1.4… = √2

1.416… = 17/12 (m=3)
1.414… = √2

1.414,215… = 577/408 (m=6)
1.414,213… = √2

1.414,213,562,374… = 665857/470832 (m=12)
1.414,213,562,373… = √2

1.414,213,562,373,095,048,801,689… = 886731088897/627013566048 (m=24)
1.414,213,562,373,095,048,801,688… = √2

1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,377… (m=48)
1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376… = √2

1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376,948,073,176,679,737,990,732,478,46
2,107,038,850,387,534,327,641,6… (m=97)
1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376,948,073,176,679,737,990,732,478,46
2,107,038,850,387,534,327,641,5… = √2

1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376,948,073,176,679,737,990,732,478,46
2,107,038,850,387,534,327,641,572,735,013,846,230,912,297,024,924,836,055,850,737,212,644,121,497,09
9,935,831,413,222,665,927,505,592,755,799,950,501,152,782,060,8… (m=196)
1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376,948,073,176,679,737,990,732,478,46
2,107,038,850,387,534,327,641,572,735,013,846,230,912,297,024,924,836,055,850,737,212,644,121,497,09
9,935,831,413,222,665,927,505,592,755,799,950,501,152,782,060,5… = √2

1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376,948,073,176,679,737,990,732,478,46
2,107,038,850,387,534,327,641,572,735,013,846,230,912,297,024,924,836,055,850,737,212,644,121,497,09
9,935,831,413,222,665,927,505,592,755,799,950,501,152,782,060,571,470,109,559,971,605,970,274,534,59
6,862,014,728,517,418,640,889,198,609,552,329,230,484,308,714,321,450,839,762,603,627,995,251,407,98
9,687,253,396,546,331,808,829,640,620,615,258,352,395,054,745,750,287,759,961,729,835,575,220,337,53
1,857,011,354,374,603,43… (m=392)
1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376,948,073,176,679,737,990,732,478,46
2,107,038,850,387,534,327,641,572,735,013,846,230,912,297,024,924,836,055,850,737,212,644,121,497,09
9,935,831,413,222,665,927,505,592,755,799,950,501,152,782,060,571,470,109,559,971,605,970,274,534,59
6,862,014,728,517,418,640,889,198,609,552,329,230,484,308,714,321,450,839,762,603,627,995,251,407,98
9,687,253,396,546,331,808,829,640,620,615,258,352,395,054,745,750,287,759,961,729,835,575,220,337,53
1,857,011,354,374,603,40… = √2

1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376,948,073,176,679,737,990,732,478,46
2,107,038,850,387,534,327,641,572,735,013,846,230,912,297,024,924,836,055,850,737,212,644,121,497,09
9,935,831,413,222,665,927,505,592,755,799,950,501,152,782,060,571,470,109,559,971,605,970,274,534,59
6,862,014,728,517,418,640,889,198,609,552,329,230,484,308,714,321,450,839,762,603,627,995,251,407,98
9,687,253,396,546,331,808,829,640,620,615,258,352,395,054,745,750,287,759,961,729,835,575,220,337,53
1,857,011,354,374,603,408,498,847,160,386,899,970,699,004,815,030,544,027,790,316,454,247,823,068,49
2,936,918,621,580,578,463,111,596,668,713,013,015,618,568,987,237,235,288,509,264,861,249,497,715,42
1,833,420,428,568,606,014,682,472,077,143,585,487,415,565,706,967,765,372,022,648,544,701,585,880,16
2,075,847,492,265,722,600,208,558,446,652,145,839,889,394,437,092,659,180,031,138,824,646,815,708,26
3,010,059,485,870,400,318,648,034,219,489,727,829,064,104,507,263,688,131,373,985,525,611,732,204,02
4,509,122,770,022,694,112,757,362,728,049,574… (m=783)
1.414,213,562,373,095,048,801,688,724,209,698,078,569,671,875,376,948,073,176,679,737,990,732,478,46
2,107,038,850,387,534,327,641,572,735,013,846,230,912,297,024,924,836,055,850,737,212,644,121,497,09
9,935,831,413,222,665,927,505,592,755,799,950,501,152,782,060,571,470,109,559,971,605,970,274,534,59
6,862,014,728,517,418,640,889,198,609,552,329,230,484,308,714,321,450,839,762,603,627,995,251,407,98
9,687,253,396,546,331,808,829,640,620,615,258,352,395,054,745,750,287,759,961,729,835,575,220,337,53
1,857,011,354,374,603,408,498,847,160,386,899,970,699,004,815,030,544,027,790,316,454,247,823,068,49
2,936,918,621,580,578,463,111,596,668,713,013,015,618,568,987,237,235,288,509,264,861,249,497,715,42
1,833,420,428,568,606,014,682,472,077,143,585,487,415,565,706,967,765,372,022,648,544,701,585,880,16
2,075,847,492,265,722,600,208,558,446,652,145,839,889,394,437,092,659,180,031,138,824,646,815,708,26
3,010,059,485,870,400,318,648,034,219,489,727,829,064,104,507,263,688,131,373,985,525,611,732,204,02
4,509,122,770,022,694,112,757,362,728,049,573… = √2

Allus Pour, Horic

*As a rotating animated gif (optimized at ezGIF).


Performativizing Paronomasticity

The title of this incendiary intervention, which is perhaps my most contrived title yet, is a paronomasia on Shakespeare’s “Alas, poor Yorick!” (Hamlet, Act 5, scene 1). “Allus” is a northern form of “always”, “pour” has its standard meaning, and “Horic” is from the Greek ὡρῐκός, hōrikos, which strictly speaking means “in one’s prime, blooming”. However, it could also be interpreted as meaning “hourly”. So the paronomasia means “Always pour, O Hourly One!” (i.e. hourglass).

A Seed Indeed

Like plants, fractals grow from seeds. But plants start with a small seed that gets bigger. Fractals start with a big seed that gets smaller. For example, perhaps the most famous fractal of all is the Koch snowflake. The seed of the Koch snowflake is step #2 here:

Stages of the Koch snowflake (from Fractals and the coast of Great Britain)


To create the Koch snowflake, you replace each straight line in the initial triangle with the seed:

Creating the Koch snowflake (from Wikipedia)


Animated Koch snowflake (from Wikipedia)


Now here’s another seed for another fractal:

Fractal stage #1


The seed is like a capital “I”, consisting of a line of length l sitting between two lines of length l/2 at right angles. The rule this time is: Replace the center of the longer line and the two shorter lines with ½-sized versions of the seed:

Fractal stage #2


Try and guess what the final fractal looks like when this rule is applied again and again:

Fractal stage #3


Fractal stage #4


Fractal stage #5


Fractal stage #6


Fractal stage #7


Fractal stage #8


Fractal stage #9


Fractal stage #10


I call this fractal the hourglass. And there are a lot of ways to create it. Here’s an animated version of the way shown in this post:

Hourglass fractal (animated)


Hour Re-Re-Powered

In “Hour Power” I looked at my favorite fractal, the hourglass fractal:

The hourglass fractal


I showed three ways to create the fractal. Next, in “Hour Re-Powered”, I showed a fourth way. Now here’s a fifth (previously shown in “Tri Again”).

This is a rep-4 isosceles right triangle:

Rep-4 isosceles right triangle


If you divide and discard one of the four sub-triangles, then adjust one of the three remaining sub-triangles, then keep on dividing-and-discarding (and adjusting), you can create a certain fractal — the hourglass fractal:

Triangle to hourglass #1


Triangle to hourglass #2


Triangle to hourglass #3


Triangle to hourglass #4


Triangle to hourglass #5


Triangle to hourglass #6


Triangle to hourglass #7


Triangle to hourglass #8


Triangle to hourglass #9


Triangle to hourglass #10


Triangle to hourglass (anim) (open in new tab to see full-sized version)


And here is a zoomed version:

Triangle to hourglass (large)


Triangle to hourglass (large) (anim)


Hour Re-Powered

Pre-previously on Overlord in terms of the Über-Feral, I looked at my favorite member of the fractal community, the Hourglass Fractal:

The hourglass fractal


A real hourglass for comparison


As I described how I discovered the hourglass fractal indirectly and by accident, then showed how to create it directly, using two isosceles triangles set apex-to-apex in the form of an hourglass:

Triangles to hourglass #1


Triangles to hourglass #2


Triangles to hourglass #3


Triangles to hourglass #4


Triangles to hourglass #5


Triangles to hourglass #6

[…]

Triangles to hourglass #10


Triangles to hourglass #11


Triangles to hourglass #12


Triangles to hourglass (animated)


Now, here’s an even simpler way to create the hourglass fractal, starting with a single vertical line:

Line to hourglass #1


Line to hourglass #2


Line to hourglass #3


Line to hourglass #4


Line to hourglass #5


Line to hourglass #6


Line to hourglass #7


Line to hourglass #8


Line to hourglass #9


Line to hourglass #10


Line to hourglass #11


Line to hourglass (animated)


Hour Power

Would it be my favorite fractal if I hadn’t discovered it for myself? It might be, because I think it combines great simplicity with great beauty. I first came across it when I was looking at this rep-tile, that is, a shape that can be divided into smaller copies of itself:

Rep-4 L-Tromino


It’s called a L-tromino and is a rep-4 rep-tile, because it can be divided into four copies of itself. If you divide the L-tromino into four sub-copies and discard one particular sub-copy, then repeat again and again, you’ll get this fractal:

Tromino fractal #1


Tromino fractal #2


Tromino fractal #3


Tromino fractal #4


Tromino fractal #5


Tromino fractal #6


Tromino fractal #7


Tromino fractal #8


Tromino fractal #9


Tromino fractal #10


Tromino fractal #11


Hourglass fractal (animated)


I call it an hourglass fractal, because it reminds me of an hourglass:

A real hourglass


The hourglass fractal for comparison


I next came across the hourglass fractal when applying the same divide-and-discard process to a rep-4 square. The first fractal that appears is the Sierpiński triangle:

Square to Sierpiński triangle #1


Square to Sierpiński triangle #2


Square to Sierpiński triangle #3


[…]


Square to Sierpiński triangle #10


Square to Sierpiński triangle (animated)


However, you can rotate the sub-squares in various ways to create new fractals. Et voilà, the hourglass fractal appears again:

Square to hourglass #1


Square to hourglass #2


Square to hourglass #3


Square to hourglass #4


Square to hourglass #5


Square to hourglass #6


Square to hourglass #7


Square to hourglass #8


Square to hourglass #9


Square to hourglass #10


Square to hourglass #11


Square to hourglass (animated)


Finally, I was looking at variants of the so-called chaos game. In the standard chaos game, a point jumps half-way towards the randomly chosen vertices of a square or other polygon. In this variant of the game, I’ve added jump-towards-able mid-points to the sides of the square and restricted the point’s jumps: it can only jump towards the points that are first-nearest, seventh-nearest and eighth-nearest. And again the hourglass fractal appears:

Chaos game to hourglass #1


Chaos game to hourglass #2


Chaos game to hourglass #3


Chaos game to hourglass #4


Chaos game to hourglass #5


Chaos game to hourglass #6


Chaos game to hourglass (animated)


But what if you want to create the hourglass fractal directly? You can do it like this, using two isosceles triangles set apex-to-apex in the form of an hourglass:

Triangles to hourglass #1


Triangles to hourglass #2


Triangles to hourglass #3


Triangles to hourglass #4


Triangles to hourglass #5


Triangles to hourglass #6


Triangles to hourglass #7


Triangles to hourglass #8


Triangles to hourglass #9


Triangles to hourglass #10


Triangles to hourglass #11


Triangles to hourglass #12


Triangles to hourglass (animated)


Square Routes Re-Re-Re-Re-Re-Revisited

For a good example of how more can be less, try the chaos game. You trace a point jumping repeatedly 1/n of the way towards a randomly chosen vertex of a regular polygon. When the polygon is a triangle and 1/n = 1/2, this is what happens:

Chaos triangle #1


Chaos triangle #2


Chaos triangle #3


Chaos triangle #4


Chaos triangle #5


Chaos triangle #6


Chaos triangle #7


As you can see, this simple chaos game creates a fractal known as the Sierpiński triangle (or Sierpiński sieve). Now try more and discover that it’s less. When you play the chaos game with a square, this is what happens:

Chaos square #1


Chaos square #2


Chaos square #3


Chaos square #4


Chaos square #5


Chaos square #6


Chaos square #7


As you can see, more is less: the interior of the square simply fills with points and no attractive fractal appears. And because that was more is less, let’s see how less is more. What happens if you restrict the way in which the point inside the square can jump? Suppose it can’t jump twice towards the same vertex (i.e., the vertex v+0 is banned). This fractal appears:

Ban on choosing vertex [v+0]


And if the point can’t jump towards the vertex one place anti-clockwise of the currently chosen vertex, this fractal appears:

Ban on vertex [v+1] (or [v-1], depending on how you number the vertices)


And if the point can’t jump towards two places clockwise or anti-clockwise of the currently chosen vertex, this fractal appears:

Ban on vertex [v+2], i.e. the diagonally opposite vertex


At least, that is one possible route to those three particular fractals. You see another route, start with this simple fractal, where dividing and discarding parts of a square creates a Sierpiński triangle:

Square to Sierpiński triangle #1


Square to Sierpiński triangle #2


Square to Sierpiński triangle #3


Square to Sierpiński triangle #4


[…]


Square to Sierpiński triangle #10


Square to Sierpiński triangle (animated)


By taking four of these square-to-Sierpiński-triangle fractals and rotating them in the right way, you can re-create the three chaos-game fractals shown above. Here’s the [v+0]-ban fractal:

[v+0]-ban fractal #1


[v+0]-ban #2


[v+0]-ban #3


[v+0]-ban #4


[v+0]-ban #5


[v+0]-ban #6


[v+0]-ban #7


[v+0]-ban #8


[v+0]-ban #9


[v+0]-ban (animated)


And here’s the [v+1]-ban fractal:

[v+1]-ban fractal #1


[v+1]-ban #2


[v+1]-ban #3


[v+1]-ban #4


[v+1]-ban #5


[v+1]-ban #6


[v+1]-ban #7


[v+1]-ban #8


[v+1]-ban #9


[v+1]-ban (animated)


And here’s the [v+2]-ban fractal:

[v+2]-ban fractal #1


[v+2]-ban #2


[v+2]-ban #3


[v+2]-ban #4


[v+2]-ban #5


[v+2]-ban #6


[v+2]-ban #7


[v+2]-ban #8


[v+2]-ban #9


[v+2]-ban (animated)

And taking a different route means that you can find more fractals — as I will demonstrate.


Previously pre-posted (please peruse):

Square Routes
Square Routes Revisited
Square Routes Re-Revisited
Square Routes Re-Re-Revisited
Square Routes Re-Re-Re-Revisited
Square Routes Re-Re-Re-Re-Revisited

Koch Rock

The Koch snowflake, named after the Swedish mathematician Helge von Koch, is a famous fractal that encloses a finite area within an infinitely long boundary. To make a ’flake, you start with an equilateral triangle:

Koch snowflake stage #1 (with room for manœuvre)


Next, you divide each side in three and erect a smaller equilateral triangle on the middle third, like this:

Koch snowflake #2


Each original straight side of the triangle is now 1/3 longer, so the full perimeter has also increased by 1/3. In other words, perimeter = perimeter * 1⅓. If the perimeter of the equilateral triangle was 3, the perimeter of the nascent Koch snowflake is 4 = 3 * 1⅓. The area of the original triangle also increases by 1/3, because each new equalitarian triangle is 1/9 the size of the original and there are three of them: 1/9 * 3 = 1/3.

Now here’s stage 3 of the snowflake:

Koch snowflake #3, perimeter = 4 * 1⅓ = 5⅓


Again, each straight line on the perimeter has been divided in three and capped with a smaller equilateral triangle. This increases the length of each line by 1/3 and so increases the full perimeter by a third. 4 * 1⅓ = 5⅓. However, the area does not increase by 1/3. There are twelve straight lines in the new perimeter, so twelve new equilateral triangles are erected. However, because their sides are 1/9 as long as the original side of the triangle, they have 1/(9^2) = 1/81 the area of the original triangle. 1/81 * 12 = 4/27 = 0.148…

Koch snowflake #4, perimeter = 7.11


Koch snowflake #5, p = 9.48


Koch snowflake #6, p = 12.64


Koch snowflake #7, p = 16.85


Koch snowflake (animated)


The perimeter of the triangle increases by 1⅓ each time, while the area reaches a fixed limit. And that’s how the Koch snowflake contains a finite area within an infinite boundary. But the Koch snowflake isn’t confined to itself, as it were. In “Dissecting the Diamond”, I described how dissecting and discarding parts of a certain kind of diamond could generate one side of a Koch snowflake. But now I realize that Koch snowflakes are everywhere in the diamond — it’s a Koch rock. To see how, let’s start with the full diamond. It can be divided, or dissected, into five smaller versions of itself:

Dissectable diamond


When the diamond is dissected and three of the sub-diamonds are discarded, two sub-diamonds remain. Let’s call them sub-diamonds 1 and 2. When this dissection-and-discarding is repeated again and again, a familiar shape begins to appear:

Koch rock stage 1


Koch rock #2


Koch rock #3


Koch rock #4


Koch rock #5


Koch rock #6


Koch rock #7


Koch rock #8


Koch rock #9


Koch rock #10


Koch rock #11


Koch rock #12


Koch rock #13


Koch rock (animated)


Dissecting and discarding the diamond creates one side of a Koch triangle. Now see what happens when discarding is delayed and sub-diamonds 1 and 2 are allowed to appear in other parts of the diamond. Here again is the dissectable diamond:

Dia-flake stage 1


If no sub-diamonds are discarded after dissection, the full diamond looks like this when each sub-diamond is dissected in its turn:

Dia-flake #2


Now let’s start discarding sub-diamonds:

Dia-flake #3


And now discard everything but sub-diamonds 1 and 2:

Dia-flake #4


Dia-flake #5


Dia-flake #6


Dia-flake #7


Dia-flake #8


Dia-flake #9


Dia-flake #10


Now full Koch snowflakes have appeared inside the diamond — count ’em! I see seven full ’flakes:

Dia-flake #11


Dia-flake (animated)


But that isn’t the limit. In fact, an infinite number of full ’flakes appear inside the diamond — it truly is a Koch rock. Here are examples of how to find more full ’flakes:

Dia-flake 2 (static)


Dia-flake 2 (animated)


Dia-flake 3 (static)


Dia-flake 3 (animated)


Previously pre-posted:

Dissecting the Diamond — other fractals in the dissectable diamond

Dissecting the Diamond

Pre-previously on O.o.t.Ü.-F., I dilated the delta. Now I want to dissect the diamond. In geometry, a shape is dissected when it is completely divided into smaller shapes of some kind. If the smaller shapes are identical (except for size) to the original, the original shape is called a rep-tile (because it can be tiled with repeating versions of itself). If the smaller identical shapes are equal in size to each other, the rep-tile is regular; if the smaller shapes are not equal, the rep-tile is irregular. This diamond is an irregular rep-tile or irrep-tile:

Dissectable diamond

Dissected diamond


As you can see, the diamond can be dissected into five smaller versions of itself, two larger ones and three smaller ones. This makes it a rep-5 irrep-tile. And the smaller versions, or sub-diamonds, can themselves be dissected ad infinitum, like this:

Dissected diamond stage #1


Dissected diamond #2


Dissected diamond #3


Dissected diamond #4


Dissected diamond #5


Dissected diamond #6


Dissected diamond #7


Dissected diamond #8


Dissected diamond #9


Dissected diamond (animated)


The full dissected diamond is a fractal, or shape that is similar to itself at varying scales. However, the fractality of the diamond becomes most obvious when you dissect-and-discard. That is, first you dissect the diamond, then you discard one (or more) of the sub-diamonds, like this:

Diamond fractal (retaining sub-diamonds 1,2,3,4) stage #1


1234-Diamond #2


1234-Diamond #3


1234-Diamond #4


1234-Diamond #5


1234-Diamond #6


1234-Diamond #7


1234-Diamond #8


1234-Diamond #9


1234-Diamond (animated)


Here are some more fractals created by dissecting and discarding one sub-diamond:

Diamond fractal (retaining sub-diamonds 1,2,4,5)


1245-Diamond (anim)


2345-Diamond


2345-Diamond (anim)


The 2345-diamond fractal has variants created by mirroring one or more sub-diamonds, so that the orientation of the sub-dissections changes. Here is one of the variants:

2345-Diamond (variation)


2345-Diamond (variant) (anim)


And here is a fractal created by dissecting and discarding two sub-diamonds:

Diamond fractal (retaining sub-diamonds 1,2,3)


123-Diamond (anim)


Again, the fractal has variants created by mirroring one or more of the sub-diamonds:

123-Diamond (variant #1)


123-Diamond (variant #2)


123-Diamond (variant #3)


123-Diamond (variant #4)


Some more fractals created by dissecting and discarding two sub-diamonds:

125-Diamond


125-Diamond (anim)


134-Diamond


134-Diamond (anim)


235-Diamond


235-Diamond (anim)


135-Diamond


135-Diamond (anim)


A variant of the 135-Diamond fractal looks like one side of a Koch snowflake:

135-Diamond (variant #1) — like Koch snowflake


135-Diamond (variant #2)


Finally, here are some colour variants of the full dissected diamond:






Full diamond colour variants (anim)


Elsewhere other-engageable:

Dilating the Delta

Dilating the Delta

A circle with a radius of one unit has an area of exactly π units = 3.141592… units. An equilateral triangle inscribed in the unit circle has an area of 1.2990381… units, or 41.34% of the area of the unit circle.

In other words, triangles are cramped! And so it’s often difficult to see what’s going on in a triangle. Here’s one example, a fractal that starts by finding the centre of the equilateral triangle:

Triangular fractal stage #1


Next, use that central point to create three more triangles:

Triangular fractal stage #2


And then use the centres of each new triangle to create three more triangles (for a total of nine triangles):

Triangular fractal stage #3


And so on, trebling the number of triangles at each stage:

Triangular fractal stage #4


Triangular fractal stage #5


As you can see, the triangles quickly become very crowded. So do the central points when you stop drawing the triangles:

Triangular fractal stage #6


Triangular fractal stage #7


Triangular fractal stage #8


Triangular fractal stage #9


Triangular fractal stage #10


Triangular fractal stage #11


Triangular fractal stage #12


Triangular fractal stage #13


Triangular fractal (animated)


The cramping inside a triangle is why I decided to dilate the delta like this:

Triangular fractal

Circular fractal from triangular fractal


Triangular fractal to circular fractal (animated)


Formation of the circular fractal (animated)


And how do you dilate the delta, or convert an equilateral triangle into a circle? You use elementary trigonometry to expand the perimeter of the triangle so that it lies on the perimeter of the unit circle. The vertices of the triangle don’t move, because they already lie on the perimeter of the circle, but every other point, p, on the perimeter of the triangles moves outward by a fixed amount, m, depending on the angle it makes with the center of the triangle.

Once you have m, you can move outward every point, p(1..i), that lies between p on the perimeter and the centre of the triangle. At least, that’s the theory between the dilation of the delta. In practice, all you need is a point, (x,y), inside the triangle. From that, you can find the angle, θ, and distance, d, from the centre, calculate m, and move (x,y) to d * m from the centre.

You can apply this technique to any fractal created in an equilateral triangle. For example, here’s the famous Sierpiński triangle in its standard form as a delta, then as a dilated delta or circle:

Sierpiński triangle

Sierpiński triangle to circular Sierpiński fractal


Sierpiński triangle to circle (animated)


But why stop at triangles? You can use the same elementary trigonometry to convert any regular polygon into a circle. A square inscribed in a unit circle has an area of 2 units, or 63.66% of the area of the unit circle, so it too is cramped by comparison with the circle. Here’s a square fractal that I’ve often posted before:

Square fractal, jump = 1/2, ban on jumping towards any vertex twice in a row


It’s created by banning a randomly jumping point from moving twice in a row 1/2 of the distance towards the same vertex of the square. When you dilate the fractal, it looks like this:

square_fractal_circ_i0

Circular fractal from square fractal, j = 1/2, ban on jumping towards vertex v(i) twice in a row


Circular fractal from square (animated)


And here’s a related fractal where the randomly jumping point can’t jump towards the vertex directly clockwise from the vertex it’s previously jumped towards (so it can jump towards the same vertex twice or more):

Square fractal, j = 1/2, ban on vertex v(i+1)


When the fractal is dilated, it looks like this:

Circular fractal from square, i = 1


Circular fractal from square (animated)


In this square fractal, the randomly jumping point can’t jump towards the vertex directly opposite the vertex it’s previously jumped towards:

Square fractal, ban on vertex v(i+2)


And here is the dilated version:

Circular fractal from square, i = 2

Circular fractal from square (animated)


And there are a lot more fractals where those came from. Infinitely many, in fact.