miércoles, 26 de febrero de 2025

Explorando el Mundo de los Fractales con Python

Los fractales son estructuras matemáticas fascinantes que se repiten a diferentes escalas y se encuentran tanto en la naturaleza como en el arte digital. En esta entrada, exploraremos cómo generar un fractal utilizando Python, específicamente el conjunto de Mandelbrot.

¿Qué es un Fractal?

Un fractal es un objeto geométrico que exhibe autosemejanza, lo que significa que sus partes tienen una estructura similar a la del conjunto completo, sin importar el nivel de zoom. Ejemplos de fractales en la naturaleza incluyen los copos de nieve, los helechos y las costas.

Generando el Conjunto de Mandelbrot con Python

El conjunto de Mandelbrot es uno de los fractales más conocidos. Para generarlo, utilizaremos las bibliotecas NumPy y Matplotlib en Python. A continuación, te muestro el código:

import numpy as np

import matplotlib.pyplot as plt


# Definir el tamaño de la imagen y los límites del conjunto de Mandelbrot

width, height = 1000, 1000

xmin, xmax, ymin, ymax = -2, 1, -1.5, 1.5

max_iter = 256


# Crear la malla de valores complejos

x = np.linspace(xmin, xmax, width)

y = np.linspace(ymin, ymax, height)

X, Y = np.meshgrid(x, y)

C = X + 1j * Y


# Inicializar la matriz de iteraciones

Z = np.zeros_like(C, dtype=complex)

M = np.zeros((width, height))


# Iteración del conjunto de Mandelbrot

for i in range(max_iter):

    mask = np.abs(Z) < 2

    Z[mask] = Z[mask]**2 + C[mask]

    M[mask] = i


# Graficar el fractal

plt.figure(figsize=(10, 10))

plt.imshow(M.T, cmap='inferno', extent=[xmin, xmax, ymin, ymax])

plt.colorbar(label='Iteraciones')

plt.title("Fractal de Mandelbrot")

plt.xlabel("Reales")

plt.ylabel("Imaginarios")

plt.show()

Explicación del Código

  1. Definimos los parámetros de la imagen y los límites del conjunto de Mandelbrot.
  2. Creamos una malla de números complejos que representan puntos en el plano.
  3. Iteramos cada punto, aplicando la ecuación matemática 
    Zn+1=Zn2+CZ_{n+1} = Z_n^2 + C
  4. Visualizamos el resultado usando Matplotlib, con un esquema de colores atractivo.

Conclusión

Este es un ejemplo básico de cómo generar fractales con Python. Puedes modificar los parámetros para obtener diferentes representaciones o probar otros fractales, como el conjunto de Julia.

Si te interesa la programación matemática y la visualización de datos, experimentar con fractales es una excelente forma de aprender más sobre geometría compleja y optimización de algoritmos.

¡Espero que esta entrada te haya inspirado a explorar más sobre el fascinante mundo de los fractales! 🚀✨

No hay comentarios.:

Publicar un comentario