En dinámica compleja , el conjunto de Julia y el conjunto de Fatou son dos conjuntos complementarios (Julia "cordones" y Fatou "polvos") definidos a partir de una función . De manera informal, el conjunto de Fatou de la función consiste en valores con la propiedad de que todos los valores cercanos se comportan de manera similar bajo iteraciones repetidas de la función, y el conjunto de Julia consiste en valores tales que una perturbación arbitrariamente pequeña puede causar cambios drásticos en la secuencia de valores de la función iterada. Por lo tanto, el comportamiento de la función en el conjunto de Fatou es "regular", mientras que en el conjunto de Julia su comportamiento es " caótico ".
El conjunto de Julia de una función f se denota comúnmente y el conjunto de Fatou se denota [a]. Estos conjuntos reciben su nombre de los matemáticos franceses Gaston Julia [1] y Pierre Fatou [2], cuyo trabajo inició el estudio de la dinámica compleja a principios del siglo XX.
Sea una función holomorfa no constante de la esfera de Riemann sobre sí misma. Tales funciones son precisamente las funciones racionales complejas no constantes , es decir, donde y son polinomios complejos . Supóngase que p y q no tienen raíces comunes , y al menos una tiene grado mayor que 1. Entonces hay un número finito de conjuntos abiertos que se dejan invariantes por y son tales que:
La última afirmación significa que los extremos de las secuencias de iteraciones generadas por los puntos de son o bien exactamente el mismo conjunto, que es entonces un ciclo finito, o bien son ciclos finitos de conjuntos de forma circular o anular que se encuentran concéntricamente. En el primer caso el ciclo es atractivo , en el segundo caso es neutro .
Estos conjuntos son los dominios de Fatou de , y su unión es el conjunto de Fatou de . Cada uno de los dominios de Fatou contiene al menos un punto crítico de , es decir, un punto (finito) z que satisface , o si el grado del numerador es al menos dos veces mayor que el grado del denominador , o si para algún c y una función racional que satisface esta condición.
El complemento de es el conjunto de Julia de . Si todos los puntos críticos son preperiódicos, es decir, no son periódicos pero eventualmente caen en un ciclo periódico, entonces es toda la esfera. De lo contrario, es un conjunto denso en ninguna parte (no tiene puntos interiores) y un conjunto incontable (de la misma cardinalidad que los números reales). Como , se deja invariante por , y en este conjunto la iteración es repulsiva, lo que significa que para todo w en un entorno de z (dentro de ). Esto significa que se comporta caóticamente en el conjunto de Julia. Aunque hay puntos en el conjunto de Julia cuya secuencia de iteraciones es finita, solo hay un número contable de tales puntos (y constituyen una parte infinitesimal del conjunto de Julia). Las secuencias generadas por puntos fuera de este conjunto se comportan caóticamente, un fenómeno llamado caos determinista .
Se han realizado numerosas investigaciones sobre el conjunto de Fatou y el conjunto de Julia de funciones racionales iteradas , conocidas como mapas racionales. Por ejemplo, se sabe que el conjunto de Fatou de un mapa racional tiene 0, 1, 2 o una cantidad infinita de componentes . [3] Cada componente del conjunto de Fatou de un mapa racional se puede clasificar en una de cuatro clases diferentes . [4]
El conjunto de Julia y el conjunto de Fatou de f son ambos completamente invariantes bajo iteraciones de la función holomorfa f : [5]
Para el conjunto de Julia es el círculo unitario y sobre éste la iteración viene dada por duplicación de ángulos (operación que es caótica sobre los puntos cuyo argumento no es una fracción racional de ). Existen dos dominios de Fatou: el interior y el exterior del círculo, con iteración hacia 0 y ∞, respectivamente.
Para el conjunto de Julia, el segmento de recta comprendido entre −2 y 2 tiene un único dominio de Fatou : los puntos que no están en el segmento de recta iteran hacia ∞. (Aparte de un desplazamiento y escalamiento del dominio, esta iteración es equivalente a la iteración en el intervalo unitario, que se utiliza habitualmente como ejemplo de sistema caótico).
Las funciones f y g tienen la forma , donde c es un número complejo. Para una iteración de este tipo, el conjunto de Julia no es en general una curva simple, sino un fractal, y para algunos valores de c puede adoptar formas sorprendentes. Vea las imágenes a continuación.
Para algunas funciones f ( z ) podemos decir de antemano que el conjunto de Julia es un fractal y no una simple curva. Esto se debe al siguiente resultado en las iteraciones de una función racional:
Teorema : Cada uno de los dominios de Fatou tiene el mismo límite, que en consecuencia es el conjunto de Julia. [ cita requerida ]
Esto significa que cada punto del conjunto de Julia es un punto de acumulación para cada uno de los dominios de Fatou. Por lo tanto, si hay más de dos dominios de Fatou, cada punto del conjunto de Julia debe tener puntos de más de dos conjuntos abiertos distintos infinitamente cercanos, y esto significa que el conjunto de Julia no puede ser una curva simple. Este fenómeno ocurre, por ejemplo, cuando f ( z ) es la iteración de Newton para resolver la ecuación :
La imagen de la derecha muestra el caso n = 3.
Un sistema dinámico complejo muy popular es el de la familia de polinomios cuadráticos complejos , un caso especial de aplicaciones racionales . Dichos polinomios cuadráticos pueden expresarse como
donde c es un parámetro complejo. Fijemos un valor lo suficientemente grande como para que (por ejemplo, si c está en el conjunto de Mandelbrot , entonces podemos simplemente dejar ) Entonces el conjunto de Julia lleno para este sistema es el subconjunto del plano complejo dado por
donde es el n- ésimo iterado de El conjunto de Julia de esta función es el límite de .
El plano de parámetros de los polinomios cuadráticos –es decir, el plano de los posibles valores de c– da lugar al famoso conjunto de Mandelbrot . En efecto, el conjunto de Mandelbrot se define como el conjunto de todos los c tales que son conexos . Para los parámetros fuera del conjunto de Mandelbrot, el conjunto de Julia es un espacio de Cantor : en este caso, a veces se lo denomina polvo de Fatou .
En muchos casos, el conjunto de Julia de c se parece al conjunto de Mandelbrot en entornos suficientemente pequeños de c . Esto es cierto, en particular, para los llamados parámetros de Misiurewicz , es decir, parámetros c para los cuales el punto crítico es preperiódico. Por ejemplo:
En otras palabras, los conjuntos de Julia son localmente similares alrededor de los puntos de Misiurewicz . [6]
La definición de los conjuntos de Julia y Fatou se traslada fácilmente al caso de ciertos mapas cuya imagen contiene su dominio; más notablemente, las funciones meromórficas trascendentales y los mapas de tipo finito de Adam Epstein .
Los conjuntos de Julia también se definen comúnmente en el estudio de la dinámica en varias variables complejas.
Las implementaciones de pseudocódigo que se muestran a continuación codifican las funciones de cada fractal. Considere implementar operaciones con números complejos para permitir un código más dinámico y reutilizable.
R = radio de escape # elija R > 0 tal que R**2 - R >= sqrt(cx**2 + cy**2) para cada píxel ( x , y ) en la pantalla , haga : { zx = coordenada x escalada del píxel ; # (la escala debe estar entre -R y R) # zx representa la parte real de z. zy = coordenada y escalada del píxel ; # (la escala debe estar entre -R y R) # zy representa la parte imaginaria de z. iteración = 0 ; máx_iteración = 1000 ; mientras ( zx * zx + zy * zy < R ** 2 Y iteración < máx_iteración ) { xtemp = zx * zx - zy * zy ; zy = 2 * zx * zy + cy ; zx = xtemp + cx ; iteración = iteración + 1 ; } si ( iteración == máx_iteración ) devuelve negro ; de lo contrario devuelve iteración ; }
R = radio de escape # elija R > 0 tal que R**n - R >= sqrt(cx**2 + cy**2) para cada píxel ( x , y ) en la pantalla , haga : { zx = coordenada x escalada del píxel ; # (la escala debe estar entre -R y R) zy = coordenada y escalada del píxel ; # (la escala debe estar entre -R y R) iteración = 0 ; máx._iteración = 1000 ; mientras ( zx * zx + zy * zy < R ** 2 Y iteración < máx._iteración ) { xtmp = ( zx * zx + zy * zy ) ^ ( n / 2 ) * cos ( n * atan2 ( zy , zx )) + cx ; zy = ( zx * zx + zy * zy ) ^ ( n / 2 ) * sin ( n * atan2 ( zy , zx )) + cy ; zx = xtmp ; iteración = iteración + 1 ; } si ( iteración == máx_iteración ) devuelve negro ; de lo contrario devuelve iteración ; }
Otra opción recomendada es reducir las bandas de color entre iteraciones mediante el uso de una fórmula de renormalización para la iteración. [7]
Se da como resultado que la fórmula sea:
donde es la iteración de escape, limitada por alguna tal que y , y es la magnitud de la última iteración antes de escapar.
Esto se puede implementar de forma muy sencilla así:
# simplemente reemplace las últimas 4 líneas de código del último ejemplo con estas líneas de código:si ( iteración == máx_iteración ) devuelve negro ; de lo contrario abs_z = zx * zx + zy * zy ; devuelve iteración + 1 - log ( log ( abs_z )) / log ( n );
La diferencia se muestra a continuación con un conjunto de Julia definido como donde .
El conjunto de Julia para es el círculo unitario, y en el dominio de Fatou externo, la función potencial φ ( z ) está definida por φ ( z ) = log| z |. Las líneas equipotenciales para esta función son círculos concéntricos. Como tenemos
donde es la secuencia de iteración generada por z . Para la iteración más general , se ha demostrado que si el conjunto de Julia es conexo (es decir, si c pertenece al conjunto de Mandelbrot (usual)), entonces existe una función biholomórfica ψ entre el dominio de Fatou externo y el externo del círculo unitario tal que . [8] Esto significa que la función potencial en el dominio de Fatou externo definida por esta correspondencia está dada por:
Esta fórmula tiene sentido también si el conjunto de Julia no es conexo, de modo que para todo c podemos definir la función potencial en el dominio de Fatou que contiene a ∞ mediante esta fórmula. Para una función racional general f ( z ) tal que ∞ es un punto crítico y un punto fijo, es decir, tal que el grado m del numerador es al menos dos veces mayor que el grado n del denominador, definimos la función potencial en el dominio de Fatou que contiene a ∞ mediante:
donde d = m − n es el grado de la función racional. [9]
Si N es un número muy grande (por ejemplo, 10 100 ), y si k es el primer número de iteración tal que , tenemos que
para algún número real , que debe considerarse como el número de iteración real , y tenemos que:
donde el último número está en el intervalo [0, 1).
Para la iteración hacia un ciclo de atracción finito de orden r , tenemos que si es un punto del ciclo, entonces (la composición de pliegues r ), y el número
es la atracción del ciclo. Si w es un punto muy cercano y w ′ se itera r veces , tenemos que
Por lo tanto, el número es casi independiente de k . Definimos la función potencial en el dominio de Fatou por:
Si ε es un número muy pequeño y k es el primer número de iteración tal que , tenemos que
para algún número real , que debe considerarse como el número de iteración real, y tenemos que:
Si la atracción es ∞, lo que significa que el ciclo es superatractivo , es decir, nuevamente que uno de los puntos del ciclo es un punto crítico, debemos reemplazar α por
donde w ′ se itera r veces y la fórmula para φ ( z ) es:
Y ahora el número de iteración real viene dado por:
Para la coloración debemos disponer de una escala cíclica de colores (construida matemáticamente, por ejemplo) y que contenga H colores numerados de 0 a H −1 ( H = 500, por ejemplo). Multiplicamos el número real por un número real fijo que determine la densidad de colores en la imagen, y tomamos la parte integral de este número módulo H .
La definición de la función potencial y nuestra manera de colorear presuponen que el ciclo es atrayente, es decir, no neutro. Si el ciclo es neutro, no podemos colorear el dominio de Fatou de manera natural. Como el término de la iteración es un movimiento giratorio, podemos, por ejemplo, colorear por la distancia mínima del ciclo que queda fijada por la iteración.
En cada dominio de Fatou (que no es neutro) hay dos sistemas de líneas ortogonales entre sí: las líneas equipotenciales (para la función potencial o el número de iteración real) y las líneas de campo .
Si coloreamos el dominio de Fatou según el número de iteración (y no el número de iteración real , como se definió en la sección anterior), las bandas de iteración muestran el curso de las líneas equipotenciales. Si la iteración es hacia ∞ (como es el caso con el dominio de Fatou externo para la iteración habitual ), podemos mostrar fácilmente el curso de las líneas de campo, es decir, alterando el color según el último punto en la secuencia de iteración esté por encima o por debajo del eje x (primera imagen), pero en este caso (más precisamente: cuando el dominio de Fatou es superatractivo) no podemos dibujar las líneas de campo de manera coherente, al menos no mediante el método que describimos aquí. En este caso, una línea de campo también se llama rayo externo .
Sea z un punto en el dominio de atracción de Fatou. Si iteramos z un gran número de veces, el término de la secuencia de iteración es un ciclo finito C , y el dominio de Fatou es (por definición) el conjunto de puntos cuya secuencia de iteración converge hacia C . Las líneas de campo parten de los puntos de C y de los (infinitos) puntos que iteran hacia un punto de C . Y terminan en el conjunto de Julia en puntos que no son caóticos (es decir, que generan un ciclo finito). Sea r el orden del ciclo C (su número de puntos) y sea un punto en C . Tenemos (la composición de pliegues r), y definimos el número complejo α por
Si los puntos de C son , α es el producto de los números r . El número real 1/|α| es la atracción del ciclo, y nuestra suposición de que el ciclo no es ni neutro ni superatractor, significa que 1 < 1/| alfa | < ∞ . El puntoes un punto fijo para, y cerca de este punto la funcióntiene (en conexión con las líneas de campo) carácter de una rotación con el argumento β de α (es decir,).
Para colorear el dominio de Fatou, hemos elegido un número pequeño ε y hemos establecido que las secuencias de iteración se detengan cuando , y coloreamos el punto z de acuerdo con el número k (o el número de iteración real, si preferimos una coloración suave). Si elegimos una dirección desde dada por un ángulo θ , la línea de campo que sale desde en esta dirección consiste en los puntos z tales que el argumento ψ del número satisface la condición de que
Porque si pasamos una banda de iteración en la dirección de las líneas de campo (y alejándonos del ciclo), el número de iteración k aumenta en 1 y el número ψ aumenta en β, por lo tanto, el número es constante a lo largo de la línea de campo.
La coloración de las líneas de campo del dominio de Fatou significa que coloreamos los espacios entre pares de líneas de campo: elegimos un número de direcciones regularmente situadas que parten de , y en cada una de estas direcciones elegimos dos direcciones alrededor de esta dirección. Como puede suceder que las dos líneas de campo de un par no terminen en el mismo punto del conjunto de Julia, nuestras líneas de campo coloreadas pueden ramificarse (infinitamente) en su camino hacia el conjunto de Julia. Podemos colorear en base a la distancia a la línea central de la línea de campo, y podemos mezclar esta coloración con la coloración habitual. Tales imágenes pueden ser muy decorativas (segunda imagen).
Una línea de campo coloreada (el dominio entre dos líneas de campo) está dividida por las bandas de iteración, y dicha parte se puede poner en una correspondencia uno a uno con el cuadrado unitario: una coordenada es (calculada a partir de) la distancia desde una de las líneas de campo delimitadoras, la otra es (calculada a partir de) la distancia desde el interior de las bandas de iteración delimitadoras (este número es la parte no entera del número de iteración real). Por lo tanto, podemos poner imágenes en las líneas de campo (tercera imagen).
Métodos:
Como se mencionó anteriormente, el conjunto de Julia se puede encontrar como el conjunto de puntos límite del conjunto de preimágenes de (esencialmente) cualquier punto dado. Por lo tanto, podemos intentar trazar el conjunto de Julia de una función dada de la siguiente manera. Comenzamos con cualquier punto z que sepamos que está en el conjunto de Julia, como un punto periódico repulsivo, y calculamos todas las preimágenes de z bajo alguna iteración alta de f .
Desafortunadamente, como el número de preimágenes iteradas crece exponencialmente, esto no es factible computacionalmente. Sin embargo, podemos ajustar este método, de manera similar al método de "juego aleatorio" para sistemas de funciones iteradas . Es decir, en cada paso, elegimos al azar una de las imágenes inversas de f .
Por ejemplo, para el polinomio cuadrático f c , la iteración hacia atrás se describe mediante
En cada paso, se selecciona al azar una de las dos raíces cuadradas.
Tenga en cuenta que es bastante difícil acceder a ciertas partes del conjunto de Julia con el algoritmo de Julia inverso. Por este motivo, se debe modificar IIM/J (se denomina MIIM/J) o utilizar otros métodos para producir mejores imágenes.
Como un conjunto de Julia es infinitamente delgado, no podemos dibujarlo de manera efectiva mediante iteraciones inversas a partir de los píxeles. Aparecerá fragmentado debido a la impracticabilidad de examinar una cantidad infinita de puntos de partida. Como el recuento de iteraciones cambia vigorosamente cerca del conjunto de Julia, una solución parcial es inferir el contorno del conjunto a partir de los contornos de color más cercanos, pero el conjunto tenderá a verse borroso.
Una mejor manera de dibujar el conjunto de Julia en blanco y negro es estimar la distancia de los píxeles (DEM) desde el conjunto y colorear cada píxel cuyo centro esté cerca del conjunto. La fórmula para la estimación de la distancia se deriva de la fórmula para la función potencial φ ( z ). Cuando las líneas equipotenciales para φ ( z ) están cerca, el número es grande y, a la inversa, por lo tanto, las líneas equipotenciales para la función deberían estar aproximadamente regulares. Se ha demostrado que el valor encontrado por esta fórmula (hasta un factor constante) converge hacia la distancia verdadera para z que converge hacia el conjunto de Julia. [9]
Suponemos que f ( z ) es racional, es decir, donde p ( z ) y q ( z ) son polinomios complejos de grados m y n , respectivamente, y tenemos que encontrar la derivada de las expresiones anteriores para φ ( z ). Y como es solo que varía, debemos calcular la derivada de con respecto a z . Pero como (la composición k -fold), es el producto de los números , y esta secuencia se puede calcular recursivamente mediante , comenzando con ( antes del cálculo de la siguiente iteración ).
Para la iteración hacia ∞ (más precisamente cuando m ≥ n + 2 , de modo que ∞ es un punto fijo superatractivo), tenemos
( d = m − n ) y en consecuencia:
Para la iteración hacia un ciclo de atracción finito (que no es superatractivo) que contiene el punto y tiene orden r , tenemos
y por consiguiente:
Para un ciclo de súper atracción, la fórmula es:
Calculamos este número cuando se detiene la iteración. Nótese que la estimación de la distancia es independiente de la atracción del ciclo. Esto significa que tiene significado para funciones trascendentales de "grado infinito" (por ejemplo, sin( z ) y tan( z )).
Además de dibujar el límite, la función de distancia se puede introducir como una tercera dimensión para crear un paisaje fractal sólido.
Generador de fractales HTML5 para tu navegador
Generar un conjunto de Julia o Mandelbrot en una región y resolución determinadas.