# Fractals/Iterations in the complex plane/triangle ineq

algorithm for coloring exterior of the set ( Mandelbrot or Julia)

# Names

family of algorithms : Branching Average Coloring Algorithms (" because calculate an average of a function evaluated at all points in a truncated orbit ")
* the Triangle Inequality Average Coloring algorithm = TIA = Trippie. " linear interpolation and was designed for the Mandelbrot set. Discontinuous at some points that are mapped to zero"
* Curvature Average Coloring Algorithm ( developed by Damien M. Jones for Ultra Fractal in 1999, continuous at points that are mapped to zero )

## Variants

* Fibers coloring method ( from Jux program) : " First, I prefer a running average with a weight parameter (0 - 0.999), which avoids any possible precision issues and lets you adjust detail. Second, I use sin or cos instead of the plain angle, and add a frequency parameter. And some other variations" xenodreambuie

# History

* Kerry Mitchell 1999.02.05
* Damien M. Jones 2000.04.02

# Explanation

"The triangle inequality is basically a cheap way to calculate an angle. TIA is averaging the angle over all iterations to get a smooth result. So there is some initialization and some calculations per iteration to do the sum. It has to store the sum at the previous iteration before adding the next one so you can interpolate between them to get a continuous function between iteration bands (in the same way that continuous potential is usually interpolated). This interpolation is done after the iterations bail out." xenodreambuie
"creates smoothly colored ... large flame-like patterns that extend from the fractal outwards" (from UltraFractal by Frederik Slijkerman )

# Parameters

* escape radius : "Use very large bail-out values (1E20 = 10^20)) for good results." Ultra Fractal
* iteration Max = 2500

# Software

* Ultra Fractal
* Fractint
* Fractview for android : blog - youtube - code
* Gnofract 4D
* Visions of Chaos - application for Windows ( GLSL ) - gallery
* Jux

# Examples

* fractals by Craig Macomber with GLSL code

# Code

* java script
* cpp + glsl
* python

## Ultrafractal
#### CAA

from dmj.ucl:

## Visions of Chaos = VOC
# Video

* Mandelbrot Coloring Algorithms by sfract
* Julia fractal animation by Jérémy Belin
* youtube: Mandelbrot Fractal Zoom: Bach, Fractals, and The Art of Fugue (HD) by Harlan Brothers
* Mandlebrot zoom Medium by Mike Koval -"it actually is the Curvature Average Coloring Algorithm, not the raw triangle inequality. "
* Triangle Inequality Average - Mandelbrot Fractal Mini - Zoom (8k 60fps) by Maths Town
* The Last Colour - mini-Mandelbrot Fractal Zoom by Maths Town

# References

* wikipedia : triangle inequality
* On Smooth Fractal Coloring Techniques master thesis by Jussi Haerkoenen
* /formulas.ultrafractal : lkm.ufm
* fractalforums : triangle-inequality-average-algorithm
* field lines in fractalshades and the code : " an orbit-average of the angle", "The key is to define a continuous mapping between points that escape just before and just after iteration n, using the fractional part of the continuous iteration number."

## References

* ↑ The Coloring of Fractals by Amy Fang and Frances Ling
* ↑ fractalforums triangle-inequality-average-coloring
* ↑ ultrafractal help: solid-color/triangle-inequality-average
* ↑ Mandelbrot Average Colorings using
* ↑ GPU Fractals! By Pete Corey
* ↑ mandelbrot by Karol Ciszek