stringtranslate.com

Tallo de recolección

Ejemplo de tallos de Pickover en un detalle del conjunto de Mandelbrot

Los tallos de Pickover son ciertos tipos de detalles que se encuentran empíricamente en el conjunto de Mandelbrot , en el estudio de la geometría fractal . [1] Se denominan así en honor al investigador Clifford Pickover , cuyo método de "cruz épsilon" fue fundamental en su descubrimiento. Una "cruz épsilon" es una trampa de órbita en forma de cruz .

Según Vepstas (1997), "Pickover ha dado con el concepto novedoso de observar hasta qué punto las órbitas de los puntos interiores se acercan a los ejes x e y. En estas imágenes, cuanto más se acerca el punto, más arriba en la escala de colores se sitúa, y el rojo indica el mayor acercamiento. Se utiliza el logaritmo de la distancia para acentuar los detalles". [2]

Biomorfos

Un ejemplo del tipo de formas biomórficas producidas por el algoritmo de Pickover.

Los biomorfos son tallos de Pickover de apariencia biológica. [3] A finales de los años 1980, Pickover desarrolló organismos de retroalimentación biológica similares a los conjuntos de Julia y al conjunto fractal de Mandelbrot . [4] Según Pickover (1999), en resumen, "describió un algoritmo que puede usarse para la creación de formas diversas y complicadas que se asemejan a organismos invertebrados. Las formas son complicadas y difíciles de predecir antes de experimentar realmente con las asignaciones". Esperaba que "estas técnicas animaran [a otros] a explorar más y descubrir nuevas formas, por accidente, que están al borde de la ciencia y el arte". [5]

Pickover desarrolló un algoritmo (que no utiliza perturbaciones aleatorias ni leyes naturales) para crear formas muy complicadas que se asemejan a organismos invertebrados. La iteración, o recursión, de transformaciones matemáticas se utiliza para generar morfologías biológicas. Las llamó "biomorfos". Al mismo tiempo que acuñó el término "biomorfo" para estos patrones, el famoso biólogo evolucionista Richard Dawkins utilizó la palabra para referirse a su propio conjunto de formas biológicas a las que se llegó mediante un procedimiento muy diferente. Más rigurosamente, los "biomorfos" de Pickover abarcan la clase de morfologías organismales creadas mediante pequeños cambios en las pruebas de convergencia tradicionales en el campo de la teoría de " conjuntos de Julia ". [5]

Los biomorfos de Pickover muestran una autosimilitud a diferentes escalas, una característica común de los sistemas dinámicos con retroalimentación. Los sistemas reales, como las costas y las cadenas montañosas, también muestran autosimilitud a ciertas escalas. Un sistema 0L paramétrico bidimensional puede “parecerse” a los biomorfos de Pickover. [6]

Implementación

Pickover Stalk renderizado con una implementación del pseudocódigo dado.

El siguiente ejemplo, escrito en pseudocódigo, representa un conjunto de Mandelbrot coloreado utilizando un Pickover Stalk con un vector de transformación y un dividendo de color.

El vector de transformación se utiliza para compensar la posición (x, y) al muestrear la distancia del punto al eje horizontal y vertical.

El dividendo de color es un valor flotante que se utiliza para determinar el grosor del tallo cuando se renderiza.

Para cada píxel (x, y) del objetivo, haga lo siguiente:{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 ubicarse en la escala Y de Mandelbrot (-1, 1))float2 c = (zx, zy) //Desplazamiento en las fórmulas de Mandelbrotfloat x = zx; //Coordenadas a iterarflotar y = zy;float trapDistance = 1000000; //Realiza un seguimiento de la distancia, establecida en un valor alto al principio. int iteración = 0;mientras (x*x + y*y < 4 && iteración < maxIteraciones){float2 z = float2(x, y);z = cmul(z, z); // z^2, cmul es una función de multiplicación para números complejos z += c;x = zx;y = zy;float distanceToX = abs(zx + transformaciónVector.x); //Comprueba la distancia al eje verticalfloat distanceToY = abs(zy + transformaciónVector.y); //Comprueba la distancia al eje horizontallowestDistance = min(distanceToX, distanceToY); // Utilice solo la distancia del eje más pequeñatrapDistance = min(trapDistance, lowestDistance);iteración++;}retorna trampaDistancia * color / dividendo;//El dividendo es un flotante externo, cuanto más alto sea más grueso será el tallo}

Referencias

  1. ^ Peter J. Bentley y David W. Corne (2001). Sistemas evolutivos creativos . Morgan Kaufmann. pág. 354.
  2. ^ Linas Vepstas (1997). "Interior Sketchbook Diary". Consultado el 8 de julio de 2008.
  3. ^ Paul Nylander. Mandelbrot Set Biomorph. febrero de 2005. Consultado el 8 de julio de 2008.
  4. ^ Edward Rietman (1994). Genesis Redux: Experimentos para crear vida artificial . Windcrest/McGraw-Hill. pág. 154.
  5. ^ de Clifford A. Pickover (1991) "Accidente, evolución y arte". Boletín YLEM número 12 volumen 19 noviembre/diciembre 1999.
  6. ^ Alfonso Ortega, Marina de la Cruz y Manuel Alfonseca (2002). "Sistemas L paramétricos bidimensionales e imágenes fractales recursivas: conjunto de Mandelbrot, conjuntos de Julia y biomorfos". En: Computers & Graphics Volumen 26, Número 1, febrero de 2002, páginas 143-149.

Lectura adicional

Enlaces externos