Resultado de secuencia de reproducción con reglas

Con el ejercicio de la célula descubrimos que podemos usar una función recursiva para obtener los elementos de la secuencia de la división celular, siguiendo las reglas impuestas. La función básica utilizada es: \[F_n = F_{n-1} + F_{n-2} \tag{1}\]


Aplicación de la función recursiva

Los procedimientos siguientes se tomaron de una página web (Sánchez-Fuentes, 2019). Permiten calcular los \(m\) términos de la secuencia y el \(n\) término en la secuencia, utilizando la función recursiva (1).

Creación de la función secu

Mediante esta función podemos obtener un término \(n\) de la secuencia.

secu <- function(n) {
  if (n == 1) {
    return(0)
  }
  else if(n == 2) {
    return(1)
  }
  else if(n > 2) {
    return(secu(n - 1) + secu(n - 2))
  }
}
EJEMPLO 1: Cálculo del término 10 y 20 de la secuencia
# print "the 10th term of the sequence is: secu(10)
print(paste("el término 10 de la secuencia es:", secu(10)))
## [1] "el término 10 de la secuencia es: 34"
# print "the 20th term of the sequence is: secu(20)
print(paste("el término 20 de la secuencia es:", secu(20)))
## [1] "el término 20 de la secuencia es: 4181"

Cálculo de los m términos de la secuencia

# Función para generar la serie con m términos
s_fib <- function(m) {
    serie <- vector("numeric", length = m)
    for (i in 1:m) {
        serie[i] <- secu(i)
    }
    return(serie)
}
EJEMPLO 2: Cálculo de los 21 primeros términos de la secuencia
# print "the first 21 terms of the sequence are: s_fib(21) text only once
print(paste("los primeros 21 términos de la secuencia son:"))
## [1] "los primeros 21 términos de la secuencia son:"
print(s_fib(21))
##  [1]    0    1    1    2    3    5    8   13   21   34   55   89  144  233  377
## [16]  610  987 1597 2584 4181 6765

Razón entre valores consecutivos de la secuencia

Vamos a calcular la razón entre un término de la secuencia \(F_n\) y el término anterior, \(F_{n-1}\)

# secuencia de 21 términos
sec_raz <- s_fib(21)
razon <- sec_raz[3:21]/sec_raz[2:20]
esc_x <- c(3:21)

# gráfica de la razon Fn/Fn-1
plot( razon ~ esc_x, xlab="", ylab="Fn / Fn-1")
lines( razon ~ esc_x)

Cálculo directo de la razón \(F_n/F_{n-1}\)

# Función para obtener la razón #

r_oro <- function(n) {
  if (n <= 4) {
      return('Utiliza un número mayor a 4')
  }
    else (return(secu(n)/secu(n-1)))
}

# hay que utilizar un número mayor que 4
r_oro(21)
## [1] 1.618034
Gráfica de la razón \(F_n/F_{n-1}\) para \(n\) términos de la secuencia con la línea que indica la razón áurea
# gráfica con la línea que indica la razón áurea
plot( razon ~ esc_x, xlab="", ylab="Fn / Fn-1")
lines( razon ~ esc_x)
abline(a=r_oro(21), b=0, col="gold")

Definición matemática de la razón \(F_n/F_{n-1}\) en la secuencia de Fibonacci

A esta razón la han denominado la razón áurea o golden ratio. Matemáticamente se define como el límite de la razón \(F_n/F_{n-1}\): \[\phi = \frac{1 + \sqrt{5}}{2}\]

Ejemplos en la Naturaleza de la secuencia de Fibonacci

Crecimiento en espiral de gastrópodos y otros sistemas de crecimiento en espiral

Pétalos en flores e inflorescencias


Mitos sobre la razón áurea

La razón áurea se ha utilizado para crear numerosos mitos sobre su presencia en cuadros, construcciones, anatomía, et c.; pero aparentemente su presencia en la naturaleza obedece a que representa un modelo óptimo de desarrollo y crecimiento en algunos organismos.

Referencias

Sánchez-Fuentes, Mauricio. 2019. Secuencia de Fibonacci [WWW Document], n.d. URL https://www.rpubs.com/MauricioSF/558913 (accessed 8.16.21).

Fibonacci Numbers [WWW Document], n.d. URL https://rstudio-pubs-static.s3.amazonaws.com/272925_87f5ae7a908b479eb198db0a6d609f7a.html (accessed 8.16.21).