lunes, 9 de septiembre de 2013

Modelado con Parabolas y Catenarias

Si tomamos una cadena o una cuerda por sus dos extremos, sin tensarla, y la sometemos a un campo gravitatorio uniforme podremos ver que se deforma describiendo una curva.  Esta curva es semejante a una parábola convexa y de hecho, el gran Galileo Galilei pensaba que la forma descrita por una cadena suspendida como se describe arriba era una parábola.  Poco menos de medio siglo después,  Johann Bernoulli, Christiaan Huygens y Gottfried Leibniz dedujeron la ecuación de esta forma, a la cual llamaron "catenaria", palabra que proviene del latín catena, que significa cadena.  La ecuación de la catenaria contiene un parámetro que permite obtener "curvas colgantes" más o menos estiradas entre los dos puntos extremos desde donde se cuelga la cadena:

\[
y=a\cdot\frac{e^{\tfrac{x}{a}}+e^{-\tfrac{x}{a}}}{2}
\]

Es fácil entender porqué Galileo se equivocó.  Después de todo, las catenarias y las parábolas se parecen mucho.  La deducción de la ecuación de la catenaria proviene de considerar tres fuerzas en equilibrio que actúan sobre cada punto de la cadena suspendida: las tensiones laterales en virtud de las cuales la cadena se mantiene unida y la fuerza gravitatoria hacia abajo.

En lo que sigue intento hacer un poco de "matemática experimental" trabajando con fotos con curvas catenarias para ajustarlas a curvas cuadráticas.  Por ejemplo, el parapente en vuelo parece describir una parábola:






Sin embargo, si seleccionamos algunos puntos de la curva para luego ajustarlos a una función cuadrática, obtenemos la siguiente curva parabólica:


La curvatura del parapente en realidad describe una catenaria. Obsérvese que la parábola ajustada es un poco más "puntiaguda" en el centro, mientras que la curva catenaria del parapente es algo más aplanada en esta región.  Esto es una diferencia característica entre las catenarias y las parábolas.  Seguimos experimentando con otra curva, esta vez la curva que describen los cables de suspensión de un puente colgante, en este caso el Puente de Angostura sobre el río Orinoco:


Esta vez, el ajuste a una parábola resultó ser casi perfecto, observándose que la parábola ajustada no es más puntiaguda hacia la parte central del puente.  Esto parece algo paradójico porque las catenarias se deducen de las fuerzas/tensiones que actúan en cada punto de un cable suspendido, como el del puente.  Sin embargo, los cables suspendidos de los puentes colgantes soportan una vía casi horizontal y en este caso el peso del cable es prácticamente despreciable en comparación con el peso del puente soportado.  En este caso, los cables de soporte no están suspendidos libremente.


Les dejo a continuación el script en R para realizar el ajuste de la curva en una fotografía a una función cuadrática.  Primeramente, se hace uso de una librería llamada png (que hay que instalar mediante el comando install.packages) para colocar la foto como imagen de fondo.  Mediante la función locator, obtenemos un data frame con las coordenadas x/y de los n puntos que seleccionamos sobre la imagen (tratando de que estos puntos caigan exactamente sobre la curva).  Por último, se ajusta el modelo cuadrático y~1+x+x^2 a estos puntos mediante una regresión lineal y se gráfica la curva parabólica obtenida con estos coeficientes.

#Ajuste de los cables de suspensión del Puente de Angostura
#sobre el Río Orinoco a una parabola
#Autor: Prof. José Romero
#Fecha: 09/09/13
  library(png)
  ima <- readPNG("angostura.png")
  plot.new()
  plot.window(c(-211,211),c(-156,156))
  lim <- par()
  rasterImage(ima, lim\(\$\)usr[1], lim\(\$\)usr[3],
  lim\(\$\)usr[2], lim\(\$\)usr[4])
  axis(1)
  axis(2)
  grid()
#selecciona 9 puntos sobre el cable suspendido del puente
  datapoints <- locator(n=9,type="p")
  points(datapoints,col="red")
#ajusta a una función cuadrática
  cuadraticmodel <- lm(y~1+x+I(x^2),data=datapoints)   coefs <- as.numeric(coef(cuadraticmodel))
  a2 <- coefs[3]
  a1 <- coefs[2]
  a0 <- coefs[1]
  parabola <- function(x) return(a2*x^2 + a1*x + a0)
  curve(parabola,from=-200,to=200,col="red",add=TRUE)


Referencias



Si te gustó o te pareció útil este contenido, compártelo en las redes sociales y dale tu voto positivo en el botón "me gusta" de G+, para que otros puedan encontrar el contenido también.

No hay comentarios:

Publicar un comentario