InicioBiología y VidaOnda Poblacional — Propagación Espacial de Especies

🌊 Onda Poblacional — Propagación Espacial de Especies

Simula la propagación espacial de una especie invasora usando la ecuación de Fisher-KPP en una cuadrícula 2D. Observa cómo el frente de onda avanza a velocidad v=2√(Dr), con la opción de efecto Allee que ralentiza la invasión.

Biología y Vida3DModerado60 FPS
population-wave ↗ Abrir independiente

Acerca de esta simulación

Esta simulación modela la propagación espacial de una especie invasora usando la ecuación de reacción-difusión de Fisher-KPP, ∂u/∂t = D∇²u + ru(1−u), resuelta numéricamente en una cuadrícula de 150×150. Una pequeña colonia central se expande hacia afuera como una onda viajera cuya velocidad converge hacia el mínimo teórico v = 2√(Dr), y un término opcional de efecto Allee puede ralentizar o detener la invasión por debajo de un umbral de densidad.

🔬 Qué muestra

La densidad de población u(x,y) evolucionando en una cuadrícula de 150×150 mediante diferencias finitas explícitas con una plantilla laplaciana de cinco puntos y fronteras de flujo cero (Neumann). El azul marca hábitat vacío (u=0), el verde marca media capacidad (u=0,5) y el rojo marca una colonia saturada (u=1). La franja debajo de la cuadrícula grafica la población total a lo largo del tiempo, y las estadísticas en vivo comparan la velocidad de onda medida con el valor teórico 2√(Dr).

🎮 Cómo usarlo

Ajusta Difusividad D y Tasa de crecimiento r para cambiar la rapidez con la que los individuos se dispersan y se reproducen — observa cómo se actualiza al instante la velocidad de onda teórica. Activa el efecto Allee y sube el umbral a para ver cómo la invasión se ralentiza o falla por completo. Activa Paisaje heterogéneo para aleatorizar la difusividad local en ±50%, produciendo un frente irregular y con dedos en lugar de un círculo suave. Reiniciar reinicia desde una colonia central fresca; Pausar/Reproducir congela la animación.

💡 ¿Sabías que…?

La misma fórmula v = 2√(Dr) que gobierna esta colonia simulada se ha ajustado a invasiones reales — las ratas almizcleras que se propagaron por Europa tras su introducción en 1905 avanzaron a aproximadamente 1 km/año, coincidiendo con una onda de Fisher-KPP con D≈51 km²/año. La misma matemática también describe la propagación del tizón del castaño, el VIH dentro de los ganglios linfáticos, e incluso el avance histórico de la agricultura por la Europa neolítica.

Preguntas frecuentes

¿Qué controles deslizantes gobiernan la simulación y qué cambian?

Difusividad D (0,1–3,0) fija la rapidez con la que los individuos se dispersan por movimiento aleatorio; Tasa de crecimiento r (0,1–2,0) fija la tasa de reproducción logística; y Umbral de Allee a (0–0,5) fija la penalización mínima de densidad usada cuando el interruptor de efecto Allee está activado. Tanto D como r alimentan directamente la velocidad de onda teórica mostrada como 2√(Dr), por lo que mover cualquiera de los deslizadores actualiza esa estadística de inmediato, mientras que Reiniciar vuelve a sembrar una colonia fresca de radio de 8 celdas en el centro de la cuadrícula de 150×150.

¿Cómo calcula realmente la simulación la onda en cada fotograma?

Cada fotograma ejecuta cuatro pasos explícitos de Euler de la ecuación de Fisher-KPP. El laplaciano se aproxima con la plantilla de cinco puntos (suma de cuatro vecinos menos cuatro veces la celda central, dividido entre Δx²=1), el paso temporal se limita a dt = min(0,1, 1/(4D)) para satisfacer la condición de estabilidad CFL de difusión 2D, y el crecimiento usa ru(1−u) o, con el efecto Allee activado, ru(u−a)(1−u). Las fronteras son de flujo cero, por lo que la densidad no puede salir de la cuadrícula.

¿En qué se diferencia la velocidad de onda medida de la estadística "Teoría 2√(Dr)"?

La simulación rastrea el radio donde la densidad cae por primera vez a 0,5 escaneando hacia afuera desde el centro, y luego divide el cambio en ese radio entre el tiempo simulado transcurrido para obtener una velocidad medida, actualizada aproximadamente cada media unidad de tiempo. La estadística "Teoría 2√(Dr)" es la predicción de Fisher en forma cerrada, calculada directamente a partir de los deslizadores actuales de D y r. Al principio de una ejecución, la velocidad medida está por debajo de la teórica mientras el frente se define desde su perfil inicial suave; tras un breve período transitorio, ambos valores convergen.

¿Qué cambia realmente en el modelo al activar el efecto Allee?

Con el interruptor de Allee desactivado, el crecimiento es el término logístico estándar ru(1−u), y cualquier densidad positiva acaba invadiendo toda la cuadrícula. Activarlo cambia el crecimiento a ru(u−a)(1−u): una vez que la densidad local cae por debajo del umbral de Allee a, ese término se vuelve negativo, por lo que los parches por debajo de a se reducen en lugar de crecer. Aumentar a con el deslizador hace más estricto el umbral efectivo de invasión, y un valor suficientemente alto puede estancar el frente por completo o hacer que la colonia colapse en lugar de propagarse.

¿Qué ocurre al activar Paisaje heterogéneo?

Activarlo construye un mapa de difusividad por celda donde cada una de las 150×150 celdas obtiene D multiplicado por un factor aleatorio entre 0,5 y 1,5, generado una vez al reiniciar. Durante los pasos, la simulación usa este valor local en lugar de la D uniforme en todo lugar donde el interruptor está activo, de modo que el frente de onda avanza más rápido a través de parches de alta difusividad y se retrasa en los de baja difusividad — produciendo el mismo tipo de propagación irregular y con dedos que se observa cuando las invasiones reales siguen carreteras, ríos o corredores forestales en lugar de terreno abierto y uniforme.

⚙ Bajo el capó

Simula la propagación espacial de una especie invasora usando Fisher-KPP en una cuadrícula 2D. El frente de onda avanza a v=2√(Dr). Efecto Allee opcional.

Fisher-KPPdinámica poblacionalinvasiónreacción-difusiónefecto Allee

3D · Renderizador Three.js / WebGL · Objetivo 60 FPS · funciona totalmente en el navegador, sin instalación

¿Qué encontraste?

Agregar pasos de reproducción (opcional)