Ir al contenido

Desarrollo de fractales mediante el m�todo de Mandelbrot

De Wikipedia, la enciclopedia libre

El m�todo de Mandelbrot : este m�todo para desarrollar "objetos fractales" fue creado por Beno�t Mandelbrot en la d�cada de los a�os 70, mientras trabajaba en IBM. Consiste en construir, para cada punto c del plano complejo, una sucesi�n de n�meros complejos zn. Partiendo del punto z0 = 0, se calcula la sucesi�n de forma iterativa mediante la f�rmula zn+1=F(zn)+c, donde F es una funci�n arbitraria previamente elegida. Cuando la sucesi�n iterativa est� acotada, se asigna al punto c del plano complejo un color s�lido (por ejemplo, el color negro). Si la sucesi�n diverge entonces se asigna al punto c un color progresivamente distinto, dependiendo de cu�ntas iteraciones hayan sido necesarias para detectar la divergencia de la sucesi�n.

El fractal derivado por este m�todo cuando se toma la funci�n F(z)=z2 se llama conjunto de Mandelbrot.

En lo que sigue, en lugar de zn+1=F(zn)+c se utilizar� la notaci�n Z=F(Z)+C, como si se tratara de una asignaci�n en alg�n lenguaje de programaci�n.

Z = Zm + C

[editar]

A continuaci�n se muestra una serie de fractales iterando las diferentes potencias de Z = Zm + C, seg�n el m�todo de Mandelbrot.

Ejemplos de fractales del tipo Mandelbrot: Z = Zm + C

Tal y como se puede ver en los ejemplos representados, el n�mero de l�bulos es L = m - 1

Un breve viaje a las profundidades del fractal de Mandelbrot Z = Z2 + C

[editar]

A continuaci�n vamos a adentrarnos en el fractal cl�sico de Mandelbrot, utilizando el microscopio de alt�sima resoluci�n que nos proporciona el c�lculo iterativo. Todas las ampliaciones vienen precedidas de una imagen del fractal a escala 1:1 en donde podemos apreciar la zona ampliada.[1]

Ampliaci�n zona 1

[editar]

Centro de coordenadas : Cx = 0.291811 , Cy = 0.0144686

Ampliaci�n zona 2

[editar]

Centro de coordenadas : Cx = -0.165643411 , Cy = 0.656685704

Ampliaci�n zona 3

[editar]

Centro de coordenadas : Cx = -0.755625 , Cy = 0.06328125

Ampliaci�n zona 4

[editar]

Centro de coordenadas : Cx = -0,1758752481899, Cy = 1,075392007
A continuaci�n bajaremos a gran profundidad, con una ampliaci�n de m�s de 2 millones y con un n�mero m�ximo de 6000 iteraciones por pixel !

Ampliaci�n zona XX

[editar]

Centro de coordenadas : Cx = 0,02816835288421, Cy = 0,63790834667330
Ahora nos adentraremos en un sitio con extra�as formas y colores, pero donde pueden apreciarse perfectamente las formas del fractal de Mandelbrot...

Z = Z-m + C

[editar]

Ejemplos de fractales del tipo Mandelbrot, con potencias negativas de Z.

Z = Zp / (1 + Zq) + C

[editar]

Z = Zm + Cp

[editar]

Pero, � qu� pasa cuando hacemos Z = Zm + Cp ?. Tal y como se puede ver en los siguientes ejemplos, el n�mero de l�bulos es L = (m - 1) * p

Z = Zm + Z + C

[editar]

A continuaci�n se muestra una serie de fractales iterando las diferentes potencias de Z = Zm + Z + C, seg�n el m�todo de Mandelbrot.

Z = Zm - Z + C

[editar]

A continuaci�n se muestra una serie de fractales iterando las diferentes potencias de Z = Zm - Z + C, seg�n el m�todo de Mandelbrot.

Z = Zm + 1 / Cp

[editar]

Tambi�n se puede transformar cada punto del plano complejo, de acuerdo a una funci�n arbitraria, antes de ser sumado a la funci�n iterativa, seg�n la siguiente ecuaci�n Z = Zm + F(C) . Veamos que pasa cuando la transformaci�n es del tipo:F(C) = 1 / C

Ejemplos de fractales del tipo Mandelbrot: Z = Zm + 1/C, donde cada punto C del plano complejo se transforma en 1 / C, antes de entrar en la iteraci�n de la potencia de Z.
Zo = (0,0i). El n�mero de v�rtices es V = (m - 1)


Pero, qu� pasa cu�ndo Z = Zm + (1 / C2) ?. Pues algo muy parecido a lo que ve�amos antes, ahora el n�mero de v�rtices es V = (m - 1) * p




Integrando en el mismo fractal una funci�n de C y su inversa Z = Zm + C i Z = Zm + 1/C

[editar]

La zona en color BLANCO intenso es el �rea de la intersecci�n de los 2 sets.

Z = ( Zm / Cm ) + C

[editar]

Z = Zm + C + Cp + 1/ C + 1/ Cq

[editar]

Tambi�n podemos a�adir m�s sumandos a la funci�n Zm, combinando C, Cp, 1/C y 1/Cq en grupos de 2, 3 o 4, veamos que sucede si agrupamos C2, 1/C y 1/C2 de 2,3 o 4 formas ..:


A continuaci�n m�s combinaciones con otros exponentes:

Z = Zm + polinomios de C

[editar]

Podemos combinar diferentes potencias de C y/o Z sum�ndolas a Zm , veamos qu� sucede:

El caso de la funci�n: Z=Z2 + 1 /(Cm-1)

[editar]

Z = Zm + polinomios mixtos de C i Z

[editar]

Podemos sumar a Zm polinomios mixtos de C i Z , veamos qu� sucede:

Z = Z2 + C/ (Z2 + k)

[editar]

Z = Zm + Cp/Zq + C

[editar]

Z= [(Zm+C-1) / (m*Zm-1+C- m)]2

[editar]

Z= [(Z + Cm-1) / Cm]2

[editar]

Z= [(Z + Cm-1) / Cm]3

[editar]

Z= [(Z + Cm+1) / (Cm - 1)]2

[editar]

Z= [(Z + Cm-1) / (Cm + 1)]2

[editar]

Otras combinaciones de Z y C

[editar]

M�s funciones de variable compleja

[editar]

Pero existe una amplia variedad de funciones, en el dominio de los n�meros complejos, que pueden ser iteradas seg�n el m�todo de Mandelbrot.
Voy a citar aqu� algunos ejemplos, explicitando la parte real y la imaginaria:

Exp(Z) = [ Exp(x) * Cos(x), Exp(x) * Sin(y)i ]
Sin(Z) = [ Sin(x) * ((Exp(y) + Exp(-y)) / 2), Cos(x) * ((Exp(y) - Exp(-y)) / 2)i ]
Cos(Z) = [ Cos(x) * ((Exp(y) + Exp(-y)) / 2) , -Sin(x) * ((Exp(y) - Exp(-y)) / 2)i ]
SinH(Z) = [ Cos(y) * ((Exp(x) - Exp(-x)) / 2) , Sin(Y) * ((Exp(x) + Exp(-x)) / 2)i ]
CosH(Z) = [ Cos(y) * ((Exp(x) + Exp(-x)) / 2) , Sin(y) * ((Exp(x) - Exp(-x)) / 2)i ]
LN(Z) = [ 0.5 * Log(x * x + y * y) , Atn(y / x)i ]
SQR(Z) = [ (x * x + y * y)^0.25 * Cos(0.5 * Atn(y/x)) , (x * x + y * y)^0.25 * Sin(0.5 * Atn(y/x)) i ]
ATN(Z) = [PI / 4 - (1 / 2) * Atn((1 - x^2 - y^2) / (2 * x)), -(1 / 4) * Log((1 - x^2 - y^2) ^2 + 4 * x^2) + (1 / 2) * Log((1 + y) ^2 + x^2) i]


Z = Zm + F(C)

[editar]

A continuaci�n algunos ejemplos de fractales por iteraci�n de Z2, pero transformando C seg�n las funciones descritas anteriormente:

Fractales por iteraci�n de Exp(Z)

[editar]

Esta funci�n se descompone en una parte real y otra imaginaria: Exp(Z) = [ Exp(x) * Cos(y), Exp(x) * Sin(y)i ]
Puede ser utilizada como funci�n iterativa o como funci�n transformadora de C = (Cx,Cyi), o simult�neamente:

Como funci�n iterativa

[editar]

Como funci�n transformadora de C

[editar]

Como funci�n iterativa i transformadora de C, simult�neamente

[editar]

El caso de la funci�n Z = Exp[(Z2 + k * Z) / F(Cm)]

[editar]

Esta funci�n es muy sensible a Zo, y tambi�n al coeficiente (k) que multiplica a Z. Veamos algunos ejemplos interesantes:

El caso de la funci�n Zn+1 = Exp(Zn / C m)

[editar]


El caso de la funci�n Zn+1 = Exp(Zn / C m) + C p

[editar]

El caso de la funci�n Zn+1 = Exp(Znp / C p)

[editar]


El caso de la funci�n Zn+1 = Znq * Exp(Zn / C p) + C

[editar]

El caso de la funci�n Zn+1 = Exp[ Zn2 / (C m + C p) ]

[editar]

Aparece un n�mero de l�bulos centrales = m, y un n�mero de aristas exteriores = p, siendo m<p.


El caso de la funci�n Zn+1 = Znm * Exp[ Cos(Zn)] + 1/C

[editar]

Aparecen un n�mero de aristas = m.

Fractales per iteraci�n de Sin(Z)

[editar]

Esta funci�n se descompone en una parte real y otra imaginaria: Sin(Z) = [ Sin(x) * ((Exp(y) + Exp(-y)) / 2), Cos(x) * ((Exp(y) - Exp(-y)) / 2)i ]
Puede ser utilizada como funci�n iterativa o como funci�n transformadora de los puntos C = (Cx,Cyi), simult�neamente:

Como funci�n iterativa

[editar]

Como funci�n transformadora de C

[editar]


Como funci�n iterativa y transformadora de C, simult�neamente

[editar]

El caso de la funci�n Zn+1 = Sin(Zn * C m)

[editar]

El caso de la funci�n Zn+1 = Sin(Zn / C m)

[editar]

Fractales por iteraci�n de Cos(Z)

[editar]

Esta funci�n se descompone en una parte real y otra imaginaria: ' Cos(Z) = [ Cos(x)*((Exp(y)+Exp(-y)) / 2), -Sin(x)*((Exp(y)-Exp(-y))/2)i ]
Puede ser utilizada como funci�n iterativa o como funci�n transformadora de C = (Cx,Cyi), o simult�neamente

Como funci�n iterativa

[editar]

Como funci�n transformadora de C

[editar]

Como funci�n iterativa y transformadora de C, simult�neamente

[editar]

El caso de la funci�n Zn+1 = Cos(Zn * C m)

[editar]


El caso de la funci�n Zn+1 = Cos(Zn/C m)

[editar]


Fractales por iteraci�n de SinH(Z)

[editar]

Esta funci�n se descompone en una parte real y otra imaginaria: SinH(Z) = [ Cos(y) * ((Exp(x) - Exp(-x)) / 2) , Sin(Y) * ((Exp(x) + Exp(-x)) / 2)i ]
Puede ser utilizada como funci�n iterativa o como funci�n transformadora de C = (Cx,Cyi), o simult�neamente:

Como funci�n iterativa

[editar]

Como funci�n transformadora de C

[editar]


Como funci�n iterativa i transformadora de C, simult�neamente

[editar]



Fractales por iteraci�n de CosH(Z)

[editar]

Esta funci�n se descompone en una parte real y otra imaginaria: CosH(Z) = [ Cos(y) * ((Exp(x) + Exp(-x)) / 2) , Sin(y) * ((Exp(x) - Exp(-x)) / 2)i ]
Puede ser utilizada como funci�n iterativa o como funci�n transformadora de C = (Cx,Cyi), o simult�neamente:

Como funci�n iterativa

[editar]

Fractales por iteraci�n de combinaciones de diferentes funciones de Z

[editar]

Más fractales según el método de Mandelbrot

[editar]

Aquí se muestra un ejemplo de iteración de dos funciones F(X) y F(Y), por adición de cada uno de los puntos del plano C(X,Y), y la introducción de una tercera función F(Z) que desequilibra el punto de convergencia.
Xn+1 = Xn - Sin(Yn) + C(X) .. Yn+1 = Yn - Sin( Xn) + C(Y) .. Zn+1 = Zn - Cos( Xn + Yn)

Referencias

[editar]
  1. Barnsley, M. Fractals everywhere.Academic Press Inc, 1988. ISBN 0-12-079062-9. (Cap 5)