stringtranslate.com

Fractal de Newton

Conjuntos de Fatou (azul, rojo y verde) y conjunto de Julia (su límite) para la función racional asociada al método de Newton para f ( z ) = z 3 − 1 .

El fractal de Newton es un conjunto de contornos en el plano complejo que se caracteriza por el método de Newton aplicado a un polinomio fijo p ( z ) ∈ [ z ] o función trascendental . Es el conjunto de Julia de la función meromórfica zz p ( z )/p′ ( z ) que se da por el método de Newton. Cuando no hay ciclos atractivos (de orden mayor que 1), divide el plano complejo en regiones G k , cada una de las cuales está asociada con una raíz ζ k del polinomio, k = 1, …, deg( p ) . De esta manera, el fractal de Newton es similar al conjunto de Mandelbrot , y como otros fractales exhibe una apariencia intrincada que surge de una descripción simple. Es relevante para el análisis numérico porque muestra que (fuera de la región de convergencia cuadrática ) el método de Newton puede ser muy sensible a su elección del punto de inicio.

Casi todos los puntos del plano complejo están asociados con una de las raíces deg( p ) de un polinomio dado de la siguiente manera: el punto se utiliza como valor inicial z 0 para la iteración de Newton z n + 1  := z np ( zn )/p' ( z n ) , dando una secuencia de puntos z 1 , z 2 , …, Si la secuencia converge a la raíz ζ k , entonces z 0 era un elemento de la región G k . Sin embargo, para cada polinomio de grado al menos 2 hay puntos para los cuales la iteración de Newton no converge a ninguna raíz: ejemplos son los límites de las cuencas de atracción de las diversas raíces. Incluso hay polinomios para los cuales conjuntos abiertos de puntos de partida no convergen a ninguna raíz: un ejemplo simple es z 3 − 2 z + 2 , donde algunos puntos son atraídos por el ciclo 0, 1, 0, 1… en lugar de por una raíz.

Un conjunto abierto cuyas iteraciones convergen hacia una raíz o ciclo dado (que no es un punto fijo), es un conjunto de Fatou para la iteración. El conjunto complementario a la unión de todos ellos es el conjunto de Julia. Los conjuntos de Fatou tienen un límite común, es decir, el conjunto de Julia. Por lo tanto, cada punto del conjunto de Julia es un punto de acumulación para cada uno de los conjuntos de Fatou. Es esta propiedad la que causa la estructura fractal del conjunto de Julia (cuando el grado del polinomio es mayor que 2).

Para trazar imágenes del fractal, primero se puede elegir un número específico d de puntos complejos ( ζ 1 , …, ζ d ) y calcular los coeficientes ( p 1 , …, p d ) del polinomio

.

Luego, para una red rectangular

de puntos en , se encuentra el índice k ( m , n ) de la raíz correspondiente ζ k ( m , n ) y se utiliza esto para llenar una cuadrícula ráster M × N asignando a cada punto ( m , n ) un color f k ( m , n ) . Adicionalmente o alternativamente los colores pueden depender de la distancia D ( m , n ) , que se define como el primer valor D tal que | z Dζ k ( m , n ) | < ε para algún pequeño ε > 0 previamente fijado .

Generalización de los fractales de Newton

Una generalización de la iteración de Newton es

donde a es cualquier número complejo . [1] La opción especial a = 1 corresponde al fractal de Newton. Los puntos fijos de este mapa son estables cuando a se encuentra dentro del disco de radio 1 centrado en 1. Cuando a está fuera de este disco, los puntos fijos son localmente inestables, sin embargo el mapa aún exhibe una estructura fractal en el sentido del conjunto de Julia . Si p es un polinomio de grado d , entonces la secuencia z n está acotada siempre que a esté dentro de un disco de radio d centrado en d .

De manera más general, el fractal de Newton es un caso especial de un conjunto de Julia .

Serie: p ( z )= zn - 1

Otros fractales donde se multiplican funciones potenciales y trigonométricas. p ( z ) = z n *Sin(z) - 1

Fractal de nueva generación

El fractal Nova inventado a mediados de la década de 1990 por Paul Derbyshire, [2] [3] es una generalización del fractal de Newton con la adición de un valor c en cada paso: [4]

La variante "Julia" del fractal Nova mantiene c constante sobre la imagen e inicializa z 0 en las coordenadas de los píxeles. La variante "Mandelbrot" del fractal Nova inicializa c en las coordenadas de los píxeles y establece z 0 en un punto crítico, donde [5]

Los polinomios de uso común como p ( z ) = z 3 − 1 o p ( z ) = ( z − 1) 3 conducen a un punto crítico en z = 1 .

Implementación

Para implementar el fractal de Newton es necesario tener una función inicial así como su función derivada:

Las tres raíces de la función son

Las funciones definidas anteriormente se pueden traducir en pseudocódigo de la siguiente manera:

//z^3-1 float2 Función ( float2 z ) { return cpow ( z , 3 ) - float2 ( 1 , 0 ); //cpow es una función exponencial para números complejos }         //3*z^2 float2 Derivative ( float2 z ) { return 3 * cmul ( z , z ); //cmul es una función que maneja la multiplicación de números complejos }        

Ahora sólo es cuestión de implementar el método de Newton utilizando las funciones dadas.

float2 roots [ 3 ] = //Raíces (soluciones) del polinomio { float2 ( 1 , 0 ), float2 ( -.5 , sqrt ( 3 ) / 2 ), float2 ( -.5 , - sqrt ( 3 ) / 2 ) }; color colors [ 3 ] = //Asigna un color para cada raíz { rojo , verde , azul }              Para cada píxel ( x , y ) en el objetivo , haga : { zx = coordenada x escalada del píxel ( escalada para estar en la escala X de Mandelbrot ( -2,5 , 1 )) zy = coordenada y escalada del píxel ( escalada para estar en la escala Y de Mandelbrot ( -2 , 1 ))                                          float2 z = float2 ( zx , zy ); //z se establece originalmente en las coordenadas de píxeles     para ( int iteración = 0 ; iteración < maxIteración ; iteración ++ ;) { z -= cdiv ( Función ( z ), Derivada ( z )); //cdiv es una función para dividir números complejos             float tolerancia = 0.000001 ; for ( int i = 0 ; i < roots . Length ; i ++ ) { float2 diferencia = z - raíces [ i ]; //Si la iteración actual está lo suficientemente cerca de una raíz, colorea el píxel. if ( abs ( diferencia . x ) < tolerancia && abs ( diferencia . y ) < tolerancia ) { return colores [ i ]; //Devuelve el color correspondiente a la raíz } } } return negro ; //Si no se encuentra ninguna solución }                                  

Véase también

Referencias

  1. ^ Simon Tatham. "Fractales derivados de Newton-Raphson".
  2. ^ Damien M. Jones. "clase Standard_NovaMandel (referencia de fórmula Ultra Fractal)".
  3. ^ Damien M. Jones. "Fractales de nova de dmj 1995-6".
  4. ^ Michael Condron. "El método relajado de Newton y el fractal Nova".
  5. ^ Frederik Slijkerman. "Manual Ultra Fractal: Nova (Julia, Mandelbrot)".

Lectura adicional