Por que razão os girassóis giram cada semente 137,5°
Gire cada nova semente 137,5° e aparece um girassol. Mude o ângulo um só grau e tudo se desfaz.
É reproduzido a partir do YouTube depois de um clique.
Cada nova semente gira 137,5° em relação à anterior e fica um pouco mais longe do centro. Esse ângulo nunca coincide consigo mesmo, por isso as sementes nunca formam filas: preenchem a flor por igual, sem espaços vazios e sem aperto.
Leve-o como imagem de fundo, grátis em 4K →Experimente: mude a regra
137,5° nunca coincide consigo mesmo. Não há duas sementes no mesmo raio, por isso preenchem o disco por igual: o girassol.
Por que razão funciona
Cada nova semente gira 137,5° em relação à anterior e fica um pouco mais longe do centro. Esse ângulo nunca coincide consigo mesmo, por isso as sementes nunca formam filas: preenchem a flor por igual, sem espaços vazios e sem aperto.
θₙ = n × 137,508°rₙ = c · √n137,508° = 360° ÷ φ²
Construa-o em Python
Python 3 · numpy · matplotlib1000 sementes, a regra inteira numa linha, com cores segundo o número da semente.
"""Golden angle: seed n at the angle n x 137.5 degrees and the distance sqrt(n) (Vogel, 1979).
Run: python golden-angle.py (needs: pip install numpy matplotlib)
"""
import numpy as np
import matplotlib.pyplot as plt
plt.style.use("dark_background")
n = np.arange(1, 1001) # seed numbers
golden = np.pi * (3 - np.sqrt(5)) # 137.5 degrees in radians: 360 / phi**2
theta, r = n * golden, np.sqrt(n) # the whole rule
x, y = r * np.cos(theta), r * np.sin(theta)
plt.figure(figsize=(6, 6))
plt.scatter(x, y, s=8, c=n, cmap="viridis")
plt.axis("equal")
plt.axis("off")
plt.show()
# Try: golden = np.radians(144) -> five straight spokes (144 degrees is 2/5 of a turn)
Experimente: Mude golden para np.radians(144) e execute de novo: cinco raios retos.
Aprenda este script linha a linha, com exercícios e um quiz → · execute-o no Google Colab (em inglês) →
Para professores: um plano de aula de 45 minutos e uma folha de exercícios em três níveis →