24 votos

¿Por qué esta familia de sistemas dinámicos es capaz de producir espirales y grupos de puntos?

He encontrado por ensayo y error una interesante familia de sistemas dinámicos que dan unos bonitos atractores extraños . Son caóticos sistemas complejos basado en el función digamma . Se define mediante un mapa discreto complejo como sigue: (Descargo de responsabilidad, tl:dr : imágenes y explicación de la familia de atractores extraños por delante, pero con la definición de la fórmula y las preguntas debería ser suficiente)

$$S_{D}=\{(x,y): (x_{n+1},y_{n+1}) = (Im(\psi(x_{n} + y_n i)\cdot\sin{\frac{D}{f}}, Re(\psi(x_{n} + y_n i))\cdot\cos{\frac{D}{f}})\}$$

Dónde:

  1. La semilla es $(x_0,y_0)=(\pi/4,\pi/4)$

  2. $\psi(x_{n} + y_n i)$ es la función digamma aplicada a un número complejo $z_n=x_n+y_n i$

  3. $f$ es una restricción de fracción fijada inicialmente para esta prueba en $f = 1$ .

  4. $D$ es una restricción llamada "Profundidad", $D \in \Bbb N$ .

  5. El proceso consiste simplemente en calcular en cada iteración la función digamma y luego generar un número complejo $(z_{n+1}=x_{n+1},y_{n+1})$ donde la parte real del número complejo en la iteración $n+1$ procede de la parte imaginaria del número complejo asociado a la iteración anterior $n$ e igualmente la parte imaginaria del número complejo de la iteración $n+1$ procede de la parte real del número complejo generado en la iteración $n$ . En otras palabras, es "cruzar" $Im$ y $Re$ en cada iteración.

Algunos detalles del proceso de prueba y error: Cualquier otra combinación de seno, coseno o no "cruce" $Im$ y $Re$ en cada iteración no proporcionará los patrones que mostraré a continuación. Modificando la semilla se obtendrán los mismos resultados pero localizados en otros puntos del plano o distorsionados. Modificando la fracción $f$ sólo genera otros atractores similares, por lo que $f$ se fijó para centrar las pruebas.

Básicamente: para cada $D$ (Profundidad) y para un $f=1$ valor, si hacemos funcionar el sistema hasta tanto como queramos grandes $n$ llegamos a un sumidero de un atractor extraño, por lo que a partir de ese punto el conjunto de puntos no crecerá, y la gráfica del conjunto de puntos $S_n$ muestra un atractor.

Ejecutar el sistema para $D \in [0,250]$ y hasta $n = 4 \cdot 10^4$ (puede ser un valor más alto pero para las pruebas es un número suficientemente bueno) obtenemos una familia de atractores que se pueden dividir en tres tipos o formas diferentes: racimos , espirales y lo que yo llamo " anomalías ".

  1. Agrupaciones son sólo grupos de puntos, una forma redondeada, pero los puntos no pueden escapar de ese espacio. Por ejemplo, $S_5$ :

enter image description here

  1. Espirales tienen la forma de distintos tipos de espirales: dos brazos, tres brazos, cuatro, etc. Por ejemplo, $S_{45}$ :

enter image description here

  1. Anomalías son atractores con formas muy específicas. Los límites están muy bien definidos. Por ejemplo, $S_{22}$ y $S_{75}$ :

enter image description here

enter image description here

Quería verlos todos juntos, se ven así, está un poco ampliado:

enter image description here

Hay demasiada densidad de puntos cuando mostramos los grandes cúmulos junto con las espirales y las anomalías, así que decidí dividirlos en tres grupos y me centré en la familia de las espirales, y este es el gráfico de los atractores en forma de espiral en $Depth \in [0,250]$ :

enter image description here

Quería hacer un ejercicio de simulación con esto. Como se dice que los sistemas dinámicos complejos se acercan más a la realidad y los atractores que se obtienen son espirales y cúmulos intenté ver si es posible simular algunas galaxias y cúmulos estelares con esta información. Así que añadí una tercera dimensión usando el $Depth$ valor.

$$S_{Depth}=\{(x,y,d): (x_{n+1},y_{n+1},d_{n+1}) = (Im(\psi(x_{n} + y_n i)\cdot\sin{\frac{D}{f}}, Re(\psi(x_{n} + y_n i))\cdot\cos{\frac{D}{f}}, D+(\sin{n}))\}$$

En $d$ localiza cada atractor $S_D$ en una profundidad diferente, y el seno es sólo un truco para añadir algo de volumen "aleatorio" a cada nube de puntos de cada atractor. He utilizado un LiDAR visor gratuito para visualizar el $(x,y,d)$ puntos en el espacio tridimensional (en mi caso Edición gratuita de PointCloudViz ), y parecía bastante prometedor. Decidí invertir y colorear las imágenes con GIMP2, y estos son algunos resultados. Son exactamente los mismos puntos que se muestran en los gráficos anteriores, pero coloreados y vistos desde dentro de la nube de puntos en un entorno tridimensional (haz clic para ampliar):

enter image description here

enter image description here

enter image description here

Parece que estos puntos pueden "simular" galaxias de forma rudimentaria. Sería interesante realizar un simulación de n-cuerpos con esta familia de atractores.

Así que mis preguntas son:

  1. ¿Es correcto hablar de atractores extraños en el caso de las formas de racimo y espiral? Las iteraciones llegan realmente a un $n$ tal que el punto $(x_n,y_n)$ es un sumidero y el conjunto de puntos no crece a partir de ese momento, pero no estoy seguro de si es correcto hablar de atractor extraño, sólo atractor o sólo sistema dinámico unido a un mapa complejo. Estoy más seguro sobre por ejemplo el caso $D=22$ mostrado arriba porque la forma del atractor es muy clara.

  2. ¿Cómo genera este mapa los distintos tipos de espirales?

Mi conjetura: está relacionado con la forma de llegar al punto de hundimiento. Estoy "cruzando" $Im$ y $Re$ en cada iteración $n$ del mapa complejo, y esto podría estar creando las espirales por recursión.

  1. ¿Y por qué algunos de ellos son otro tipo de atractores como los cúmulos y las "anomalías"?

  2. ¿Existen otros sistemas capaces de generar este tipo de formas? Gracias

actualización 2017/11/10 para completar la información, a continuación se muestra una imagen bidimensional de $n$ -simulación de la gravedad del cuerpo utilizando el primer $600$ puntos generados por el $S_5$ set. Consideramos los puntos como un disco protoplanetario , y el punto más cercano al centro medio de los puntos recibirá la mayor densidad y por tanto se convertirá en un sol central. Al resto de puntos les he dado densidades, radios, masas y momentos aleatorios, para que simulen distintos tipos de planetas por acreción. Los planetas menos densos son blanquecinos-azulados, los de densidad media son verdosos (parecidos a la Tierra) y los más pesados son rojizos. Dependiendo del volumen, los colores son más claros en cada variedad, cuanto más grande más claro. Cuando dos planetas chocan, la masa mayor se lleva la densidad media de ambos planetas y toda la masa y el impulso. Cuando el planeta choca con el sol central, el sol se lleva toda la masa y la densidad media pero permanece fijo como centro del sistema. Esta simulación (es una animación en bucle) tiene $2 \cdot 10^4$ unidades de tiempo. El código Python es un trabajo muy bueno de Thanassis Tsiodras, con algunas personalizaciones propias para añadir densidades y colores aleatorios para una visualización un poco más realista, así que los créditos al autor ( aquí ):

enter image description here

Parece que las nubes de puntos generadas por el sistema dinámico son válidas para simular algunos comportamientos básicos de los discos protoplanetarios. Vemos que la nube de acreción inicial empieza a limpiarse: algunos protoplanetas colisionan y generan un planeta mayor con una nueva densidad y radio promediados. Otros son expulsados del disco protoplanetario debido a las distintas interacciones gravitatorias. Otros colisionan con el sol, haciéndolo más grande, y finalmente tras algunas unidades de tiempo se estabiliza con unos pocos planetas de diferente densidad y trayectorias más o menos estables. Ten en cuenta que la animación se va alejando poco a poco para ver las trayectorias más externas (parece que los planetas y el sol se encogen porque no hay referencia de fondo). En definitiva, ¡las Matemáticas pueden ser divertidas y emocionantes!

Actualización 2017/11/20 : He subido el código a mi cuenta repl.it ( enlace aquí ). No puede ejecutarse en línea porque requiere guardar las imágenes de los distintos sistemas dinámicos. Funcionará, por ejemplo, en un ordenador personal que utilice Python Anaconda . Siéntete libre de usarlo, modificarlo y disfrutarlo.

8voto

iadvd Puntos 2322

Aún no hay respuesta a esta pregunta, así que recopilaré aquí lo que he podido entender hasta ahora sobre estas familias de sistemas dinámicos. He aquí la explicación:

  1. ¿Por qué la cartografía anterior es capaz de generar espirales, cúmulos y otras anomalías?

Para responder a esto, primero he echado un vistazo a la imagen del gráfico completo de la familia de espirales, como se muestra en los gráficos de la pregunta. Podemos ver que hay una simetría casi horizontal. Tanto el "cuerpo superior" ( $z=a+bi , b \ge 0$ ) y "parte inferior del cuerpo" ( $z=a+bi , b \lt 0$ ) son bastante simétricos, pero no exactamente iguales. La estructura también tiene tres cuerpos/estructuras verticales, una estructura en forma de arco en el lado derecho, un cuerpo central y un cuerpo en el lado izquierdo. Estas son las regiones donde la densidad de puntos es mayor.

La densidad de puntos hace que estas estructuras parezcan "brillar" (por ejemplo, recuerdan a un medusas bioluminiscentes ). Las zonas donde hay más densidad de puntos parecen "brillar" en comparación con otras zonas de menor densidad.

Pero, ¿quién es el responsable de hacer las espirales y quién es el responsable de decidir la ubicación y la distorsión de las espirales?

Para responder a esto, primero tengo que modificar la expresión:

$$S_{D}=\{(x,y): (x_{n+1},y_{n+1}) = (Im(\psi(x_{n} + y_n i)\cdot\sin{\frac{D}{f}}, Re(\psi(x_{n} + y_n i))\cdot\cos{\frac{D}{f}})\}$$

Y hacerlo más general, lo es:

$$S_{D}=\{(x,y, f(z)): (x_{n+1},y_{n+1}) = (Im(f(x_{n} + y_n i)\cdot\sin{\frac{D}{f}}, Re(f(x_{n} + y_n i))\cdot\cos{\frac{D}{f}})\}$$

Así que, efectivamente: la familia de sistemas dinámicos es aún mayor. Dependiendo de la función compleja que se utilice en el paso $(2)$ de la explicación dada en la pregunta tendremos una estructura diferente. Todas ellas tienen transformaciones similares pero los resultados dependen obviamente de la función seleccionada. Así que básicamente mi pregunta original se refería a la anterior familia más general de sistemas dinámicos cuando $f(z)=\psi(z)$ es específicamente la función digamma.

Ahora, volviendo a la expresión específica digamma:

$$S_{D}=\{(x,y): (x_{n+1},y_{n+1}) = (Im(\psi(x_{n} + y_n i)\cdot\sin{\frac{D}{f}}, Re(\psi(x_{n} + y_n i))\cdot\cos{\frac{D}{f}})\}$$

Dividamos la expresión en dos versiones:

Versión 1 : No se aplican ni seno ni coseno:

$$S_{D}=\{(x,y): (x_{n+1},y_{n+1}) = (Im(\psi(x_{n} + y_n i)), Re(\psi(x_{n} + y_n i)))\}$$

y

Versión 2 : No se aplica ninguna función, sólo el cruce de $Re$ y $Im$ (el significado de "cruce" es el que se explica en la pregunta):

$$S_{D}=\{(x,y): (x_{n+1},y_{n+1}) = (Im(x_{n} + y_n i)\cdot\sin{\frac{D}{f}}, Re(x_{n} + y_n i)\cdot\cos{\frac{D}{f}})\}$$

Versión 1 proporcionará el siguiente resultado:

enter image description here

Versión 2 proporcionará el siguiente resultado (para el mismo $n$ iteraciones y $f$ y $D$ parámetros):

enter image description here

Así que la conclusión es: las expresiones seno y coseno proporcionan la cuasi-simetría horizontal observada de los sistemas dinámicos, y la función digamma proporcionaba las estructuras en espiral. La combinación de ambas expresiones proporciona una estructura final en la que las espirales de la función digamma son transformadas, desplazadas y distorsionadas por las transformaciones seno y coseno.

  1. ¿Qué tenemos si sustituimos la función digamma por otras funciones?

Mis observaciones son que obtenemos sistemas "brillantes" diferentes, pero que comparten características similares: cuasisimetría horizontal y tres estructuras verticales (izquierda, centro, derecha), es decir, regiones en las que la densidad de puntos es mayor.

Estas son algunas de esas bellezas:

Función de error complementario escalado, $f(z)=exp(z^2) \cdot erfc(z)$ . (véase Lista de funciones scipy.special de Python , Steven G. Johnson, Faddeeva W aplicación de la función ). $D \in [0,10^4], n \in [0,10^4]$ zoom en la región $z=[+/-5]+[+/-5]i$ :

enter image description here

$f(z) = $ Integral exponencial $E_1$ de argumento complejo $z$ . ( ver lista de funciones Python scipy.special ). $D \in [0,10^3], n \in [0,10^4]$ zoom en la región $z=[+/-1]+[+/-4]i$ :

enter image description here

$f(z)=$ Integral exponencial $E_i$ . ( ver lista de funciones Python scipy.special ). $D \in [0,10^3], n \in [0,10^4]$ zoom en la región $z=[+/-5]+[+/-5]i$ :

enter image description here

Por último, mis familias favoritas hasta ahora, $f(z)=\frac{1}{(z+1)^t}, t \in \Bbb R$ . $D \in [0,8 \cdot 10^3], n \in [0,8 \cdot 10^3]$ zoom en la región $z=[+/-5]+[+/-5]i$ :

$f(z)=\frac{1}{(z+1)}$ :

enter image description here

$f(z)=\frac{1}{(z+1)^{1.1}}$ :

enter image description here

$f(z)=\frac{1}{(z+1)^{1.2}}$ :

enter image description here

$\cdots$

$f(z)=\frac{1}{(z+1)^{2}}$ :

enter image description here

$\cdots$

$f(z)=\frac{1}{(z+1)^{3}}$ :

enter image description here

Sólo puedo decir que estas estructuras son visualmente hermosas. Mantendré la pregunta abierta con la esperanza de que alguien pueda proporcionar más información sobre por qué esta transformación / mapeo funciona de esta manera.

Actualización 2017/11/30 : He aquí una animación de las familias mencionadas $f(z)=\frac{1}{(z+1)^t}, t$ de $0$ a $2$ por $0.01$ pasos. Cada fotograma es una parcela familiar completa , calculada mediante $D \in [0,8 \cdot 10^3], n \in [0,8 \cdot 10^3]$ zoom en la región $z=[+/-5]+[+/-5]i$ . Tardé varios días en renderizarlo:

enter image description here

Hay una versión mucho más grande de la animación en este enlace .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X