Saltar al contenido

Cómo hacer un árbol con fractales

julio 1, 2021


Advertencia: si empieza a jugar con fractales, puede volverse adictivo. No sé por qué, pero es muy divertido hacer estas cosas. En realidad, comencé a considerar los fractales como parte del #EquipoArboles desafío: un proyecto para recaudar suficiente dinero en 2020 para plantar 20 millones de árboles. (¡Hicimos nuestra meta!)

¿Qué tienen que ver los fractales con los árboles? Espera, un paso a la vez. Voy a mostrarte cómo crear un árbol usando un fractal, pero primero tomemos un pequeño desvío por el concepto de recursividad.

¿Qué es la recursividad? Déjame explicarte con un ejemplo: supongamos que quieres encontrar los factores primos de un número norte. Decir norte = 12. Bueno, puedes hacer eso en tu cabeza. 2 x 2 x 3 = 12, y todos esos son números primos. Pero que si norte = 1.234.533? Para eso, necesitas un método. Aquí hay una receta para generar los factores primos de cualquier número:

  • Dividir norte por 2: si no queda resto, anote 2 como factor
    • Reiniciar norte = el resultado de la división (n / 2)
  • Repita el paso anterior en el nuevo número
    • Continuar hasta que la división por 2 arroje un resto
    • Ahora aumenta el divisor por 1 (entonces, 2 + 1 = 3)
  • Divida el nuevo número por 3: Si no queda resto, anote 3 como factor …

Y así. Siga recorriendo esta rutina básica, ajustando norte en cada paso y aumentando el divisor, hasta que el resultado de la división sea menor que 2, entonces ya está. Pongamos este algoritmo en un script de Python:

Haga clic en el botón Reproducir para ejecutarlo. ¡Eh! Resulta que los factores primos de 1.234.533 son 3, 79 y 5.209. Elegí ese número al azar, así que es genial que tenga un factor primo tan alto. También puede ejecutar el script en sus propios números locos; simplemente haga clic en el ícono de lápiz y escriba algo en la línea 15.

De todos modos, lo que hay que notar aquí es cómo funciona: creé una función llamada «pfact» para realizar las operaciones, y la definición de la función realmente llama sí mismo (en la línea 11). Esa es recursividad. Al crear esa estructura anidada, podemos hacer cálculos elaborados usando muy poco código. Es sorprendente que esto funcione.

Recursión en la naturaleza

Entonces, ¿qué pasa con los fractales? Los fractales son patrones que tienen la misma apariencia a diferentes escalas. Los encuentras en todas partes en la naturaleza. Mire una costa: está llena de bahías, ríos y penínsulas. Si amplía una sección pequeña, ¿es más suave? No, de cerca ves las mismas formas irregulares a menor escala.

Esta auto-semejanza también se puede ver en los árboles. Si comienza desde el tronco y se mueve hacia arriba, se divide en varias partes, las llamamos ramas. Si sigue una de estas ramas, también se divide de una manera similar a la rama anterior. Cada rama del árbol es en sí misma una forma de árbol más pequeña. Entonces, un árbol es como un fractal. Eso significa que podemos modelar un árbol usando fractales.



Source link

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *